###### PATCHTAG00 #################################################### ### Korean ### => Kensoon Hwang ### CHOI Junho ###### PATCHTAG10 #################################################### &korean ###### PATCHTAG20 #################################################### 'korean' => \&korean, ###### PATCHTAG30 #################################################### # korean ,'korean' => "Çѱ۸޽ÃÁö ¹ø¿ª: Ȳ°Ç¼ø, ÃÖÁØÈ£", ###### PATCHTAG40 #################################################### $credits::LOCALE{'korean'}=$credits::LOCALE{'korean'}; ###### PATCHTAG50 #################################################### # Korean sub korean { my $string = shift; return "" unless defined $string; my(%translations,%month,%wday); my($i,$j); my(@dollar,@quux,@foo); # regexp => replacement string NOTE does not use autovars $1,$2... # charset=iso-2022-jp %translations = ( 'iso-8859-1' => 'euc-kr', 'Maximal 5 Minute Incoming Traffic' => '5ºÐ°£ ÃÖ´ë ¼ö½Å', 'Maximal 5 Minute Outgoing Traffic' => '5ºÐ°£ ÃÖ´ë ¼Û½Å', 'the device' => 'ÀåÄ¡', 'The statistics were last updated(.*)' => 'ÃÖÁ¾ °»½Å ÀϽÃ: $1', ' Average\)' => ' Æò±Õ°ª ±âÁØ)', 'Average' => 'Æò±Õ', 'Max' => 'ÃÖ´ë', 'Current' => 'ÇöÀç', 'version' => '¹öÀü', '`Daily\' Graph \((.*) Minute' => 'ÀÏ°£ ±×·¡ÇÁ ($1 ºÐ ´ÜÀ§', '`Weekly\' Graph \(30 Minute' => 'ÁÖ°£ ±×·¡ÇÁ (30 ºÐ ´ÜÀ§' , '`Monthly\' Graph \(2 Hour' => '¿ù°£ ±×·¡ÇÁ (2 ½Ã°£ ´ÜÀ§', '`Yearly\' Graph \(1 Day' => '¿¬°£ ±×·¡ÇÁ (1 ÀÏ ´ÜÀ§', 'Incoming Traffic in (\S+) per Second' => 'ÃÊ´ç ¼ö½ÅµÈ Æ®·¡ÇÈ ($1)', 'Outgoing Traffic in (\S+) per Second' => 'ÃÊ´ç ¼Û½ÅµÈ Æ®·¡ÇÈ ($1)', 'at which time (.*) had been up for(.*)' => '$1ÀÇ °¡µ¿ ½Ã°£: $2', '([kMG]?)([bB])/s' => '$1$2/ÃÊ', '([kMG]?)([bB])/min' => '$1$2/ºÐ', '([kMG]?)([bB])/h' => '$1$2/½Ã', 'Bits' => 'ºñÆ®', 'Bytes' => '¹ÙÀÌÆ®', 'In' => '¼ö½Å', 'Out' => '¼Û½Å', 'Percentage' => 'ÆÛ¼¾Æ®', 'Ported to OpenVMS Alpha by' => 'OpenVMS Alpha Æ÷ÆÃ', 'Ported to WindowsNT by' => 'WindowsNT Æ÷ÆÃ', 'and' => '¿Í', '^GREEN' => '³ì»ö', 'BLUE' => 'û»ö', 'DARK GREEN' => 'ÁøÇѳì»ö', 'MAGENTA' => 'ºÐÈ«»ö', 'AMBER' => 'ÁÖȲ»ö' ); # maybe expansions with replacement of whitespace would be more appropriate foreach $i (keys %translations) { my $trans = $translations{$i}; $trans =~ s/\|/\|/; return $string if eval " \$string =~ s|\${i}|${trans}| "; }; %wday = ( 'Sunday' => 'ÀÏ¿äÀÏ', 'Sun' => 'ÀÏ', 'Monday' => '¿ù¿äÀÏ', 'Mon' => '¿ù', 'Tuesday' => 'È­¿äÀÏ', 'Tue' => 'È­', 'Wednesday' => '¼ö¿äÀÏ', 'Wed' => '¼ö', 'Thursday' => '¸ñ¿äÀÏ', 'Thu' => '¸ñ', 'Friday' => '±Ý¿äÀÏ', 'Fri' => '±Ý', 'Saturday' => 'Åä¿äÀÏ', 'Sat' => 'Åä' ); %month = ( 'January' => '1¿ù', 'February' => '2¿ù' , 'March' => '3¿ù', 'Jan' => '1¿ù', 'Feb' => '2¿ù', 'Mar' => '3¿ù', 'April' => '4¿ù', 'May' => '5¿ù', 'June' => '6¿ù', 'Apr' => '4¿ù', 'May' => '5¿ù', 'Jun' => '6¿ù', 'July' => '7¿ù', 'August' => '8¿ù', 'September' => '9¿ù', 'Jul' => '7¿ù', 'Aug' => '8¿ù', 'Sep' => '9¿ù', 'October' => '10¿ù', 'November' => '11¿ù', 'December' => '12¿ù', 'Oct' => '10¿ù', 'Nov' => '11¿ù', 'Dec' => '12¿ù' ); @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/); if($foo[0] && $wday{$foo[0]} && $foo[2] && $month{$foo[2]} ) { if($foo[3]=~(/(.*)at(.*)/)) { @quux=split(/at/,$foo[3]); # $foo[3]=$quux[0]." kl.".$quux[1]; $foo[3]=$quux[0]; $foo[4]=$quux[1]; }; return $foo[3]."³â $month{$foo[2]} $foo[1]ÀÏ $wday{$foo[0]} $foo[4]"; # return "$wday{$foo[0]} den $foo[1]. $month{$foo[2]} $foo[3]"; }; # # handle two different time/date formats: # return "$wday, $mday $month ".($year+1900)." at $hour:$min"; # return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT"; # # handle nontranslated strings which ought to be translated # print STDERR "$_\n" or print DEBUG "not translated $_"; # but then again we might not want/need to translate all strings return $string; };