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

SNMP编程

开发平台:

C/C++

  1. ###### PATCHTAG00 ####################################################
  2. ###      French/Francais
  3. ###      => Fabrice Prigent <fabrice.prigent@univ-tlse1.fr>
  4. ###         and St閜hane Marzloff <secrer@le-bar.fdn.fr>
  5. ###### PATCHTAG10 ####################################################
  6.   &french
  7. ###### PATCHTAG20 ####################################################
  8.   'french'       => &french,
  9.   'francais'     => &french,
  10. ###### PATCHTAG30 ####################################################
  11. # French/francais
  12.    'french' =>
  13.    "Localisation effectu&eacute;e par
  14. <a href="http://cache.univ-tlse1.fr/les.personnes/fabrice.prigent">Fabrice Prigent</a>
  15. <a href="mailto:fabrice.prigent@univ-tlse1.fr">&lt;fabrice.prigent@univ-tlse1.fr&gt;</a>",
  16. ###### PATCHTAG40 ####################################################
  17. $credits::LOCALE{'francais'}=$credits::LOCALE{'french'};
  18. ###### PATCHTAG50 ####################################################
  19. # French
  20. sub french
  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'      => 'Trafic maximal en entr&eacute;e sur 5 minutes',
  34.      'Maximal 5 Minute Outgoing Traffic'      => 'Trafic maximal en sortie sur 5 minutes',
  35.      'the device'                             => 'le mat&eacute;riel',
  36.      'The statistics were last updated(.*)'   => 'Les statistiques ont &eacute;t&eacute; mises &agrave; jour le $1',
  37.      ' Average)'                             => ' Moyenne)',
  38.      'Average'                                => 'Moyenne',
  39.      '>Max'                                   => 'Max',
  40.      'Current'                                => 'Actuel',
  41.      #'version'                                => 'version',
  42.      '`Daily' Graph ((.*) Minute'           => 'Graphique quotidien (sur $1 minutes :',
  43.      '`Weekly' Graph (30 Minute'            => 'Graphique hebdomadaire (sur 30 minutes :' ,
  44.      '`Monthly' Graph (2 Hour'              => 'Graphique mensuel  (sur 2 heures :',
  45.      '`Yearly' Graph (1 Day'                => 'Graphique annuel (sur 1 jour :', 
  46.      'Incoming Traffic in (S+) per Second'   => 'Trafic d'entr&eacute;e en $1 par seconde',
  47.      'Outgoing Traffic in (S+) per Second'   => 'Trafic de sortie en $1 par seconde',
  48.      'at which time (.*) had been up for(.*)' => '$1 &eacute;tait alors en marche depuis $2',
  49.      # '([kMG]?)([bB])/s'                      => '$1$2/s',
  50.      # '([kMG]?)([bB])/min'                    => '$1$2/min',
  51.      '([kMG]?)([bB])/h'                       => '$1$2/t',
  52.      # 'Bits'                                  => 'Bits',
  53.      # 'Bytes'                                 => 'Bytes'
  54.      'In'                                     => 'Entr&eacute;e',
  55.      'Out'                                    => 'Sortie',
  56.      'Percentage'                             => 'Pourcentage',
  57.      'Ported to OpenVMS Alpha by'             => 'Port&eacute; sur OpenVMS Alpha par',
  58.      'Ported to WindowsNT by'                 => 'Port&eacute; sur WindowsNT par',
  59.      'and'                                    => 'et',
  60.      '^GREEN'                                  => 'VERT',
  61.      'BLUE'                                   => 'BLEU',
  62.      'DARK GREEN'                             => 'VERT SOMBRE',
  63.      'MAGENTA'                                => 'MAGENTA',
  64.      'AMBER'                                  => 'AMBRE'
  65.   );
  66. # maybe expansions with replacement of whitespace would be more appropriate
  67. foreach $i (keys %translations)
  68. {  
  69.   my $trans = $translations{$i};
  70.   $trans =~ s/|/|/;  
  71.   return $string if eval " $string =~ s|${i}|${trans}| ";
  72. };
  73. %wday = 
  74.     (
  75.       'Sunday'    => 'Dimanche', 'Sun' => 'Dim',
  76.       'Monday'    => 'Lundi', 'Mon' => 'Lun',
  77.       'Tuesday'   => 'Mardi', 'Tue' => 'Mar',
  78.       'Wednesday' => 'Mercredi', 'Wed' => 'Mer',
  79.       'Thursday'  => 'Jeudi', 'Thu' => 'Jeu',
  80.       'Friday'    => 'Vendredi', 'Fri' => 'Ven',
  81.       'Saturday'  => 'Samedi', 'Sat' => 'Sam' 
  82.     );
  83. %month = 
  84.     (
  85.       'January'   => 'Janvier',   'February'  => 'F&eacute;vrier' ,    'March'     => 'Mars',
  86.       'Jan'       => 'Jan',       'Feb'       => 'Fev',         'Mar'       => 'Mar',
  87.       'April'     => 'Avril',     'May'       => 'Mai',         'June'      => 'Juin', 
  88.       'Apr'       => 'Avr',       'May'       => 'Mai',         'Jun'       => 'Jun',
  89.       'July'      => 'Juillet',   'August'    => 'Ao&ucirc;t',        'September' => 'Septembre', 
  90.       'Jul'       => 'Jul',       'Aug'       => 'Aou',         'Sep'       => 'Sep', 
  91.       'October'   => 'Octobre',   'November'  => 'Novembre',    'December'  => 'D&eacute;cembre', 
  92.       'Oct'       => 'Oct',       'Nov'       => 'Nov',         'Dec'       => 'Dec' 
  93.     );
  94.   @foo=($string=~/(S+),s+(S+)s+(S+)(.*)/);
  95.   if($foo[0] && $wday{$foo[0]} && $foo[2] && $month{$foo[2]} )
  96.     {
  97. if($foo[3]=~(/(.*)at(.*)/))
  98.       { 
  99.         @quux=split(/at/,$foo[3]);
  100.         $foo[3]=$quux[0]." &agrave; ".$quux[1]; 
  101.       };
  102.       return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
  103.     };
  104. #
  105. # handle two different time/date formats:  
  106. # return "$wday, $mday $month ".($year+1900)." &agrave; $hour:$min";
  107. # return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
  108. #
  109. # handle nontranslated strings which ought to be translated
  110. # print STDERR "$_n" or print DEBUG "not translated $_";
  111. # but then again we might not want/need to translate all strings
  112.   
  113.   return $string;
  114. };