Provided by: po4a_0.52-1_all bug

NOM

       po4a-runtime - po4a et traduction gettext des messages affichés pendant l'exécution sans Autotools

Introduction

       Avec po4a-build, po4a peut aussi prendre en charge la traduction des messages de sortie des scripts à
       l'aide de gettext. Pour cela, il n'est pas nécessaire 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 même répertoire po/ que la traduction des
       messages affichés pendant l'exécution. Même si la traduction des messages affichés pendant l'exécution
       peut utiliser des répertoires ne s'appelant pas po/, il est généralement plus facile de respecter la
       convention.

Multiples langages

       Juste un mot sur les paquets qui utilisent des scripts écrits dans plusieurs langages de programmation,
       Perl et shell par exemple. Prenez garde : gettext sera perturbé et oubliera des chaînes d'un langage ou
       d'un autre sauf si les extensions de fichier sont utilisées pour le langage qui pose le moins de
       problèmes.

       Lors de l'utilisation de plusieurs langages, faites des essais avec différents réglages de po/Makevars
       jusqu'à avoir toutes les chaînes nécessaires dans le fichier POT.

       En particulier, indiquer deux langages dans po/Makevars peut être problématique. Plutôt que :

        # Ne faites pas ça :
        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 impliqués et évitez les options -L explicites. L'extension de fichier n'est nécessaire que
       pendant le traitement de po/POTFILES.in.

       L'option --keywords peut également être utile, voir la documentation de xgettext(1).

Remplissage de po/

       D'abord, créez le répertoire po/ de plus haut niveau puis utilisez les fichiers exemples de
       /usr/share/doc/po4a/examples/ pour le remplir.

       LINGUAS
           Doit  exister, même vide. C'est une liste des traductions, chaque ligne qui ne commence pas par « # »
           doit correspondre à un fichier PO existant. Par exemple, si  LINGUAS  contient  seulement  une  ligne
           « fr », un fichier fr.po doit exister à côté du fichier LINGUAS.

            $ cat po/LINGUAS
            cs
            de
            fr
            $

           Par  convention,  le  fichier LINGUAS est ordonné alphabétiquement, mais ce n'est pas automatiquement
           fait.

       POTFILES.in
           La liste des fichiers contenant des messages affichés pendant l'exécution  à  traduire,  c'est-à-dire
           les  scripts.  Si  le  répertoire  po/  de  plus  haut niveau est utilisé, les chemins devraient être
           relatifs au répertoire de plus haut niveau, pas au répertoire po/ lui-même.

            $ 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-mêmes peuvent contenir des messages affichés pendant l'exécution et de
           la documentation, tous deux à traduire ; par exemple, ils peuvent utiliser les fonctions  de  gettext
           pour  les  messages affichés pendant l'exécution et des contenus POD embarqués pour la documentation.
           Donc ça ne pose  pas  de  problème  d'avoir  le  même  fichier  à  la  fois  dans  po/POTFILES.in  et
           doc/po4a-build.conf.

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

       Makevars-shell.example
           Si les scripts sont écrits 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 être nécessaire de le modifier, mais
           vous pouvez vouloir le garder à  jour  par  rapport  à  /usr/share/doc/po4a/examples/po4a-build.make.
           Celui-ci  peut  être  mis  à jour au sein de po4a en fonction des modifications de la prise en charge
           sous-jacente d'intltool. Le fichier lui-même a été créé à partir  d'un  autre  projet  utilisant  les
           Autotools et intltool.

Construction

       Ces  extraits  doivent  être  ajoutés  au  Makefile  de  plus haut niveau ou à tout fichier nécessaire en
       fonction de la méthode utilisée pour préparer 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 été automatique après avoir simplement ajouté  po
       à la valeur "SUBDIRS" de Makefile.am.)

Maintenance

       La traduction des messages affichés pendant l'exécution n'est pas aussi simple que po4a-build car l'ajout
       d'une  nouvelle  traduction  nécessite  de  modifier  po/LINGUAS,  mais  à  part cela, la mise à jour des
       traductions se réduit simplement au remplacement du fichier PO correspondant par sa nouvelle version.

       En fonction de la façon de préparer l'archive source, il peut être nécessaire  d'indiquer  la  liste  des
       nouveaux  fichiers PO au fichier MANIFEST ou les ajouter aux scripts qui s'occupent de préparer l'archive
       source (cette remarque s'applique aussi à po4a-build).

       Tous les fichiers *.mo ou *.gmo du répertoire po/ peuvent être effacés.

Copyright

       Même si les fichiers exemples font partie du projet po4a, vous êtes libre de les utiliser,  les  modifier
       et  les distribuer dans vos projets sans avoir besoin de renvoyer vers po4a ou d'ajouter l'équipe de po4a
       dans vos indications de copyright, de même que les autres outils de construction comme Automake lui-même.
       Si vous voulez citer po4a, c'est très bien aussi.

AUTEURS

        Neil Williams <linux@codehelp.co.uk>

TRADUCTION

        Martin Quinson (mquinson#debian.org)

Outils po4a                                        2017-08-26                                    PO4A-RUNTIME(7)