X-Git-Url: https://git.deb.at/?p=deb%2Fpackages.git;a=blobdiff_plain;f=bin%2Fparse-debtags-voc;h=be251781a89616dafd66b880f84473a15675ca88;hp=7e1453c4200b1c348b258fdaef2d007719b29fae;hb=cc6c820a1e503808b7ac1e2bff132de23f87606b;hpb=8ac8fa1f369ab0073709518ec2a8d44aa859afcf diff --git a/bin/parse-debtags-voc b/bin/parse-debtags-voc index 7e1453c..be25178 100755 --- a/bin/parse-debtags-voc +++ b/bin/parse-debtags-voc @@ -28,13 +28,13 @@ use File::Path; use Data::Dumper; use HTML::Entities; use URI::Escape; -use Locale::gettext; use Deb::Versions; use Packages::Template; -use Packages::Config qw( $TOPDIR @LANGUAGES $LOCALES); +use Packages::Config qw( $TOPDIR @LANGUAGES ); use Packages::I18N::Locale; &Packages::Config::init( './' ); +&Packages::I18N::Locale::load( "$TOPDIR/po" ); my $debtagsdir = "$TOPDIR/files/debtags"; my $wwwdir = "$TOPDIR/www/about"; my $voc_file = "$debtagsdir/vocabulary"; @@ -42,13 +42,6 @@ my (%voc, %voc_db); $/ = ""; -delete $ENV{'LANGUAGE'}; -delete $ENV{'LANG'}; -delete $ENV{'LC_ALL'}; -delete $ENV{'LC_MESSAGES'}; -bindtextdomain ( 'debtags', $LOCALES ); -textdomain( 'debtags' ); - sub process_desc { my ($desc) = @_; @@ -97,13 +90,12 @@ while () { $voc_db{$voc_key} = $sdesc || ""; foreach my $lang (@LANGUAGES) { - my $locale = get_locale( $lang ); - setlocale ( LC_ALL, $locale ) or do { - warn "couldn't set locale ($lang/$locale)\n"; - next; - }; + next if $lang eq 'en'; + + my $cat = Packages::I18N::Locale->get_handle($lang) + or die "get_handle failed for $lang"; - my $sdesc_trans = dgettext( 'debtags', $sdesc ); + my $sdesc_trans = $cat->maketext($sdesc); $voc_db{"$voc_key-$lang"} = $sdesc_trans if $sdesc_trans and $sdesc_trans ne $sdesc; } @@ -126,7 +118,7 @@ my @facets = sort( grep { exists $voc{$_}{facet} } keys %voc ); my @tags = sort( grep { exists $voc{$_}{tag} } keys %voc ); my %tags_by_facet; foreach (@tags) { - my ($facet, $tag) = split /::/, $_, 2; + my ($facet, $tag) = split m/::/, $_, 2; warn "No facet data available for $facet\n" unless exists $voc{$facet}; $tags_by_facet{$facet} ||= [];