Dan wrote:
Is there a way to change or delete the default headers that appear in topics:
For example, I’d like to edit or remove the word “Procedure” that appears below
the title when I transform a Task (General) topic. Similarly, I’d like to
change or remove the phrase “Table of Contents” that appears when converting a
Map topic to PDF/HTML.
I’ve been trying figure this out on my own for several days before inquiring
with you how to accomplish this. I've looked through the ditac_toc.xsl and
related files, but haven’t found where these phrases come from or how to
change/remove them. I’ve already created a customization of the default fo.xsl
stylesheet with some of my own attribute sets. Perhaps there are some
stylesheet parameters I can apply to that to change or remove these phrases?
--> Messages like “Procedure”, “Table of Contents” are defined in
xsl/common/messages/en.xml. Excerpts:
---
...
<message name="context">About this task</message>
<message name="steps">Procedure</message>
...
<message name="toc">Table of Contents</message>
<message name="figurelist">List of Figures</message>
...
---
If you want to change some messages, you'll have to edit this file.
--> Suppress some titles:
** TOC
PDF: xsl/fo/ditac_toc.xsl:
---
<xsl:template match="ditac:toc">
<fo:block xsl:use-attribute-sets="toc-container" id="{$tocId}">
<fo:block xsl:use-attribute-sets="toc-title">
<xsl:call-template name="outlineLevel1"/>
<xsl:variable name="title">
<xsl:call-template name="localize">
<xsl:with-param name="message" select="'toc'"/>
</xsl:call-template>
</xsl:variable>
<fo:marker marker-class-name="topic-title">
<xsl:value-of select="$title"/>
</fo:marker>
<xsl:value-of select="$title"/>
</fo:block>
...
---
HTML: xsl/xhtml/ditac_toc.xsl:
---
<xsl:template match="ditac:toc">
<xsl:element name="{$navQName}">
<xsl:attribute name="class" select="'toc-container'"/>
<xsl:attribute name="id" select="$tocId"/>
<h1 class="toc-title">
<xsl:call-template name="localize">
<xsl:with-param name="message" select="'toc'"/>
</xsl:call-template>
</h1>
...
---
** Procedure
PDF: xsl/fo/task.xsl:
---
<xsl:template match="*[contains(@class,' task/steps ')]">
<xsl:call-template name="stepsContents"/>
</xsl:template>
<xsl:template name="stepsContents">
<xsl:param name="addTitle" select="'yes'"/>
<fo:block xsl:use-attribute-sets="steps">
<xsl:call-template name="commonAttributes"/>
<xsl:if test="$addTitle eq 'yes'">
<fo:block xsl:use-attribute-sets="steps-title">
<xsl:call-template name="localize">
<xsl:with-param name="message" select="'steps'"/>
</xsl:call-template>
</fo:block>
</xsl:if>
...
---
See also <xsl:template name="stepsInformalContents">
HTML: xsl/xhtml/task.xsl:
---
<xsl:template match="*[contains(@class,' task/steps ')]">
<xsl:call-template name="stepsContents"/>
</xsl:template>
<xsl:template name="stepsContents">
<xsl:param name="sectionTitleQName" select="'h3'"/>
<xsl:element name="{$sectionQName}">
<xsl:call-template name="commonAttributes"/>
<xsl:if test="$sectionTitleQName ne ''">
<xsl:element name="{$sectionTitleQName}">
<xsl:attribute name="class" select="'steps-title'"/>
<xsl:call-template name="localize">
<xsl:with-param name="message" select="'steps'"/>
</xsl:call-template>
</xsl:element>
</xsl:if>
...
---
See also <xsl:template name="stepsInformalContents">
A simple way to remove these titles is to define attribute-sets:
toc-title
steps-title
steps-informal-title
and CSS classes:
toc-title
steps-title
steps-informal-title
in order to make these titles invisible. Attribute-set example:
---
<xsl:attribute-set name="steps-informal-title">
<xsl:attribute name="visibility">hidden</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="steps-title">
<xsl:attribute name="visibility">hidden</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="toc-title">
<xsl:attribute name="visibility">hidden</xsl:attribute>
</xsl:attribute-set>
---
Note that visibility=hidden is not supported by all XSL-FO processors.
Fortunately it is supported by Apache FOP (PDF output).
---
PS: If you are using XMLmind XSL Utility and not directly ditac, the
xsl/ directory is found in xslutil_install_dir/addon/config/dita/
--
XMLmind DITA Converter Support List
[email protected]
http://www.xmlmind.com/mailman/listinfo/ditac-support