Blame translate/ukrainian.pmd

Packit 667938
###### PATCHTAG00 ####################################################
Packit 667938
###      Ukrainian/Укра╖нська
Packit 667938
###      => Серг╕й Гум╕н╕лович <gray@arte-fact.net>
Packit 667938
###### PATCHTAG10 ####################################################
Packit 667938
  &ukrainian
Packit 667938
###### PATCHTAG20 ####################################################
Packit 667938
  'ukrainian'	 => \&ukrainian,
Packit 667938
  'Укра╖нська'      => \&ukrainian,
Packit 667938
###### PATCHTAG30 ####################################################
Packit 667938
# Ukrainian/Укра╖нська
Packit 667938
   'ukrainian' =>
Packit 667938
   "Переклад на укра╖нську мову:
Packit 667938
				Серг╕й Гум╕н╕лович
Packit 667938
				<gray\@arte-fact.net>",
Packit 667938
###### PATCHTAG40 ####################################################
Packit 667938
$credits::LOCALE{'Укра╖нська'}=$credits::LOCALE{'ukrainian'};
Packit 667938
###### PATCHTAG50 ####################################################
Packit 667938

Packit 667938

Packit 667938
# Ukrainian
Packit 667938

Packit 667938
sub ukrainian
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'                             => 'koi8-u',
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
     'version'                                => 'верс╕я',
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
     'Outgoing Traffic in (\S+) per Second'   => 'Вих╕дний траф╕к в $1 за секунду',
Packit 667938
     'at which time (.*) had been up for(.*)' => '$1 було включено о $2',
Packit 667938
     #'([kMG]?)([bB])/s'                      => '$1$1/с',
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'                                    => '╕',
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'    => ' Нед╕лю',		'Sun' => 'Нд',
Packit 667938
      'Monday'    => ' Понед╕лок',	'Mon' => 'Пн',
Packit 667938
      'Tuesday'   => ' В╕второк',	'Tue' => 'Вв',
Packit 667938
      'Wednesday' => ' Середу',		'Wed' => 'Ср',
Packit 667938
      'Thursday'  => ' Четвер',		'Thu' => 'Чт',
Packit 667938
      'Friday'    => ' П\'ятницю',	'Fri' => 'Пт',
Packit 667938
      'Saturday'  => ' Суботу',		'Sat' => 'Сб' 
Packit 667938
    );
Packit 667938

Packit 667938
%month = 
Packit 667938
    (
Packit 667938
      'January'   => 'С╕чня',   'February'  => 'Лютого' ,    'March'     => 'Березня',
Packit 667938
      'Jan'       => 'С╕ч',     'Feb'       => 'Лют',        'Mar'       => 'Бер',
Packit 667938
      'April'     => 'Кв╕тня',  'May'       => 'Травня',     'June'      => 'Червня', 
Packit 667938
      'Apr'       => 'Кв╕',     'May'       => 'Тра',        'Jun'       => 'Чер',
Packit 667938
      'July'      => 'Липня',   'August'    => 'Серпня',     'September' => 'Вересня', 
Packit 667938
      'Jul'       => 'Лип',     'Aug'       => 'Сер',        'Sep'       => 'Вер', 
Packit 667938
      'October'   => 'Жовтня',  'November'  => 'Листопада',  'December'  => 'Грудня', 
Packit 667938
      'Oct'       => 'Жов',     'Nov'       => 'Лис',        'Dec'       => 'Гру' 
Packit 667938
    );
Packit 667938

Packit 667938
  @foo=($string=~/(\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(/at/,$foo[3]);
Packit 667938
        $foo[3]=$quux[0]."р. о ".$quux[1]; 
Packit 667938
      };
Packit 667938
      return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
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
};