10 Einträge, 1 Seite |
1
2
3
4
5
6
7
8
9
10
11
12
[SETUP]
MeinProgramm:setup:lang = "GERMAN"
[GERMAN]
MeinProgramm:menu:file ="Datei"
MeinProgramm:menu:quit ="Beenden"
MeinProgramm:start:starttext ="Herzlich Willkommen"
[ENGLISH]
MeinProgramm:menu:file ="File"
MeinProgramm:menu:quit ="Quit"
MeinProgramm:start:starttext ="Welcome"
1
2
3
4
5
# -----------------------------------------------------------------------------
# Sprache festlegen
# -----------------------------------------------------------------------------
loadIni("meineIni.ini","SETUP",\%SETUP);
loadIni("meineIni.ini",$SETUP{"MeinProgramm:setup:lang"},\%LANG);
$anzeige->insert( 'end', $LANG{"MeinProgramm:start:starttext"}, COLOR->{UNDEF} . "\n");
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package Tie::I18N;
use Tie::Hash;
use base qw/Tie::StdHash/;
my %STRINGS = (
DE => {
ASK => "wieviele zeitschriften wollen sie kaufen?",
},
EN => {
ASK => "how many mags you wanna buy?",
}
);
sub TIEHASH {
my ($package, $language) = @_;
return bless {LANGUAGE => uc $language}, $package;
}
sub FETCH {
my ($self, $what) = @_;
return $STRINGS{$self->{LANGUAGE}}->{uc $what} || "";
}
1;
Quotekabel@linux:~/progs/perl> cat i18n.pl
use strict;
use Tie::I18N;
my %hash;
tie %hash, "Tie::I18N", "de";
print $hash{ASK}, $/;
untie %hash;
tie %hash, "Tie::I18N", "en";
print $hash{ASK}, $/;
untie %hash;
kabel@linux:~/progs/perl> perl -w i18n.pl
wieviele zeitschriften wollen sie kaufen?
how many mags you wanna buy?
kabel@linux:~/progs/perl>
10 Einträge, 1 Seite |