texinfo-commits
[Top][All Lists]
Advanced

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

texinfo/tp Texinfo/Convert/Line.pm Texinfo/Conv...


From: Patrice Dumas
Subject: texinfo/tp Texinfo/Convert/Line.pm Texinfo/Conv...
Date: Sat, 13 Nov 2010 21:13:17 +0000

CVSROOT:        /sources/texinfo
Module name:    texinfo
Changes by:     Patrice Dumas <pertusus>        10/11/13 21:13:16

Modified files:
        tp/Texinfo/Convert: Line.pm Text.pm Unicode.pm 
        tp/t           : accents.t test_utils.pl 

Log message:
        Put string_width in Convert::Unicode

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Convert/Line.pm?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Convert/Text.pm?cvsroot=texinfo&r1=1.19&r2=1.20
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Convert/Unicode.pm?cvsroot=texinfo&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/accents.t?cvsroot=texinfo&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/test_utils.pl?cvsroot=texinfo&r1=1.50&r2=1.51

Patches:
Index: Texinfo/Convert/Line.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Convert/Line.pm,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- Texinfo/Convert/Line.pm     12 Nov 2010 01:10:43 -0000      1.2
+++ Texinfo/Convert/Line.pm     13 Nov 2010 21:13:16 -0000      1.3
@@ -27,7 +27,6 @@
 use strict;
 
 use Unicode::EastAsianWidth;
-use Carp qw(cluck);
 
 # initialize a paragraph object.
 sub new($;$)
@@ -39,7 +38,7 @@
   if (defined($conf)) {
     foreach my $key (keys(%$conf)) {
       if ($key eq 'text') {
-        $self->{'counter'} = _string_width($conf->{$key});
+        $self->{'counter'} = 
Texinfo::Convert::Unicode::string_width($conf->{$key});
         $self->{'line_beginning'} = 0 if ($self->{'counter'});
       } else {
         $self->{$key} = $conf->{$key};
@@ -49,26 +48,6 @@
   bless $self, $class;
 }
 
-# string fixed length size takeing into account that east asian characters
-# may take 2 spaces.
-sub _string_width($)
-{
-  my $string = shift;
-
-  if (! defined($string)) {
-    Carp::cluck();
-  } 
-  my $width = 0;
-  foreach my $character(split '', $string) {
-    if ($character =~ /\p{Unicode::EastAsianWidth::InFullwidth}/) {
-      $width += 2;
-    } else {
-      $width += 1;
-    }
-  }
-  return $width;
-}
-
 # for debug
 sub dump($)
 {

Index: Texinfo/Convert/Text.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Convert/Text.pm,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- Texinfo/Convert/Text.pm     13 Nov 2010 19:58:28 -0000      1.19
+++ Texinfo/Convert/Text.pm     13 Nov 2010 21:13:16 -0000      1.20
@@ -24,6 +24,7 @@
 
 # accent commands list.
 use Texinfo::Common;
+use Texinfo::Convert::Unicode;
 use Data::Dumper;
 
 require Exporter;

Index: Texinfo/Convert/Unicode.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Convert/Unicode.pm,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- Texinfo/Convert/Unicode.pm  8 Nov 2010 00:04:37 -0000       1.5
+++ Texinfo/Convert/Unicode.pm  13 Nov 2010 21:13:16 -0000      1.6
@@ -24,7 +24,8 @@
 
 use Encode;
 use Unicode::Normalize;
-use Texinfo::Convert::Text;
+use Carp qw(cluck);
+use Unicode::EastAsianWidth;
 
 require Exporter;
 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
@@ -34,7 +35,7 @@
 # names by default without a very good reason. Use EXPORT_OK instead.
 # Do not simply export all your public functions/methods/constants.
 
-# This allows declaration       use Texinfo::Covert::Text ':all';
+# This allows declaration       use Texinfo::Convert::Unicode ':all';
 # If you do not need this, moving things directly into @EXPORT or @EXPORT_OK
 # will save memory.
 %EXPORT_TAGS = ( 'all' => [ qw(
@@ -572,4 +573,24 @@
   return Unicode::Normalize::NFC($text);
 }
 
+# string length size taking into account that east asian characters
+# may take 2 spaces.
+sub string_width($)
+{
+  my $string = shift;
+
+  if (! defined($string)) {
+    Carp::cluck();
+  }
+  my $width = 0;
+  foreach my $character(split '', $string) {
+    if ($character =~ /\p{Unicode::EastAsianWidth::InFullwidth}/) {
+      $width += 2;
+    } else {
+      $width += 1;
+    }
+  }
+  return $width;
+}
+
 1;

Index: t/accents.t
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/accents.t,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- t/accents.t 8 Nov 2010 00:04:37 -0000       1.3
+++ t/accents.t 13 Nov 2010 21:13:16 -0000      1.4
@@ -3,6 +3,7 @@
 use Test::More;
 BEGIN { plan tests => 18 };
 
+use lib '../texi2html/lib/Unicode-EastAsianWidth/lib/';
 use Texinfo::Convert::Text;
 use Texinfo::Parser;
 

Index: t/test_utils.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/test_utils.pl,v
retrieving revision 1.50
retrieving revision 1.51
diff -u -b -r1.50 -r1.51
--- t/test_utils.pl     13 Nov 2010 19:58:28 -0000      1.50
+++ t/test_utils.pl     13 Nov 2010 21:13:16 -0000      1.51
@@ -1,11 +1,11 @@
 use strict;
 
 use Test::More;
+use lib '../texi2html/lib/Unicode-EastAsianWidth/lib/';
 use Texinfo::Parser;
 use Texinfo::Convert::Text;
 use Texinfo::Convert::Texinfo;
 use Texinfo::Structuring;
-use lib '../texi2html/lib/Unicode-EastAsianWidth/lib/';
 use Texinfo::Convert::Plaintext;
 use File::Basename;
 use Data::Dumper;
@@ -35,7 +35,7 @@
 our $arg_test_case = shift @ARGV;
 
 my %formats = (
-  'plaintext' => \&convert_to_plaintext,
+#  'plaintext' => \&convert_to_plaintext,
 );
 
 #my $remove_parent = sub {my $h = shift; delete $h->{'parent'}};



reply via email to

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