Subject: Re: [xsl] Indentation question From: knocte <knocte@xxxxxxxxx> Date: Fri, 2 Sep 2005 11:29:50 +0200 |
2005/9/2, Joris Gillis <roac@xxxxxxxxxx>: > Hi, > > Tempore 09:06:47, die 09/02/2005 AD, hinc in xsl-list@xxxxxxxxxxxxxxxxxxxxxx scripsit knocte <knocte@xxxxxxxxx>: > > > Sometimes when I deal with XSLT, if I use this indent method: > > > > <xsl:output method="xml" indent="no" /> > > > > Then I obtain all the results in one line, no EOL's. > > > > But I have found a case where this is not true, why? > > Because your xslt snippet contains non-whitespace-only text nodes with line-breaks, which are copied in an unaffected matter (whitespaces preserved) to the result tree. > > To avoid this, change > > > <xsl:when test="LoginName"> > > 1 > > </xsl:when> > > to > > <xsl:when test="LoginName">1</xsl:when> > > or to > > <xsl:when test="LoginName"> > <xsl:text>1</xsl:text> > </xsl:when> > > > regards, > Thanks Joris. I have fixed some annoying whitespaces with this advice. But now I have another related issue: In HTML I have the advantage of writing a paragraph using EOL's and don't worrying about the end view of the page because EOL's will be converted to whitespaces. Example: <p> This is a easy-to-edit paragraph because I can break it into multiple lines. <p> The result in the browser will not contain any line-breaks. Now, doesn't XSLT provide a "similar" way to edit paragraphs without sending unnecessary line-breaks to the final result? I mean, given this: <xsl:when test="whatever"> <p> This is my paragraph which I want to break in multiple lines so as to edit it later more easily. </p> </xsl:when> If I use this, I obtain the unnecessary blank spaces which are present between the words "multiple" and "lines". If I use <xml:text> with the whole paragraph I will obtain the same because I still use line-breaks: <xsl:when test="whatever"> <p> <xsl:text> This is my paragraph which I want to break in multiple lines so as to edit it later more easily. </xsl:text> </p> </xsl:when> The unique solution I have is to use <xsl:text> for EVERY LINE. This is not very comfortable to maintain and also I have to worry about putting a final whitespace at the end of each line (except the last one) so as not to concatenate incorrectly: <xsl:when test="whatever"> <p> <xsl:text>This is my paragraph which I want to break in multiple </xsl:text> <xsl:text>lines so as to edit it later more easily.</xsl:text> </p> </xsl:when> Is there any better solution out there for this issue? Thanks, Andrew --
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Indentation question, Joris Gillis | Thread | RE: [xsl] Indentation question, Michael Kay |
Re: [xsl] Quoting quote, andrew welch | Date | AW: [xsl] Quoting quote, Lensch, Thomas |
Month |