texinfo-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

texinfo/tp Texinfo/Parser.pm t/results/coverage...


From: Patrice Dumas
Subject: texinfo/tp Texinfo/Parser.pm t/results/coverage...
Date: Sun, 10 Oct 2010 18:48:14 +0000

CVSROOT:        /sources/texinfo
Module name:    texinfo
Changes by:     Patrice Dumas <pertusus>        10/10/10 18:48:14

Modified files:
        tp/Texinfo     : Parser.pm 
        tp/t/results/coverage: item_container.pl 
        tp/t/results/macro: macro_expansion.pl paragraph_and_macro.pl 
        tp/t/results/paragraph: text_space_comment.pl 

Log message:
        Put spaces preceding a paragraph out of the paragraph.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Parser.pm?cvsroot=texinfo&r1=1.59&r2=1.60
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/coverage/item_container.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/macro_expansion.pl?cvsroot=texinfo&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/paragraph_and_macro.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/paragraph/text_space_comment.pl?cvsroot=texinfo&r1=1.1&r2=1.2

Patches:
Index: Texinfo/Parser.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Parser.pm,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -b -r1.59 -r1.60
--- Texinfo/Parser.pm   10 Oct 2010 18:22:13 -0000      1.59
+++ Texinfo/Parser.pm   10 Oct 2010 18:48:13 -0000      1.60
@@ -711,21 +711,25 @@
 
   if ((!$current->{'type'} or $current->{'type'} eq 'before_item') 
       and !$no_paragraph_contexts{$self->{'context_stack'}->[-1]}) {
-    my $previous_empty_text;
     die "BUG: contents undef "._print_current($current) 
        if (!defined($current->{'contents'}));
-    if (@{$current->{'contents'}} 
-         and defined($current->{'contents'}->[-1]->{'text'})
-         and $current->{'contents'}->[-1]->{'text'} !~ /[\S\n]/) {
-      $previous_empty_text = pop @{$current->{'contents'}};
-    }
+
+    # The code in comments takes a preceding empty line and put it in 
+    # the paragraph.
+
+    #my $previous_empty_text;
+    #if (@{$current->{'contents'}} 
+    #     and defined($current->{'contents'}->[-1]->{'text'})
+    #     and $current->{'contents'}->[-1]->{'text'} !~ /[\S\n]/) {
+    #  $previous_empty_text = pop @{$current->{'contents'}};
+    #}
     push @{$current->{'contents'}}, 
             { 'type' => 'paragraph', 'parent' => $current, 'contents' => [] };
     $current = $current->{'contents'}->[-1];
-    if ($previous_empty_text) {
-      push @{$current->{'contents'}}, $previous_empty_text;
-      $previous_empty_text->{'parent'} = $current;
-    }
+    #if ($previous_empty_text) {
+    #  push @{$current->{'contents'}}, $previous_empty_text;
+    #  $previous_empty_text->{'parent'} = $current;
+    #}
     print STDERR "PARAGRAPH\n" if ($self->{'debug'});
     return $current;
   }
@@ -833,11 +837,16 @@
 
   my $paragraph;
 
-  # FIXME put leading spaces in preceding empty_line (which will be aborted
-  #       as an empty line, but still be there) instead of merging?
-  # this would requires also a change in _begin_paragraph.
   if ($text =~ /\S/) {
-    _abort_empty_line ($self, $current);
+    my $leading_spaces;
+    if ($text =~ /^(\s+)/) {
+      $leading_spaces = $1;
+    }
+    # Change this if you don't want to have preceding space added to
+    # the text out of the paragraph
+    if (_abort_empty_line ($self, $current, $leading_spaces)) {
+      $text =~ s/^(\s+)//;
+    }
     $paragraph = _begin_paragraph($self, $current);
     $current = $paragraph if ($paragraph);
   }
@@ -1045,20 +1054,25 @@
   return $result;
 }
 
