[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: Re: DOCBOOK-APPS: DocBook XML/XSL - shaded?
Howard,
> I've got most things working OK except I can't find a parameter like
> %shaded-verbatim% to make my program listings display with the nice grey
> background.
There is as yet no parameter in Norm's standard XSL distribution that does
this.
> Is there an easy way to do this? Does someone have a modified XSL template
> that shows how to accomplish this?
I have done this in the customization layers I have built for both our
organization and also for the Linux Documentation Project. You can see my
e-smith stylesheet at:
http://www.e-smith.org/docs/e-smith.xsl
and the document describing it at:
http://www.e-smith.org/docs/docprocess.html
The LDP XSLT stylesheets are viewable through the LDP's CVS at:
http://cvsview.linuxdoc.org/index.cgi/builder/xsl/
The relevant file there to look at is 'ldp-html-common.xsl'.
Basically, you want to modify the XSLT template for the elements to
be shaded. The code looks like:
<xsl:template match="programlisting|screen|synopsis">
<xsl:param name="suppress-numbers" select="'0'"/>
<xsl:variable name="vendor" select="system-property('xsl:vendor')"/>
<xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
<xsl:if test="@id">
<a href="{$id}"/>
</xsl:if>
<xsl:choose>
<xsl:when test="$suppress-numbers = '0'
and @linenumbering = 'numbered'
and $use.extensions != '0'
and $linenumbering.extension != '0'">
<xsl:variable name="rtf">
<xsl:apply-templates/>
</xsl:variable>
<table border="0" bgcolor="#E0E0E0" width="90%">
<tr><td>
<pre class="{name(.)}">
<xsl:call-template name="number.rtf.lines">
<xsl:with-param name="rtf" select="$rtf"/>
</xsl:call-template>
</pre>
</td></tr></table>
</xsl:when>
<xsl:otherwise>
<table border="0" bgcolor="#E0E0E0" width="90%">
<tr><td>
<pre class="{name(.)}">
<xsl:apply-templates/>
</pre>
</td></tr></table>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
The key is that you notice I added a <table border=... bgcolor=...>
tag that wraps the contents of the <programlisting>, <screen> or
<synopsis> inside of an HTML table that is shaded.
Enjoy,
Dan
--
Dan York, Director of Training dyork@e-smith.com
Ph: +1-613-751-4401 Mobile: +1-613-263-4312 Fax: +1-613-564-7739
Mitel Network Corporation Network Server Solutions Group
150 Metcalfe St., Suite 1500, Ottawa,ON K2P 1P1 Canada
http://www.e-smith.com/ open source, open mind
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC