This is the mail archive of the
docbook-apps@lists.oasis-open.org
mailing list .
[docbook-apps] PassiveTeX and Re: [docbook-apps] DocBook XSL 1.67.2 released
- From: Justus Piater <Justus dot Piater at ULg dot ac dot be>
- To: docbook-apps at lists dot oasis-open dot org
- Date: Tue, 07 Dec 2004 16:07:50 +0100
- Subject: [docbook-apps] PassiveTeX and Re: [docbook-apps] DocBook XSL 1.67.2 released
- References: <20041202092011.GB24017@sideshowbarker.net>
> * Lists: Added workaround to prevent "* 0.60 + 1em" garbage in list output
> from PassiveTeX
Great! This has motivated me to re-try the latest DocBook XSL with
PassiveTeX. Conclusion: This appears to work now, with minor fixes:
> * Moved the literal attributes from component.title to the
> component.title.properties attribute-set so they can be customized.
1. One simple tweak related to the above workaround to get this to
work with PassiveTeX: Reformulate the calculations of ...minimum
and ...maximum so they are completely evaluated by the XSLT
processor (or am I working around an xsltproc limitation here?):
<xsl:attribute-set name="component.title.properties">
<xsl:attribute name="keep-with-next.within-column">always</xsl:attribute>
<xsl:attribute name="space-before.optimum">
<xsl:value-of select="concat($body.font.master, 'pt')"/>
</xsl:attribute>
<xsl:attribute name="space-before.minimum">
<xsl:value-of select="$body.font.master * 0.8"/>
<xsl:text>pt</xsl:text>
</xsl:attribute>
<xsl:attribute name="space-before.maximum">
<xsl:value-of select="$body.font.master * 1.2"/>
<xsl:text>pt</xsl:text>
</xsl:attribute>
<xsl:attribute name="hyphenate">false</xsl:attribute>
</xsl:attribute-set>
This is only a minor change and completely equivalent to the original,
so I propose to add this workaround to CVS.
A similar change can (and probably should, I think) be made to
<xsl:template name="indexdiv.title">, and probably a few other
places.
2. PassiveTeX adds spurious vertical space if fo:blocks are
nested. This has been the case for lists since DocBook XSLT later
than 1.61.3. I put a workaround into my customization layer that
"works for me" so far but is probably plain wrong: I removed the
fo:block from
<xsl:template match="listitem/*[1][local-name()='para' or ...]">.
Does anybody have a better idea?
So, good-bye XSLT 1.61.3, PassiveTeX is back on stage!
Justus
--
Justus H. Piater, Ph.D. http://www.montefiore.ulg.ac.be/~piater/
Institut Montefiore, B28 Phone: +32-4-366-2279
Université de Liège, Belgium Fax: +32-4-366-2620