texinfo-commits
[Top][All Lists]
Advanced

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

[6224] Paragraph.pm add_text underlying_text


From: Gavin D. Smith
Subject: [6224] Paragraph.pm add_text underlying_text
Date: Tue, 14 Apr 2015 19:55:13 +0000

Revision: 6224
          http://svn.sv.gnu.org/viewvc/?view=rev&root=texinfo&revision=6224
Author:   gavin
Date:     2015-04-14 19:55:11 +0000 (Tue, 14 Apr 2015)
Log Message:
-----------
Paragraph.pm add_text underlying_text

Modified Paths:
--------------
    trunk/ChangeLog
    trunk/tp/Texinfo/Convert/Paragraph.pm

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog     2015-04-14 16:33:13 UTC (rev 6223)
+++ trunk/ChangeLog     2015-04-14 19:55:11 UTC (rev 6224)
@@ -7,6 +7,10 @@
        * tp/Texinfo/Convert/Unicode.pm (unicode_text): Don't normalize 
        return value.
 
+       * tp/Texinfo/Convert/Paragraph.pm (add_text): Don't track 
+       "underlying text" separately if it is the same as the text given 
+       to be wrapped.
+
 2015-04-13  Gavin Smith  <address@hidden>
 
        * tp/Texinfo/Common.pm (count_bytes): Add special handling of 

Modified: trunk/tp/Texinfo/Convert/Paragraph.pm
===================================================================
--- trunk/tp/Texinfo/Convert/Paragraph.pm       2015-04-14 16:33:13 UTC (rev 
6223)
+++ trunk/tp/Texinfo/Convert/Paragraph.pm       2015-04-14 19:55:11 UTC (rev 
6224)
@@ -318,7 +318,6 @@
   my $paragraph = shift;
   my $text = shift;
   my $underlying_text = shift;
-  $underlying_text = $text if (!defined($underlying_text));
   $paragraph->{'end_line_count'} = 0;
   my $result = '';
 
@@ -332,7 +331,8 @@
     # \x{202f}\x{00a0} are non breaking spaces
     if ($text =~ s/^([^\S\x{202f}\x{00a0}]+)//) {
       my $spaces = $1;
-      $underlying_text =~ s/^([^\S\x{202f}\x{00a0}]+)//;
+      $underlying_text =~ s/^([^\S\x{202f}\x{00a0}]+)//
+        if defined($underlying_text);
       print STDERR "SPACES($paragraph->{'counter'}) 
`"._print_escaped_spaces($spaces)."'\n" if ($paragraph->{'DEBUG'});
       #my $added_word = $paragraph->{'word'};
       if ($paragraph->{'protect_spaces'}) {
@@ -404,8 +404,13 @@
       }
     } elsif ($text =~ s/^(\p{InFullwidth})//) {
       my $added = $1;
-      $underlying_text =~ s/^(\p{InFullwidth})//;
-      my $underlying_added = $1;
+      my $underlying_added;
+      if (defined($underlying_text)) {
+        $underlying_text =~ s/^(\p{InFullwidth})//;
+        $underlying_added = $1;
+      } else {
+        $underlying_added = $added;
+      }
       
       print STDERR "EAST_ASIAN\n" if ($paragraph->{'DEBUG'});
       if (!defined($paragraph->{'word'})) {
@@ -425,8 +430,13 @@
       $paragraph->{'space'} = '';
     } elsif ($text =~ s/^(([^\s\p{InFullwidth}]|[\x{202f}\x{00a0}])+)//) {
       my $added_word = $1;
-      $underlying_text =~ s/^(([^\s\p{InFullwidth}]|[\x{202f}\x{00a0}])+)//;
-      my $underlying_added_word = $1;
+      my $underlying_added_word;
+      if (defined($underlying_text)) {
+        $underlying_text =~ s/^(([^\s\p{InFullwidth}]|[\x{202f}\x{00a0}])+)//;
+        $underlying_added_word = $1;
+      } else {
+        $underlying_added_word = $added_word;
+      }
 
       $result .= $paragraph->_add_next($added_word, $underlying_added_word);
 




reply via email to

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