This is the mail archive of the
docbook-apps@lists.oasis-open.org
mailing list .
Re: Losing header rule when section titles are too long
On Sun, Jan 19, 2003 at 05:42:30PM +1030, Paul A. Hoadley wrote:
> On Sat, Jan 18, 2003 at 11:01:52PM -0800, Bob Stayton wrote:
>
> > The XSL stylesheets should be using titleabbrev for running headers
> > and footers by default, I think. But they are not. If you read the
> > description and processing expectations of titleabbrev in DocBook
> > the Definitive Guide, it basically says that is exactly what
> > titleabbrev was meant for.
> >
> > I'd file a Feature Request for this on the DocBook SourceForge site
> > (or I will if you can't).
>
> Thanks, Bob -- will do. It's not something I can fix with a simple
> template override, then?
Well, in the simple case, you could change the
'section.heading' named template to output titleabbrev
instead of $title in the fo:marker content. The current
section element is the context node, so you could change
these three lines:
<fo:marker marker-class-name="section.head.marker">
<xsl:value-of select="$title"/>
</fo:marker>
to:
<fo:marker marker-class-name="section.head.marker">
<xsl:choose>
<xsl:when test="titleabbrev">
<xsl:value-of select="titleabbrev"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$title"/>
</xsl:otherwise>
</xsl:choose>
</fo:marker>
But this is too simple for the general case. It only
selects the titleabbrev text and doesn't process any child
elements as elements. Also if sections are numbered, then
the running head won't have the section number with the
titleabbrev, but it will if only title is present.
There is a titleabbrev.markup mode, but it isn't equivalent
to object.title.markup mode that is used for the title
with section number.
--
Bob Stayton 400 Encinal Street
Publications Architect Santa Cruz, CA 95060
Technical Publications voice: (831) 427-7796
The SCO Group fax: (831) 429-1887
email: bobs@sco.com