convert module.info, help and config.info too
authorJamie Cameron <jcameron@webmin.com>
Thu, 24 May 2007 04:21:52 +0000 (04:21 +0000)
committerJamie Cameron <jcameron@webmin.com>
Thu, 24 May 2007 04:21:52 +0000 (04:21 +0000)
gb-to-big5.pl

index ff4b0b7..893b82b 100755 (executable)
@@ -13,6 +13,40 @@ foreach $m (@ARGV) {
                $zh{$k} = gb_to_big5($zh{$k});
                }
        &write_file_diff("$m/lang/zh_TW.Big5", \%zh);
+
+       # Translate the module.info file
+       local %minfo;
+       &read_file("$m/module.info", \%minfo);
+       local %ominfo = %minfo;
+       if ($minfo{'desc_zh_CN'}) {
+               $minfo{'desc_zh_TW.Big5'} = gb_to_big5($minfo{'desc_zh_CN'});
+               &write_file_diff("$m/module.info", \%minfo);
+               }
+
+       # Translate the config.info file
+       local %cinfo;
+       if (&read_file("$m/config.info.zh_CN", \%cinfo)) {
+               local %ocinfo = %cinfo;
+               foreach $k (keys %cinfo) {
+                       $cinfo{$k} = gb_to_big5($cinfo{$k});
+                       }
+               &write_file_diff("$m/config.info.zh_TW.Big5", \%cinfo);
+               }
+
+       # Translate any help files
+       opendir(DIR, "$m/help");
+       foreach $h (readdir(DIR)) {
+               if ($h =~ /(\S+)\.zh_CN\.html$/) {
+                       open(IN, "$m/help/$h");
+                       open(OUT, ">$m/help/$1.zh_TW.Big5.html");
+                       while(<IN>) {
+                               print OUT gb_to_big5($_);
+                               }
+                       close(OUT);
+                       close(IN);
+                       }
+               }
+       closedir(DIR);
        }
 
 # read_file(file, &assoc, [&order], [lowercase])
@@ -46,6 +80,7 @@ foreach $k (keys %{$_[1]}) {
         print ARFILE $k,"=",$_[1]->{$k},"\n" if (!exists($old{$k}));
         }
 close(ARFILE);
+print "Wrote $_[0]\n";
 }
 
 sub diff