This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Strip S<> formatting codes from diagnostics output
authorMatthew Horsfall (alh) <wolfsage@gmail.com>
Tue, 23 Aug 2011 01:26:26 +0000 (21:26 -0400)
committerFather Chrysostomos <sprout@cpan.org>
Tue, 23 Aug 2011 06:39:58 +0000 (23:39 -0700)
Update spacing

Don't break S<20 questions> across lines, update test to be accurate

lib/diagnostics.pm
lib/diagnostics.t
pod/perldiag.pod

index 7079d25..a40da9e 100644 (file)
@@ -185,7 +185,7 @@ use 5.009001;
 use Carp;
 $Carp::Internal{__PACKAGE__.""}++;
 
-our $VERSION = '1.24';
+our $VERSION = '1.25';
 our $DEBUG;
 our $VERBOSE;
 our $PRETTY;
@@ -344,6 +344,9 @@ my %msg;
                   ? italic($sect) . ' in ' . italic($page)
                   : italic($page)
             /ges;
+            s/S<(.*?)>/
+               $1
+             /ges;
        } else {
            s/C<<< (.*?) >>>|C<< (.*?) >>|[BC]<(.*?)>/$+/gs;
            s/[IF]<(.*?)>/$1/gs;
@@ -355,6 +358,9 @@ my %msg;
                   ? qq '"$sect" in $page'
                   : $page
             /ges;
+           s/S<(.*?)>/
+               $1
+             /ges;
        } 
        unless (/^=/) {
            if (defined $header) { 
index 31a5802..4e5ab82 100644 (file)
@@ -5,7 +5,7 @@ BEGIN {
     @INC = 'lib';
 }
 
-use Test::More tests => 9;
+use Test::More tests => 10;
 
 BEGIN {
     my $w;
@@ -55,9 +55,14 @@ $warning = '';
 warn "Execution of -e aborted due to compilation errors.\n";
 like $warning, qr/The final summary message/, 'Periods at end of line';
 
-
 # Test for %d/%u
 seek STDERR, 0,0;
 $warning = '';
 warn "Bad arg length for us, is 4, should be 42";
 like $warning, qr/In C parlance/, '%u works';
+
+# Strip S<>
+seek STDERR, 0,0;
+$warning = '';
+warn "syntax error";
+like $warning, qr/cybernetic version of 20 questions/s, 'strip S<>';
index 97f16a4..88a63ec 100644 (file)
@@ -4451,8 +4451,7 @@ before this, because Perl is good at understanding random input.
 Occasionally the line number may be misleading, and once in a blue moon
 the only way to figure out what's triggering the error is to call
 C<perl -c> repeatedly, chopping away half the program each time to see
-if the error went away.  Sort of the cybernetic version of S<20
-questions>.
+if the error went away.  Sort of the cybernetic version of S<20 questions>.
 
 =item syntax error at line %d: `%s' unexpected