Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 5869aef

Browse files
committed
Fix documentation build with older docbook-xsl
Commit b0f0a94 backpatched some code from upstream DocBook XSL to our customization layer. It turned out that this failed to work with anything but the latest DocBook XSL upstream version (1.79.*), because the backpatched code references an XSLT parameter (autolink.index.see) that is not defined in earlier versions (because the feature it is used for did not exist yet). There is no way in XSLT to test whether a parameter is declared before the stylesheet processor tries and fails to access it. So the possibilities to fix this would be to either remove the code that uses the parameter (and thus give up on the feature it is used for) or declare the parameter in our customization layer. The latter seems easier, and with a few more lines of code we can backport the entire autolink.index.see feature, so let's do that. (If we didn't, then with older stylesheets the parameter will appear as on, but it won't actually do anything, because of the way the stylesheets are laid out, so it's less confusing to just make it work.) With this, the documentation build should work again with docbook-xsl versions 1.77.*, 1.78.*, and 1.79.* (which already worked before). Version 1.76.1 already didn't work before all this, so was not considered here. Reported-by: Peter Smith <smithpb2250@gmail.com> Discussion: https://www.postgresql.org/message-id/flat/9077b779-a9f8-09c8-6e85-da1ebfba15af@eisentraut.org
1 parent 254361c commit 5869aef

File tree

3 files changed

+15
-0
lines changed

3 files changed

+15
-0
lines changed

doc/src/sgml/stylesheet-common.xsl

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,13 @@
4343
<xsl:param name="variablelist.term.separator"></xsl:param>
4444
<xsl:param name="xref.with.number.and.title" select="0"></xsl:param>
4545

46+
<!--
47+
This is the default setting, but putting it here makes sure the variable
48+
exists even with older (<1.79) stylesheet versions, because it is used in
49+
our customization layer.
50+
-->
51+
<xsl:param name="autolink.index.see" select="1"/>
52+
4653

4754
<!-- Change display of some elements -->
4855

doc/src/sgml/stylesheet-fo.xsl

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,10 @@
147147

148148
<!-- from fo/autoidx.xsl -->
149149

150+
<xsl:key name="primaryonly"
151+
match="indexterm"
152+
use="normalize-space(primary)"/>
153+
150154
<xsl:template match="indexterm" mode="index-primary">
151155
<xsl:param name="scope" select="."/>
152156
<xsl:param name="role" select="''"/>

doc/src/sgml/stylesheet-html-common.xsl

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -441,6 +441,10 @@ set toc,title
441441

442442
<!-- from html/autoidx.xsl -->
443443

444+
<xsl:key name="primaryonly"
445+
match="indexterm"
446+
use="normalize-space(primary)"/>
447+
444448
<xsl:template match="indexterm" mode="index-primary">
445449
<xsl:param name="scope" select="."/>
446450
<xsl:param name="role" select="''"/>

0 commit comments

Comments
 (0)