thanks for the suggestion howard, this would be fine if it were obvious
to all developers which cases were problematic. otherwise it's a case of
putting out spot fires which isn't good.
i still think making the whitespace compressor more intelligent ie
replacing multiple whitespace chars with a single space is preferable.
that way we still get 99% of the benefits of compression yet none of the
drawbacks.
is there a way to override the implementation of the class that does this?
regards, paul.
Howard Lewis Ship wrote:
Where whitespace counts, add an xml:space="preserve" attribute to the
enclosing tag, i.e.
<p xml:space="preserve">This is my paragraph and sometimes a single
word or phrase <span style="text-decoration:underline;">might need
some special attention</span> <span style="font-weight:bold;">so I
might do this</span>, but it's still <span
style="font-style:italic;">my</span> paragraph.</p>
On Wed, Jul 14, 2010 at 9:27 PM, Paul Stanton <p...@mapshed.com.au> wrote:
Firstly, I'd like to say that tapestry does most things very well and I
probably only comment on the things it doesn't do well. Thank you to those
who've spent time improving the framework for making my job as a developer
more enjoyable.
I do have an issue with the production mode Considering the following in
your average TML:
<p>This is my paragraph and sometimes a single word or phrase <span
style="text-decoration:underline;">might need some special attention</span>
<span style="font-weight:bold;">so I might do this</span>, but it's still
<span style="font-style:italic;">my</span> paragraph.</p>
or a shorter eg:
<p>A <span>B</span> <span>C</span> D</p>
In development mode, this will render unchanged:
A B C D
However in production mode, tapestry will take out some important
whitespace:
A BC D
I know you can partially combat this by using a non-breaking space in the
markup ( ) however, this has the expected drawback of disallowing line
breaking where it may be required.
for example, a list of links:
<a href="url1">1</a>
<a href="url2">2</a>
<a href="url3">3</a>
<a href="url4">4</a>
<a href="url5">5</a>
...
becomes
<a href="url1">1</a><a href="url2">2</a><a href="url3">3</a><a
href="url4">4</a><a href="url5">5</a>...
I agree that some 'compression' on html syntax is a good thing in a
production environment, but to keep the integrity of the document I think
tapestry should replace multiple whitespace characters with one whitespace
character instead of removing all whitespace between tags. Therefore, while
I know I can set "tapestry.compress-whitespace" to false, I would prefer to
have my suggestion implemented in place of the existing mechanism or as an
alternative.
The main issues for me:
1. Rendered markup is fundamentally different between production and
development environments, making the most commonly used form of testing
flawed
2. In some cases a space is the only solution to layout problems and
tapestry won't allow it
Keen to hear other opinions...
p.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org