OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [docbook-apps] Additional space after remark in varlistentry/listitem?


There are a lot of similar situations, where non-para block level 
elements occur in environments like listitem or table entries and any 
vertical alignment to other layout elements is vanishing (bullet in 
listitem, adjacent entry content in tables). I had for example the 
problem of eliminating extra vertical space for simplelist in entries 
and duplicated the corresponding template, manipulating the matching XPath:

<xsl:template match="simplelist[parent::entry and not 
(ancestor::row[descendant::para])]">
  <!-- with no type specified, the default is 'vert' -->
  <!-- as child of entry, no extra space please,
    except when other entries in this row contain para!
But the first para in an entry shouldn't have extra spacing either -->
  <fo:table>
    <xsl:call-template name="simplelist.table.columns">
... and so on, copied from the original template.

But in fact, there is the need of similar exclusions of extra vertical 
space in other situations, for example any list environment that starts 
immediately in a listitem (probably informaltable too). One can not 
foresee all these cases! And treating all these case explicitly in the 
templates (as done with the 3 para types) isn't a solution either (in my 
eyes).

So, one needs a general mechanism, perhaps in analogy to kerning pairs 
of letters. Every letter has its specific width, with fix start and end 
coordinates. But the the kerning pairs say that "VA" is different from 
"VM". Could one imagine a lookup table for elements like "remark", 
"simplelist",... that says, that they have to behave different in 
certain circumstances ("listitem", "entry",...). I have to admit, that I 
have no idea how this could fit into the existing template mechanism, 
but perhaps it can serve as a starting point.

Regards,
Georges


Bob Stayton wrote:

>You are running into one of the hard issues that the stylesheet has to
>solve: how to determine when a para should add space above and when not to.
>The extra spacing is coming from the <para> element after the <remark> in
>the listitem.  That's the normal.para.spacing attribute-set.  The reason you
>don't see it in the entry without the <remark> is because of this template
>in fo:lists.xsl:
>
><xsl:template match="listitem/*[1][local-name()='para' or
>                                   local-name()='simpara' or
>                                   local-name()='formalpara']
>                     |glossdef/*[1][local-name()='para' or
>                                   local-name()='simpara' or
>                                   local-name()='formalpara']
>                     |step/*[1][local-name()='para' or
>                                   local-name()='simpara' or
>                                   local-name()='formalpara']
>                     |callout/*[1][local-name()='para' or
>                                   local-name()='simpara' or
>                                   local-name()='formalpara']"
>              priority="2">
>  <fo:block>
>    <xsl:call-template name="anchor"/>
>    <xsl:apply-templates/>
>  </fo:block>
></xsl:template>
>
>  
>



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]