--- Begin Message ---
Subject: |
23.1.50; perl mode coloring gone if subroutine name is one letter long |
Date: |
Sat, 28 Nov 2009 09:41:40 +0800 |
Gentlemen, consider the following perl subroutines.
Notice how the latter has all its coloring gone, just because it starts
with one letter. (perl-mode)^X^E
sub max {
my $max = shift(@_);
foreach $foo (@_) {
$max = $foo if $max < $foo;
}
return $max;
}
sub m {
my $max = shift(@_);
foreach $foo (@_) {
$max = $foo if $max < $foo;
}
return $max;
}
--- End Message ---
--- Begin Message ---
Subject: |
Bug#558428: mention that perl can't deal with certain one letter subroutines |
Date: |
Sun, 29 Nov 2009 04:23:07 +0800 |
X-debbugs-cc: 5064-close@emacsbugs.donarmstrong.com, monnier@iro.umontreal.ca
Package: perl-doc
Version: 5.10.1-8
Severity: wishlist
File: /usr/share/man/man1/perlsub.1.gz
Tags: upstream
Dear Perl guys: On the perlsub man page, please mention near:
Subroutines whose names are in all upper case are reserved to the
Perl core, as are modules whose names are in all lower case.
that sub m {...}
won't work too.
SM> Actually, the problem is not really that it's only one letter, but that
SM> it's the "keyword" m, used for matching (as in "m/regexp/"). Of course
SM> the same can happen with other keywords like "s", "tr", "y", "q", "qx",
SM> and various others.
--- End Message ---