(to prevent the break from getting eaten by some normalization
that the stylesheet does on synopses).
Use U+2580 as an internal marker for no-break space (to work
around a similar issue). Closes bug #
1612808. Thanks to Simon
Walter for reporting it (the sbr bug).
<xsl:text>(</xsl:text>
<xsl:value-of select="$snum"/>
<xsl:text>)</xsl:text>
- <xsl:text> </xsl:text>
+ <xsl:text>▀</xsl:text>
<xsl:variable name="synopfragmentref">
<FragRefContents><xsl:value-of select="normalize-space(.)"/></FragRefContents>
</xsl:variable>
</xsl:template>
<xsl:template match="sbr">
- <xsl:text> </xsl:text>
- <xsl:text>⌂br </xsl:text>
+ <xsl:text>▒</xsl:text>
+ <xsl:text>⌂br▒</xsl:text>
</xsl:template>
<xsl:template match="cmdsynopsis">
<xsl:value-of select="$tbl.font.title"/>
<xsl:text> </xsl:text>
<xsl:if test="parent::td">
- <xsl:text>*[nested table]</xsl:text>
+ <xsl:text>*[nested▀table]</xsl:text>
</xsl:if>
<xsl:value-of select="normalize-space($title)"/>
<xsl:text> </xsl:text>
>tbl convert : Extracted a nested table</xsl:text>
</xsl:with-param>
</xsl:call-template>
- <xsl:text>[▓fInested table▓fR]* </xsl:text>
+ <xsl:text>[▓fInested▀table▓fR]* </xsl:text>
</xsl:when>
<xsl:otherwise>
<!-- * Apply templates to the child contents of this cell, to -->
<xsl:call-template name="string.subst">
<xsl:with-param name="string" select="$content"/>
<xsl:with-param name="target" select="' '"/>
- <!-- * We output a real nobreak space here (rather than, "\ ", -->
- <!-- * the roff nobreak space) because, when we do character-map -->
- <!-- * processing before final output, the character-map will -->
- <!-- * handle conversion of the   to "\ " for us -->
- <xsl:with-param name="replacement" select="' '"/>
+ <!-- * U+2580 is a "UPPER HALF BLOCK"; we use it here because -->
+ <!-- * if we were to just use a normal space, it would get -->
+ <!-- * replaced when normalization is done. We replace it -->
+ <!-- * later with the groff markup for non-breaking space. -->
+ <xsl:with-param name="replacement" select="'▀'"/>
</xsl:call-template>
</xsl:template>
<substitution oldstring="▓FB" newstring="\fB"/>
<substitution oldstring="▓FI" newstring="\fI"/>
<substitution oldstring="▓FR" newstring="\fR"/>
+ <!-- * remove no-break marker at beginning of line (stylesheet artifact) -->
+ <substitution oldstring="▒▀" newstring="▒"/>
+ <!-- * replace U+2580 no-break marker (stylesheet-added) w/ no-break space -->
+ <substitution oldstring="▀" newstring="\ "/>
<!-- * replace U+2593 marker with backslash -->
<substitution oldstring="▓" newstring="\"/>
<!-- * escape dashes in content (only at line beginnings) -->
<!-- * -->
<!-- * Product™ -> Product(TM) -->
<substitution oldstring="™" newstring="(TM)"/>
+
+ <!-- ==================================================================== -->
+
+ <!-- * we use U+2592 as a marker for the newline before output of <sbr>; -->
+ <!-- * so we now need to replace U+2592 marker with a real newline -->
+ <substitution oldstring="▒" newstring=" "/>
+
</xsl:param>
</src:fragment>
</refsynopsisdiv>