Provided by: po4a_0.41-1ubuntu1_all bug

NOM

       po4a-runtime - po4a et traduction gettext des messages affiches pendant
       l'execution sans Autotools

Introduction

       Avec po4a-build, po4a peut aussi prendre en charge la traduction des
       messages de sortie des scripts a l'aide de gettext. Pour cela, il n'est
       pas necessaire que le programme utilise les Autotools et le processus
       ./configure habituel.

       En utilisant les extraits de Makefile en exemple, les paquets peuvent
       exploiter intltool avec un minimum d'efforts.

Format

       La traduction de la documentation ne devrait jamais utiliser le meme
       repertoire po/ que la traduction des messages affiches pendant
       l'execution. Meme si la traduction des messages affiches pendant
       l'execution peut utiliser des repertoires ne s'appelant pas po/, il est
       generalement plus facile de respecter la convention.

Multiples langages

       Juste un mot sur les paquets qui utilisent des scripts ecrits dans
       plusieurs langages de programmation, Perl et shell par exemple. Prenez
       garde: gettext sera perturbe et oubliera des chaines d'un langage ou
       d'un autre sauf si les extensions de fichier sont utilisees pour le
       langage qui pose le moins de problemes.

       Lors de l'utilisation de plusieurs langages, faites des essais avec
       differents reglages de po/Makevars jusqu'a avoir toutes les chaines
       necessaires dans le fichier POT.

       En particulier, indiquer deux langages dans po/Makevars peut etre
       problematique. Plutot que:

        # Ne faites pas ca :
        XGETTEXT_OPTIONS = -L Perl -L Shell --from-code=iso-8859-1

       Envisagez de renommer (ou de mettre en place des liens symboliques
       pour) tous les fichiers de l'un des langages impliques et evitez les
       options -L explicites. L'extension de fichier n'est necessaire que
       pendant le traitement de po/POTFILES.in.

       L'option --keywords peut egalement etre utile, voir la documentation de
       xgettext.

Remplissage de po/

       D'abord, creez le repertoire po/ de plus haut niveau puis utilisez les
       fichiers exemples de /usr/share/doc/po4a/examples/ pour le remplir.

       LINGUAS
           Doit exister, meme vide. C'est une liste des traductions, chaque
           ligne qui ne commence pas par <<#>> doit correspondre a un fichier
           PO existant. Par exemple, si LINGUAS contient seulement une ligne
           <<fr>>, un fichier fr.po doit exister a cote du fichier LINGUAS.

            $ cat po/LINGUAS
            cs
            de
            fr
            $

           Par convention, le fichier LINGUAS est ordonne alphabetiquement,
           mais ce n'est pas automatiquement fait.

       POTFILES.in
           La liste des fichiers contenant des messages affiches pendant
           l'execution a traduire, c'est-a-dire les scripts. Si le repertoire
           po/ de plus haut niveau est utilise, les chemins devraient etre
           relatifs au repertoire de plus haut niveau, pas au repertoire po/
           lui-meme.

            $ ls -l
            monscript.pl
            unautre.pl
            truc/gestion.pl
            po/
            po/POTFILES.in
            $ cat po/POTFILES.in
            monscript.pl
            unautre.pl
            truc/gestion.pl
            $

           Remarquez  que les scripts eux-memes peuvent contenir des messages
           affiches pendant l'execution et de la documentation, tous deux a
           traduire; par exemple, ils peuvent utiliser les fonctions de
           gettext pour les messages affiches pendant l'execution et des
           contenus POD embarques pour la documentation. Donc ca ne pose pas
           de probleme d'avoir le meme fichier a la fois dans po/POTFILES.in
           et doc/po4a-build.conf.

       Makevars-perl.example
           Si les scripts sont ecrits en Perl, copiez ce fichier exemple vers
           po/Makevars et modifiez-le selon vos besoins.

       Makevars-shell.example
           Si les scripts sont ecrits en shell, copiez ce fichier exemple vers
           po/Makevars et modifiez-le selon vos besoins.

       po4a-build.make
           Copiez ce fichier exemple vers po/Makefile, il ne devrait pas etre
           necessaire de le modifier, mais vous pouvez vouloir le garder a
           jour par rapport a /usr/share/doc/po4a/examples/po4a-build.make.
           Celui-ci peut etre mis a jour au sein de po4a en fonction des
           modifications de la prise en charge sous-jacente d'intltool. Le
           fichier lui-meme a ete cree a partir d'un autre projet utilisant
           les Autotools et intltool.

Construction

       Ces extraits doivent etre ajoutes au Makefile de plus haut niveau ou a
       tout fichier necessaire en fonction de la methode utilisee pour
       preparer les sources du programme pour sa distribution.

        clean:
               $(MAKE) -C po/ clean

        install:
               $(MAKE) -C po/ install DESTDIR=$(DESTDIR)

        dist:
               $(MAKE) -C po/ pot

       (Dans un projet utilisant les Autotools, l'ajout aurait ete automatique
       apres avoir simplement ajoute po a la valeur "SUBDIRS" de Makefile.am.)

Maintenance

       La traduction des messages affiches pendant l'execution n'est pas aussi
       simple que po4a-build car l'ajout d'une nouvelle traduction necessite
       de modifier po/LINGUAS, mais a part cela, la mise a jour des
       traductions se reduit simplement au remplacement du fichier PO
       correspondant par sa nouvelle version.

       En fonction de la facon de preparer l'archive source, il peut etre
       necessaire d'indiquer la liste des nouveaux fichiers PO au fichier
       MANIFEST ou les ajouter aux scripts qui s'occupent de preparer
       l'archive source (cette remarque s'applique aussi a po4a-build).

       Tous les fichiers *.mo ou *.gmo du repertoire po/ peuvent etre effaces.

Copyright

       Meme si les fichiers exemples font partie du projet po4a, vous etes
       libre de les utiliser, les modifier et les distribuer dans vos projets
       sans avoir besoin de renvoyer vers po4a ou d'ajouter l'equipe de po4a
       dans vos indications de copyright, de meme que les autres outils de
       construction comme Automake lui-meme. Si vous voulez citer po4a, c'est
       tres bien aussi.

AUTEURS

        Neil Williams <linux@codehelp.co.uk>