Blame translate/eucjp.pmd

Packit 667938
###### PATCHTAG00 ####################################################
Packit 667938
###      日本語(EUC-JP)
Packit 667938
###      => Fuminori Uematsu <uematsu@kgz.com>
Packit 667938
###### PATCHTAG10 ####################################################
Packit 667938
  &eucjp
Packit 667938
###### PATCHTAG20 ####################################################
Packit 667938
  'eucjp'        => \&eucjp,
Packit 667938
  'euc-jp'       => \&eucjp, 
Packit 667938
###### PATCHTAG30 ####################################################
Packit 667938
# eucjp/euc-jp
Packit 667938
   'eucjp' =>
Packit 667938
   "日本語訳(EUC-JP)作成
Packit 667938
				植松 文徳
Packit 667938
				<uematsu\@kgz.com>",
Packit 667938
###### PATCHTAG40 ####################################################
Packit 667938
$credits::LOCALE{'euc-jp'}=$credits::LOCALE{'eucjp'};
Packit 667938
###### PATCHTAG50 ####################################################
Packit 667938
# eucjp
Packit 667938
Packit 667938
sub eucjp
Packit 667938
{
Packit 667938
  my $string = shift;
Packit 667938
  return "" unless defined $string;
Packit 667938
  my(%translations,%month,%wday);
Packit 667938
Packit 667938
  my($i,$j);
Packit 667938
  my(@dollar,@quux,@foo);
Packit 667938
Packit 667938
  
Packit 667938
  # regexp => replacement string NOTE does not use autovars $1,$2...
Packit 667938
  # charset=iso-2022-jp
Packit 667938
Packit 667938
  %translations =
Packit 667938
  (  
Packit 667938
     '^iso-8859-1'                            => 'euc-jp',
Packit 667938
     '^Maximal 5 Minute Incoming Traffic'     => '最大5分受信量',
Packit 667938
     '^Maximal 5 Minute Outgoing Traffic'     => '最大5分送信量',
Packit 667938
     '^the device'                            => 'デバイス',
Packit 667938
     '^The statistics were last updated (.*)' => '更新日時 $1',
Packit 667938
     '^Average\)'                             => '平均)',
Packit 667938
     '^Average$'                              => '平均',
Packit 667938
     '^Max$'                                  => '最大',
Packit 667938
     '^Current'                               => '最新',
Packit 667938
     '^`Daily\' Graph \((.*) Minute'          => '日グラフ($1分間',
Packit 667938
     '^`Weekly\' Graph \(30 Minute'           => '週グラフ(30分間',
Packit 667938
     '^`Monthly\' Graph \(2 Hour'             => '月グラフ(2時間',
Packit 667938
     '^`Yearly\' Graph \(1 Day'               => '年グラフ(1日',
Packit 667938
     '^Incoming Traffic in (\S+) per Second'  => '毎秒の受信$1数',
Packit 667938
     '^Incoming Traffic in (\S+) per Minute'  => '毎分の受信$1数',
Packit 667938
     '^Incoming Traffic in (\S+) per Hour'    => '毎時の受信$1数',
Packit 667938
     '^Outgoing Traffic in (\S+) per Second'  => '毎秒の送信$1数',
Packit 667938
     '^Outgoing Traffic in (\S+) per Minute'  => '毎分の送信$1数',
Packit 667938
     '^Outgoing Traffic in (\S+) per Hour'    => '毎時の送信$1数',
Packit 667938
     '^at which time (.*) had been up for (.*)' => '$1の稼働時間 $2',
Packit 667938
     '^Average max 5 min values for `Daily\' Graph \((.*) Minute interval\):' => '日グラフでの最大5分値の平均($1分間隔):',
Packit 667938
     '^Average max 5 min values for `Weekly\' Graph \(30 Minute interval\):' => '週グラフでの最大5分値の平均(30分間隔):',
Packit 667938
     '^Average max 5 min values for `Monthly\' Graph \(2 Hour interval\):' => '月グラフでの最大5分値の平均(2時間間隔):',
Packit 667938
     '^Average max 5 min values for `Yearly\' Graph \(1 Day interval\):' => '年グラフでの最大5分値の平均(1日間隔):',
Packit 667938
     #'^([kMG]?)([bB])/s'                      => '$1$2/秒',
Packit 667938
     #'^([kMG]?)([bB])/min'                    => '$1$2/分',
Packit 667938
     #'^([kMG]?)([bB])/h'                      => '$1$2/時',
Packit 667938
     '^Bits$'                                 => 'ビット',
Packit 667938
     '^Bytes$'                                => 'バイト',
Packit 667938
     '^In$'                                   => '受信',
Packit 667938
     '^Out$'                                  => '送信',
Packit 667938
     '^Percentage'                            => '比率',
Packit 667938
     '^Ported to OpenVMS Alpha by'            => 'OpenVMS Alphaへの移植',
Packit 667938
     '^Ported to WindowsNT by'                => 'WindowsNTへの移植',
Packit 667938
     #'^and'                                   => 'and',
Packit 667938
     '^GREEN'                                 => '緑',
Packit 667938
     '^BLUE'                                  => '青',
Packit 667938
     '^DARK GREEN'                            => '深緑',
Packit 667938
     '^MAGENTA'                               => 'マゼンタ',
Packit 667938
     '^AMBER'                                 => '琥珀'
Packit 667938
  );
Packit 667938
Packit 667938
# maybe expansions with replacement of whitespace would be more appropriate
Packit 667938
Packit 667938
foreach $i (keys %translations)
Packit 667938
{  
Packit 667938
  my $trans = $translations{$i};
Packit 667938
  $trans =~ s/\|/\\|/;  
Packit 667938
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
Packit 667938
};
Packit 667938
Packit 667938
%wday = 
Packit 667938
    (
Packit 667938
      'Sunday'    => '(日)',
Packit 667938
      'Monday'    => '(月)',
Packit 667938
      'Tuesday'   => '(火)',
Packit 667938
      'Wednesday' => '(水)',
Packit 667938
      'Thursday'  => '(木)',
Packit 667938
      'Friday'    => '(金)',
Packit 667938
      'Saturday'  => '(土)',
Packit 667938
    );
Packit 667938
Packit 667938
%month = 
Packit 667938
    (
Packit 667938
      'January'   => '1月',    'February' => '2月',
Packit 667938
      'March'     => '3月',    'April'    => '4月',
Packit 667938
      'May'       => '5月',    'June'     => '6月',
Packit 667938
      'July'      => '7月',    'August'   => '8月',
Packit 667938
      'September' => '9月',    'October'  => '10月',
Packit 667938
      'November'  => '11月',   'December' => '12月',
Packit 667938
    );
Packit 667938
Packit 667938
  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)\s+(.*)/);
Packit 667938
  if($foo[0] && $wday{$foo[0]} && $foo[2] && $month{$foo[2]} )
Packit 667938
    {
Packit 667938
	if($foo[3]=~/at/)
Packit 667938
      { 
Packit 667938
        @quux=split(/\s+at\s+/,$foo[3]);
Packit 667938
      }
Packit 667938
	else
Packit 667938
      { 
Packit 667938
        @quux=split(/ /,$foo[3],2);
Packit 667938
      };
Packit 667938
      return "$quux[0]年$month{$foo[2]}$foo[1]日$wday{$foo[0]} $quux[1]"; 
Packit 667938
    };
Packit 667938
Packit 667938
#
Packit 667938
# handle two different time/date formats:  
Packit 667938
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
Packit 667938
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
Packit 667938
#
Packit 667938
Packit 667938
# handle nontranslated strings which ought to be translated
Packit 667938
# print STDERR "$_\n" or print DEBUG "not translated $_";
Packit 667938
# but then again we might not want/need to translate all strings
Packit 667938
  
Packit 667938
  return $string;
Packit 667938
Packit 667938
};