finnish.pmd
上传用户:shbosideng
上传日期:2013-05-04
资源大小:1555k
文件大小:6k
源码类别:

SNMP编程

开发平台:

C/C++

  1. ###### PATCHTAG 00 ###################################################
  2. ###      Finnish/Suomi
  3. ###      => Jussi Siponen <jussi.siponen@online.tietokone.fi>
  4. ###### PATCHTAG 10 ###################################################
  5.   &german
  6. ###### PATCHTAG 20 ###################################################
  7.   'finnish'       => &finnish, 
  8.   'suomi'        => &finnish,
  9. ###### PATCHTAG 30 ###################################################
  10. # Finnish/Suomi
  11.    'finnish' =>
  12.    "Lokalisoinut
  13. Jussi Siponen
  14. <a href="mailto:jussi.siponen@online.tietokone.fi">&lt;jussi.siponen@online.tietokone.fi&gt;</a>",
  15. # the Finnish string means: "Localized by"
  16. ###### PATCHTAG 40 ###################################################
  17. $credits::LOCALE{'finnish'}=$credits::LOCALE{'finnish'};
  18. ###### PATCHTAG 50 ###################################################
  19. # Finnish
  20. sub finnish
  21. {
  22.   my $string = shift;
  23. return "" unless defined $string;
  24.   my(%translations,%month,%wday);
  25.   my($i,$j);
  26.   my(@dollar,@quux,@foo);
  27.   
  28.   # regexp => replacement string NOTE does not use autovars $1,$2...
  29.   # charset=iso-2022-jp
  30.   %translations =
  31.   (  
  32.      #'charset=iso-8859-1'                     => 'charset=iso-8859-1',
  33.      'Maximal 5 Minute Incoming Traffic'      => 'Tulevan liikenteen maksimi 5 minuutin aikana',
  34.      'Maximal 5 Minute Outgoing Traffic'      => 'L&auml;htev&auml;n liikenteen maksimi 5 minuutin aikana',
  35.      'the device'                             => 'laite',
  36.      'The statistics were last updated(.*)'   => 'Tiedot p&auml;ivitetty viimeksi $1',
  37.      ' Average)'                             => '',
  38.      'Average'                                => 'Keskim&auml;&auml;rin',
  39.      'Max'                                    => 'Maksimi',
  40.      'Current'                                => 'T&auml;ll&auml; hetkell&auml;',
  41.      'version'                                => 'versio',
  42.      '`Daily' Graph ((.*) Minute'           => 'P&auml;iv&auml;raportti (skaala $1 minuutti(a))',
  43.      '`Weekly' Graph (30 Minute'            => 'Viikkoraportti (skaala 30 minuuttia)' ,
  44.      '`Monthly' Graph (2 Hour'              => 'Kuukausiraportti (skaala 2 tuntia)',
  45.      '`Yearly' Graph (1 Day'                => 'Vuosiraportti (skaala 1 vuorokausi)', 
  46.      'Incoming Traffic in (S+) per Second'   => 'Tuleva liikenne $1 sekunnissa',
  47.      'Outgoing Traffic in (S+) per Second'   => 'L&auml;htev&auml; liikenne $1 sekunnissa',
  48.      'Incoming Traffic in (S+) per Minute'   => 'Tuleva liikenne $1 minuutissa',
  49.      'Outgoing Traffic in (S+) per Minute'   => 'L&auml;htev&auml; liikenne $1 minuutissa',
  50.      'Incoming Traffic in (S+) per Hour'     => 'Tuleva liikenne $1 tunnissa',
  51.      'Outgoing Traffic in (S+) per Hour'     => 'L&auml;htev&auml; liikenne $1 tunnissa',
  52.      'at which time (.*) had been up for(.*)' => 'jolloin $1 on toiminut yht&auml;jaksoisesti $2',
  53.      '(S+) per minute'       => '$1 minuutissa',
  54.      '(S+) per hour'       => '$1 tunnissa',    
  55.      '(.+)/s$'                                => '$1/s',
  56.      # '(.+)/min'                             => '$1/min',
  57.      #'(.+)/h$'                               => '$1/h',
  58.      #'([kMG]?)([bB])/s'                      => '$1$2/s',
  59.      #'([kMG]?)([bB])/min'                    => '$1$2/min',
  60.      #'([kMG]?)([bB])/h'                      => '$1$2/h',
  61.      'Bits'                                   => 'bitti&auml;',
  62.      'Bytes'                                  => 'tavua',
  63.      'In'                                     => 'Tuleva',
  64.      'Out'                                    => 'L&auml;htev&auml;',
  65.      'Percentage'                             => 'Prosenttia',
  66.      'Ported to OpenVMS Alpha by'             => 'OpenVMS -j&auml;rjestelm&auml;lle sovittanut', 
  67.      'Ported to WindowsNT by'                 => 'WindowsNT -j&auml;rjestelm&auml;lle sovittanut',
  68.      'and'                                    => 'ja',
  69.      '^GREEN'                                 => 'VIHRE&Auml;',
  70.      'BLUE'                                   => 'SININEN',
  71.      'DARK GREEN'                             => 'TUMMANVIHRE&Auml;',
  72.      'MAGENTA'                                => 'PINKKI',
  73.      'AMBER'                                  => 'PUNAINEN',
  74.   );
  75. # maybe expansions with replacement of whitespace would be more appropriate
  76. foreach $i (keys %translations)
  77. {  
  78.   my $trans = $translations{$i};
  79.   $trans =~ s/|/|/;  
  80.   return $string if eval " $string =~ s|${i}|${trans}| ";
  81. };
  82. %wday = 
  83.     (
  84.       'Sunday'    => 'Sunnuntai',   'Sun' => 'Su',
  85.       'Monday'    => 'Maanantai',   'Mon' => 'Ma',
  86.       'Tuesday'   => 'Tiistai',     'Tue' => 'Ti',
  87.       'Wednesday' => 'Keskiviikko', 'Wed' => 'Ke',
  88.       'Thursday'  => 'Torstai',     'Thu' => 'To',
  89.       'Friday'    => 'Perjantai',   'Fri' => 'Pe',
  90.       'Saturday'  => 'Lauantai',    'Sat' => 'La' 
  91.     );
  92. %month = 
  93.     (
  94.       'January'   => 'Tammi',      'February'  => 'Helmi' , 'March'     => 'Maalis',
  95.       'Jan'       => 'Tam',        'Feb'       => 'Hel',    'Mar'       => 'Maa',
  96.       'April'     => 'Huhti',      'May'       => 'Touko',  'June'      => 'Kes&auml;', 
  97.       'Apr'       => 'Huh',        'May'       => 'Tou',    'Jun'       => 'Kes',
  98.       'July'      => 'Hein&auml;', 'August'    => 'Elo',    'September' => 'Syys', 
  99.       'Jul'       => 'Hei',        'Aug'       => 'Elo',    'Sep'       => 'Syy', 
  100.       'October'   => 'Loka',       'November'  => 'Marras', 'December'  => 'Joulu', 
  101.       'Oct'       => 'Lok',        'Nov'       => 'Mar',    'Dec'       => 'Kou' 
  102.     );
  103. #
  104. # handle two different time/date formats:  
  105. # return "$wday, $mday $month ".($year+1900)." at $hour:$min";
  106. # return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
  107. #
  108.   @foo=($string=~/(S+),s+(S+)s+(S+)(.*)/);
  109.   if( $wday{$foo[0]} && $month{$foo[2]} )
  110.     {
  111. if($foo[3]=~(/(.*)at(.*)/))
  112.       { 
  113.         @quux=split(/at/,$foo[3]);
  114.         $foo[3]=$quux[0]." kello ".$quux[1]; 
  115.       };
  116.       return "$wday{$foo[0]}, $foo[1]. $month{$foo[2]} $foo[3]"; 
  117.     };
  118. # handle nontranslated strings which ought to be translated
  119. # print STDERR "$_n" or print DEBUG "not translated $_";
  120. # but then again we might not want/need to translate all strings
  121.   
  122.   return $string;
  123. };