KDE Localization/fr/pology: Difference between revisions

From KDE Community Wiki
(Pology est passé de subversion à git)
No edit summary
 
(3 intermediate revisions by one other user not shown)
Line 4: Line 4:
===Prérequis===
===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 :
Pology nécessite Python, version 3.7 ou supérieure. Python est installé par défaut sur de nombreuses distributions. Pour savoir si vous l'avez, utilisez la commande suivante :


{{Input|1=<nowiki>
{{Input|1=<nowiki>
Line 10: Line 10:
</nowiki>}}
</nowiki>}}


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


{{Output|1=<nowiki>Python {NUMERO_DE_VERSION}</nowiki>}}
{{Output|1=<nowiki>Python 3.10.9</nowiki>}}
 
Si vous avez la version 2.4 de Python, vous devez installer manuellement le module [[python.net/crew/theller/ctypes/|ctypes]].


Pour utiliser le module de vérification d'orthographe check_spell, vous devez avoir installé les paquets <code>aspell</code> et <code>aspell-fr</code>. Pour savoir si Aspell Français est disponible, la commande suivante :
Pour utiliser le module de vérification d'orthographe check_spell, vous devez avoir installé les paquets <code>aspell</code> et <code>aspell-fr</code>. Pour savoir si Aspell Français est disponible, la commande suivante :
Line 34: Line 32:
===Récupérer Pology===
===Récupérer Pology===


Pology est disponible sur GitHub. 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 '''git'''. Pour le copier dans le répertoire de traduction :
Pology est disponible sur l'instance GitLab 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 '''git'''. Pour le copier dans le répertoire de traduction :


{{Input|1=<nowiki>cd $HOME/Traduction
{{Input|1=<nowiki>cd $HOME/Traduction
git clone https://github.com/KDE/pology.git</nowiki>}}
git clone https://invent.kde.org/sdk/pology.git</nowiki>}}


===Configurer Pology : le fichier $HOME/.pologyrc===
===Configurer Pology : le fichier $HOME/.pologyrc===
Line 53: Line 51:
===Mettre Pology à jour===
===Mettre Pology à jour===


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


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


{{Note/fr|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.}}
{{Note/fr|Notez que l'ajout de l'attribut -b permet d'ignorer les messages obsolètes qui sont stockés 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 :
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 :
Line 236: Line 234:
ln -s $POLOGY/lang/fr/spell/dict.aspell ~/.aspell.fr.pws</nowiki>}}
ln -s $POLOGY/lang/fr/spell/dict.aspell ~/.aspell.fr.pws</nowiki>}}


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


La variable d'environnement $POLOGY désigne bien entendue l'emplacement d'installation de Pology.
Notez également que ce dictionnaire s'applique alors à tout votre bureau KDE (Konqueror, KMail,...), et pas seulement aux outils de traduction.
 
Notez également que ce dictionnaire s'applique à tout votre bureau KDE (Konqueror, KMail,...), et pas seulement aux outils de traduction.

Latest revision as of 20:04, 2 January 2023

Prendre en main Pology

Installation

Prérequis

Pology nécessite Python, version 3.7 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 quelque chose comme :

Python 3.10.9

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 l'instance GitLab 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 git. Pour le copier dans le répertoire de traduction :

cd $HOME/Traduction
git clone https://invent.kde.org/sdk/pology.git

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 l'instance GitLab de KDE, il est nécessaire de le mettre à jour régulièrement, car des règles sont parfois ajoutées ou optimisées. Pour ce faire, il suffit d'utiliser la commande de mise à jour :

cd $HOME/Traduction/pology
git pull

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

Template:Note/fr

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.

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

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 !

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

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 :

#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

#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/

#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/

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.

# 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


Amélioration

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.

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.

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 l'emplacement d'installation de Pology.

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