App-I18N
view release on metacpan or search on metacpan
DBI: 0
DBIx::Class: 0
Data::Dumper: 0
Exporter: 0
Exporter::Lite: 0
File::Copy: 0
File::Find::Rule: 0
File::Path: 0
File::ShareDir: 0
Getopt::Long: 0
JSON::XS: 0
LWP::Simple: 0
Locale::Language: 0
Locale::Maketext::Extract: 0
Locale::Maketext::Lexicon: 0
MIME::Types: 0
Plack: 0
REST::Google::Translate: 0
Tatsumaki: 0
YAML::XS: 0
resources:
Makefile.PL view on Meta::CPAN
requires 'LWP::Simple';
requires 'Exporter::Lite';
requires 'File::Copy';
requires 'File::Find::Rule';
requires 'File::Path';
requires 'Locale::Maketext::Extract';
requires 'Locale::Maketext::Lexicon';
requires 'Getopt::Long';
requires 'Exporter';
requires 'JSON::XS';
requires 'Tatsumaki';
requires 'Plack';
requires 'File::ShareDir';
requires 'DBI';
requires 'DBIx::Class';
requires 'DBD::SQLite';
requires 'MIME::Types';
requires 'App::CLI';
requires 'Data::Dumper';
requires 'REST::Google::Translate';
lib/App/I18N.pm view on Meta::CPAN
package App::I18N;
use strict;
use warnings;
use Carp;
use File::Copy;
use File::Find::Rule;
use File::Path qw/mkpath/;
use Locale::Maketext::Extract;
use Getopt::Long;
use Exporter 'import';
use JSON::XS;
use YAML::XS;
use File::Basename;
use Locale::Maketext::Extract;
use App::I18N::Logger;
use Cwd;
use Encode;
use File::Spec;
use MIME::Types ();
use constant USE_GETTEXT_STYLE => 1;
lib/App/I18N/Command/Gen.pm view on Meta::CPAN
my $msgstr = decode_utf8 ( $lexicon->{ $_ } || "" );
$msgstr
? ( $_ => $msgstr )
: ()
} keys %$lexicon;
$logger->info( "Writing: $outfile" );
open FH , ">" , $outfile or die $!;
# binmode FH,":utf8";
if( $type eq 'json' ) {
use JSON::XS;
print FH encode_json( \%entries );
}
elsif ( $type eq 'js' ) {
use JSON::XS;
print FH qq|/* $warnings */\n\n|;
print FH <<END;
var DICT = @{[ encode_json( $lexicon ) ]};
END
}
elsif ( $type eq 'pm' ) {
$warnings =~ s{^}{# }gm;
use Data::Dumper;
$Data::Dumper::Terse = 1;
print FH "package dict::$lang;\n";
lib/App/I18N/DB.pm view on Meta::CPAN
map { $_->{msgid} => encode_utf8 $_->{msgstr}; } @$list
};
my $lme = App::I18N->lm_extract;
$lme->set_lexicon( $lexicon );
$lme->write_po($pofile);
}
=pod
package MsgEntry;
use Any::Moose;
use JSON::XS;
use overload
'""' => \&to_string,
'%{}' => \&to_hash;
has id => ( is => 'rw', isa => 'Int' );
has lang => ( is => 'rw' , isa => 'Str' );
has msgid => ( is => 'rw' , isa => 'Str' );
has msgstr => ( is => 'rw' , isa => 'Str' );
( run in 0.514 second using v1.01-cache-2.11-cpan-fd5d4e115d8 )