diff options
author | Norbert Preining <preining@logic.at> | 2008-01-19 21:34:44 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2008-01-19 21:34:44 +0000 |
commit | 12e1befd65c0adbdad8ee96cbdc418fa25357078 (patch) | |
tree | f7a03b0e95cdead84063ccc8f016a925bd9ff835 /Master/tlpkg/installer/install-menu-perltk.pl | |
parent | eb9ef07ed02d97126659e63ccf2fe355739157cd (diff) |
move the translations into a different dir
make them textual without perl code
git-svn-id: svn://tug.org/texlive/trunk@6325 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/installer/install-menu-perltk.pl')
-rw-r--r-- | Master/tlpkg/installer/install-menu-perltk.pl | 42 |
1 files changed, 25 insertions, 17 deletions
diff --git a/Master/tlpkg/installer/install-menu-perltk.pl b/Master/tlpkg/installer/install-menu-perltk.pl index 82379ab57af..f8900ad2751 100644 --- a/Master/tlpkg/installer/install-menu-perltk.pl +++ b/Master/tlpkg/installer/install-menu-perltk.pl @@ -118,9 +118,9 @@ my %text = ( title => 'TeX Live 2008 Installation', selectlang => 'Language Selection', selectdoc => 'Doc/Language Selection', createsym => 'create symlinks in standard directories', - binto => 'binaries to: ', - manto => 'manpages to: ', - infoto => 'info to: ', + binto => 'binaries to', + manto => 'manpages to', + infoto => 'info to', onnet => 'On Net', ondisk => 'On Disk', selectsys => 'Select arch-os', @@ -148,10 +148,11 @@ my %labels = ( binsys => 'Binary System(s)', ); if (($::lang ne "en") && ($::lang ne "C")) { - eval { require("installer/install-menu-perltk-$::lang.pl"); }; - if ($@) { + if (! -r "$::installerdir/tlpkg/installer/lang/perltk-$::lang") { + #eval { require("installer/lang/perltk-$::lang.pl"); }; + #if ($@) { # couldn't find the file, continue with english - warn "Couldn't find language file installer/install-menu-perltk-$::lang.pl: $!\nContinuing in English!\n"; + warn "Couldn't find language file installer/lang/perltk-$::lang.pl: $!\nContinuing in English!\n"; } else { # merge the translated strings into the text string my $destenc = "latin1"; @@ -159,18 +160,25 @@ if (($::lang ne "en") && ($::lang ne "C")) { $destenc = $special_win_encodings{$::lang} if defined($special_win_encodings{$::lang}); $destenc = $::charset if defined($::charset); - print "lang=$::lang, charset=$destenc\n"; - foreach my $k (keys %translatedtext) { - my $tmp = $translatedtext{$k}; - # translation strings are supposed to be in utf8 - Encode::from_to($tmp, "utf8", $destenc); - $text{$k} = $tmp; + tllog($::LOG_DEBUG, "lang/charset settings: lang=$::lang, charset=$destenc\n"); + open(LANG,"<$::installerdir/tlpkg/installer/lang/perltk-$::lang"); + my %trans; + while (<LANG>) { + chomp; + next if m/^\s*#/; + next if m/^\s*$/; + my ($a,$b) = split(/:/,$_); + $b =~ s/^\s*([^\s])/$1/; + $b =~ s/\s*$//; + Encode::from_to($b, "utf8", $destenc); + $trans{"$a"} = "$b"; } - foreach my $k (keys %translatedlabels) { - my $tmp = $translatedlabels{$k}; - # translation strings are supposed to be in utf8 - Encode::from_to($tmp, "utf8", $destenc); - $labels{$k} = $tmp; + close(LANG); + foreach my $k (keys %text) { + $text{$k} = $trans{"text.$k"} if defined($trans{"text.$k"}); + } + foreach my $k (keys %labels) { + $labels{$k} = $trans{"label.$k"} if defined($trans{"label.$k"}); } } } |