[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [docbook-apps] Novice questions (repost)
Dear Ron and Bob,
Thanks for reading and giving elobarate answers my questions.
Best, mads
On Mon, 15 Jan 2007, Bob Stayton wrote:
>
> Bob Stayton
> Sagehill Enterprises
> DocBook Consulting
> bobs@sagehill.net
>
>
> ----- Original Message -----
> From: "Mads Ipsen" <mpi@osc.kiku.dk>
> To: <docbook-apps@lists.oasis-open.org>
> Sent: Monday, January 15, 2007 6:21 AM
> Subject: [docbook-apps] Novice questions (repost)
>
>
> > Dear DocBook users,
> >
> > This is my second attempt at posting these questions; I believe that
> > my first attempt ended up as a reply to a previous posting.
> >
> > If you believe that this forum is out-of-scope for the questions I
> > raise, please let me know, and I'll try to find help elsewhere.
> >
> > First of all, these are real novice questions, but I hope some of you
> > will have the time to provide some feedback to my questions:
> >
> > 1. Using the style sheet
> >
> > /usr/share/xml/docbook/stylesheet/nwalsh/xhtml/docbook.xsl
> >
> > DocBook generates html files where the whole string ass. with a
> > figure title gets formatted in bold. I prefer: Figure + number in
> > bold and the caption text in roman, eg.
> >
> > <b>Figure 1</b>: Blah. blah.
> >
> > Here's my approach for dealing with this from a user supplied style
> > sheet:
> >
> > <xsl:template name="formal.object.heading">
> > ...
> > <p class="title">
> > <xsl:choose>
> > <xsl:when test="contains($title,'Figure')">
> > <b>
> > <xsl:value-of select="substring-before($title,'.')"/>
> > </b>:
> > <xsl:value-of select="substring-after($title,'.')"/>
> > </xsl:when>
> > <xsl:otherwise>
> > <xsl:value-of select="$title"/>
> > </xsl:otherwise>
> > </xsl:choose>
> > </p>
> > </xsl:template>
> >
> > It works, but I am starting to choose a wrong track here?
> >
>
> This is a bit hazardous for two reasons: it selects the text based on the
> ".", but a figure number might be 3.2., in which case it doesn't get it
> right. Also, using xsl:value-of removes any markup in the processed $title,
> so you could lose any subscript/superscript markup, internal italic, etc.
>
> The object.title.markup mode used in formal.object.heading gets a gentext
> template from the locale collection and fills in the number and title. I
> would suggest customizing the gentext string for figure title to remove the
> title, and then using mode="title.markup" in this template to restore the
> title outside the <b>. Something like this:
>
> This part customizes the gentext template:
>
> <xsl:param name="local.l10n.xml" select="document('')"/>
> <l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">
> <l:l10n language="en">
> <l:context name="title">
> <l:template name="figure" text="Figure %n. "/>
> </l:context>
> </l:l10n>
> </l:i18n>
>
> This is the customized formal.object.heading:
>
> <xsl:template name="formal.object.heading">
> <xsl:param name="object" select="."/>
> <xsl:param name="title">
> <xsl:apply-templates select="$object" mode="object.title.markup">
> <xsl:with-param name="allow-anchors" select="1"/>
> </xsl:apply-templates>
> </xsl:param>
>
> <p class="title">
> <xsl:choose>
> <xsl:when test="self::figure">
> <b>
> <xsl:copy-of select="$title"/>
> </b>
> <xsl:apply-templates select="." mode="title.markup"/>
> </xsl:when>
> <xsl:otherwise>
> <b>
> <xsl:copy-of select="$title"/>
> </b>
> </xsl:otherwise>
> </xsl:choose>
> </p>
>
> </xsl:template>
>
> > 2. For the html representation of my documentation, I need to insert
> > a graphical header and the beginning and end of each sect1 <div>
> > to achive a rounded appearance of the block. Something along the
> > lines:
> >
> > <div class="sect1" lang="en" xml:lang="en">
> > <div id="contentUpper">
> > <img src="images/main_center_header_660px.png" alt="" />
> > </div>
> > ...
> > <div id="contentLower">
> > <img src="images/main_center_footer_660px.png" alt="" />
> > </div>
> > </div>
> >
> > It took me 5 min. to write a Python script that uses regular
> > expression for matching and inserting these items - but are there
> > a cleaner style sheet based solution? I tried fiddling with
> >
> > <xsl:template match="sect1">
> >
> > but that completely messes up the chunking.
>
> Customizing the template for sect1 is the right way to go, but you need to
> pay careful attention to the sequence of xsl:imports used. There are
> actually two templates matching on sect1. The original template in
> sections.xsl formats the section content. The extra template in
> chunk-code.xsl handles putting the formatted content into a chunked file.
> Your customization messes up the latter process without affecting the
> former. This reference describes how to set up a two-stage import process
> so you can change the formatting template without affecting the chunking
> template:
>
> http://www.sagehill.net/docbookxsl/ChunkingCustomization.html
>
> >
> > 3. At some time soon, I will have to start caring about print as
> > well, i.e. PDF reps. Do you have any suggestions of the
> > postprocessors that I should use (commercial or free). Its
> > imperative that they can handle MathML.
> >
> > Thanks for taking your time to read this. If you have any feedback,
> > please let me know.
> >
> > Best, Mads
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
> > For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org
> >
> >
> >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
> For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org
>
>
+---------------------------------+-------------------------+
| Mads Ipsen | |
| Dept. of Chemistry | phone: +45-35320220 |
| H.C.Ørsted Institute | fax: +45-35320322 |
| Universitetsparken 5 | |
| DK-2100 Copenhagen Ø, Denmark | mpi@osc.kiku.dk |
+---------------------------------+-------------------------+
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]