1#
2# Sample Translation for mrtg ...
3#
4######################################################################
5# Adds support for Icelandic to locales_mrtg.pm. Translate this file to
6# your language and send the translation to oetiker@ee.ethz.ch if you
7# want to integrate your translation to the existing locales_mrtg.pm
8# use
9#
10# locales_pt.pl locales_mrtg.pm yourlanguage.pt > locales_mrtg.new.pm
11#
12#####################################################################
13
14###### PATCHTAG 00 ###################################################
15###      Icelandic/Islenska
16###      => Halldor Karl H�gnason <halldor.hognason@islandssimi.is>
17###### PATCHTAG 10 ###################################################
18  &icelandic
19###### PATCHTAG 20 ###################################################
20  'icelandic'       => \&icelandic,
21  'islenska'        => \&icelandic,
22###### PATCHTAG 30 ###################################################
23# Icelandic/islenska
24   'icelandic' =>
25   "&THORN;&yacute;tt yfir &aacute; &iacute;slensku af
26				<a href=\"http://www.islandssimi.is\">Halld&oacute;r Karl H&ouml;gnason</a>
27				<a href=\"mailto:halldor.hognason\@islandssimi.is\">&lt;halldor.hognason\@islandssimi.is&gt;</a>",
28###### PATCHTAG 40 ###################################################
29$credits::LOCALE{'islenska'}=$credits::LOCALE{'icelandic'};
30###### PATCHTAG 50 ###################################################
31# Icelandic
32
33sub icelandic
34{
35  my $string = shift;
36return "" unless defined $string;
37  my(%translations,%month,%wday);
38
39  my($i,$j);
40  my(@dollar,@quux,@foo);
41
42
43  # regexp => replacement string NOTE does not use autovars $1,$2...
44  # charset=iso-2022-jp
45
46  %translations =
47  (
48     #'charset=iso-8859-1'                     => 'charset=iso-8859-1',
49     'Maximal 5 Minute Incoming Traffic'      => 'H&aacute;marks 5 m&iacute;n&uacute;tna umfer&eth; inn',
50     'Maximal 5 Minute Outgoing Traffic'      => 'H&aacute;marks 5 m&iacute;n&uacute;tna umfer&eth; &uacute;t',
51     'the device'                             => 't�ki&eth;',
52     'The statistics were last updated(.*)'   => 'G&ouml;gnin voru s&iacute;&eth;ast uppf&aelig;r&eth;$1',
53     ' Average\)'                             => ' Me&eth;altal)',
54     'Average'                                => 'Me&eth;altal',
55     'Max'                                    => 'H&aacute;mark',
56     'Current'                                => 'N&uacute;',
57     'version'                                => '&uacute;tg&aacute;fa',
58     '`Daily\' Graph \((.*) Minute'           => '`Dagleg\' sta&eth;a ($1 m&iacute;n&uacute;tur',
59     '`Weekly\' Graph \(30 Minute'            => '`Vikuleg\' sta&eth;a (30 m&iacute;n&uacute;tur',
60     '`Monthly\' Graph \(2 Hour'              => '`M&aacute;na&eth;arleg\' sta&eth;a (2 klst.',
61     '`Yearly\' Graph \(1 Day'                => '`&Aarleg\' sta&eth;a (1 dags',
62     'Incoming Traffic in (\S+) per Second'   => 'Umfer&eth; inn &iacute; $1 &aacute; sek&uacute;ndu',
63     'Outgoing Traffic in (\S+) per Second'   => 'Umfer&eth; &uacute;t &iacute; $1 &aacute; sek&uacute;ndu',
64     'at which time (.*) had been up for(.*)' => '&thorn;egar $1 haf&eth;i veri&eth; uppi &iacute;$2',
65     # '([kMG]?)([bB])/s'                 => '\$1\$2/sek',
66     # '([kMG]?)([bB])/min'              => '\$1\$2/m&iacute;n',
67     '([kMG]?)([bB])/h'                       => '$1$2/klst',
68     # 'Bits'                                => 'Bitar',
69     # 'Bytes'                              => 'B&aelig;ti'
70     'In'                                     => 'Inn',
71     'Out'                                    => '&Uacute;t',
72     'Percentage'                             => 'Pr&oacute;sent',
73     'Ported to OpenVMS Alpha by'             => 'Sta&eth;f&aelig;rt &aacute; OpenVMS af',
74     'Ported to WindowsNT by'                 => 'Sta&eth;f&aelig;rt &aacute; WindowsNT af',
75     'and'                                    => 'og',
76     '^GREEN'                                  => 'GR&AElig;Nt',
77     'BLUE'                                   => 'BL&Aacute;TT',
78     'DARK GREEN'                             => 'D&Ouml;KK GR&AElig;NN',
79     'MAGENTA'                                => 'BL&Aacute;RAU&ETH;UR',
80     'AMBER'                                  => 'GULBR&Uacute;NN'
81  );
82
83# maybe expansions with replacement of whitespace would be more appropriate
84
85foreach $i (keys %translations)
86{
87  my $trans = $translations{$i};
88  $trans =~ s/\|/\|/;
89  return $string if eval " \$string =~ s|\${i}|${trans}| ";
90};
91
92%wday =
93    (
94      'Sunday'    => 'Sunnudagur',            'Sun' => 'Sun',
95      'Monday'    => 'M&aacute;nudagur',      'Mon' => 'M&aacute;n',
96      'Tuesday'   => '&THORN;ri&eth;judagur', 'Tue' => '&THORN;ri',
97      'Wednesday' => 'Mi&eth;vikudagur',      'Wed' => 'Mi&eth;',
98      'Thursday'  => 'Fimmtudagur',           'Thu' => 'Fim',
99      'Friday'    => 'F&ouml;studagur',       'Fri' => 'F&ouml;s',
100      'Saturday'  => 'Laugardagur',           'Sat' => 'Lau'
101
102    );
103
104%month =
105    (
106      'January'   => 'Jan&uacute;ar',    'February'  => 'Febr&uacute;ar' ,    'March'     => 'Mars',
107      'Jan'       => 'Jan',       'Feb'       => 'Feb',         'Mar'       => 'Mar',
108      'April'     => 'Apr&iacute;l',     'May'       => 'Ma&iacute;',         'June'      => 'J&uacute;n&iacute;',
109      'Apr'       => 'Apr',       'May'       => 'Ma&iacute;',         'Jun'       => 'J&uacute;n',
110      'July'      => 'J&uacute;l&iacute;',      'August'    => '&Aacute;g&uacute;st',      'September' => 'September',
111      'Jul'       => 'J&uacute;l',       'Aug'       => '&Aacute;g&uacute;',         'Sep'       => 'Sep',
112      'October'   => 'Okt&oacute;ber',   'November'  => 'N&oacute;vember',    'December'  => 'Desember',
113      'Oct'       => 'Okt',       'Nov'       => 'N&oacute;v',         'Dec'       => 'Des'
114    );
115
116  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
117  if($foo[0] && $wday{$foo[0]} && $foo[2] && $month{$foo[2]} )
118    {
119	if($foo[3]=~(/(.*)at(.*)/))
120      {
121        @quux=split(/at/,$foo[3]);
122        $foo[3]=$quux[0]." kl.".$quux[1];
123      };
124      return "$wday{$foo[0]} den $foo[1]. $month{$foo[2]} $foo[3]";
125    };
126
127#
128# handle two different time/date formats:
129# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
130# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
131#
132
133# handle nontranslated strings which ought to be translated
134# print STDERR "$_\n" or print DEBUG "not translated $_";
135# but then again we might not want/need to translate all strings
136
137  return $string;
138
139};
140