Hi Bob,

Glad to help.

Looking at the rest of this thread, it is interesting that in DB 5, parameter 
is not allowed in function. I don't see a problem allowing replaceable, but if 
we want to preserve the usefulness of the function.parens capability, it might 
be worth considering allowing parameter back in.

Can you add a discussion of this question to the agenda for the next TC 
meeting? Then if the TC thinks we should go forward, I'd be glad to file an RFE.

Best regards,
Dick
-------
XML Press
XML for Technical Communicators
http://xmlpress.net
[email protected]



On Nov 6, 2012, at 11:12 AM, Bob Stayton wrote:

> Hi Dick,
> Thanks for noticing that the comma insertion should be controlled by the 
> 'function.parens' stylesheet param.  I made the fix that you suggested to 
> make the comma conditional on that param.  By default, the commas will be off 
> now, as they should be.
> 
> Bob Stayton
> Sagehill Enterprises
> [email protected]
> 
> --------------------------------------------------
> From: "Richard Hamilton" <[email protected]>
> Sent: Monday, November 05, 2012 5:37 PM
> To: "Bob Stayton" <[email protected]>
> Cc: "Stefan Seefeld" <[email protected]>; "DocBook Apps Mailing List" 
> <[email protected]>
> Subject: Re: [docbook-apps] semantics of "replaceable" element.
> 
>> I missed that this only happened when there was a sibling. The example I 
>> tried only had one instance of replaceable embedded. When I added a second 
>> instance, it worked exactly as Stefan describes. Sorry for any confusion.
>> 
>> To complete what I suspect Bob was going to suggest, you can add a template 
>> to your customization that removes this behavior (the template below would 
>> do the job).
>> 
>> I just looked at the stylesheets, and they include a parameter called 
>> function.parens, which when set will take input of the following type:
>> 
>> <function>foo<replaceable>x</replaceable><replaceable>y</replaceable></function>
>> and render it as: foo(x, y).
>> 
>> The problem seems to be that the template for d:function checks this 
>> parameter, but the template for d:function/d:replaceable (and 
>> d:function/d:parameter) doesn't . The result when function.parens is set to 
>> 0 is inconsistent.
>> 
>> I think the following change would fix the problem for Stefan, and leave the 
>> capability in for anyone who wants to use function.parens:
>> 
>> <xsl:template match="d:function/d:replaceable" priority="2">
>> <xsl:call-template name="inline.italicmonoseq"/>
>> <xsl:if test="$function.parens != '0' and following-sibling::*">  <!--  here 
>> is the changed line -->
>>   <xsl:text>, </xsl:text>
>> </xsl:if>
>> </xsl:template>
>> 
>> You'd need to do the same with d:function/d:parameter, too, though it 
>> appears that parameter is not allowed inside function, so it may be a moot 
>> point.
>> 
>> Dick
>> -------
>> XML Press
>> XML for Technical Communicators
>> http://xmlpress.net
>> [email protected]
>> 
>> 
>> 
>> On Nov 5, 2012, at 5:13 PM, Bob Stayton wrote:
>> 
>>> I checked the archives, and apparently these templates that add a comma in 
>>> the context of the function element were added very early in the XSL 
>>> development, back in 2001.  Given the variety of elements that function can 
>>> contain, including indexterms,and the variety of contexts in which function 
>>> can appear, including para, does anyone think these generated commas are 
>>> appropriate?  Are there more restricted contexts where they might be 
>>> appropriate?  If we eliminate the generated commas, would that mess up a 
>>> lot of output?
>>> 
>>> For now, I would suggest that you
>>> 
>>> Bob Stayton
>>> Sagehill Enterprises
>>> [email protected]
>>> 
>>> --------------------------------------------------
>>> From: "Stefan Seefeld" <[email protected]>
>>> Sent: Monday, November 05, 2012 4:05 PM
>>> To: "Richard Hamilton" <[email protected]>
>>> Cc: "DocBook Apps Mailing List" <[email protected]>
>>> Subject: Re: [docbook-apps] semantics of "replaceable" element.
>>> 
>>>> On 11/05/2012 06:50 PM, Richard Hamilton wrote:
>>>>> Hi Stefan,
>>>>> 
>>>>> I suspect the problem is in your customization. I just tried this with 
>>>>> 1.77.1 (PDF and HTML), and there were no commas inserted in the output.
>>>> 
>>>> Hi Richard,
>>>> 
>>>> thanks for following up so quickly. I don't yet use a customization for
>>>> this. Please have a look at either the fo/inline.xsl or html/inline.xsl
>>>> stylesheets and look for the template matching
>>>> "d:function/d:replaceable". It does indeed add a comma if there is more
>>>> content after the replaceable element:
>>>> 
>>>> <xsl:template match="d:function/d:replaceable" priority="2">
>>>> <xsl:call-template name="inline.italicmonoseq"/>
>>>> <xsl:if test="following-sibling::*">
>>>>  <xsl:text>, </xsl:text>
>>>> </xsl:if>
>>>> </xsl:template>
>>>> 
>>>> (In my docs I have things like
>>>> <function>vsip_<replaceable>d</replaceable>clip</function>, such that
>>>> the comma would be inserted between the 'd' and the 'clip'.
>>>> 
>>>>  Stefan
>>>> 
>>>> -- 
>>>> 
>>>>    ...ich hab' noch einen Koffer in Berlin...
>>>> 
>>>> 
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [email protected]
>>>> For additional commands, e-mail: [email protected]
>>>> 
>>>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>> 
>> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to