Utilisation d'un dictionnaire lttoolbox

From Apertium
Revision as of 15:14, 24 September 2011 by Bech (talk | contribs) (Création page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Cette page est conçue comme une réponse à la question "J'ai trouvé un de ces fichiers .dix, comment puis-je l'utiliser pour analyser un texte ?" D'abord, il convient d'expliquer ce qu'est un fichier .dix, c'est un transducteur à états finis pour un langage codé en XML. D'avantage d'informations à ce sujet peut être trouvée dans les pages lttoolbox et Bases sur les dictionnaires unilingues, mais cette page s'intéresse seulement à la manière dont il est utilisé.

Exigences

Les outils nécessaires les plus fondamentaux sont :
  • lttoolbox — Une boîte à outils à états finis
  • apertium — Une plate-forme logicielle de traduction automatique

Le second est nécessaire pour le support du format d'un document. Les outils de lttoolbox ont un ensemble méta-caractères qui doivent être échappés dans le texte courant (voir Format du flux Apertium).

Si votre ordinateur tourne sous GNU/Linux ou Mac/OS vous pouvez probablement installer ces deux programmes assez facilement. Pour lttoolbox :

$ svn co http://apertium.svn.sourceforge.net/svnroot/apertium/trunk/lttoolbox
cd lttoolbox/
sh autogen.sh
./configure
make
make install

Et pour apertium :

$ svn co http://apertium.svn.sourceforge.net/svnroot/apertium/trunk/apertium
cd apertium/
sh autogen.sh
./configure
make
make install

Subversion (svn) est un système de contrôle de version. Si vous ne l'avez pas installé, sur Debian/Ubuntu GNU/Linux vous pouvez utiliser apt-get install subversion (ou le récupérer via Synaptic). Sur Mac/OS vous pouvez utiliser port install subversion (qui nécessite MacPorts).

Voir Installation (français) pour plus d'informations et pour la maintenance.

Utiliser le dictionnaire

Alors, prenez le fichier .dix (ex: apertium-bn-en.bn.dix) que vous avez téléchargé, et compilez le :

Compilation

Voir aussi : Compilation des dictionnaires

$ lt-comp lr apertium-bn-en.bn.dix bn.analyser.bin
final@inconditional 8 75
main@standard 6403 13351

Utilisation

Notez que la commande apertium-destxt est importante.

$ echo "উইকিপিডিয়ার বাংলা সংস্করণে স্বাগতম। এই বিশ্বকোষে যে কেউ অবদান রাখতে পারেন। ২১,২৫৫টি ভুক্তির ওপর কাজ চলছে।" | apertium-destxt | lt-proc bn.analyser.bin 
^উইকিপিডিয়ার/*উইকিপিডিয়ার$ ^বাংলা/বাংলা<adj><mf>/বাংলা<n><mf><nn><sg><nom>/বাংলা<n><mf><nn><sg><obj>$ ^সংস্করণে/*সংস্করণে$ ^স্বাগতম/*স্বাগতম$^।/।<sent>$ 
^এই/এই<det><dem>$ ^বিশ্বকোষে/*বিশ্বকোষে$ ^যে/যা<prn><p3><infml><rel><aa><mf><sg><nom>$ ^কেউ/কেউ<prn><p3><aa><mf><sp><nom>$ 
^অবদান/অবদান<n><nt><nn><sg><nom>/অবদান<n><nt><nn><sg><obj>$ ^রাখতে/রাখ<vblex><inf>/রাখ<vblex><past><hbtl><p2><fam>$ 
^পারেন/পার<vblex><pres><smpl><p3><pol>/পার<vblex><pres><smpl><p2><pol>$^।/।<sent>$ ^২১/২১<num>$, ^২৫৫টি/২৫৫<num>$ ^ভুক্তির/*ভুক্তির$ 
^ওপর/ওপর<adv>/ওপর<n><mf><nn><sg><nom>/ওপর<n><mf><nn><sg><obj>$ ^কাজ/কাজ<n><nt><nn><sg><nom>/কাজ<n><nt><nn><sg><obj>$ 
^চলছে/চল<vblex><pres><cnt><impers>/চল<vblex><pres><cnt><p3><infml>$^।/।<sent>$^./.<sent>$[][
]

parce que si des méta-caractères non échappés apparaissent dans le flux, vous récupérez une std::exception:

$ echo "Voici un test ^500" | lt-proc bn.analyser.bin 
Voici un test std::exception

(sur un Mac, vous verrez en général une 9Exception)

Voir aussi

  • List of dictionaries (si un jour, l'outil qui met à jour cette page génère plus qu'une liste vide !)