Hi,
 
Thank you for the reply.
 
Adding [- $optRawInput = 1 -] did not make things better but worse. It generates more runtime errors.
 
I think you might have misunderstood my problem. The point of trouble is at the second END instead of the first one.
 
I'm sure that Embperl (I'm using version 1.2b9) does NOT remove CRs from page sources. This is because it runs good when I use vi to remove the CR immediately after the second 'END'. But manual removal of CR is, after all, not the solution.
 
Which version of Embperl removes CR?
 
Thanks.
 
Huang-Ming
----- Original Message -----
Sent: Saturday, April 29, 2000 8:20 PM
Subject: RE: PERL string terminator with Carriage Return...

 
 
Everything is ok except when I use the following Perl string terminator construct:
[+
print <<END;
111111111111
222222222222
END
+]
Embperl complains with:

[2310]ERR: 24: Line 10: Error in Perl code: (in cleanup) Can't find string terminator "
    END" anywhere before EOF at /usr/local/apache/htdocs/test.htm line 11.

When I dig into the file source with vi, there is a  ^M (ie. CarriageReturn) immediately following "END". I think Perl won't allow anything execpt LineFeed (0A) to follow the string terminator, END here.

Embperl already removes the CR from your source (because Perl 5.004 don't like CR's at all). 

Does it change anything when you put the block [- $optRawInput = 1 -] before the above code? or you can write &lt;&lt; instead of the <<. Otherwise Embperl will treat the << as the start of an HTML tag and removes the rest of the block. This is done to get rid of unwanted HTML tags e.g. <BR> that are inserted by FrontPage or other editors in your perl code.

Gerald

P.S. Support for Embperl has moved from modperl to embperl mailing list 

Reply via email to