Difference between revisions of "Apertium-dixtools (français)"

From Apertium
Jump to navigation Jump to search
m
 
(8 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Apertium-dixtools|In English]]

Apertium-dixtools est une commande shell qui permet de lancer l'exécution de différents outils développés en java. Ces outils permettent de faire des traitements automatiques sur un fichier dictionnaire (ou quelquefois plusieurs).
Apertium-dixtools est une commande shell qui permet de lancer l'exécution de différents outils développés en java. Ces outils permettent de faire des traitements automatiques sur un fichier dictionnaire (ou quelquefois plusieurs).


Line 7: Line 9:
Parmi les ''tâches'' disponibles, on trouve :
Parmi les ''tâches'' disponibles, on trouve :


* [[Formatage de dictionnaires]] pour mettre en forme les définitions/traductions des mots, un mot par ligne.
* [[Formatage de dictionnaires]] : pour mettre en forme les définitions/traductions des mots, un mot par ligne.
* [[Tri d'un dictionnaire]] les mots sont plus faciles à trouver s'ils sont dans l'ordre alphabétique.
* [[Tri d'un dictionnaire]] : les mots sont plus faciles à trouver s'ils sont dans l'ordre alphabétique.
* [[Examen d'un dictionnaire]] pour extraire des listes de lemmes, paradigmes, définitions etc... d'un dictionnaire.
* [[Examen d'un dictionnaire]] : pour extraire des listes de lemmes, paradigmes, définitions, etc. d'un dictionnaire.
* [[Inversion d'un dictionnaire bilingue]] pas nécessaire pour pouvoir traduire dans les deux sens, mais peut être utile pour la tâche qui suit.
* [[Inversion d'un dictionnaire bilingue]] : n'est pas nécessaire pour pouvoir traduire dans les deux sens, mais peut être utile pour la tâche qui suit.
* [[Crossdics : Génération d'une paire de langue à partir de 2 autres]] plus précisément un dictionnaire bilingue entre les langues A et C est fabriqué à partir des dictionnaires pour les paires de langues A-B et B-C.
* [[Crossdics : Génération d'une paire de langue à partir de 2 autres]] : plus précisément un dictionnaire bilingue entre les langues A et C est fabriqué à partir des dictionnaires pour les paires de langues A-B et B-C.
* [[Couverture du dictionnaire]] pour faire des statistiques sur l'utilisation des différents mots d'un dictionnaire.
* [[Couverture du dictionnaire]] : pour faire des statistiques sur l'utilisation des différents mots d'un dictionnaire.
* [[Autoconcord|Autoconcord (français)]] pour faire concorder les dictionnaires bilingues avec les dictionnaire unilingues lorsque des problèmes d'analyse se posent pour passer d'une langue à l'autre.
* [[Autoconcord|Autoconcord (français)]] ; pour faire concorder les dictionnaires bilingues avec les dictionnaire unilingues lorsque des problèmes d'analyse se posent pour passer d'une langue à l'autre.
* [[Paradigmes équivalents]] pour trouver les paradigmes inutilisés et les doublons dans un dictionnaire.
* [[Paradigmes équivalents]] : pour trouver les paradigmes inutilisés et les doublons dans un dictionnaire.
* [[Fusion de dictionnaires]] permet de regroupper des liste de mots issus de plusieurs dictionnaires (morphologiques) uniligue.
* [[Fusion de dictionnaires]] : permet de regrouper des listes de mots issus de plusieurs dictionnaires (morphologiques) unilingues.




Line 30: Line 32:


<pre>
<pre>
$ svn co https://apertium.svn.sourceforge.net/svnroot/apertium/trunk/apertium-dixtools
$ git clone https://github.com/apertium/apertium-dixtools
</pre>
</pre>


Line 46: Line 48:


Note :
Note :
* Si vous faites une mise à jour depuis SVN, c'est toujours une bonne idée de faire d'abord 'ant clean'.
* * Si vous faites une mise à jour depuis Github, c'est toujours une bonne idée de faire d'abord 'ant clean'.
* 'ant jar' s'attend aussi à faire de l'auto-test. Cela peut échouer, si quelqu'un fait des modifications sans s'assurer que les tests fonctionnent. Continuez juste l'installation et reportez les échecs de test sur la liste.
'ant jar' s'attend aussi à faire de l'auto-test. Cela peut échouer, si quelqu'un fait des modifications sans s'assurer que les tests fonctionnent. Continuez juste l'installation et reportez les échecs de test sur la liste.


==== Problèmes ====
==== Problèmes ====

Latest revision as of 03:01, 26 October 2018

In English

Apertium-dixtools est une commande shell qui permet de lancer l'exécution de différents outils développés en java. Ces outils permettent de faire des traitements automatiques sur un fichier dictionnaire (ou quelquefois plusieurs).

La syntaxe d'appel est :

apertium-dixtools tâche options paramètres (notamment des noms de fichier dictionnaire comme paramètre)

Parmi les tâches disponibles, on trouve :


Installation d'Apertium-dixtools[edit]

Prérequis logiciels[edit]

Vous devrez installer Ant et Java Development Kit 6 (JDK6)

$ sudo apt-get install ant sun-java6-jdk

Téléchargement[edit]

$ git clone https://github.com/apertium/apertium-dixtools

Compilation[edit]

$ cd apertium-dixtools
$ ant jar

Vous pouvez aussi construire et installer en utilisant Maven 2 (http://maven.apache.org), en tapant :

mvn install

Note :

  • * Si vous faites une mise à jour depuis Github, c'est toujours une bonne idée de faire d'abord 'ant clean'.
'ant jar' s'attend aussi à faire de l'auto-test. Cela peut échouer, si quelqu'un fait des modifications sans s'assurer que les tests fonctionnent. Continuez juste l'installation et reportez les échecs de test sur la liste.

Problèmes[edit]

Si vous obtenez une erreur "The J2SE Platform is not correctly set up." avec la propriété "platforms.default_platform.home" is not found, alors essayez

$ ant -Dplatforms.default_platform.home=/usr jar

ou si son f.ex. annonce une erreur avec la propriété "platforms.JDK_1.6.home" is not found, et que vous voulez pointer version Java spécifique, alors essayez

$ ant -Dplatforms.JDK_1.6.home=/usr/lib/jvm/java-6-sun jar

(Sur Mac : si vous voulez indiquer le chemin complet "/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/" (ou n'importe quel autre), commencez par faire un lien symbolique du répertoire .../1.6.0/Commands vers .../1.6.0/bin, puisque ant s'attend à ce que javac soit dans le sous répertoire bin de platforms...home)

Test[edit]

Le test est assez bavard. Les sorties ressemblent à :

-do-test-run:
    [junit] Testsuite: dictools.CrossDictTest
    [junit] [1] Loading bilingual AB (regression_test_data/crossdict/input/apertium-es-ca.es-ca.dix)
    [junit] Reading file regression_test_data/crossdict/input/apertium-es-ca.es-ca.dix

... 200 lignes de texte

    [junit] ------------- ---------------- ---------------
    [junit] Testsuite: misc.eoen.SubstractBidixTest
    [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0.073 sec
    [junit] 
    [junit] ------------- Standard Error -----------------
    [junit] checkEarlierAndRestrict
    [junit] ------------- ---------------- ---------------
    [junit] checkEarlierAndRestrict

Si le test échoue[edit]

Si vous obtenez quelque chose comme

    [junit] ------------- ---------------- ---------------

test-report:

-post-test-run:

BUILD FAILED
/home/j/esperanto/apertium/apertium-dixtools/nbproject/build-impl.xml:595: Some tests failed; see details above.

... c'est que le programme a été construit correctement, mais ne passe pas les tests. Il peut toujours être installé et fonctionnera probablement bien.

La raison la plus probable (sauf si quelqu'un a changé le programme d'une manière qui casse les tests), est que vous n'utilisez pas Unicode. Essayez en écrivant

export LANG=fr_FR.UTF-8

(ou n'importe quel autre langage Unicode installé - l'auteur de la page anglaise utilise eo.UTF-8 au lieu de en_US.UTF-8) et relancez les tests. Si ça ne vous aide pas, parlez en à la mailing list.

Installation[edit]

$ sudo ant install

Utilisation d'Apertium-dixtools[edit]

Usage: apertium-dixtools [tache] [options génériques] [paramètres tache] ...

 Taches :
   cross:              croise 2 paires de langues (en utilisant les ressources linguistiques, et les fichiers XML - voir Modèle croisé)
   cross-param:        croise 2 paires de langues (en utilisant les paramètres de ligne de commande) Crossdics
   merge-morph:        fusionne deux dictionnaires morphologiques (monodix) Fusion de dictionnaires
   equiv-paradigms:    trouve les paradigmes équivalents et met à jour les références
   list:               liste les entrées d'un dictionnaire - voir Examen d'un dictionnaire
   dix2trie:           crée un essai à partir d'un dictionnaire bilingue existant
   dix2tiny:           crée des données pour les plate-formes mobiles (j2me, palm) à partir des dictionnaires bilingues
   reverse-bil:        retourne un dictionnaire bilingue - voir Retournement d'un dictionnaire bilingue
   sort:               trie (et groupe par catégorie) un dictionnaire - voir Tri d'un dictionnaire
   format:             Formatage de dictionnaires (par rapport à des options génériques)
   fix:                "fixe" un dictionnaire (supprime les doublons, convertit les espaces)

Pour afficher l'aide sur une tâche, appelez-la sans paramètre.


Options génériques : (principalement pour les tâches qui envoient en sortie des fichiers .dix)

    -debug              affiche les informations supplémentaires de debug
    -noProcComments     ne pas ajouter le traitement des commentaires (disant ce qui est fait)
    -stripEmptyLines    supprime les lignes vides (venant du fichier original)
    -alignBidix         aligne un dictionnaire bilingue (<p> ou <i> à la colonne 10, <r> à la colonne 55)
    -alignMonodix       aligne un dictionnaire unilingue (pardef 10, 30, autres entrées 25, 45)
    -align [[E] P R]    alignement customisé (défaut <p>/<i> à la colonne 10, <r> à la colonne 55)
    -alignpardef [[E] P R] alignement de paradigme (s'il diffère de l'alignement général)

  Chaque option -align implique un 'style de sortie compact' (une entrée de dictionnaire par ligne)
  dans le cas contraire la sortie n'est pas compacte (style XML : une balise par ligne, beaucoup d'indentations)

  Utiliser - comme nom de fichier pour "piper" (fichiers .dix lus/écrits sur l'entrée/sortie standard)

Notes pour développeurs[edit]

Liste de souhaits et notes pour Apertium-dixtools[edit]

Il devrait y avoir plusieurs autres options, et TOUTES les sous-commandes devraient accepter un paramètre -fmt où tout pourrait être spécifié :

  • multi-mots -- une ligne ou plusieurs
  • multi-mots -- doivent ils être séparés

(parce que quelquefois avec les multimots complexes que vous voulez avoir se traitent (?) différemment et séparément ex: vous avez une section pour des verbes qui contient d'abord les verbes "simples", puis les verbes multi-mots)

  • multi-mots -- les verbes simples sont un par ligne
  • multi-mots -- et les verbes multi-mots sont sur plusieurs lignes

Voir aussi Crossdics : Génération d'une paire de langue à partir de 2 autres