Package: www.debian.org Severity: wishlist Tags: patch Hi, here is a patch that add statistics about bytes to translate, I think it gives a good idea of the amount of work to be done as big pages are longer to translate than small ones. regards Nicolas Bertolissio -- System Information: Debian Release: testing/unstable APT prefers testing APT policy: (500, 'testing') Architecture: i386 (i686) Kernel: Linux 2.6.6 Locale: LANG=fr_FR@euro, LC_CTYPE=fr_FR@euro --
--- stattrans.0.pl 2004-06-29 19:52:19.000000000 +0200 +++ stattrans.1.pl 2004-06-29 19:55:16.000000000 +0200 @@ -88,6 +88,7 @@ my %transversion; my %version; my %files; +my %sizes; # Count wml files in given directory # @@ -97,6 +98,7 @@ my $dir = "$config{'wmldir'}/$lang"; my $cutfrom = length ($config{'wmldir'})+length($lang)+2; my $count = 0; + my $size = 0; my $is_english = ($lang eq "english")?1:0; my ( $file, $v ); my @listfiles; @@ -133,9 +135,12 @@ $maintainer{"$lang/$file"} = $transcheck->maintainer(); } $count++; + $sizes{$file} = (stat "".($original{"english/$file"}||"english")."/".$file)[7]; + $size += $sizes{$file}; } $wmlfiles{$lang} .= " "; $wml{$lang} = $count; + $wml_s{$lang} = $size; } sub get_color @@ -253,6 +258,8 @@ my @filenames = sort keys %files; my $nfiles = scalar @filenames; +my $nsize; +$nsize += $sizes{$_} foreach (@filenames); print "Creating files: " if ($config{'verbose'}); foreach $lang (@search_in) { @@ -269,6 +276,7 @@ # Translated pages if (index ($wmlfiles{$lang}, " $file ") >= 0) { $translated{$lang}++; + $translated_s{$lang} += $sizes{$file}; $orig = $original{"$lang/$file"} || "english"; # Outdated translations $msg = check_translation ($transversion{"$lang/$file"}, $version{"$orig/$file"}, "$lang/$file"); @@ -289,6 +297,7 @@ $o_body .= sprintf "<td align=center>%s</td>", $maintainer{"$lang/$file"} || ""; $o_body .= "</tr>\n"; $outdated{$lang}++; + $outdated_s{$lang} += $sizes{$file}; # Up-to-date translations } else { if (($file !~ /\.wml$/) @@ -310,6 +319,7 @@ $u_body .= sprintf "<a href=\"/%s\">%s</a><br>\n", $base, $base; } $untranslated{$lang}++; + $untranslated_s{$lang} += $sizes{$file}; } } @@ -318,20 +328,28 @@ # but which don't exist in the English directory # print "extra files: ".$wml{$lang}-$translated{$lang}."\n"; $wml{$lang} = $translated{$lang}; + $wml_s{$lang} = $translated_s{$lang}; $translated{$lang} = $translated{$lang} - $outdated{$lang}; + $translated_s{$lang} = $translated_s{$lang} - $outdated_s{$lang}; if ($nfiles > 0) { $percent_a{$lang} = int ($wml{$lang}/$nfiles * 100 + .5); + $percent_as{$lang} = int ($wml_s{$lang}/$nsize * 100 + .5); } else { $percent_a{$lang} = 0; + $percent_as{$lang} = 0; } if ($wml{$lang} > 0) { $percent_t{$lang} = int ($translated{$lang}/$wml{$lang} * 100 + .5); + $percent_ts{$lang} = int ($translated_s{$lang}/($wml_s{$lang}+1) * 100 + .5); } else { $percent_t{$lang} = 0; + $percent_ts{$lang} = 0; } $percent_o{$lang} = 100 - $percent_t{$lang}; + $percent_os{$lang} = 100 - $percent_ts{$lang}; $percent_u{$lang} = 100 - $percent_a{$lang}; + $percent_us{$lang} = 100 - $percent_as{$lang}; if (open (HTML, ">$config{'htmldir'}/$l.html")) { printf HTML "<html><head><title>%s: %s</title></head><body bgcolor=\"#ffffff\">\n", $config{'title'}, ucfirst $lang; @@ -349,6 +367,12 @@ printf HTML "<td align=\"center\" width=\"25%%\"><b>%d files (%d%%) outdated</b></td>", $outdated{$lang}, $percent_o{$lang}; printf HTML "<td align=\"center\" width=\"25%%\"><b>%d files (%d%%) not translated</b></td>", $untranslated{$lang}, $percent_u{$lang}; print HTML "</tr>\n"; + print HTML "<tr>\n"; + printf HTML "<td align=\"center\" width=\"25%%\"><b>%d bytes (%d%%) translated</b></td>", $wml_s{$lang}, $percent_as{$lang}; + printf HTML "<td align=\"center\" width=\"25%%\"><b>%d bytes (%d%%) up to date</b></td>", $translated_s{$lang}, $percent_ts{$lang}; + printf HTML "<td align=\"center\" width=\"25%%\"><b>%d bytes (%d%%) outdated</b></td>", $outdated_s{$lang}, $percent_os{$lang}; + printf HTML "<td align=\"center\" width=\"25%%\"><b>%d bytes (%d%%) not translated</b></td>", $nsize-$wml_s{$lang}, $percent_us{$lang}; + print HTML "</tr>\n"; print HTML "</table>\n"; # Make the table of content @@ -469,6 +493,34 @@ print HTML "</table>\n"; print HTML $border_foot; +print HTML "<h2>Translated web pages (by size)</h2>\n"; +printf HTML "<p>There are %d bytes to translate.</p>\n",($wml_s{'english'}+$untranslated_s{'english'}); + +print HTML $border_head; +print HTML "<table width=\"100%\" border=0 bgcolor=\"#cdc9c9\">\n"; +print HTML "<tr><th>Language</th><th colspan=\"2\">Translations</th><th colspan=\"2\">Up to date</th><th colspan=\"2\">Outdated</th><th colspan=\"2\">Not translated</th></tr>\n"; + +foreach $lang (@search_in) { + my @processed_langs = ($langs{$lang}); + @processed_langs = ("zh-cn", "zh-tw") if $langs{$lang} eq "zh"; + foreach $l (@processed_langs) { + $color_a = get_color ($percent_a{$lang}); + $color_t = get_color ($percent_t{$lang}); + $color_o = get_color (100 - $percent_o{$lang}); + $color_u = get_color (100 - $percent_u{$lang}); + + print HTML "<tr>"; + printf HTML "<td><a href=\"%s.html\">%s</a> (%s)</td>", $l, ucfirst $lang, $l; + printf HTML "<td bgcolor=\"%s\" align=right>%d</td><td>(%d%%)</td>", $color_a, $wml_s{$lang}, $percent_as{$lang}; + printf HTML "<td bgcolor=\"%s\" align=right>%d</td><td>(%d%%)</td>", $color_t, $translated_s{$lang}, $percent_ts{$lang}; + printf HTML "<td bgcolor=\"%s\" align=right>%d</td><td>(%d%%)</td>", $color_o, $outdated_s{$lang}, $percent_os{$lang}; + printf HTML "<td bgcolor=\"%s\" align=right>%d</td><td>(%d%%)</td>", $color_u, $wml_s{"english"}-$wml_s{$lang}, $percent_us{$lang}; + print HTML "</tr>\n"; + } +} +print HTML "</table>\n"; +print HTML $border_foot; + print HTML "<h2>Translated templates (gettext files)</h2>\n"; printf HTML "<p>There are %d strings to translate.</p>\n",$po_total{'total'}; print HTML $border_head;
Attachment:
signature.asc
Description: Digital signature