1###### PATCHTAG00 #################################################### 2### Norwegian/norsk 3### => Knut Gr�neng <knut.groneng@merkantildata.no 4###### PATCHTAG10 #################################################### 5 &norwegianh 6###### PATCHTAG20 #################################################### 7 'norwegian' => \&norwegian, 8 'norsk' => \&norwegian, 9###### PATCHTAG30 #################################################### 10# Danish/dansk 11 'norwegian' => 12 "Oversatt til norsk av 13 Knut Gr�neng 14 <a href=\"mailto:knut.groneng\@merkantildata.no\"><knut.groneng\@merkantildata.no></a>", 15# the norwegian string means: "Translated to norwegian by" 16###### PATCHTAG40 #################################################### 17$credits::LOCALE{'norsk'}=$credits::LOCALE{'norwegian'}; 18###### PATCHTAG50 #################################################### 19# Norwegian 20 21sub norwegian 22{ 23 my $string = shift; 24return "" unless defined $string; 25 my(%translations,%month,%wday); 26 27 my($i,$j); 28 my(@dollar,@quux,@foo); 29 30 31 # regexp => replacement string NOTE does not use autovars $1,$2... 32 # charset=iso-2022-jp 33 34 %translations = 35 ( 36 #'charset=iso-8859-1' => 'charset=iso-8859-1', 37 'Maximal 5 Minute Incoming Traffic' => 'Maksimal inngående trafikk i 5 minutter', 38 'Maximal 5 Minute Outgoing Traffic' => 'Maksimal utgående trafikk i 5 minutter', 39 'the device' => 'enhetden', 40 'The statistics were last updated(.*)' => 'Statistikken ble sist oppdatert $1', 41 ' Average\)' => ' gjennomsnitt)', 42 'Average' => 'Gjennomsnitt', 43 'Max' => 'Max', 44 'Current' => 'Nå', 45 'version' => 'versjon', 46 '`Daily\' Graph \((.*) Minute' => '`Daglig\' graf ($1 minutts', 47 '`Weekly\' Graph \(30 Minute' => '`Ukentlig\' graf (30 minutts' , 48 '`Monthly\' Graph \(2 Hour' => '`Månedlig\' graf (2 times', 49 '`Yearly\' Graph \(1 Day' => '`Årlig\' graf (1 dags', 50 'Incoming Traffic in (\S+) per Second' => 'Inngående trafikk i $1 per sekund', 51 'Outgoing Traffic in (\S+) per Second' => 'Utgående trafikk i $1 per sekund', 52 'at which time (.*) had been up for(.*)' => 'hvor $1 hadde vært oppe i $2', 53 # '([kMG]?)([bB])/s' => '\$1\$2/s', 54 # '([kMG]?)([bB])/min' => '\$1\$2/min', 55 '([kMG]?)([bB])/h' => '$1$2/t', 56 # 'Bits' => 'Bits', 57 # 'Bytes' => 'Bytes' 58 'In' => 'Inn', 59 'Out' => 'Ut', 60 'Percentage' => 'Prosent', 61 'Ported to OpenVMS Alpha by' => 'Port til OpenVMS av', 62 'Ported to WindowsNT by' => 'Port til WindowsNT av', 63 'and' => 'og', 64 '^GREEN' => 'GRØNN', 65 'BLUE' => 'BLÅ', 66 'DARK GREEN' => 'MØRKEGRØNN', 67 'MAGENTA' => 'MAGENTA', 68 'AMBER' => 'GUL' 69 ); 70 71# maybe expansions with replacement of whitespace would be more appropriate 72 73foreach $i (keys %translations) 74{ 75 my $trans = $translations{$i}; 76 $trans =~ s/\|/\|/; 77 return $string if eval " \$string =~ s|\${i}|${trans}| "; 78}; 79 80%wday = 81 ( 82 'Sunday' => 'Søndag', 'Sun' => 'Søn', 83 'Monday' => 'Mandag', 'Mon' => 'Man', 84 'Tuesday' => 'Tirsdag', 'Tue' => 'Tir', 85 'Wednesday' => 'Onsdag', 'Wed' => 'Ons', 86 'Thursday' => 'Torsdag', 'Thu' => 'Tor', 87 'Friday' => 'Fredag', 'Fri' => 'Fre', 88 'Saturday' => 'Lørdag', 'Sat' => 'Lør' 89 90 ); 91 92%month = 93 ( 94 'January' => 'Januar', 'February' => 'Februar' , 'March' => 'Mars', 95 'Jan' => 'Jan', 'Feb' => 'Feb', 'Mar' => 'Mar', 96 'April' => 'April', 'May' => 'Mai', 'June' => 'Juni', 97 'Apr' => 'Apr', 'May' => 'Mai', 'Jun' => 'Jun', 98 'July' => 'Juli', 'August' => 'August', 'September' => 'September', 99 'Jul' => 'Jul', 'Aug' => 'Aug', 'Sep' => 'Sep', 100 'October' => 'Oktober', 'November' => 'November', 'December' => 'Desember', 101 'Oct' => 'Okt', 'Nov' => 'Nov', 'Dec' => 'Des' 102 ); 103 104 @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/); 105 if($foo[0] && $wday{$foo[0]} && $foo[2] && $month{$foo[2]} ) 106 { 107 if($foo[3]=~(/(.*)at(.*)/)) 108 { 109 @quux=split(/at/,$foo[3]); 110 $foo[3]=$quux[0]." kl.".$quux[1]; 111 }; 112 return "$wday{$foo[0]} den $foo[1]. $month{$foo[2]} $foo[3]"; 113 }; 114 115# 116# handle two different time/date formats: 117# return "$wday, $mday $month ".($year+1900)." at $hour:$min"; 118# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT"; 119# 120 121# handle nontranslated strings which ought to be translated 122# print STDERR "$_\n" or print DEBUG "not translated $_"; 123# but then again we might not want/need to translate all strings 124 125 return $string; 126 127 }; 128