← Prev in month
← Prev in thread
Gentext page pg number formatting
Hello all,
I have a bit of code which is intended
to produce “ 1 of XX “ page numbering for out footer.
However, it must use gentext to allow for languages which we translate our book
into.
Here is how I pull in the language
files:
The start of the XSL file…
<?xml
version="1.0" encoding="UTF-8"?>
<!DOCTYPE
xsl:stylesheet [
<!ENTITY
da.locale SYSTEM "da_OR.xml">
<!ENTITY
de.locale SYSTEM "de_OR.xml">
<!ENTITY
el.locale SYSTEM "el_OR.xml">
<!ENTITY
en.locale SYSTEM "en_OR.xml">
<!ENTITY
es.locale SYSTEM "es_OR.xml">
<!ENTITY
fi.locale SYSTEM "fi_OR.xml">
<!ENTITY
fr.locale SYSTEM "fr_OR.xml">
<!ENTITY
it.locale SYSTEM "it_OR.xml">
<!ENTITY
nl.locale SYSTEM "nl_OR.xml">
<!ENTITY
no.locale SYSTEM "no_OR.xml">
<!ENTITY
pt.locale SYSTEM "pt_OR.xml">
<!ENTITY
sv.locale SYSTEM "sv_OR.xml">
<!ENTITY
ru.locale SYSTEM "ru_OR.xml">
<!ENTITY
cs.locale SYSTEM "cs_OR.xml">
<!ENTITY
sk.locale SYSTEM "sk_OR.xml">
<!ENTITY
sl.locale SYSTEM "sl_OR.xml">
<!ENTITY
hu.locale SYSTEM "hu_OR.xml">
<!ENTITY
pl.locale SYSTEM "pl_OR.xml">
<!ENTITY
hr.locale SYSTEM "hr_OR.xml">
]>
These are small XML files which contain key
words for gentext to use over the standard docbook XSL library of translated
words…
This is how Gentext is setup:
<!--==============================================================-->
<!--
Gentext
-->
<!--==============================================================-->
<xsl:param name="local.l10n.xml"
select="document('')"/>
<l:i18n
xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">&da.locale;&de.locale;&el.locale;&en.locale;&es.locale;&fi.locale;&fr.locale;&it.locale;&nl.locale;&no.locale;&pt.locale;&sv.locale;
</l:i18n>
Then, the template im executing:
<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="''"/>
<xsl:param name="lang"><xsl:call-template name="l10n.language"/></xsl:param>
<fo:block>
<!--
pageclass can be front, body, back -->
<!--
sequence can be odd, even, first, blank -->
<!--
position can be left, center, right -->
<xsl:choose>
<!--
nop; no footer on title pages -->
<xsl:when test="$pageclass
= 'titlepage'">
</xsl:when>
<xsl:when test="$double.sided
!= 0 and
(($sequence = 'even'
and $position='left')
or
(($sequence = 'odd' or $sequence = 'first')
and $position='right'))">
<fo:external-graphic>
<xsl:attribute name="src">
<xsl:call-template name="fo-external-image">
<xsl:with-param name="filename">
<xsl:call-template name="lang.icon"/>
</xsl:with-param>
</xsl:call-template>
</xsl:attribute>
<xsl:attribute name="width">0.45in</xsl:attribute>
</fo:external-graphic>
</xsl:when>
<xsl:when test="$double.sided
!= 0 and
(($sequence = 'even'
and $position='right')
or
(($sequence = 'odd' or $sequence = 'first')
and $position='left'))">
<xsl:attribute name="font-size">6pt</xsl:attribute>
<xsl:value-of
select="$footer.tag"/>
</xsl:when>
<xsl:when test="$double.sided
!= 0 and $position='center'">
<fo:inline>
<fo:page-number/><xsl:call-template name="gentext.space"/>
<xsl:call-template name="gentext">
<xsl:with-param name="key"
select="'pageof'"/>
</xsl:call-template>
<xsl:call-template name="gentext.space"/><fo:page-number-citation
ref-id="lAsT-pAgE"/>
</fo:inline>
</xsl:when>
<xsl:otherwise>
<!--
nop -->
</xsl:otherwise>
</xsl:choose>
</fo:block>
</xsl:template>
The only output I can manage is: “1
22”, it simply ignores the gentext call. I can replace the gentext
with “<xsl:text>of</xsl:text>” and that does render.
Anyone recognize the source of my error?
← Prev in month
← Prev in thread