richter 2002/10/15 23:48:02
Modified: . Tag: Embperl2c Changes.pod Embperl.pod EmbperlD.pod
epcomp.c epparse.c test.pl
Embperl/Syntax Tag: Embperl2c EmbperlBlocks.pm
test/cmp Tag: Embperl2c loop.htm
test/cmp2 Tag: Embperl2c input.htm loop.htm
test/conf Tag: Embperl2c httpd.conf.src
test/html Tag: Embperl2c input.htm loop.htm
Log:
last,next,redo
Revision Changes Path
No revision
No revision
1.129.4.99 +3 -0 embperl/Changes.pod
Index: Changes.pod
===================================================================
RCS file: /home/cvs/embperl/Changes.pod,v
retrieving revision 1.129.4.98
retrieving revision 1.129.4.99
diff -u -r1.129.4.98 -r1.129.4.99
--- Changes.pod 14 Oct 2002 05:05:45 -0000 1.129.4.98
+++ Changes.pod 16 Oct 2002 06:48:00 -0000 1.129.4.99
@@ -32,6 +32,9 @@
and doesn't work as before.
- Fixed problem with [$ sub $] when running under Perl 5.8.0.
- Fixed problem when STDOUT is tied, because storege has changed in Perl 5.8.0.
+ - Fixed problem when single quote or backslash is inside of option or input
value.
+ Bug reported by Saadiq Rodgers-King.
+ - Added [$last$], [$next$], [$redo$] and documented [* next *] etc.
- Readdeded missing MailFormTo and added test for it.
=head1 2.0b8 (BETA) 25. Juni 2002
1.56.4.19 +23 -3 embperl/Embperl.pod
Index: Embperl.pod
===================================================================
RCS file: /home/cvs/embperl/Embperl.pod,v
retrieving revision 1.56.4.18
retrieving revision 1.56.4.19
diff -u -r1.56.4.18 -r1.56.4.19
--- Embperl.pod 27 Aug 2002 03:38:03 -0000 1.56.4.18
+++ Embperl.pod 16 Oct 2002 06:48:00 -0000 1.56.4.19
@@ -254,6 +254,26 @@
[+ $v +] <BR>
[$ endforeach $]
+=item B<next>
+
+Inside of looks same as Perl next statement. You could also use the following
+syntax, which allows to add an addtional condition (or any other Perl code):
+
+ [* next if ($foo) *]
+
+=item B<last>
+
+Inside of looks same as Perl last statement. You could also use the following
+syntax, which allows to add an addtional condition (or any other Perl code):
+
+ [* last if ($foo) *]
+
+=item B<redo>
+
+Inside of looks same as Perl redo statement. You could also use the following
+syntax, which allows to add an addtional condition (or any other Perl code):
+
+ [* redo if ($foo) *]
=item B<hidden>
@@ -1226,9 +1246,9 @@
=item perl5.6.1
-=item perl5.7.1
+=item perl5.8.0
-=item apache_1.3.0 - apache_1.3.19
+=item apache_1.3.0 - apache_1.3.27
=item apache_ssl (Ben SSL)
@@ -1401,7 +1421,7 @@
Vim Syntaxfile for Vim 5.x & 6.x from Lukas Zapletal with syntax highliting for
JavaScript, VBScript,
Perl+Embperl, CSS and HTML, yellow background for Perl`s code (like M$ Interdev) and
working Perl folding can be found at
-http://vim.sourceforge.net/scripts/search_results.php?keywords=Embperl
+http://vim.sourceforge.net/script.php?script_id=61
Vim Syntaxfile from Steve Willer can be found at
http://www.interlog.com/~willer/embperl.vim
1.29.4.18 +31 -5 embperl/EmbperlD.pod
Index: EmbperlD.pod
===================================================================
RCS file: /home/cvs/embperl/EmbperlD.pod,v
retrieving revision 1.29.4.17
retrieving revision 1.29.4.18
diff -u -r1.29.4.17 -r1.29.4.18
--- EmbperlD.pod 27 Aug 2002 03:38:03 -0000 1.29.4.17
+++ EmbperlD.pod 16 Oct 2002 06:48:00 -0000 1.29.4.18
@@ -254,6 +254,32 @@
[$ endforeach $]
+=item B<next>
+
+Hat die selbe Funktion wie das Perl next statement. Es kann auch folgende
+Syntax benutzt werden, wodurch eine zus�tzliche Bedingung (oder anderer Perlcode)
+eingef�gt werden kann:
+
+ [* next if ($foo) *]
+
+=item B<last>
+
+Hat die selbe Funktion wie das Perl last Statement. Es kann auch folgende
+Syntax benutzt werden, wodurch eine zus�tzliche Bedingung (oder anderer Perlcode)
+eingef�gt werden kann:
+
+ [* last if ($foo) *]
+
+
+=item B<redo>
+
+Hat die selbe Funktion wie das Perl redo statement. Es kann auch folgende
+Syntax benutzt werden, wodurch eine zus�tzliche Bedingung (oder anderer Perlcode)
+eingef�gt werden kann:
+
+ [* redo if ($foo) *]
+
+
=item B<hidden>
B<Arg> gibt keinen, einen oder zwei Hashs an (mit oder ohne
@@ -1220,7 +1246,7 @@
=item perl 5.6.1
-=item perl 5.7.1
+=item perl 5.8.0
=item apache_1.3.0 - apache_1.3.19
@@ -1247,7 +1273,7 @@
=item perl 5.6.0
-=item apache_1.3.0 - apache_1.3.19
+=item apache_1.3.0 - apache_1.3.27
=back
@@ -1386,10 +1412,10 @@
Von: Erik Arneson [[EMAIL PROTECTED]]
Man braucht mmm.el von
-http://members.tripod.com/gchen2/xemacs/
+http://mmm-mode.sourceforge.net/
Anschlie�end mu� man mein mmm-embperl.el downloaden von
-http://mmm-mode.sourceforge.net/
+http://www.aarg.net/erik/mmm-embperl.el
Dokumentation ist in den Dateien enthalten.
@@ -1398,7 +1424,7 @@
Vim Syntaxfile f�r Vim 5.x & 6.x von Lukas Zapletal mit syntax highliting f�r
JavaScript, VBScript,
Perl+Embperl, CSS und HTML, gelbem Hintergrund f�r Perl code (wie M$ Interdev) und
funktionierendem Perl folding:
-http://vim.sourceforge.net/scripts/search_results.php?keywords=Embperl
+http://vim.sourceforge.net/script.php?script_id=61
Vim Syntaxfile von Steve Willer: http://www.interlog.com/~willer/embperl.vim
1.4.2.100 +24 -3 embperl/Attic/epcomp.c
Index: epcomp.c
===================================================================
RCS file: /home/cvs/embperl/Attic/epcomp.c,v
retrieving revision 1.4.2.99
retrieving revision 1.4.2.100
diff -u -r1.4.2.99 -r1.4.2.100
--- epcomp.c 11 Oct 2002 15:45:22 -0000 1.4.2.99
+++ epcomp.c 16 Oct 2002 06:48:00 -0000 1.4.2.100
@@ -351,8 +351,29 @@
{
if (out == 2)
{
- StringAdd (r -> pApp, ppCode, "'", 1) ;
- StringAdd (r -> pApp, ppCode, sText, l) ;
+ const char * s = sText ;
+
+ StringAdd (r -> pApp, ppCode, "'", 1) ;
+ while (*s && l--)
+ {
+ if (*s == '\'')
+ {
+ if (sText < s)
+ StringAdd (r -> pApp, ppCode, sText, s - sText) ;
+ StringAdd (r -> pApp, ppCode, "\\'", 2) ;
+ sText = s + 1 ;
+ }
+ else if (*s == '\\')
+ {
+ if (sText < s)
+ StringAdd (r -> pApp, ppCode, sText, s - sText) ;
+ StringAdd (r -> pApp, ppCode, "\\\\", 2) ;
+ sText = s + 1 ;
+ }
+ s++ ;
+ }
+ if (sText < s)
+ StringAdd (r -> pApp, ppCode, sText, s - sText) ;
StringAdd (r -> pApp, ppCode, "'", 1) ;
}
else if (out)
1.4.2.57 +10 -4 embperl/Attic/epparse.c
Index: epparse.c
===================================================================
RCS file: /home/cvs/embperl/Attic/epparse.c,v
retrieving revision 1.4.2.56
retrieving revision 1.4.2.57
diff -u -r1.4.2.56 -r1.4.2.57
--- epparse.c 18 Jun 2002 06:27:34 -0000 1.4.2.56
+++ epparse.c 16 Oct 2002 06:48:00 -0000 1.4.2.57
@@ -722,8 +722,10 @@
if (bUnescape)
{
+ int newlen ;
r -> Component.bEscInUrl = bUnescape - 1 ;
- TransHtml (r, pCurrStart, pEnd - pCurrStart + 1) ;
+ newlen = TransHtml (r, pCurrStart, pEnd - pCurrStart +
1) ;
+ pEnd = pCurrStart + newlen - 1 ;
r -> Component.bEscInUrl = 0 ;
}
@@ -764,8 +766,10 @@
if (pToken -> bUnescape)
{
+ int newlen ;
r -> Component.bEscInUrl = pToken -> bUnescape - 1 ;
- TransHtml (r, pCurr, pEnd - pCurr) ;
+ newlen = TransHtml (r, pCurr, pEnd - pCurr) ;
+ pEnd = pCurr + newlen ;
r -> Component.bEscInUrl = 0 ;
}
@@ -937,8 +941,10 @@
if (pToken -> bUnescape)
{
+ int newlen ;
r -> Component.bEscInUrl = pToken -> bUnescape
- 1 ;
- TransHtml (r, pCurr, pEnd - pCurr) ;
+ newlen = TransHtml (r, pCurr, pEnd - pCurr) ;
+ pEnd = pCurr + newlen ;
r -> Component.bEscInUrl = 0 ;
}
1.70.4.143 +2 -2 embperl/test.pl
Index: test.pl
===================================================================
RCS file: /home/cvs/embperl/test.pl,v
retrieving revision 1.70.4.142
retrieving revision 1.70.4.143
diff -u -r1.70.4.142 -r1.70.4.143
--- test.pl 11 Oct 2002 19:40:55 -0000 1.70.4.142
+++ test.pl 16 Oct 2002 06:48:01 -0000 1.70.4.143
@@ -230,7 +230,7 @@
'version' => 1,
},
'input.htm' => {
- 'query_info' =>
'feld5=Wert5&feld6=Wert6&feld7=Wert7&feld8=Wert8&cb5=cbv5&cb6=cbv6&cb7=cbv7&cb8=cbv8&cb9=ncbv9&cb10=ncbv10&cb11=ncbv11&mult=Wert3&mult=Wert6&esc=a<b&escmult=a>b&escmult=Wert3',
+ 'query_info' =>
'feld5=Wert5&feld5a=Wert4\'y\'r&feld5b="Wert5"&feld6=Wert6&feld7=Wert7&feld8=Wert8&cb5=cbv5&cb6=cbv6&cb7=cbv7&cb8=cbv8&cb9=ncbv9&cb10=ncbv10&cb11=ncbv11&mult=Wert3&mult=Wert6&esc=a<b&escmult=a>b&escmult=Wert3',
},
'hidden.htm' => {
'query_info' => 'feld1=Wert1&feld2=Wert2&feld3=Wert3&feld4=Wert4',
No revision
No revision
1.1.2.27 +21 -1 embperl/Embperl/Syntax/Attic/EmbperlBlocks.pm
Index: EmbperlBlocks.pm
===================================================================
RCS file: /home/cvs/embperl/Embperl/Syntax/Attic/EmbperlBlocks.pm,v
retrieving revision 1.1.2.26
retrieving revision 1.1.2.27
diff -u -r1.1.2.26 -r1.1.2.27
--- EmbperlBlocks.pm 11 Oct 2002 15:45:22 -0000 1.1.2.26
+++ EmbperlBlocks.pm 16 Oct 2002 06:48:01 -0000 1.1.2.27
@@ -335,6 +335,26 @@
perlcode => 'use strict ;',
removenode => 3,
}) ;
+ $self -> AddMetaCmd ('next',
+ {
+ perlcode => 'next;',
+ removenode => 3,
+ }) ;
+ $self -> AddMetaCmd ('last',
+ {
+ perlcode => 'last;',
+ removenode => 3,
+ }) ;
+ $self -> AddMetaCmd ('redo',
+ {
+ perlcode => 'redo;',
+ removenode => 3,
+ }) ;
+ $self -> AddMetaCmd ('next',
+ {
+ perlcode => 'next;',
+ removenode => 3,
+ }) ;
$self -> AddMetaCmd ('hidden',
{
perlcode => '_ep_hid(%$n%,%&\'<noname>%);',
No revision
No revision
1.9.4.2 +8 -0 embperl/test/cmp/loop.htm
Index: loop.htm
===================================================================
RCS file: /home/cvs/embperl/test/cmp/loop.htm,v
retrieving revision 1.9.4.1
retrieving revision 1.9.4.2
diff -u -r1.9.4.1 -r1.9.4.2
--- loop.htm 14 Sep 2000 05:08:30 -0000 1.9.4.1
+++ loop.htm 16 Oct 2002 06:48:02 -0000 1.9.4.2
@@ -221,6 +221,14 @@
y
+a
+b
+x = a = z
+x = b = z
+last = a = z
+last = b = z
+next = a = z
+next = c = z
</body>
</html>
No revision
No revision
1.1.2.11 +24 -2 embperl/test/cmp2/Attic/input.htm
Index: input.htm
===================================================================
RCS file: /home/cvs/embperl/test/cmp2/Attic/input.htm,v
retrieving revision 1.1.2.10
retrieving revision 1.1.2.11
diff -u -r1.1.2.10 -r1.1.2.11
--- input.htm 20 Mar 2002 20:38:59 -0000 1.1.2.10
+++ input.htm 16 Oct 2002 06:48:02 -0000 1.1.2.11
@@ -15,6 +15,8 @@
<input name="feld5" value="Wert5">
<input name="feld1" value="Wert1">
<input name="feld5" value="Wert15">
+ <input name="feld5a">
+ <input name="feld5b">
<input name="feld1" value="">
<input name="feld5" value="">
<input type="text">
@@ -135,6 +137,18 @@
<option>Wert5
</select>
+ <select name="feld5a">
+ <option>Wert3'x</option>
+ <option selected>Wert4'y'r</option>
+ <option>Wert5\#\\'#''</option>
+ </select>
+
+ <select name="feld5a">
+ <option>Wert3'x
+ <option>Wert4'y'r
+ <option>Wert5\#\\'#''
+ </select>
+
<select name="mult" multiple>
<option value="Wert1">Wert1</option>
<option value="Wert2">Wert2</option>
@@ -158,7 +172,7 @@
</select>
- ks = cb1 cb2 cb5 cb6 cb7 cb8 dec feld1 feld2 feld3 feld4 feld5 feld6 feld7
feld8 mult neu1 neu2 neu3 undef<p>
+ ks = cb1 cb2 cb5 cb6 cb7 cb8 dec feld1 feld2 feld3 feld4 feld5 feld5a feld6
feld7 feld8 mult neu1 neu2 neu3 undef<p>
<table border=9>
<tr>
@@ -210,6 +224,10 @@
</tr>
<tr>
+ <td>feld5a</td><td>Wert4'y'r</td>
+ </tr>
+
+ <tr>
<td>feld6</td><td>Wert6</td>
</tr>
@@ -457,7 +475,7 @@
<input type="text" name="feld1" value="">
<input type="text" name="feld1" value="">
</p>
- ks = cb1 cb2 cb5 cb6 cb7 cb8 dec feld1 feld2 feld3 feld4 feld5 feld6 feld7
feld8 mult neu1 neu2 neu3 ta undef<p>
+ ks = cb1 cb2 cb5 cb6 cb7 cb8 dec feld1 feld2 feld3 feld4 feld5 feld5a feld6
feld7 feld8 mult neu1 neu2 neu3 ta undef<p>
<table border=10>
<tr>
@@ -506,6 +524,10 @@
<tr>
<td>feld5</td><td>Wert5</td>
+ </tr>
+
+ <tr>
+ <td>feld5a</td><td>Wert4'y'r</td>
</tr>
<tr>
1.1.2.3 +8 -0 embperl/test/cmp2/Attic/loop.htm
Index: loop.htm
===================================================================
RCS file: /home/cvs/embperl/test/cmp2/Attic/loop.htm,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -r1.1.2.2 -r1.1.2.3
--- loop.htm 14 Sep 2000 05:08:31 -0000 1.1.2.2
+++ loop.htm 16 Oct 2002 06:48:02 -0000 1.1.2.3
@@ -127,6 +127,14 @@
y
+a
+b
+x = a = z
+x = b = z
+last = a = z
+last = b = z
+next = a = z
+next = c = z
</body>
</html>
No revision
No revision
1.24.4.72 +11 -11 embperl/test/conf/httpd.conf.src
Index: httpd.conf.src
===================================================================
RCS file: /home/cvs/embperl/test/conf/httpd.conf.src,v
retrieving revision 1.24.4.71
retrieving revision 1.24.4.72
diff -u -r1.24.4.71 -r1.24.4.72
--- httpd.conf.src 30 Jul 2002 06:01:01 -0000 1.24.4.71
+++ httpd.conf.src 16 Oct 2002 06:48:02 -0000 1.24.4.72
@@ -591,16 +591,16 @@
</Location>
-<Location /eg/images/aim>
-
-PerlSetVar AIMParameter \"pointsize=14 font=$EPPATH/../fonts/OCRAEXT.ttf\"
-
-#PerlSetVar AIMParameter \"pointsize=14 gravity=left
font=$EPPATH/../fonts/OCRAEXT.ttf\"
-PerlSetVar AIMCacheDir \"$EPPATH/eg/images/aim/cache\"
-PerlSetVar AIMDebug 1
-PerlFixupHandler Apache::ImageMagick
-
-</location>
+#<Location /eg/images/aim>
+#
+#PerlSetVar AIMParameter \"pointsize=14 font=$EPPATH/../fonts/OCRAEXT.ttf\"
+#
+##PerlSetVar AIMParameter \"pointsize=14 gravity=left
font=$EPPATH/../fonts/OCRAEXT.ttf\"
+#PerlSetVar AIMCacheDir \"$EPPATH/eg/images/aim/cache\"
+#PerlSetVar AIMDebug 1
+#PerlFixupHandler Apache::ImageMagick
+#
+#</location>
No revision
No revision
1.10.4.13 +16 -0 embperl/test/html/input.htm
Index: input.htm
===================================================================
RCS file: /home/cvs/embperl/test/html/input.htm,v
retrieving revision 1.10.4.12
retrieving revision 1.10.4.13
diff -u -r1.10.4.12 -r1.10.4.13
--- input.htm 20 Mar 2002 15:31:01 -0000 1.10.4.12
+++ input.htm 16 Oct 2002 06:48:02 -0000 1.10.4.13
@@ -27,6 +27,10 @@
<input name="feld5">
<input name="feld1" value="Wert1">
<input name="feld5" value="Wert15">
+ <input name="feld5a" value="a"b">
+ <input name="feld5b" value="a'b&c">
+ <input name="feld5a">
+ <input name="feld5b">
<input name="feld1" value="">
<input name="feld5" value="">
<input type="text">
@@ -139,6 +143,18 @@
<option>Wert3
<option>Wert4
<option>Wert5
+ </select>
+
+ <select name="feld5a">
+ <option>Wert3'x</option>
+ <option>Wert4'y'r</option>
+ <option>Wert5\#\\'#''</option>
+ </select>
+
+ <select name="feld5a">
+ <option>Wert3'x
+ <option>Wert4'y'r
+ <option>Wert5\#\\'#''
</select>
<select name="mult" multiple>
1.5.4.4 +21 -0 embperl/test/html/loop.htm
Index: loop.htm
===================================================================
RCS file: /home/cvs/embperl/test/html/loop.htm,v
retrieving revision 1.5.4.3
retrieving revision 1.5.4.4
diff -u -r1.5.4.3 -r1.5.4.4
--- loop.htm 2 May 2001 08:59:14 -0000 1.5.4.3
+++ loop.htm 16 Oct 2002 06:48:02 -0000 1.5.4.4
@@ -96,5 +96,26 @@
[$ endif $]
+[- @bar = ('a', 'b', 'c'); -]
+[$ foreach $foo (@bar) $]
+ [* next if ($foo eq 'c'); *]
+ [+ $foo +]
+[$ endforeach $]
+
+[$ foreach $foo (@bar) $]
+ [* next if ($foo eq 'c'); *]
+ x = [+ $foo +] = z
+[$ endforeach $]
+
+[$ foreach $foo (@bar) $]
+ [$if ($foo eq 'c') $][$ last $][$endif$]
+ last = [+ $foo +] = z
+[$ endforeach $]
+
+[$ foreach $foo (@bar) $]
+ [$if ($foo eq 'b') $][$ next $][$endif$]
+ next = [+ $foo +] = z
+[$ endforeach $]
+
</body>
</html>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]