Jump to content

KDE Localization/fr/pology: Difference between revisions

From KDE Community Wiki
Johan.cb (talk | contribs)
Created page with "=Prendre en main Pology= == Installation== ===Prérequis=== Pology nécessite Python, version 2.4 ou supérieure. Python est installé par défaut sur de nombreuses distribu..."
 
Johan.cb (talk | contribs)
No edit summary
Line 46: Line 46:
===Configurer Pology : le fichier $HOME/.pologyrc===
===Configurer Pology : le fichier $HOME/.pologyrc===


Il est nécessaire de configurer Pology, en créant le fichier $HOME/.pologyrc. Par exemple, avant d'utiliser check_spell, il faut définir la langue (directive language) et le code page (directive encoding) dans la section '''aspell'''. Par exemple aussi, la détection automatique de la langue ayant été supprimée dans Pology, il faut spécifier la langue en paramètre (-slang:fr) ou bien dans le fichier de configuration $HOME/.pologyrc (directive param-lang) dans la section '''posieve'''.
Il est nécessaire de configurer Pology, en créant le fichier $HOME/.pologyrc. Par exemple, avant d'utiliser <code>check_spell</code>, il faut définir la langue (directive language) et le code page (directive encoding) dans la section '''aspell'''. Par exemple aussi, la détection automatique de la langue ayant été supprimée dans Pology, il faut spécifier la langue en paramètre (-slang:fr) ou bien dans le fichier de configuration $HOME/.pologyrc (directive param-lang) dans la section '''posieve'''.
 
<code>
[aspell]


{{Input|1=<nowiki>[aspell]
language = fr
language = fr
encoding = UTF-8
encoding = UTF-8


[posieve]
[posieve]
param-lang = fr
param-lang = fr
 
</nowiki>}}
</code>


===Mettre Pology à jour===
===Mettre Pology à jour===
Line 67: Line 60:
Une fois que Pology a été récupéré sur le SVN, il est nécessaire de le mettre à jour régulièrement, car des règles sont ajoutées ou optimisées tous les jours. Pour ce faire, il suffit d'utiliser la commande de mise à jour :
Une fois que Pology a été récupéré sur le SVN, il est nécessaire de le mettre à jour régulièrement, car des règles sont ajoutées ou optimisées tous les jours. Pour ce faire, il suffit d'utiliser la commande de mise à jour :


<code>svn up $HOME/Traduction/pology</code>
{{Input|1=<nowiki>svn up $HOME/Traduction/pology</nowiki>}}


Subversion met à jour les fichiers du répertoire pology. Si l'opération a bien marché, la console vous indique quels fichiers ont été ajoutés (A), mis à jour (U), supprimés (D), fusionnés (G) et ceux qui ont pu créer un conflit (C) de la façon suivante :
Subversion met à jour les fichiers du répertoire pology. Si l'opération a bien marché, la console vous indique quels fichiers ont été ajoutés (A), mis à jour (U), supprimés (D), fusionnés (G) et ceux qui ont pu créer un conflit (C) de la façon suivante :


<code>
{{Output|1=<nowiki>U    pology/file/message.py
 
U    pology/file/message.py
U    pology/l10n/fr/rules/common-mistakes.rules
U    pology/l10n/fr/rules/common-mistakes.rules
U    pology/l10n/fr/rules/typography.rules
U    pology/l10n/fr/rules/typography.rules
Line 81: Line 72:
U    pology/sieve/check_rules.py
U    pology/sieve/check_rules.py
Updated to revision 782149.
Updated to revision 782149.
</nowiki>}}


</code>
Pensez bien à mettre à jour régulièrement Pology, afin de rester homogène avec le reste de l'équipe et de toujours avoir des traductions les plus propres possibles.


Pensez bien à mettre à jour régulièrement Pology, afin de rester homogène avec le reste de l'équipe et de toujours avoir des traductions les plus propres possibles.
==Utilisation==
2. Utilisation


Pology est un ensemble de scripts permettant de faire un grand nombre de tâches. Nous utilisons couramment quelques-uns de ces scripts, que nous allons apprendre à prendre en main maintenant.
Pology est un ensemble de scripts permettant de faire un grand nombre de tâches. Nous utilisons couramment quelques-uns de ces scripts, que nous allons apprendre à prendre en main maintenant.


La documentation intégrée de Pology est de mieux en mieux. Elle est dans pology/doc/user. Vous pouvez vous y référer pour plus d'informations sur ce logiciel, ses sieves, ses options etc.
La documentation intégrée de Pology est de mieux en mieux. Elle est dans pology/doc/user. Vous pouvez vous y référer pour plus d'informations sur ce logiciel, ses sieves, ses options etc.
a. Commande de base et création d'un alias
 
===Commande de base et création d'un alias===


Sachez avant tout qu'un seul fichier permet d'exécuter tous les modules : posieve.py. Ainsi, quelque soit le module que l'on veut faire fonctionner, il faudra passer une commande du type :
Sachez avant tout qu'un seul fichier permet d'exécuter tous les modules : posieve.py. Ainsi, quelque soit le module que l'on veut faire fonctionner, il faudra passer une commande du type :
 
{{Input|1=<nowiki>python $HOME/Traduction/pology/scripts/posieve.py -b $NOM_DU_MODULE $FICHIER_CIBLE</nowiki>}}
python $HOME/Traduction/pology/scripts/posieve.py -b $NOM_DU_MODULE $FICHIER_CIBLE


Remarque : Notez que l'ajout de l'attribut -b permet d'ignorer les messages obsolètes qui sont stock�cs en fin de fichier et n'ont plus besoin d'�tre traduits.
Remarque : Notez que l'ajout de l'attribut -b permet d'ignorer les messages obsolètes qui sont stock�cs en fin de fichier et n'ont plus besoin d'�tre traduits.
Line 100: Line 91:
Aussi, il est fortement conseillé de créer un alias de commande, c'est-à-dire une ligne dans votre fichier .bashrc qui vous permettra de taper par exemple :
Aussi, il est fortement conseillé de créer un alias de commande, c'est-à-dire une ligne dans votre fichier .bashrc qui vous permettra de taper par exemple :


pology $NOM_DU_MODULE $FICHIER_CIBLE
{{Input|1=<nowiki>pology $NOM_DU_MODULE $FICHIER_CIBLE</nowiki>}}


Au lieu de
Au lieu de


python $HOME/Traduction/pology/scripts/posieve.py -b $NOM_DU_MODULE $FICHIER_CIBLE
{{Input|1=<nowiki>python $HOME/Traduction/pology/scripts/posieve.py -b $NOM_DU_MODULE $FICHIER_CIBLE</nowiki>}}


Pour ce faire, ouvrez simplement ~/.bashrc et rajoutez la ligne suivante où vous le désirez :
Pour ce faire, ouvrez simplement ~/.bashrc et rajoutez la ligne suivante où vous le désirez :


alias pology='python $HOME/Traduction/pology/scripts/posieve.py -b'
{{Input|1=<nowiki>alias pology='python $HOME/Traduction/pology/scripts/posieve.py -b'</nowiki>}}


Vous pouvez bien sûr utiliser un autre alias que pology. J'utiliserai pour ma part l'alias pology dans la suite de ce tutoriel.
Vous pouvez bien sûr utiliser un autre alias que pology. J'utiliserai pour ma part l'alias pology dans la suite de ce tutoriel.
b. check_rules, notre Bible


check_rules est l'outil vérifiant les règles de traduction décidées par l'équipe, la conformité, l'homogénéité, l'orthographe, la syntaxe... Il s'utilise en console, analyse le fichier PO indiqué et retourne les erreurs et leurs références.
===<code>check_rules</code>, notre Bible===
 
<code>check_rules</code> est l'outil vérifiant les règles de traduction décidées par l'équipe, la conformité, l'homogénéité, l'orthographe, la syntaxe... Il s'utilise en console, analyse le fichier PO indiqué et retourne les erreurs et leurs références.


Pour utiliser ce module, il faut passer en argument le nom du fichier à analyser.
Pour utiliser ce module, il faut passer en argument le nom du fichier à analyser.


pology check_rules $CHEMIN_VERS_FICHIER_PO
{{Input|1=<nowiki>pology check_rules $CHEMIN_VERS_FICHIER_PO</nowiki>}}


L'outil se charge en vous indiquant quelques informations :
L'outil se charge en vous indiquant quelques informations :


Rules available in the following languages: fr
{{Output|1=<nowiki>Rules available in the following languages: fr
Autodetecting fr language
Autodetecting fr language
Load 166 rules
Load 166 rules
</nowiki>}}


S'affichent ensuite les erreurs détectées, s'il y en a. Une erreur est toujours de la forme suivante :
S'affichent ensuite les erreurs détectées, s'il y en a. Une erreur est toujours de la forme suivante :


{{Output|1=<nowiki>
Traduction_KDE/a_pologiser/k3b.po:7314(1214)
Traduction_KDE/a_pologiser/k3b.po:7314(1214)
#: k3bwritingmodewidget.cpp:38
#: k3bwritingmodewidget.cpp:38
Line 137: Line 131:
Essayez ce mode si votre graveur échoue en DAO et TAO."
Essayez ce mode si votre graveur échoue en DAO et TAO."
(&lwb;cr@ées)==>A remplacer par 'créées'"
(&lwb;cr@ées)==>A remplacer par 'créées'"
</nowiki>}}


Ainsi, vous avez à la première ligne le fichier concerné, la ligne du fichier incriminée et entre parenthèses le numéro de chaîne. Utilisez ce numéro de chaîne dans Lokalize pour repérer le message fautif (CTRL + G pour aller directement à un numéro de chaîne).
Ainsi, vous avez à la première ligne le fichier concerné, la ligne du fichier incriminée et entre parenthèses le numéro de chaîne. Utilisez ce numéro de chaîne dans Lokalize pour repérer le message fautif (CTRL + G pour aller directement à un numéro de chaîne).

Revision as of 13:51, 27 April 2020

Prendre en main Pology

Installation

Prérequis

Pology nécessite Python, version 2.4 ou supérieure. Python est installé par défaut sur de nombreuses distributions. Pour savoir si vous l'avez, utilisez la commande suivante :

python -V

Si vous avez Python d'installé, la console vous retournera :

Python {NUMERO_DE_VERSION}

Si vous avez la version 2.4 de Python, vous devez installer manuellement le module ctypes.

Pour utiliser le module de vérification d'orthographe check_spell, vous devez avoir installé les paquets aspell et aspell-fr. Pour savoir si Aspell Français est disponible, la commande suivante :

aspell -d fr -a

doit vous retourner quelque chose comme :

International Ispell Version 3.1.20 (but really Aspell 0.60.4)

Conventions

Dans la suite de ce tutoriel, j'utiliserai la notation $HOME pour désigner le chemin de votre dossier personnel, par exemple /home/paul.

Je pars du principe que vous utilisez, pour les traductions de KDE, un dossier Traduction situé dans votre dossier personnel, et que vous comptez installer pology dans un sous-répertoire pology de Traduction. Si vous souhaitez procéder différemment, il vous suffit d'adapter les chemins donnés dans les lignes de commande.

Récupérer Pology

Pology est disponible sur le SVN de KDE. La façon la plus simple de le récupérer - et de le mettre à jour - est d'utiliser l'outil en ligne de commande Subversion. Une instruction suffit pour se connecter anonymement au SVN et disposer de l'outil (vous devez avoir la permission d'effectuer des connexions sortantes sur le port svn : 3690) :

svn co svn://anonsvn.kde.org/home/kde/trunk/l10n-support/pology

Cette commande télécharge le dossier pology dans le dossier courant. Il faut donc se placer dans le dossier Traduction avant de passer la commande :

cd $HOME/Traduction
svn co svn://anonsvn.kde.org/home/kde/trunk/l10n-support/pology

Configurer Pology : le fichier $HOME/.pologyrc

Il est nécessaire de configurer Pology, en créant le fichier $HOME/.pologyrc. Par exemple, avant d'utiliser check_spell, il faut définir la langue (directive language) et le code page (directive encoding) dans la section aspell. Par exemple aussi, la détection automatique de la langue ayant été supprimée dans Pology, il faut spécifier la langue en paramètre (-slang:fr) ou bien dans le fichier de configuration $HOME/.pologyrc (directive param-lang) dans la section posieve.

[aspell]
language = fr
encoding = UTF-8

[posieve]
param-lang = fr

Mettre Pology à jour

Une fois que Pology a été récupéré sur le SVN, il est nécessaire de le mettre à jour régulièrement, car des règles sont ajoutées ou optimisées tous les jours. Pour ce faire, il suffit d'utiliser la commande de mise à jour :

svn up $HOME/Traduction/pology

Subversion met à jour les fichiers du répertoire pology. Si l'opération a bien marché, la console vous indique quels fichiers ont été ajoutés (A), mis à jour (U), supprimés (D), fusionnés (G) et ceux qui ont pu créer un conflit (C) de la façon suivante :

U    pology/file/message.py
U    pology/l10n/fr/rules/common-mistakes.rules
U    pology/l10n/fr/rules/typography.rules
A    pology/l10n/fr/rules/koffice.rules.disabled
U    pology/l10n/fr/rules/team-choices.rules
U    pology/misc/rules.py
U    pology/sieve/check_rules.py
Updated to revision 782149.

Pensez bien à mettre à jour régulièrement Pology, afin de rester homogène avec le reste de l'équipe et de toujours avoir des traductions les plus propres possibles.

Utilisation

Pology est un ensemble de scripts permettant de faire un grand nombre de tâches. Nous utilisons couramment quelques-uns de ces scripts, que nous allons apprendre à prendre en main maintenant.

La documentation intégrée de Pology est de mieux en mieux. Elle est dans pology/doc/user. Vous pouvez vous y référer pour plus d'informations sur ce logiciel, ses sieves, ses options etc.

Commande de base et création d'un alias

Sachez avant tout qu'un seul fichier permet d'exécuter tous les modules : posieve.py. Ainsi, quelque soit le module que l'on veut faire fonctionner, il faudra passer une commande du type :

python $HOME/Traduction/pology/scripts/posieve.py -b $NOM_DU_MODULE $FICHIER_CIBLE

Remarque : Notez que l'ajout de l'attribut -b permet d'ignorer les messages obsolètes qui sont stock�cs en fin de fichier et n'ont plus besoin d'�tre traduits.

Aussi, il est fortement conseillé de créer un alias de commande, c'est-à-dire une ligne dans votre fichier .bashrc qui vous permettra de taper par exemple :

pology $NOM_DU_MODULE $FICHIER_CIBLE

Au lieu de

python $HOME/Traduction/pology/scripts/posieve.py -b $NOM_DU_MODULE $FICHIER_CIBLE

Pour ce faire, ouvrez simplement ~/.bashrc et rajoutez la ligne suivante où vous le désirez :

alias pology='python $HOME/Traduction/pology/scripts/posieve.py -b'

Vous pouvez bien sûr utiliser un autre alias que pology. J'utiliserai pour ma part l'alias pology dans la suite de ce tutoriel.

check_rules, notre Bible

check_rules est l'outil vérifiant les règles de traduction décidées par l'équipe, la conformité, l'homogénéité, l'orthographe, la syntaxe... Il s'utilise en console, analyse le fichier PO indiqué et retourne les erreurs et leurs références.

Pour utiliser ce module, il faut passer en argument le nom du fichier à analyser.

pology check_rules $CHEMIN_VERS_FICHIER_PO

L'outil se charge en vous indiquant quelques informations :

Rules available in the following languages: fr
Autodetecting fr language
Load 166 rules

S'affichent ensuite les erreurs détectées, s'il y en a. Une erreur est toujours de la forme suivante :

Traduction_KDE/a_pologiser/k3b.po:7314(1214)
#: k3bwritingmodewidget.cpp:38
msgid ""
"RAW writing mode. The error correction data is created by the software "
"instead of the writer device.
Try this if your CD writer fails to write "
"in DAO and TAO.
msgstr "Gravure brute (RAW). Les données de correction d'erreurs ne sont plus crées par le graveur, mais par le logiciel. 
Essayez ce mode si votre graveur échoue en DAO et TAO."
(&lwb;cr@ées)==>A remplacer par 'créées'"

Ainsi, vous avez à la première ligne le fichier concerné, la ligne du fichier incriminée et entre parenthèses le numéro de chaîne. Utilisez ce numéro de chaîne dans Lokalize pour repérer le message fautif (CTRL + G pour aller directement à un numéro de chaîne).

Les lignes suivantes sont le message en langue originale et votre traduction.

Enfin, la dernière ligne est un commentaire de l'erreur en question. Elle vous aide à déterminer où est l'erreur et comment la corriger.

Lorsque toutes les chaînes ont été analysées, l'outil check_rules vous renvoie le nombre d'erreurs trouvées.

Total matching: 9

Votre mission : atteindre le 0 ! Bien sûr, certaines règles sonnent parfois de fausses alertes. Reportez-vous à la troisième partie de ce tutoriel pour savoir comment réagir dans ce cas-là : comment déclarer un faux positif et aider à améliorer l'outil. c. check_spell : vérificateur d'orthographe

Le module check_spell est l'intégration du correcteur d'orthographe Aspell dans Pology. Il vous permet de vérifier la bonne orthographe de vos traductions. Avant d'utiliser check_spell, il faut que le fichier $HOME/.pologyrc soit correctement renseigné (cf. chapitre dans ce document).

L'utilisation est d'une simplicité enfantine : il suffit de passer en argument le nom du fichier ou du dossier à analyser.

pology check_spell $CHEMIN_VERS_FICHIER_PO pology check_spell $CHEMIN_VERS_DOSSIER_DE_PO

d. check_grammar : vérificateur de grammaire

Le module check_grammar est le pendant grammatical de check_spell : il intègre le correcteur LanguageTool (utilisé par OpenOffice.org) dans Pology. On l'utilise de la même façon :

pology check_grammar $CHEMIN_VERS_FICHIER_PO pology check_grammar $CHEMIN_VERS_DOSSIER_DE_PO

Ceci est pour le moment expérimental et les résultats ne sont pas encore probants. Vous êtes prévenus ! e. fr:setUbsp : gérer les espaces non sécables

Cet outil remplace, dans un fichier donné, les espaces par des espaces non sécables lorsque c'est nécessaire, notamment avant les deux-points, les points-virgule, les points d'exclamation et d'interrogation...

Pour utiliser ce module, il faut passer en argument le nom du fichier à analyser.

pology fr:setUbsp $CHEMIN_VERS_FICHIER_PO

L'outil vous renvoie alors le fichier modifié et le nombre de remplacements effectués.

! Traduction_KDE/a_pologiser/k3b.po Total messages changed: 49

f. find_messages, recherche dans les chaînes

Ce module permet de faire des recherches dans les chaînes originales et-ou traduites. L'utilisation est un peu plus complexe que les modules précédents car il faut utiliser, en plus du chemin vers un fichier ou un dossier de recherche, des options.

   L'option -smsgstr:$chaine_recherche permet de rechercher $chaine_recherche dans les chaînes traduites.
   L'option -smsgid:$chaine_recherche permet de rechercher $chaine_recherche dans les chaînes originales.
   L'option -smsgctxt:$chaine_recherche permet de rechercher $chaine_recherche dans les informations contextuelles.

Vous pouvez bien sûr combiner les critères de recherche. La chaîne peut être un mot, une suite de mots ou une expression régulière. Pensez, si la chaîne de recherche comporte plusieurs mots, à l'encadrer par des guillemets.

Quelques exemples d'utilisation :

  1. Commande pour savoir quelles sont les chaînes traduites qui contiennent les mots "un icône", pour le fichier "trunk/l10n-kde4/fr/messages/kdewebdev/kommander.po"

pology find_messages -smsgstr:"un icône" trunk/l10n-kde4/fr/messages/kdewebdev/kommander.po

  1. Idem, mais pour tous les fichiers PO présents dans le sous-répertoire "trunk/l10n-kde4/fr/messages/"

pology find_messages -smsgstr:"un icône" trunk/l10n-kde4/fr/messages/

  1. Si on cherche à savoir comment "thumbnail" (dans les chaînes originales) est traduit et s'il est traduit par "vignette" dans trunk

pology find_messages -smsgid:thumbnail -smsgstr:vignette trunk/l10n-kde4/fr/messages/

g. check_kde4, vérifier la conformité du code XML

«check_kde4» vérifie la conformité du code XML. Sur les documentations ça sortait (sort ?) régulièrement des alertes sur les entités des traducteurs (&nomdutraducteur;). Cela signale aussi des balises non fermées. L'option -c passée à pology check_kde4 permet de faire un contrôle avec msgfmt en plus. Voir par exemple le document anglophone suivant pour quelques autres précisions.

  1. vérifier la conformité du code XML

posieve check_kde4 monFichier.po

Note : récemment (en 2010 ?), deux sieves ont été renommés en éliminant la mention «xml» :

   check_xml_kde4 -> check_kde4
   check_xml_docbook -> check_docbook4

3. Amélioration a. Faire un rapport de faux positif

Si vous êtes agressé par un des outils vus précédemment sans raison valable, si check_spell souligne des fautes d'orthographe inexistantes ou si check_rules n'est absolument pas pertinent, postez sur la liste ce faux positif en détaillant :

   le nom et la branche du fichier incriminé,
   la chaîne originale,
   la chaîne traduite,
   le message d'erreur,
   éventuellement, une petite explication et une suggestion d'amélioration.

La liste statuera alors : est-il justifié de considérer le cas comme un faux positif, comment le corriger, gérer l'exception... Une fois un consensus trouvé ou arraché, Pology sera modifié : pensez alors à le mettre à jour. b. Proposer des mots à ignorer par check_spell

Le jargon technique fourmille de mots spécifiques : noms de protocoles, de formats, de logiciels... Ces mots sont considérés comme n'existant pas dans la langue française par le module check_spell, tant qu'ils ne sont pas ajoutés à un fichier dictionnaire. Pour améliorer l'outil check_spell, vous pouvez proposer des mots à ajouter à ce dictionnaire.

Pour contribuer au dictionnaire de manière efficace, il faut, sur un ou plusieurs fichiers :

   corriger les vraies fautes d'orthographe,
   lancer sur la liste les débats pour les mots litigieux,
   quand il ne reste que des erreurs bidons, faire tourner le module check_spell avec l'option -slist pour faire une sortie propre et sans doublons prête à être copiée et collée dans le dico,
   envoyer la sortie de cette commande dans un fichier texte à Vincent Pinon.

Quelques précisions sur l'usage des majuscules et des minuscules :

   Si vous ajoutez un mot en minuscules, celui-ci sera considéré par check_spell comme juste, qu'il soit en minuscules ou en majuscules ;
   Par contre, si le mot est ajouté avec une ou plusieurs lettres en majuscule, le mot ne sera accepté que si les lettres en majuscule dans la liste d'exceptions sont en majuscule dans la chaîne.

c. Utiliser le dictionnaire de check_spell dans tout KDE

Si vous souhaitez bénéficier de la liste des exceptions autorisées lorsque vous traduisez avec Lokalize, il vous suffit de créer le lien symbolique suivant :

ln -s $POLOGY/lang/fr/spell/dict.aspell ~/.aspell.fr.pws

La variable d'environnement $POLOGY désigne bien entendue l'emplacement d'installation de Pology.

Notez également que ce dictionnaire s'applique à tout votre bureau KDE (Konqueror, KMail,...), et pas seulement aux outils de traduction.