Salut,
Pour des raisons pratiques, j'ai choisi d'utiliser gettext sur mon
script pour l'i18niser.
Par contre, sur une Debian, j'ai un test-case qui capote...
J'ai suivi la doc suivante :
% zless /usr/share/doc/liblocale-gettext-perl/README.gz
(qui n'est que la doc du module Locale::gettext en plus développée)
Voici mon test-case :
% cat essai.pl
#!/usr/bin/perl
use warnings;
use strict;
# for i18n and l10n
#
use POSIX;
use Locale::gettext;
setlocale(LC_MESSAGES, "");
my $d = Locale::gettext->domain("essai");
$d->dir("/home/pk/Perso/Pdico/locale/");
print gettext("All you need is love"), "\n";
exit 0;
% cd ~/Perso/Pdico
% mkdir -p locale/fr/LC_MESSAGES
% xgettext -L Perl -d essai essai.pl
% cat essai.po # (après transformation)
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-09-24 15:25+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@???>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-15\n"
"Content-Transfer-Encoding: 8bit\n"
#: essai.pl:15
msgid "All you need is love"
msgstr "Tout ce dont vous avez besoin est d'aimer"
% msgfmt essai.po -o essai.mo
% mv essai.mo locale/fr/LC_MESSAGES
% export LANG=C
% ./essai.pl
All you need is love
% export LANG=fr
% ./essai.pl
All you need is love.
J'ai tout essayé par ailleurs : marquer toutes les variables de
LC_ALL, changer fr en fr_FR (avec les transformations ad hoc),
utiliser un autre point d'accès (/usr/share/locale chez Debian), etc.
Je sèche.
Les locales du systèmes existent et sont bonnes :
# locale-gen
Generating locales...
en_AU.UTF-8... up-to-date
en_BW.UTF-8... up-to-date
en_CA.UTF-8... up-to-date
en_DK.UTF-8... up-to-date
en_GB.UTF-8... up-to-date
en_HK.UTF-8... up-to-date
en_IE.UTF-8... up-to-date
en_IN.UTF-8... up-to-date
en_NZ.UTF-8... up-to-date
en_PH.UTF-8... up-to-date
en_SG.UTF-8... up-to-date
en_US.UTF-8... up-to-date
en_ZA.UTF-8... up-to-date
en_ZW.UTF-8... up-to-date
fr_FR.ISO-8859-15@euro... up-to-date
fr_FR.ISO-8859-1... up-to-date
fr_FR.ISO-8859-15... up-to-date
fr_FR.UTF-8... up-to-date
Generation complete.
Une idée ?
Merci
PK
--
|\ _,,,---,,_ Patrice KARATCHENTZEFF
ZZZzz /,`.-'`' -. ;-;;,_ mailto:p.karatchentzeff@free.fr
|,4- ) )-,_. ,\ ( `'-' http://p.karatchentzeff.free.fr
'---''(_/--' `-'\_)