diff options
Diffstat (limited to 'perl-install/any.pm')
-rw-r--r-- | perl-install/any.pm | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/perl-install/any.pm b/perl-install/any.pm index d6ce4ee2f..f982ae534 100644 --- a/perl-install/any.pm +++ b/perl-install/any.pm @@ -689,6 +689,9 @@ sub selectCountry { my ($other, $ext_country); member($country, @best) or ($ext_country, $country) = ($country, $ext_country); + my %cfg = getVarsFromSh($< ? "$::prefix$ENV{HOME}/.i18n" : "$::prefix/etc/sysconfig/i18n"); + my %ims = lang::get_ims(); + my $im = find { $ims{$_}{XIM_PROGRAM} eq $cfg{XIM_PROGRAM} } keys %ims; $in->ask_from_( { title => N("Country / Region"), messages => N("Please choose your country."), @@ -701,9 +704,12 @@ sub selectCountry { [ if_(@best, { val => \$country, type => 'list', format => \&lang::c2name, list => \@best, sort => 1 }), { val => \$ext_country, type => 'list', format => \&lang::c2name, - list => [ difference2(\@countries, \@best) ], advanced => scalar(@best) } + list => [ difference2(\@countries, \@best) ], advanced => scalar(@best) }, + { val => \$im, type => 'list', label => N("Input method:"), + list => [ 'None', sort keys %ims ], advanced => 1, format => sub { uc(translate($_[0])) }, }, ]) or return; + $locale->{IM} = $im if ($im ne 'None'); $locale->{country} = $other || !@best ? $ext_country : $country; } |