I've moved this to the dev list so that it can be considered for entry into the Forrest stylesheets. I'm not sure of the implications of your suggestion, but on the surface it looks good.

(devs see mail below).

Ross

Stefan Baramov wrote:
| -----Original Message-----
| From: Ross Gardler [mailto:[EMAIL PROTECTED] | Sent: Friday, February 11, 2005 6:44 PM
| To: [email protected]
| Subject: Re: Appling CSS class to the source tag in apache doc
| | | The source tag has a specific meaning hence the class="code" | attribute. | However, the skin should really allow the user to pass class | information | in the way you illustrate in order to allow custom styling. I would | consider this a bug, please file a bug report.
| | I think a solution is to change the following in | main/webapp/skins/common/html/document2html.xsl:
| | <xsl:template match="source">
| <xsl:apply-templates select="@id"/>
| <pre class="code">
| | to:
| | <xsl:template match="source">
| <xsl:apply-templates select="@id"/>
| <pre>
| <xsl:attribute name="class">
| <xsl:apply-templates select="@class"/>, code
| </xsl:attribute>
| | Please test it and let us know if this works.
|


I've tested and it works just fine. I will try to file a bug report.

However, let me explained my original issue and why I did want to apply
a style to <pre> tag.
The problem with the <pre> tag is that it does not wrap long lines. So
if you have a log file dump or any thing else with very long the line,
the final document looks very ugly. So I found a solution to apply a
CSS:


    .myskin {
      font-size: 95%;
      white-space: pre-wrap;       /* css-3 */
      white-space: -moz-pre-wrap;  /* Mozilla, since 1999 */
      white-space: -pre-wrap;      /* Opera 4-6 */
      white-space: -o-pre-wrap;    /* Opera 7 */
      word-wrap: break-word;       /* Internet Explorer 5.5+ */
word-wrap:break-word;
    }

( I have not invented this one, found it through google )

It worked fine both in Firefox and IE6 for <pre> tags. However, it does
not work so well for <p> tags in IE6 since IE6 does not really support
white-space: pre-wrap;. But hey who is using this old browser anyway ;)


I am documenting this because in the

Forrest-0.6\src\core\context\skins\common\xslt\html\document2html.xsl

I found this for the <pre> tag:

<!-- Temporarily removed long-line-splitter ... gives out-of-memory
problems -->
<xsl:apply-templates/>
<!--
<xsl:call-template name="format">
<xsl:with-param select="." name="txt" /> <xsl:with-param name="width">80</xsl:with-param> </xsl:call-template>
-->


And if this is causing out-of-memory errors, then may be a CSS can be
applied (only for the <pre> tags) instead of XSL. Just a suggestion

- Stefan






Reply via email to