-sub _abort_empty_line($$)
+sub _abort_empty_line($$;$)
 {
   my $self = shift;
   my $current = shift;
+  my $additional_text = shift;
   if ($current->{'contents'} and @{$current->{'contents'}} 
        and $current->{'contents'}->[-1]->{'type'}
        and $current->{'contents'}->[-1]->{'type'} eq 'empty_line') {
     print STDERR "ABORT EMPTY\n" if ($self->{'debug'});
+    $current->{'contents'}->[-1]->{'text'} .= $additional_text
+      if (defined($additional_text));
     if ($current->{'contents'}->[-1]->{'text'} eq '') {
       pop @{$current->{'contents'}} 
     } else {
       delete $current->{'contents'}->[-1]->{'type'};
     }
+    return 1;
   }
+  return 0;
 }
 
 sub _end_line($$$)

Index: t/results/coverage/item_container.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/coverage/item_container.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/coverage/item_container.pl        9 Oct 2010 17:51:37 -0000       
1.2
+++ t/results/coverage/item_container.pl        10 Oct 2010 18:48:14 -0000      
1.3
@@ -91,10 +91,14 @@
 '
             },
             {
+              'parent' => {},
+              'text' => ' '
+            },
+            {
               'contents' => [
                 {
                   'parent' => {},
-                  'text' => ' b--ullet
+                  'text' => 'b--ullet
 '
                 }
               ],
@@ -124,8 +128,9 @@
 $result_trees{'item_container'}{'contents'}[3]{'args'}[0]{'parent'} = 
$result_trees{'item_container'}{'contents'}[3];
 $result_trees{'item_container'}{'contents'}[3]{'contents'}[0]{'parent'} = 
$result_trees{'item_container'}{'contents'}[3];
 
$result_trees{'item_container'}{'contents'}[3]{'contents'}[1]{'contents'}[0]{'parent'}
 = $result_trees{'item_container'}{'contents'}[3]{'contents'}[1];
-$result_trees{'item_container'}{'contents'}[3]{'contents'}[1]{'contents'}[1]{'contents'}[0]{'parent'}
 = $result_trees{'item_container'}{'contents'}[3]{'contents'}[1]{'contents'}[1];
 
$result_trees{'item_container'}{'contents'}[3]{'contents'}[1]{'contents'}[1]{'parent'}
 = $result_trees{'item_container'}{'contents'}[3]{'contents'}[1];
+$result_trees{'item_container'}{'contents'}[3]{'contents'}[1]{'contents'}[2]{'contents'}[0]{'parent'}
 = $result_trees{'item_container'}{'contents'}[3]{'contents'}[1]{'contents'}[2];
+$result_trees{'item_container'}{'contents'}[3]{'contents'}[1]{'contents'}[2]{'parent'}
 = $result_trees{'item_container'}{'contents'}[3]{'contents'}[1];
 $result_trees{'item_container'}{'contents'}[3]{'contents'}[1]{'parent'} = 
$result_trees{'item_container'}{'contents'}[3];
 $result_trees{'item_container'}{'contents'}[3]{'parent'} = 
$result_trees{'item_container'};
 

Index: t/results/macro/macro_expansion.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/macro/macro_expansion.pl,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- t/results/macro/macro_expansion.pl  9 Oct 2010 17:51:37 -0000       1.5
+++ t/results/macro/macro_expansion.pl  10 Oct 2010 18:48:14 -0000      1.6
@@ -200,10 +200,14 @@
       'parent' => {}
     },
     {
+      'parent' => {},
+      'text' => ' '
+    },
+    {
       'contents' => [
         {
           'parent' => {},
-          'text' => ' my arg.
+          'text' => 'my arg.
 '
         }
       ],
@@ -392,34 +396,35 @@
 $result_trees{'macro_expansion'}{'contents'}[11]{'parent'} = 
$result_trees{'macro_expansion'};
 $result_trees{'macro_expansion'}{'contents'}[12]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[12];
 $result_trees{'macro_expansion'}{'contents'}[12]{'parent'} = 
$result_trees{'macro_expansion'};
-$result_trees{'macro_expansion'}{'contents'}[13]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[13];
 $result_trees{'macro_expansion'}{'contents'}[13]{'parent'} = 
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[14]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[14];
 $result_trees{'macro_expansion'}{'contents'}[14]{'parent'} = 
$result_trees{'macro_expansion'};
-$result_trees{'macro_expansion'}{'contents'}[15]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[15];
 $result_trees{'macro_expansion'}{'contents'}[15]{'parent'} = 
$result_trees{'macro_expansion'};
 $result_trees{'macro_expansion'}{'contents'}[16]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[16];
 $result_trees{'macro_expansion'}{'contents'}[16]{'parent'} = 
$result_trees{'macro_expansion'};
 $result_trees{'macro_expansion'}{'contents'}[17]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[17];
 $result_trees{'macro_expansion'}{'contents'}[17]{'parent'} = 
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[18]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[18];
 $result_trees{'macro_expansion'}{'contents'}[18]{'parent'} = 
$result_trees{'macro_expansion'};
-$result_trees{'macro_expansion'}{'contents'}[19]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[19];
 $result_trees{'macro_expansion'}{'contents'}[19]{'parent'} = 
$result_trees{'macro_expansion'};
 $result_trees{'macro_expansion'}{'contents'}[20]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[20];
 $result_trees{'macro_expansion'}{'contents'}[20]{'parent'} = 
$result_trees{'macro_expansion'};
 $result_trees{'macro_expansion'}{'contents'}[21]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[21];
 $result_trees{'macro_expansion'}{'contents'}[21]{'parent'} = 
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[22]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[22];
 $result_trees{'macro_expansion'}{'contents'}[22]{'parent'} = 
$result_trees{'macro_expansion'};
-$result_trees{'macro_expansion'}{'contents'}[23]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[23];
 $result_trees{'macro_expansion'}{'contents'}[23]{'parent'} = 
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[24]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[24];
 $result_trees{'macro_expansion'}{'contents'}[24]{'parent'} = 
$result_trees{'macro_expansion'};
-$result_trees{'macro_expansion'}{'contents'}[25]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[25];
 $result_trees{'macro_expansion'}{'contents'}[25]{'parent'} = 
$result_trees{'macro_expansion'};
 $result_trees{'macro_expansion'}{'contents'}[26]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[26];
-$result_trees{'macro_expansion'}{'contents'}[26]{'contents'}[1]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[26];
-$result_trees{'macro_expansion'}{'contents'}[26]{'contents'}[2]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[26];
 $result_trees{'macro_expansion'}{'contents'}[26]{'parent'} = 
$result_trees{'macro_expansion'};
 $result_trees{'macro_expansion'}{'contents'}[27]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[27];
+$result_trees{'macro_expansion'}{'contents'}[27]{'contents'}[1]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[27];
+$result_trees{'macro_expansion'}{'contents'}[27]{'contents'}[2]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[27];
 $result_trees{'macro_expansion'}{'contents'}[27]{'parent'} = 
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[28]{'contents'}[0]{'parent'} = 
$result_trees{'macro_expansion'}{'contents'}[28];
+$result_trees{'macro_expansion'}{'contents'}[28]{'parent'} = 
$result_trees{'macro_expansion'};
 
 $result_texts{'macro_expansion'} = '
 @macro macro1 {arg1, arg2 }

Index: t/results/macro/paragraph_and_macro.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/macro/paragraph_and_macro.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/macro/paragraph_and_macro.pl      9 Oct 2010 17:51:37 -0000       
1.2
+++ t/results/macro/paragraph_and_macro.pl      10 Oct 2010 18:48:14 -0000      
1.3
@@ -112,10 +112,14 @@
       'type' => 'empty_line'
     },
     {
+      'parent' => {},
+      'text' => ' '
+    },
+    {
       'contents' => [
         {
           'parent' => {},
-          'text' => ' text after empty.
+          'text' => 'text after empty.
 '
         }
       ],
@@ -153,10 +157,14 @@
       'type' => 'empty_line'
     },
     {
+      'parent' => {},
+      'text' => '    '
+    },
+    {
       'contents' => [
         {
           'parent' => {},
-          'text' => '    text after space.
+          'text' => 'text after space.
 '
         }
       ],
@@ -180,15 +188,17 @@
 $result_trees{'paragraph_and_macro'}{'contents'}[7]{'parent'} = 
$result_trees{'paragraph_and_macro'};
 $result_trees{'paragraph_and_macro'}{'contents'}[8]{'parent'} = 
$result_trees{'paragraph_and_macro'};
 $result_trees{'paragraph_and_macro'}{'contents'}[9]{'parent'} = 
$result_trees{'paragraph_and_macro'};
-$result_trees{'paragraph_and_macro'}{'contents'}[10]{'contents'}[0]{'parent'} 
= $result_trees{'paragraph_and_macro'}{'contents'}[10];
 $result_trees{'paragraph_and_macro'}{'contents'}[10]{'parent'} = 
$result_trees{'paragraph_and_macro'};
+$result_trees{'paragraph_and_macro'}{'contents'}[11]{'contents'}[0]{'parent'} 
= $result_trees{'paragraph_and_macro'}{'contents'}[11];
 $result_trees{'paragraph_and_macro'}{'contents'}[11]{'parent'} = 
$result_trees{'paragraph_and_macro'};
 $result_trees{'paragraph_and_macro'}{'contents'}[12]{'parent'} = 
$result_trees{'paragraph_and_macro'};
 $result_trees{'paragraph_and_macro'}{'contents'}[13]{'parent'} = 
$result_trees{'paragraph_and_macro'};
 $result_trees{'paragraph_and_macro'}{'contents'}[14]{'parent'} = 
$result_trees{'paragraph_and_macro'};
 $result_trees{'paragraph_and_macro'}{'contents'}[15]{'parent'} = 
$result_trees{'paragraph_and_macro'};
-$result_trees{'paragraph_and_macro'}{'contents'}[16]{'contents'}[0]{'parent'} 
= $result_trees{'paragraph_and_macro'}{'contents'}[16];
 $result_trees{'paragraph_and_macro'}{'contents'}[16]{'parent'} = 
$result_trees{'paragraph_and_macro'};
+$result_trees{'paragraph_and_macro'}{'contents'}[17]{'parent'} = 
$result_trees{'paragraph_and_macro'};
+$result_trees{'paragraph_and_macro'}{'contents'}[18]{'contents'}[0]{'parent'} 
= $result_trees{'paragraph_and_macro'}{'contents'}[18];
+$result_trees{'paragraph_and_macro'}{'contents'}[18]{'parent'} = 
$result_trees{'paragraph_and_macro'};
 
 $result_texts{'paragraph_and_macro'} = '@macro empty
 @end macro

Index: t/results/paragraph/text_space_comment.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/paragraph/text_space_comment.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- t/results/paragraph/text_space_comment.pl   25 Sep 2010 10:01:35 -0000      
1.1
+++ t/results/paragraph/text_space_comment.pl   10 Oct 2010 18:48:14 -0000      
1.2
@@ -3,10 +3,14 @@
 $result_trees{'text_space_comment'} = {
   'contents' => [
     {
+      'parent' => {},
+      'text' => ' '
+    },
+    {
       'contents' => [
         {
           'parent' => {},
-          'text' => ' text  '
+          'text' => 'text  '
         },
         {
           'args' => [
@@ -25,10 +29,11 @@
     }
   ]
 };
-$result_trees{'text_space_comment'}{'contents'}[0]{'contents'}[0]{'parent'} = 
$result_trees{'text_space_comment'}{'contents'}[0];
-$result_trees{'text_space_comment'}{'contents'}[0]{'contents'}[1]{'args'}[0]{'parent'}
 = $result_trees{'text_space_comment'}{'contents'}[0]{'contents'}[1];
-$result_trees{'text_space_comment'}{'contents'}[0]{'contents'}[1]{'parent'} = 
$result_trees{'text_space_comment'}{'contents'}[0];
 $result_trees{'text_space_comment'}{'contents'}[0]{'parent'} = 
$result_trees{'text_space_comment'};
+$result_trees{'text_space_comment'}{'contents'}[1]{'contents'}[0]{'parent'} = 
$result_trees{'text_space_comment'}{'contents'}[1];
+$result_trees{'text_space_comment'}{'contents'}[1]{'contents'}[1]{'args'}[0]{'parent'}
 = $result_trees{'text_space_comment'}{'contents'}[1]{'contents'}[1];
+$result_trees{'text_space_comment'}{'contents'}[1]{'contents'}[1]{'parent'} = 
$result_trees{'text_space_comment'}{'contents'}[1];
+$result_trees{'text_space_comment'}{'contents'}[1]{'parent'} = 
$result_trees{'text_space_comment'};
 
 $result_texts{'text_space_comment'} = ' text  @c space comment';
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]