Pergunta

Eu estou olhando para a introdução de apoio multi-lingual para uma aplicação CGI maduro escrito em Perl. Eu tinha inicialmente considerado rolando minha própria solução usando um hash Perl (armazenado no disco) para arquivos de tradução, mas, em seguida, me deparei com um módulo CPAN que parece fazer exatamente o que eu quero ( i18n ).

Alguém tem alguma experiência com a internacionalização (especificamente o módulo CPAN i18n) em Perl? É o módulo i18n o método preferido para apoio multi-lingual ou devo reconsiderar uma solução personalizada?

Graças

Foi útil?

Solução

Há um Perl Journal artigo na localização de software. Ele irá fornecer-lhe uma boa idéia do que você pode esperar quando adicionando suporte multi-lingual. É muito bem escrito e cómico.

Especificamente, o artigo é escrito pelas pessoas que escreveram e manter Locale::Maketext , então eu recomendaria esse módulo simplesmente com base na quantidade de dor é limpar os autores tiveram de suportar para que ele funcione corretamente.

Outras dicas

Consulte http://rassie.org/archives/247 para comparação da moderna GNU gettext, Locale :: Maketext e Locale :: textdomain.

Em uma resposta à minha pergunta sobre esta dos comentários sugeriram lendo este artigo sobre a localização de código de perl.

Se você tem o tempo, em seguida, fazer uma olhada na maneira como o I18N é feito no Jifty quadro -. embora inicialmente bastante confuso é muito elegante e utilizável

Eles sobrecarga _ de modo que você pode usar em qualquer lugar _("text to translate") no código. Essas seqüências são então convertidos utilizando Locale :: Maketext como normal.

O que o torna realmente poderoso é que eles adiar a tradução até que a corda é necessário usar Scalar :: Adiar de modo que você pode começar a adicionar as cordas, a qualquer momento, mesmo antes de saber qual linguagem que eles serão traduzidos para. Por exemplo, em arquivos de configuração etc. Este realmente fazer I18N fácil de trabalhar com ele.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top