perl-embperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Neil Gunton <n...@nilspace.com>
Subject Re: Stop embperl from messing with my code
Date Thu, 24 Jul 2008 14:52:25 GMT
Jean-Christophe Boggio wrote:
> Hello,
> 
> I have really strange behaviours in my generated pages and I suspect
> embperl to be "modifying" my html. I'd like to prevent this.
> 
> The case is this (I use Embperl Object) :
> 
> base.epl:
>     <div id="upperband">
>         <a href="/" class="noborder"> [- Execute('upperband.epl'); -]</a>
>     </div>
> 
> upperband.epl:
>     <img src="/img/upperband_home.png" class="noborder" />
> 
> subdir/upperband.epl:
>     <img src="/img/upperband_subdir.png" class="noborder" />
> 
> 
> As you see, I want a different image in the upper band depending on 
> where the
> user is.
> 
> The problem lies in base.epl : immediately after the <a href="/" 
> class="noborder">
> and before the [- Execute... -]
> 
> * If I leave the space, I get... a (vertical) space after the block.
> * If I remove the space, the generated code is this :
> 
> <a href="/"  class="noborder"<img src="/img/upperband_home.png"  
> class="noborder" />
>  ></a>
> 
> So my "<a ...>" tag is broken and I see the ">" character.
> 
> 
> Also, I take the care of having only one space between 'href="/"' and 
> 'class=...'
> and I'd like embperl not to add useless spaces. On a big page with lots 
> of tags
> it becomes significant.
> 
> 
> Is there a way to disable embperl's reinterpretation of the HTML code ? 
> I never
> use the auto-table-like features.
> 
> Thanks,
> 

This does look like an Embperl bug, based on your description of what 
changes in the output when you change your code. However, there is a way 
to modify what Embperl does in terms of processing HTML tags - assuming 
you are compiling Embperl from source. I wanted to keep the forms 
processing (i.e. have Embperl still process input tags) but didn't want 
it messing with TABLE and TR etc, which it was barfing on because of the 
nesting being messed up by conditional blocks. So I just went and edited 
the EmbperlHTML syntax source file and removed all the bits that looked 
like being related to tables. Under the Embperl source tree, this file 
is in Embperl/Syntax/EmbperlHTML.pm. You need to recompile an reinstall 
Embperl, obviously. This is (to me) a hack, but at least it might let 
you experiment with a workaround...

Neil

---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-help@perl.apache.org


Mime
View raw message