]> git.deb.at Git - deb/packages.git/blob - lib/Packages/I18N/Locale.pm
setup-site: Various improvements
[deb/packages.git] / lib / Packages / I18N / Locale.pm
1 package Packages::I18N::Locale;
2
3 use strict;
4 use warnings;
5
6 use base 'Locale::Maketext';
7 use Locale::Maketext::Lexicon;
8
9 use base 'Exporter';
10
11 our @EXPORT = qw( N_ );
12
13 sub load {
14     my ($podir) = @_;
15
16     Locale::Maketext::Lexicon->import( {
17         'en' => [Gettext => "$podir/pdo.pot",
18                  Gettext => "$podir/templates.pot",
19                  Gettext => "$podir/langs.pot",
20                  Gettext => "$podir/sections.pot",
21                  Gettext => "$podir/debtags.pot"],
22         '*' => [Gettext => "$podir/pdo.*.po",
23                 Gettext => "$podir/templates.*.po",
24                 Gettext => "$podir/langs.*.po",
25                 Gettext => "$podir/sections.*.po",
26                 Gettext => "$podir/debtags.*.po"],
27         _auto   => 1,
28         _style  => 'gettext',
29                                        } );
30 }
31
32 sub N_ { return $_[0]; }
33
34 sub g {
35     my ($self, $format, @args) = @_;
36     my $result = $self->maketext($format, @args);
37     return sprintf($result, @args) if $result =~ /%([su]|[.\d]*f)/;
38     return $result;
39 }
40
41 1;