Il s'agit de la commande po4ap qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
po4a - mettez à jour les fichiers PO et les documents traduits en une seule fois
SYNOPSIS
po4a [Options] fichier_config
DESCRIPTION
L'objectif du projet po4a (PO for any) est de faciliter les traductions (et plus intéressant encore,
la maintenance des traductions) à l'aide des outils gettext sur des domaines où elles n'étaient pas attendues
comme la documentation.
La po4a programme est utile si vous voulez éviter d'appeler po4a-gettextize(1),
po4a-mise à jourpo(1), et po4a-traduire(1) dans des Makefiles complexes lorsque vous avez plusieurs fichiers
à traduire, format différent, ou besoin de spécifier différentes options pour différents
documents.
lampe de table of contenu
Ce document est organisé comme suit :
DESCRIPTION
INTRODUCTION
CONFIGURATION DOSSIER SYNTAXE
Spécification le modèle langues
Spécification le chemins à traducteur entrées
Détection automatique of le chemins et langues
Spécification le INSTITUTIONNELS à traduire
Spécification Options pour le modules
Spécification alias
Diviser mode
OPTIONS
EXEMPLE
INSUFFISANCES
VOIR AUSSI
AUTEURS
DROIT D'AUTEUR ET LICENCE
INTRODUCTION
La po4a programme est chargé de mettre à jour les deux fichiers PO (pour les synchroniser avec l'original
documents) et les documents traduits (pour les synchroniser avec les fichiers PO). Le point principal est
pour faciliter l'utilisation de po4a sans avoir à se souvenir des options de la ligne de commande.
Il vous permet également de mélanger des documents ayant différents formats dans le même fichier POT afin
que vous ne pouvez avoir qu'un seul fichier de ce type par projet.
Ce comportement peut être imité par les autres outils de la suite po4a (par exemple avec
Makefiles), mais c'est assez difficile à faire, et épuisant de refaire le même compliqué
Makefiles pour chaque projet utilisant po4a.
Le flux de données peut être résumé comme suit. Toute modification du document maître sera
reflétés dans les fichiers PO, et toutes les modifications apportées aux fichiers PO (manuelles ou causées par
étape précédente) sera reflété dans les documents de traduction.
document maître --> fichiers PO --> traductions
Le flux de données ne peut pas être inversé dans cet outil et les modifications apportées aux traductions sont écrasées
par le contenu des fichiers PO. En effet, cet outil ne peut pas être utilisé pour convertir
traductions existantes vers le système po4a. Pour cette tâche, veuillez vous référer à
po4a-gettextize (1).
CONFIGURATION DOSSIER SYNTAXE
L'argument (obligatoire) est le chemin d'accès au fichier de configuration à utiliser. Sa syntaxe vise à
étant simple et proche des fichiers de configuration utilisés par les projets intl-tools.
Les commentaires dans ces fichiers sont notés par le caractère '#'. Il commente tout jusqu'à la fin de
la ligne. Les lignes peuvent être continuées en échappant à la fin de la ligne. Toutes les lignes non vierges doivent
commencer par une commande [], suivie de ses arguments. (ça a l'air difficile dit comme ça, mais
c'est plutôt facile, j'espère ;)
Spécification le modèle langues
Attention: Il est recommandé d'utiliser [répertoire_po] plutôt que [po4a_langs] et [po4a_paths].
Voir section Détection automatique of le chemins et langues ci-dessous.
Il s'agit d'une commande facultative qui peut simplifier l'ensemble du fichier de configuration et le rendra plus
évolutif. Vous devez spécifier une liste des langues dans lesquelles vous souhaitez traduire le
documents. C'est aussi simple que :
[po4a_langs] en de
Cela vous permettra d'étendre $lang à toutes les langues spécifiées dans le reste du
fichier de configuration.
Spécification le chemins à traducteur entrées
Attention: Il est recommandé d'utiliser [répertoire_po] plutôt que [po4a_langs] et [po4a_paths].
Voir section Détection automatique of le chemins et langues ci-dessous.
Tout d'abord, vous devez spécifier où les fichiers d'entrée du traducteur (c'est-à-dire les fichiers utilisés par
traducteurs pour faire leur travail) sont localisés. Cela peut être fait par une telle ligne:
[chemins_po4a] doc/l10n/project.doc.pot \
fr:doc/l10n/fr.po de:doc/l10n/de.po
La commande est donc [po4a_paths]. Le premier argument est le chemin d'accès au fichier POT à utiliser.
Tous les arguments suivants sont de la forme explicite :
:
Si vous avez défini les langages de modèle, vous pouvez réécrire la ligne ci-dessus de cette façon :
[po4a_paths] doc/l10n/project.doc.pot $lang:doc/l10n/$lang.po
Vous pouvez également utiliser $maître pour faire référence au nom de fichier du document. Dans ce cas, po4a utilisera un
mode fractionné : un POT et un PO (pour chaque langue) seront créés pour chaque document
spécifié dans le po4a fichier de configuration. Voir le Diviser mode .
[po4a_paths] doc/$master/$master.pot $lang:doc/$master/$lang.po
Détection automatique of le chemins et langues
Une autre commande peut être utilisée pour spécifier le nom d'un répertoire où les fichiers PO et POT
sont situés. Lorsqu'il est utilisé, po4a détectera le fichier POT comme le seul *.pot fichier de
le répertoire spécifié. po4a utilisera également la liste des *.po fichiers pour définir la liste des
langues (en supprimant l'extension). Ces langues seront utilisées pour la
remplacement de la $lang variable dans le reste du fichier de configuration.
Cette commande ne doit pas être utilisée avec le [po4a_langs] or [po4a_paths] les commandes.
Lorsque vous utilisez cette commande, vous devez créer un fichier POT vide lors de la première invocation de
po4a pour lui faire connaître le nom du fichier POT.
[répertoire_po] po4a/po/
Spécification le INSTITUTIONNELS à traduire
Vous devez maintenant bien entendu préciser quels documents sont traduits, leur format et où
mettre les traductions. Il peut être fait par de telles lignes:
[tapez : sgml] doc/my_truc.sgml fr:doc/fr/mon_truc.sgml \
de:doc/de/mein_kram.sgml
[tapez : pod] script fr:doc/fr/script.1 de:doc/de/script.1 \
add_fr:doc/l10n/script.fr.add
Cela devrait être assez explicite également. A noter que dans le second cas,
doc/l10n/script.fr.add est un addenda à ajouter à la version française de ce document.
S'il vous plaît se référer à po4a(7) pour plus d'informations sur les addenda.
Plus formellement, le format est :
[taper: ] ( : )* \
(ajouter_ : * )*
S'il n'y a pas de modificateur, addenda_path est un chemin vers un addenda. Les modificateurs sont
? Inclure addenda_path si ce fichier existe, sinon ne faites rien.
@ addenda_path n'est pas un addenda régulier mais un fichier contenant une liste d'addenda, un par
ligne. Chaque addenda peut être précédé de modificateurs.
! addenda_path est rejeté, il n'est pas chargé et ne sera pas chargé par d'autres
spécification de l'addenda.
Si vous avez défini les langages de modèle, vous pouvez réécrire la ligne ci-dessus de cette façon :
[tapez : pod] script $lang:doc/$lang/script.1 \
add_fr:doc/l10n/script.fr.add
Si toutes les langues avaient des addenda avec des chemins similaires, vous pourriez aussi écrire quelque chose comme :
[tapez : pod] script $lang:doc/$lang/script.1 \
add_$lang:doc/l10n/script.$lang.add
Spécification Options pour le modules
po4a accepte les options qui seront passées au module. Ces options sont spécifiques au module
et sont spécifiés avec le -o interrupteur.
Si vous avez besoin d'une option spécifique pour l'un des documents que vous souhaitez traduire, vous pouvez également
spécifiez-le dans le fichier de configuration. Les options sont introduites par le opter mot-clé. le
argument de la opter le mot-clé doit être entre guillemets s'il contient un espace (par exemple
si vous spécifiez plusieurs options, ou une option avec un argument). Vous pouvez également spécifier
options qui ne s'appliqueront qu'à une langue spécifique en utilisant le opter_long mot-clé.
Voici un exemple:
[type:man] data-05/test2_man.1 $lang:tmp/test2_man.$lang.1 \
opt:"-k 75" opt_it:"-L UTF-8" opt_fr:-v
Les arguments peuvent contenir des espaces si vous utilisez des apostrophes ou des apostrophes :
[po4a_alias:man] man opt:"-o \"mdoc=NAME,VOIR AUSSI\" -k 20"
Si vous souhaitez spécifier les mêmes options pour de nombreux documents, vous pouvez utiliser un alias
(voir le Spécification alias section ci-dessous).
Vous pouvez également définir des options pour tous les documents spécifiés dans le fichier de configuration :
[options] opt:"..." opt_fr:"..."
Spécification alias
Si vous devez spécifier les mêmes options pour plusieurs fichiers, vous pouvez être intéressé par la définition
un alias de module. Cela peut être fait de cette façon :
[po4a_alias:test] man opt:"-k 21" opt_es:"-o debug=splitargs"
Cela définit un alias de module nommé tester, basé sur man module, avec le -k 21 appliqué à
toutes les langues et avec -o débogage = splitargs appliqué à la traduction espagnole.
Cet alias de module peut alors être utilisé comme un module normal :
[type:test] data-05/test2_man.1 $lang:tmp/test2_man.$lang.1 \
opt_it:"-L UTF-8" opt_fr:-v
Notez que vous pouvez spécifier des options supplémentaires par fichier.
Diviser mode
Le mode divisé est utilisé lorsque $maître est utilisé dans le [po4a_paths] ligne.
Lorsque le mode fractionné est utilisé, un gros POT temporaire et de gros bons de commande temporaires sont utilisés. Cette
permet de partager les traductions entre tous les OP.
Si deux bons de commande ont des traductions différentes pour la même chaîne, po4a marquera cette chaîne comme
fuzzy et soumettra les deux traductions dans tous les bons de commande qui contiennent cette chaîne. Puis,
lorsqu'un traducteur met à jour la traduction et supprime la balise floue dans un bon de commande, le
la traduction de cette chaîne sera mise à jour automatiquement dans chaque bon de commande.
S'il y a des conflits de noms parce que plusieurs fichiers ont le même nom de fichier, le nom du
le fichier master peut être spécifié en ajoutant un "master:file="prénom option:
[po4a_langs] de en ja
[po4a_paths] l10n/po/$master.pot $lang:l10n/po/$master.$lang.po
[tapez : xml] foo/gui.xml $lang:foo/gui.$lang.xml master:file=foo-gui
[type : xml] bar/gui.xml $lang:bar/gui.$lang.xml master:file=bar-gui
OPTIONS
-k, --garder
Seuil minimal de pourcentage de traduction pour conserver (c'est-à-dire écrire) le fichier résultant
(par défaut : 80). C'est-à-dire par défaut, les fichiers doivent être traduits à au moins 80% pour obtenir
écrit.
-h, --Aidez-moi
Afficher un court message d'aide.
-M, --master-charset
Jeu de caractères des fichiers contenant les documents à traduire. Notez que tous les maîtres
les documents doivent utiliser le même jeu de caractères pour le moment. Il s'agit d'une limitation connue, et nous sommes
travailler à résoudre ce problème.
-L, --jeu de caractères localisé
Jeu de caractères des fichiers contenant les documents localisés. Notez que tous traduits
les documents utiliseront le même jeu de caractères pour le moment. Il s'agit d'une limitation connue, et nous sommes
travailler à résoudre ce problème.
-A, --addendum-charset
Jeu de caractères des addenda. Notez que tous les addenda doivent être dans le même jeu de caractères.
-V, --version
Affichez la version du script et quittez.
-v, --verbeux
Augmenter la verbosité du programme.
-q, --silencieux
Diminuer la verbosité du programme.
-d, --déboguer
Sortez des informations de débogage.
-o, --option
Option(s) supplémentaire(s) à passer au plugin de format. Spécifiez chaque option dans le 'prénom=Plus-value'
format. Voir la documentation de chaque plugin pour plus d'informations sur la validité
options et leurs significations.
-f, --Obliger
Générez toujours les fichiers POT et PO, même si po4a considère que ce n'est pas nécessaire.
Le comportement par défaut (quand --Obliger n'est pas spécifié) est le suivant :
Si le fichier POT existe déjà, il est régénéré si un document maître ou le
le fichier de configuration est plus récent. Le fichier POT est également écrit dans un fichier temporaire
document et po4a vérifie que les changements sont vraiment nécessaires.
De plus, une traduction n'est régénérée que si son document maître, le fichier PO, un
de ses addenda ou le fichier de configuration est plus récent. Pour éviter d'essayer de
régénérer les traductions qui ne passent pas le test de seuil (voir --garder), un fichier
couplé à .po4a-timbre l'extension peut être créée (voir --timbre).
Si un document maître comprend des fichiers, vous devez utiliser le --Obliger drapeau parce que le
les temps de modification de ces fichiers inclus ne sont pas pris en compte.
Les fichiers PO sont toujours régénérés sur la base du POT avec msgmerge -U.
--timbre
Dit po4a pour créer des fichiers de tampons lorsqu'une traduction n'est pas générée car elle
pas atteindre le seuil. Ces fichiers de timbres sont nommés selon le
document traduit, avec le .po4a-timbre extension.
Remarque : Ceci active uniquement la création du .po4a-timbre des dossiers. Les fichiers de timbres sont
toujours utilisés s'ils existent, et ils sont supprimés avec --rm-traductions ou quand le
le fichier est enfin traduit.
--no-traductions
Ne générez pas les documents traduits, mettez uniquement à jour les fichiers POT et PO.
--rm-traductions
Supprimer les fichiers traduits (implique --no-traductions).
--pas de sauvegardes
Cet indicateur ne fait rien depuis la 0.41 et peut être supprimé dans les versions ultérieures.
--rm-sauvegardes
Cet indicateur ne fait rien depuis la 0.41 et peut être supprimé dans les versions ultérieures.
--translate uniquement fichier-traduit
Traduisez uniquement le fichier spécifié. Il peut être utile d'accélérer le traitement si un
fichier de configuration contient beaucoup de fichiers. Notez que cette option ne met pas à jour le bon de commande
et les fichiers POT. Cette option peut être utilisée plusieurs fois.
--variable var=Plus-value
Définissez une variable qui sera développée dans le po4a fichier de configuration. Tous
apparition de $(var) sera remplacé par Plus-value. Cette option peut être utilisée plusieurs
fois.
--srcdir SRCDIR
Définir le répertoire de base pour tous les documents d'entrée spécifiés dans le po4a paramétrage
fichier.
--répertoire dest DÉTRUIRE
Définir le répertoire de base pour tous les documents de sortie spécifiés dans le po4a
fichier de configuration.
OPTIONS LEQUEL MODIFIER POT ENTÊTE
--pores type[,envelopper|Nowrap]
Spécifiez le format de référence. Argument type peut être l'un des aucun de ne produire aucun
référence, pas de ligne pour ne pas spécifier le numéro de ligne (plus précisément tous les numéros de ligne sont
remplacé par 1), contrer remplacer le numéro de ligne par un compteur croissant, et plein à
inclure des références complètes.
L'argument peut être suivi d'une virgule et soit envelopper or Nowrap mot-clé. Les références sont
écrit par défaut sur une seule ligne. Les envelopper l'option encapsule les références sur plusieurs
lignes, pour imiter gettext outils (xgettext et msgmerge). Cette option deviendra la
par défaut dans une future version, car il est plus sensible. Les Nowrap option est
disponible afin que les utilisateurs qui souhaitent conserver l'ancien comportement puissent le faire.
--msgid-bugs-adresse adresse e-mail
Définissez l'adresse de rapport pour les bogues msgid. Par défaut, les fichiers POT créés n'ont pas
Champs Report-Msgid-Bugs-To.
--copyright-titulaire un magnifique
Définissez le détenteur des droits d'auteur dans l'en-tête POT. La valeur par défaut est « Logiciel libre
Fondation, Inc. »
--nom du paquet un magnifique
Définissez le nom du package pour l'en-tête POT. La valeur par défaut est "PAQUET".
--version-paquet un magnifique
Définissez la version du package pour l'en-tête POT. La valeur par défaut est "VERSION".
OPTIONS À MODIFIER PO DES DOSSIERS
--msgmerge-opt Options
Options supplémentaires pour msgmerge (1).
Attention: $lang sera étendu à la langue actuelle.
--Pas de précédent
Cette option supprime --précédent des options passées à msgmerge. Cela permet de
prendre en charge les versions de gettext avant 0.16.
--précédent
Cette option ajoute --précédent aux options passées à msgmerge. Cela demande gettext
0.16 ou version ultérieure, et est activé par défaut.
EXEMPLE
Supposons que vous mainteniez un programme nommé foo qui a une page de manuel homme/foo.1 qui
est naturellement maintenu en anglais uniquement. Maintenant, vous en tant que mainteneur en amont ou en aval
voulez créer et maintenir la traduction. Vous devez d'abord créer le fichier POT
nécessaire d'envoyer aux traducteurs utilisant po4a-gettextize (1).
Donc, pour notre cas, nous appellerions
cd man && po4a-gettextize -f man -m foo.1 -p foo.pot
Vous devez ensuite envoyer ce fichier aux listes de langues appropriées ou le proposer en téléchargement
quelque part sur votre site Web.
Supposons maintenant que vous ayez reçu trois traductions avant votre prochaine version : entrepôt
(y compris un addenda de.ajouter), sv.po et pt.po. Puisque vous ne voulez pas changer votre
Makefile(s) chaque fois qu'une nouvelle traduction arrive, vous pouvez utiliser po4a avec un approprié
fichier de configuration dans votre Makefile. Appelons-le po4a.cfg. Dans notre exemple, il semblerait
comme ce qui suit :
[répertoire_po] man/po4a/po/
[tapez : man] man/foo.1 $lang:man/translated/$lang/foo.1 \
add_$lang:?man/po4a/add_$lang/$lang.add opt:"-k 80"
Dans cet exemple, nous supposons que vos pages de manuel générées (et tous les fichiers PO et addenda)
doit être stocké dans homme/traduit/$lang/ (respectivement dans homme/po4a/po/ et
homme/po4a/add_$lang/) sous le répertoire courant. Dans notre exemple le homme/po4a/po/
répertoire comprendrait entrepôt, pt.po et sv.poainsi que, homme/po4a/add_de/ répertoire serait
de Swanson comprennent de.ajouter.
Notez l'utilisation du modificateur ? comme seule la traduction allemande (entrepôt) est accompagné d'un
Addendum.
Pour construire réellement les pages de manuel traduites, vous devez ensuite (une fois !) ajouter la ligne suivante
dans le construire cible de la bonne Makefile:
po4a po4a.cfg
Une fois que ceci est configuré, vous n'avez pas besoin de toucher le Makefile quand une nouvelle traduction arrive,
c'est à dire si l'équipe de France vous envoie fr.po et fr.ajouter alors vous les déposez simplement respectivement
in homme/po4a/po/ et man/po4a/add_fr/ et la prochaine fois que le programme est construit le français
la traduction est automatiquement construite aussi dans homme/traduit/fr/.
Notez que vous avez toujours besoin d'une cible appropriée pour installer les pages de manuel localisées avec
les anglais.
Enfin, si vous ne stockez pas les fichiers générés dans votre système de contrôle de version, vous
besoin d'une ligne dans votre espace extérieur plus propre, cible aussi :
-rm -rf man/traduit
INSUFFISANCES
· Duplique du code avec le po4a-* programmes.
Patch bienvenue ;)
Utilisez po4ap en ligne en utilisant les services onworks.net