[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [docbook-apps] Footnote marks missing
|
I did the same and got a footnote mark. Using the previous oxygen configuration but not my customization file (attached) I got the footnote mark. I cannot see what it is in the customization that blocks footnote marks. Please help Regards Bernhard Am 08.02.2019 um 18:09 schrieb Bob
Stayton:
-- spitzhalde9 D-79853 lenzkirch bernhard.kleine@gmx.net www.b-kleine.com, www.urseetal.net - thunderbird mit enigmail GPG schlÃssel: D5257409 fingerprint: 08 B7 F8 70 22 7A FC C1 15 49 CA A6 C7 6F A0 2E D5 25 74 09 |
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xsl:stylesheet [
<!ENTITY lowercase "'abcdefghijklmnopqrstuvwxyz'">
<!ENTITY uppercase "'ABCDEFGHIJKLMNOPQRSTUVWXYZ'">
<!ENTITY primary 'normalize-space(concat(primary/@sortas, primary[not(@sortas)]))'>
<!ENTITY secondary 'normalize-space(concat(secondary/@sortas, secondary[not(@sortas)]))'>
<!ENTITY tertiary 'normalize-space(concat(tertiary/@sortas, tertiary[not(@sortas)]))'>
<!ENTITY scope 'count(ancestor::node()|$scope) = count(ancestor::node())'>
<!ENTITY sep '" "'>
<!ENTITY % fontsizes SYSTEM "mysizeslarge.ent">
%mysizeslarge;
]>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:d="http://docbook.org/ns/docbook"
xmlns:fo="http://www.w3.org/1999/XSL/Format" version="1.0">
<xsl:import href="http://docbook.sourceforge.net/release/xsl-ns/current/fo/docbook.xsl"/>
<xsl:param name="local.l10n.xml" select="document('')"/>
<xsl:param name="draft.watermark.image">draft.png</xsl:param>
<l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">
<l:l10n language="de">
<l:gentext key="listoftables" text="Liste der Faltertabellen"/>
<l:gentext key="ListofTables" text="Liste der Faltertabellen"/>
<l:gentext key="Index" text="Namensliste"/>
<l:gentext key="index" text="Namensliste"/>
<l:context name="title">
<!-- formatiert Tabellen und Abbildungstitel -->
<l:template name="table" text="%t"/>
<l:template name="figure" text="%t"/>
</l:context>
<l:context name="xref-number-and-title">
<l:template name="table" text="in Tab. %t (S. %p)"/>
<l:template name="figure" text="(%t; S. %p)"/>
<l:template name="chapter" text="Kapitel %n (S. %p)"/>
<l:template name="entry" style="PageInParenE" text="S. %p"/>
<l:template name="mediaobject" style="seite" text="S. %p"/>
<l:template name="sect1" style="PageInParen1" text=" (S. %p)"/>
<l:template name="sect2" style="PageInParen1" text=" (S. %p)"/>
<l:template name="sect3" style="PageInParen1" text=" (S. %p)"/>
<l:template name="sect4" style="PageInParen1" text=" (S. %p)"/>
</l:context>
<l:context name="xref-number">
<l:template name="table" text="(in Tab. %t; (S.�%p)"/>
<l:template name="figure" text="(Bild %t; S.�%p)"/>
<l:template name="chapter" text="Kapitel %n (S.�%p)"/>
<l:template name="entry" style="PageInParenE2" text="S. %p"/>
<l:template name="mediaobject" style="seite" text="S. %p"/>
<l:template name="sect1" style="PageInParen1" text=" (S. %p)"/>
<l:template name="sect2" style="PageInParen1" text=" (S. %p)"/>
<l:template name="sect3" style="PageInParen1" text=" (S. %p)"/>
<l:template name="sect4" style="PageInParen1" text=" (S. %p)"/>
</l:context>
<l:context name="xref">
<l:template name="chapter" style="PageInParen1" text=" (S. %p)"/>
<l:template name="sect1" style="PageInParen1" text=" (S. %p)"/>
<l:template name="sect2" style="PageInParen2" text=" (S. %p)"/>
<l:template name="sect3" style="PageInParen2" text=" (S. %p)"/>
<l:template name="sect4" style="PageInParen2" text=" (S. %p)"/>
<l:template name="entry" style="PageInParenE1" text=" (S. %p)"/>
<l:template name="imageobject" style="PageInParenI" text="%n (S. %p)"/>
<l:template name="footnote" style="fussnotenref" text="Fu�note S. %p"/>
</l:context>
</l:l10n>
</l:i18n>
<xsl:attribute-set name="section.title.level1.properties">
<xsl:attribute name="font-family">Alegreya</xsl:attribute>
<xsl:attribute name="font-size">21pt</xsl:attribute>
<xsl:attribute name="font-weight">bold</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="section.title.level2.properties">
<xsl:attribute name="font-family">Alegreya</xsl:attribute>
<xsl:attribute name="font-size">19pt</xsl:attribute>
<xsl:attribute name="font-style">bold</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="section.title.level3.properties">
<xsl:attribute name="font-family">Alegreya</xsl:attribute>
<xsl:attribute name="font-size">17pt</xsl:attribute>
<xsl:attribute name="font-weight">normal</xsl:attribute>
</xsl:attribute-set>
<xsl:template match="*" mode="pagenumber.markup">
<xsl:variable name="id">
<xsl:call-template name="object.id"/>
</xsl:variable>
<xsl:apply-templates select="." mode="page-number-prefix"/>
<fo:page-number-citation ref-id="{$id}"/>
</xsl:template>
<xsl:template name="chapterappendix.title">
<xsl:param name="node" select="."/>
<xsl:param name="pagewide" select="0"/>
<xsl:variable name="id">
<xsl:call-template name="object.id">
<xsl:with-param name="object" select="$node"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="title">
<xsl:apply-templates select="$node" mode="object.title.markup">
<xsl:with-param name="allow-anchors" select="1"/>
</xsl:apply-templates>
</xsl:variable>
<xsl:variable name="titleabbrev">
<xsl:apply-templates select="$node" mode="titleabbrev.markup"/>
</xsl:variable>
<xsl:variable name="level">
<xsl:choose>
<xsl:when test="ancestor::d:section">
<xsl:value-of select="count(ancestor::d:section)+1"/>
</xsl:when>
<xsl:when test="ancestor::d:sect5">6</xsl:when>
<xsl:when test="ancestor::d:sect4">5</xsl:when>
<xsl:when test="ancestor::d:sect3">4</xsl:when>
<xsl:when test="ancestor::d:sect2">3</xsl:when>
<xsl:when test="ancestor::d:sect1">2</xsl:when>
<xsl:otherwise>1</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<fo:block xsl:use-attribute-sets="component.title.properties">
<xsl:if test="$pagewide != 0">
<!-- Doesn't work to use 'all' here since not a child of fo:flow -->
<xsl:attribute name="span">inherit</xsl:attribute>
</xsl:if>
<xsl:attribute name="hyphenation-character">
<xsl:call-template name="gentext">
<xsl:with-param name="key" select="'hyphenation-character'"/>
</xsl:call-template>
</xsl:attribute>
<xsl:attribute name="hyphenation-push-character-count">
<xsl:call-template name="gentext">
<xsl:with-param name="key" select="'hyphenation-push-character-count'"/>
</xsl:call-template>
</xsl:attribute>
<xsl:attribute name="hyphenation-remain-character-count">
<xsl:call-template name="gentext">
<xsl:with-param name="key" select="'hyphenation-remain-character-count'"/>
</xsl:call-template>
</xsl:attribute>
<xsl:if test="$axf.extensions != 0 and
$xsl1.1.bookmarks = 0 and
$show.bookmarks != 0">
<xsl:attribute name="axf:outline-level">
<xsl:value-of select="count($node/ancestor::*)"/>
</xsl:attribute>
<xsl:attribute name="axf:outline-expand">false</xsl:attribute>
<xsl:attribute name="axf:outline-title">
<xsl:value-of select="normalize-space($title)"/>
</xsl:attribute>
</xsl:if>
<xsl:attribute name="font-family">Alegreya</xsl:attribute>
<xsl:attribute name="font-size">24.8pt</xsl:attribute>
<xsl:attribute name="font-weight">bold</xsl:attribute>
<!-- Let's handle the case where a component (bibliography, for example)
occurs inside a section; will we need parameters for this?
Danger Will Robinson: using section.title.level*.properties here
runs the risk that someone will set something other than
font-size there... -->
<xsl:choose>
<xsl:when test="$level=2">
<fo:block xsl:use-attribute-sets="section.title.level2.properties">
<xsl:copy-of select="$title"/>
</fo:block>
</xsl:when>
<xsl:when test="$level=3">
<fo:block xsl:use-attribute-sets="section.title.level3.properties">
<xsl:copy-of select="$title"/>
</fo:block>
</xsl:when>
<xsl:when test="$level=4">
<fo:block xsl:use-attribute-sets="section.title.level4.properties">
<xsl:copy-of select="$title"/>
</fo:block>
</xsl:when>
<xsl:when test="$level=5">
<fo:block xsl:use-attribute-sets="section.title.level5.properties">
<xsl:copy-of select="$title"/>
</fo:block>
</xsl:when>
<xsl:when test="$level=6">
<fo:block xsl:use-attribute-sets="section.title.level6.properties">
<xsl:copy-of select="$title"/>
</fo:block>
</xsl:when>
<xsl:otherwise>
<!-- not in a section: do nothing special -->
<xsl:copy-of select="$title"/>
</xsl:otherwise>
</xsl:choose>
</fo:block>
</xsl:template>
<xsl:attribute-set name="mychap.title.properties">
<xsl:attribute name="font-family">Alegreya</xsl:attribute>
<xsl:attribute name="font-size">24.8pt</xsl:attribute>
<xsl:attribute name="font-weight">bold</xsl:attribute>
</xsl:attribute-set>
<xsl:template match="processing-instruction('hard-pagebreak')">
<fo:block break-after="page"/>
<!-- fügt einen Seitenumbruch ein -->
</xsl:template>
<xsl:template match="processing-instruction('linebreak')">
<fo:block/>
<!-- fügt eines Zeilenumbruch ein -->
</xsl:template>
<xsl:param name="caption.align">justify</xsl:param>
<!-- definiert die Ausrichtung und Einrückung von Caption -->
<xsl:template match="d:mediaobject/d:caption">
<!-- Beginn des Templates-->
<fo:block role="caption" xsl:use-attribute-sets="captionlayout.properties">
<!-- Testet ob der obige Parameter in der Liste enthalten -->
<xsl:if
test="
$caption.align = 'right' or
$caption.align = 'left' or
$caption.align = 'justify' or
$caption.align = 'center'">
<xsl:attribute name="text-align">
<xsl:value-of select="$caption.align"/>
</xsl:attribute>
</xsl:if>
<xsl:apply-templates/>
<!-- wendet das Template an -->
</fo:block>
</xsl:template>
<xsl:attribute-set name="captionlayout.properties">
<xsl:attribute name="margin-left">2em</xsl:attribute>
<xsl:attribute name="margin-right">2em</xsl:attribute>
<xsl:attribute name="font-size">13pt</xsl:attribute>
</xsl:attribute-set>
<xsl:template match="d:literallayout">
<!-- für ein Gedicht -->
<fo:block xsl:use-attribute-sets="literallayout.properties">
<xsl:apply-templates/>
</fo:block>
</xsl:template>
<xsl:attribute-set name="literallayout.properties">
<xsl:attribute name="margin-left">2em</xsl:attribute>
<xsl:attribute name="font-size">13pt</xsl:attribute>
</xsl:attribute-set>
<xsl:template match="d:para[@role = 'zitat']">
<!-- für ein mehrzeiliges Textzitat -->
<fo:block xsl:use-attribute-sets="zitatlayout.properties">
<xsl:apply-templates/>
</fo:block>
</xsl:template>
<xsl:attribute-set name="zitatlayout.properties">
<xsl:attribute name="margin-left">2em</xsl:attribute>
<xsl:attribute name="margin-right">2em</xsl:attribute>
<xsl:attribute name="font-size">13pt</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="figure.properties">
<xsl:attribute name="keep-together.within-column">
<xsl:choose>
<xsl:when test="count(d:mediaobject) > 1">inherit</xsl:when>
<xsl:otherwise>always</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</xsl:attribute-set>
<xsl:template match="d:para"> <!-- In kompakten Listen para-Abstand anpassen -->
<xsl:variable name="keep.together">
<xsl:call-template name="pi.dbfo_keep-together"/>
</xsl:variable>
<fo:block xsl:use-attribute-sets="para.properties">
<xsl:if test="$keep.together != ''">
<xsl:attribute name="keep-together.within-column"><xsl:value-of
select="$keep.together"/></xsl:attribute>
</xsl:if>
<xsl:if test="ancestor::*/@spacing = 'compact'">
<xsl:attribute name="space-before.optimum">0.15em</xsl:attribute>
<xsl:attribute name="space-before.minimum">0.1em</xsl:attribute>
<xsl:attribute name="space-before.maximum">.2em</xsl:attribute>
<xsl:attribute name="font-size">12pt</xsl:attribute>
</xsl:if>
<xsl:call-template name="anchor"/>
<xsl:apply-templates/>
</fo:block>
</xsl:template>
<!-- aus PAGESETUP.xsl plus Beiträge von Bob Stayton -->
<xsl:template name="footer.content">
<xsl:param name="pageclass" select="''"/>
<xsl:param name="sequence" select="''"/>
<xsl:param name="position" select="''"/>
<xsl:param name="gentext-key" select="''"/>
<!--
<fo:block>
<xsl:value-of select="$pageclass"/>
<xsl:text>, </xsl:text>
<xsl:value-of select="$sequence"/>
<xsl:text>, </xsl:text>
<xsl:value-of select="$position"/>
<xsl:text>, </xsl:text>
<xsl:value-of select="$gentext-key"/>
</fo:block>
-->
<fo:block>
<!-- pageclass can be front, body, back -->
<!-- sequence can be odd, even, first, blank -->
<!-- position can be left, center, right -->
<xsl:choose>
<xsl:when test="$pageclass = 'titlepage'">
<!-- nop; no footer on title pages -->
</xsl:when>
<xsl:when test="$double.sided != 0 and $sequence = 'even'
and $position='left'">
<xsl:apply-templates mode="page-number-prefix" select="."/>
<fo:page-number/>
</xsl:when>
<xsl:when test="$double.sided != 0 and ($sequence = 'odd' or $sequence = 'first')
and $position='right'">
<xsl:apply-templates mode="page-number-prefix" select="."/>
<fo:page-number/>
</xsl:when>
<xsl:when test="$double.sided = 0 and $position='center'">
<xsl:apply-templates mode="page-number-prefix" select="."/>
<fo:page-number/>
</xsl:when>
<xsl:when test="$sequence='blank'">
<xsl:choose>
<xsl:when test="$double.sided != 0 and $position = 'left'">
<xsl:apply-templates mode="page-number-prefix" select="."/>
<fo:page-number/>
</xsl:when>
<xsl:when test="$double.sided = 0 and $position = 'center'">
<xsl:apply-templates mode="page-number-prefix" select="."/>
<fo:page-number/>
</xsl:when>
<xsl:otherwise>
<!-- nop -->
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<!-- nop -->
</xsl:otherwise>
</xsl:choose>
</fo:block>
</xsl:template>
<!-- Customizing the toc.line template to place page-number-prefix
in the TOC -->
<xsl:template name="toc.line">
<xsl:variable name="id">
<xsl:call-template name="object.id"/>
</xsl:variable>
<xsl:variable name="label">
<xsl:apply-templates select="." mode="label.markup">
<xsl:with-param name="purpose" select="'toc'"/>
</xsl:apply-templates>
</xsl:variable>
<fo:block text-align-last="justify"
end-indent="{$toc.indent.width}pt"
last-line-end-indent="-{$toc.indent.width}pt">
<fo:inline keep-with-next.within-line="always">
<fo:basic-link internal-destination="{$id}">
<xsl:if test="$label != ''">
<xsl:copy-of select="$label"/>
<xsl:value-of select="$autotoc.label.separator"/>
</xsl:if>
<xsl:apply-templates select="." mode="title.markup"/>
</fo:basic-link>
</fo:inline>
<fo:inline keep-together.within-line="always">
<xsl:text> </xsl:text>
<fo:leader leader-pattern="space"
leader-pattern-width="5pt"
leader-alignment="reference-area"
keep-with-next.within-line="always"/>
<xsl:text> </xsl:text>
<fo:basic-link internal-destination="{$id}">
<xsl:apply-templates mode="page-number-prefix" select="."/>
<fo:page-number-citation ref-id="{$id}"/>
</fo:basic-link>
</fo:inline>
</fo:block>
</xsl:template>
<xsl:template name="initial.page.number">
<xsl:param name="element" select="local-name(.)"/>
<xsl:param name="master-reference" select="''"/>
<xsl:variable name="first">
<xsl:choose>
<xsl:when test="$force.blank.pages = 0">1</xsl:when>
<xsl:otherwise>1</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!-- Select the first content that the stylesheet places
after the TOC -->
<xsl:variable name="first.book.content"
select="ancestor::d:book/*[
not(self::d:title or
self::d:subtitle or
self::d:titleabbrev or
self::d:bookinfo or
self::d:info or
self::d:dedication or
self::d:acknowledgements or
self::d:preface or
self::d:toc or
self::d:lot)][1]"/>
<xsl:choose>
<!-- double-sided output -->
<xsl:when test="$double.sided != 0">
<xsl:choose>
<xsl:when test="$element = 'toc'"><xsl:value-of select="$first"/></xsl:when>
<xsl:when test="$element = 'book'"><xsl:value-of select="$first"/></xsl:when>
<!-- preface typically continues TOC roman numerals -->
<!-- If changed to 1 here, then change page.number.format too -->
<xsl:when test="$element = 'preface'"><xsl:value-of select="$first"/></xsl:when>
<xsl:when test="($element = 'dedication' or $element = 'article')
and not(preceding::d:chapter
or preceding::d:preface
or preceding::d:appendix
or preceding::d:article
or preceding::d:dedication
or parent::d:part
or parent::d:reference)">1</xsl:when>
<xsl:when test="generate-id($first.book.content) =
generate-id(.)">1</xsl:when>
<xsl:otherwise><xsl:value-of select="$first"/></xsl:otherwise>
</xsl:choose>
</xsl:when>
<!-- single-sided output -->
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$element = 'toc'">auto</xsl:when>
<xsl:when test="$element = 'book'">auto</xsl:when>
<xsl:when test="$element = 'preface'">auto</xsl:when>
<xsl:when test="($element = 'dedication' or $element = 'article') and
not(preceding::d:chapter
or preceding::d:preface
or preceding::d:appendix
or preceding::d:article
or preceding::d:dedication
or parent::d:part
or parent::d:reference)">1</xsl:when>
<xsl:when test="generate-id($first.book.content) =
generate-id(.)">1</xsl:when>
<xsl:otherwise>1</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="d:indexterm" mode="reference">
<xsl:param name="scope" select="."/>
<xsl:param name="separator" select="', '"/>
<xsl:if test="$passivetex.extensions = '0'">
<xsl:value-of select="$separator"/>
</xsl:if>
<xsl:choose>
<xsl:when test="@zone and string(@zone)">
<xsl:call-template name="reference">
<xsl:with-param name="zones" select="normalize-space(@zone)"/>
<xsl:with-param name="scope" select="$scope"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="id">
<xsl:call-template name="object.id"/>
</xsl:variable>
<fo:basic-link internal-destination="{$id}">
<xsl:apply-templates mode="page-number-prefix" select="."/>
<fo:page-number-citation ref-id="{$id}"/>
</fo:basic-link>
<xsl:if test="key('endofrange', @id)[&scope;]">
<xsl:apply-templates select="key('endofrange', @id)[&scope;][last()]"
mode="reference">
<xsl:with-param name="scope" select="$scope"/>
<xsl:with-param name="separator" select="'-'"/>
</xsl:apply-templates>
</xsl:if>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="reference">
<xsl:param name="scope" select="."/>
<xsl:param name="zones"/>
<xsl:choose>
<xsl:when test="contains($zones, ' ')">
<xsl:variable name="zone" select="substring-before($zones, ' ')"/>
<xsl:variable name="target" select="key('id', $zone)[&scope;]"/>
<xsl:variable name="id">
<xsl:call-template name="object.id">
<xsl:with-param name="object" select="$target[1]"/>
</xsl:call-template>
</xsl:variable>
<fo:basic-link internal-destination="{$id}">
<xsl:apply-templates mode="page-number-prefix" select="$target[1]"/>
<fo:page-number-citation ref-id="{$id}"/>
</fo:basic-link>
<xsl:if test="$passivetex.extensions = '0'">
<xsl:text>, </xsl:text>
</xsl:if>
<xsl:call-template name="reference">
<xsl:with-param name="zones" select="substring-after($zones, ' ')"/>
<xsl:with-param name="scope" select="$scope"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="zone" select="$zones"/>
<xsl:variable name="target" select="key('id', $zone)[&scope;]"/>
<xsl:variable name="id">
<xsl:call-template name="object.id">
<xsl:with-param name="object" select="$target[1]"/>
</xsl:call-template>
</xsl:variable>
<fo:basic-link internal-destination="{$id}">
<xsl:apply-templates mode="page-number-prefix" select="$target[1]"/>
<fo:page-number-citation ref-id="{$id}"/>
</fo:basic-link>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="d:indexterm" mode="reference-markup">
<xsl:param name="scope" select="."/>
<xsl:choose>
<xsl:when test="@zone and string(@zone)">
<xsl:call-template name="reference-markup">
<xsl:with-param name="zones" select="normalize-space(@zone)"/>
<xsl:with-param name="scope" select="$scope"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="id">
<xsl:call-template name="object.id"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="@startref and @class='endofrange'">
<xsl:text><phrase role="pageno"></xsl:text>
<xsl:text><link linkend="</xsl:text>
<xsl:value-of select="@startref"/>
<xsl:text>"></xsl:text>
<fo:basic-link internal-destination="{@startref}">
<xsl:apply-templates mode="page-number-prefix" select="."/>
<fo:page-number-citation ref-id="{@startref}"/>
<xsl:text>-</xsl:text>
<fo:page-number-citation ref-id="{$id}"/>
</fo:basic-link>
<xsl:text></link></xsl:text>
<xsl:text></phrase> </xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text><phrase role="pageno"></xsl:text>
<xsl:if test="@id">
<xsl:text><link linkend="</xsl:text>
<xsl:value-of select="$id"/>
<xsl:text>"></xsl:text>
</xsl:if>
<fo:basic-link internal-destination="{$id}">
<xsl:apply-templates mode="page-number-prefix" select="."/>
<fo:page-number-citation ref-id="{$id}"/>
</fo:basic-link>
<xsl:if test="@id">
<xsl:text></link></xsl:text>
</xsl:if>
<xsl:text></phrase> </xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="reference-markup">
<xsl:param name="scope" select="."/>
<xsl:param name="zones"/>
<xsl:choose>
<xsl:when test="contains($zones, ' ')">
<xsl:variable name="zone" select="substring-before($zones, ' ')"/>
<xsl:variable name="target" select="key('id', $zone)[&scope;]"/>
<xsl:variable name="id">
<xsl:call-template name="object.id">
<xsl:with-param name="object" select="$target[1]"/>
</xsl:call-template>
</xsl:variable>
<xsl:text><phrase role="pageno"></xsl:text>
<xsl:if test="$target[1]/@id">
<xsl:text><link linkend="</xsl:text>
<xsl:value-of select="$id"/>
<xsl:text>"></xsl:text>
</xsl:if>
<fo:basic-link internal-destination="{$id}">
<xsl:apply-templates mode="page-number-prefix" select="$target[1]"/>
<fo:page-number-citation ref-id="{$id}"/>
</fo:basic-link>
<xsl:if test="$target[1]/@id">
<xsl:text></link></xsl:text>
</xsl:if>
<xsl:text></phrase> </xsl:text>
<xsl:call-template name="reference">
<xsl:with-param name="zones" select="substring-after($zones, ' ')"/>
<xsl:with-param name="scope" select="$scope"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="zone" select="$zones"/>
<xsl:variable name="target" select="key('id', $zone)[&scope;]"/>
<xsl:variable name="id">
<xsl:call-template name="object.id">
<xsl:with-param name="object" select="$target[1]"/>
</xsl:call-template>
</xsl:variable>
<xsl:text><phrase role="pageno"></xsl:text>
<xsl:if test="$target[1]/@id">
<xsl:text><link linkend="</xsl:text>
<xsl:value-of select="$id"/>
<xsl:text>"></xsl:text>
</xsl:if>
<fo:basic-link internal-destination="{$id}">
<xsl:apply-templates mode="page-number-prefix" select="$target[1]"/>
<fo:page-number-citation ref-id="{$id}"/>
</fo:basic-link>
<xsl:if test="$target[1]/@id">
<xsl:text></link></xsl:text>
</xsl:if>
<xsl:text></phrase> </xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="d:chapter|d:chapter//*" mode="page-number-prefix">
<xsl:number count="d:chapter" from="d:book" level="any"/>
<xsl:text>–</xsl:text>
</xsl:template>
<xsl:template match="d:appendix|d:appendix//*" mode="page-number-prefix">
<xsl:number count="d:appendix" from="d:book" level="single" format="A"/>
<xsl:text>–</xsl:text>
</xsl:template>
<xsl:template match="d:glossary|d:glossary//*" mode="page-number-prefix">
<xsl:variable name="glossname">
<xsl:call-template name="gentext">
<xsl:with-param name="key" select="'glossary'"/>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="substring($glossname,1,1)"/>
<xsl:text>–</xsl:text>
</xsl:template>
<xsl:template match="d:index|d:index//*" mode="page-number-prefix">
<xsl:call-template name="gentext">
<xsl:with-param name="key" select="'index'"/>
</xsl:call-template>
<xsl:text>–</xsl:text>
</xsl:template>
<xsl:template match="d:reference|d:reference//*" mode="page-number-prefix">
<xsl:apply-templates select="preceding::d:chapter[1]" mode="page-number-prefix"/>
</xsl:template>
<xsl:template match="d:refentry|d:refentry//*" mode="page-number-prefix">
<xsl:apply-templates select="preceding::d:chapter[1]" mode="page-number-prefix"/>
</xsl:template>
<xsl:template match="*" mode="page-number-prefix"/>
</xsl:stylesheet>
Attachment:
signature.asc
Description: OpenPGP digital signature
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]