Hi Jason,
You will want to copy the template named 'toc.line' from html/autotoc.xsl to 
your customization layer and modify it to add author.  This line of XSL 
generates the title:

        <xsl:apply-templates select="." mode="titleabbrev.markup"/>

The context node for that template is the element for that line in a TOC 
(chapter, section, etc.).  So you would want to add an xsl:if statement after 
the title to include the author, something like this for DocBook 5 (remove the 
d: namespace prefix if DocBook 4):

<xsl:if test="(self::d:chapter or self::d:article) and d:info/d:author">
  <xsl:text> </xsl:text>
  <span class="tocauthor">
    <xsl:variable name="author">
      <xsl:apply-templates select="d:info/d:author[1]" mode="titlepage.mode"/>
    </xsl:variable>
    <xsl:value-of select="$author"/>
  </span>
</xsl:if>

The $author variable is used to strip any formatting that would be applied by 
titlepage.mode using xsl:value-of, which returns only text.

You can add a CSS selector matching on class 'tocauthor' to format the author 
name in the TOC.

Bob Stayton
Sagehill Enterprises
[email protected]


  ----- Original Message ----- 
  From: Jason Zech 
  To: [email protected] 
  Sent: Wednesday, June 01, 2011 9:20 AM
  Subject: [docbook-apps] Adding author name to TOC


  Hi,

   

  Is there a relatively simple way to customize the TOC generation so that the 
author name is included with the chapter/article title in the TOC for HTML 
output? I am working a on book of pieces by dozens of authors and would like to 
include the author names in the TOC without having to manually generate the TOC 
(if possible).

   

  Thanks,

   

   

  Jason Zech | Project Manager, Digital Workflow | New Product Development 
  [ph] 773-281-1818 x212   [fax] 773-281-4129 | [email protected]

  LoyolaPress. | A Jesuit Ministry 
  3441 N. Ashland Ave. | Chicago, IL 60657 | www.loyolapress.com 
  Join our online community of advisors: www.SpiritedTalk.org

   

Reply via email to