Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| dictconv [Le 05/12/2008, 21:29] – 213.95.41.13 | dictconv [Le 18/03/2023, 10:40] (Version actuelle) – nettoyage L'Africain | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | {{tag>feisty brouillon}} | + | {{tag>Jammy dictionnaires_encyclopedies}} |
| ---- | ---- | ||
| ====== Dictconv ====== | ====== Dictconv ====== | ||
| - | Dictconv est un programme | + | Dictconv est une application |
| Il a été codé par l' | Il a été codé par l' | ||
| Le programme détecte le type de dictionnaire par ses extensions :\\ | Le programme détecte le type de dictionnaire par ses extensions :\\ | ||
| - | .bgl pour les dictionnaires Babylon\\ | + | * .dct pour les dictionnaires |
| - | .dct pour les dictionnaires | + | |
| - | .dic pour les dictionnaires plain text\\ | + | |
| - | .ifo pour les dictionnaires [[StarDict]]\\ | + | |
| - | .index pour les dictionnaires DICT\\ | + | |
| - | .tei pour les dictionnaires | + | Il convertit des dictionnaires de Freedict, Sdictionary et Stardict vers les dictionnaires de DICT, plain text et StarDict. |
| - | A l' | + | |
| + | <note warning> | ||
| + | ===== Pré-requis ===== | ||
| + | |||
| + | * Disposer des [[: | ||
| + | * Disposer d'une connexion à Internet configurée et activée. | ||
| + | * Avoir installé [[: | ||
| + | * Avoir installé [[apt> | ||
| - | ===== Prérequis ===== | ||
| - | |||
| - | * Avoir installé [[Stardict]] ou ktranslator. | ||
| - | * Avoir installé stardict-tools. | ||
| - | * Avoir installé libxml2-dev (obligatoire pour la compilation) | ||
| - | * Avoir installé checkinstall | ||
| ===== Installation ===== | ===== Installation ===== | ||
| - | <note tip> | ||
| - | Il va falloir compiler le programme dont les sources se trouvent ici : http:// | ||
| - | On utilisera checkinstall pour créer un paquet au format " | ||
| - | On télécharge | + | Il suffit d' |
| - | On ouvre un terminal et on se met dans le répertoire dictconv-0.2 par la commande : | + | |
| - | $ cd / | + | |
| - | Puis\\ | + | |
| - | $ ./ | + | |
| - | $ make | + | |
| - | $ sudo checkinstall | + | |
| ===== Utilisation ===== | ===== Utilisation ===== | ||
| - | Dans un terminal, l' | + | Dans un terminal, l' |
| - | $ dictconv -o fichier_cible.ext fichier_original.ext | + | Vous trouverez des dictionnaires |
| - | + | ||
| - | On prend pour exemple un dictionnaire au format .bgl à cette adresse http://www.babylon.com/gloss/glossaries.php \\ | + | |
| Babylon_English_French.BGL que l'on télécharge sur le bureau. | Babylon_English_French.BGL que l'on télécharge sur le bureau. | ||
| - | **1) Procédé par conversion directe (pour le moment encore beaucoup d' | ||
| - | |||
| - | Pour convertir un fichier " | ||
| - | $ cd ~/Desktop | ||
| - | $ dictconv -o Babylon_English_French.ifo Babylon_English_French.BGL | ||
| - | |||
| - | On obtient donc trois nouveaux fichiers sur le bureau :\\ | ||
| - | * Babylon_English_French.dict | ||
| - | * Babylon_English_French.idx | ||
| - | * Babylon_English_French.ifo | ||
| - | |||
| - | On crée un nouveau répertoire par exemple " | ||
| - | |||
| - | En convertissant vers StarDict et DICT, le fichier .dict n'est pas compressé. Si vous voulez compresser ce fichier, utiliser le programme dictzip : après vous êtres mis dans le bon répertoire par ex :\\ | ||
| - | $ cd / | ||
| - | |||
| - | on lance la commande de type :\\ | ||
| - | |||
| - | dictzip fichier_cible.dict\\ | ||
| - | |||
| - | Soit ici\\ | ||
| - | $ dictzip Babylon_English_French.dict | ||
| - | |||
| - | |||
| - | **2) Procédé par conversion indirect** | ||
| - | |||
| - | Suivant les dictionnaires il se produit des erreurs de conversion c'est la cas avec le dictionnaire pris en exemple ! | ||
| - | |||
| - | Convertir d' | ||
| - | |||
| - | a) On convertit en plain text (" | ||
| - | |||
| - | Dans un terminal : | ||
| - | |||
| - | $ cd ~/Desktop | ||
| - | $ dictconv -o Babylon_English_French.dic Babylon_English_French.BGL | ||
| - | |||
| - | b) On corrige les fautes : | ||
| - | |||
| - | Le dictionnaire est formé d' | ||
| - | Si la définition contient une nouvelle ligne, écrire \n.\\ | ||
| - | En ouvrant le .dic avec l' | ||
| - | On va utiliser la commande [[sed]] (ultimate Stream EDitor). | ||
| - | On les retire dans un terminal avec : | ||
| - | |||
| - | $ sed ' | ||
| - | |||
| - | |||
| - | Il reste les caractères du type " | ||
| - | On ouvre le fichier en double cliquant le nouveau fichier avec gedit> | ||
| - | Cette manœuvre sera très utile dans le cas du dictionnaire français-anglais.\\ | ||
| - | Il vaut mieux faire une relecture "en diagonale" | ||
| - | Ex : ligne 33 Australasia, | ||
| - | |||
| - | On peut pour s' | ||
| - | |||
| - | c) On convertit le format plain text en format stardict : | ||
| - | |||
| - | Avec stardict-tools qu'on lance dans un terminal. | ||
| - | |||
| - | $ stardict-editor | ||
| - | |||
| - | Dans l' | ||
| - | S'il y a des erreurs on peut noter les lignes en cause et les rechercher en ouvrant à nouveau le " | ||
| - | |||
| - | ex : ligne 72621 avec une mauvaise tabulation | ||
| - | |||
| - | Le dictionnaire par cette méthode est directement compressé. | ||
| - | |||
| - | |||
| - | ** Automatisation de la méthode indirecte ** | ||
| - | |||
| - | Le script suivant permet d' | ||
| - | Avec sed, on devrait pouvoir aussi gérer les cas particuliers. | ||
| - | |||
| - | < | ||
| - | #!/bin/bash | ||
| - | ## Nom de ce script: convert-bgl | ||
| - | ## Auteur: Mayeul KAUFFMANN. Licence GPL 2 ou ultérieure. | ||
| - | |||
| - | ## Pour exécuter ce script, l' | ||
| - | ## doit pouvoir écrire dans le dossier / | ||
| - | ## Pour cela, soit il faut lancer ce script en root (c'est risqué), soit faire ceci: | ||
| - | # sudo chown $USER:$USER / | ||
| - | |||
| - | ## Rendre ce script executable avec: | ||
| - | # chmod a+x ./ | ||
| - | ## Pour executer ce script, le mettre dans le dossier où sont | ||
| - | ## stockés les fichiers .BGL et faire: | ||
| - | # ./ | ||
| - | |||
| - | for i in $(ls *.BGL) | ||
| - | do | ||
| - | # on enleve l' | ||
| - | DICOACONVERTIR=${i%.BGL} | ||
| - | dictconv -o $DICOACONVERTIR-tmp.dic $DICOACONVERTIR.BGL | ||
| - | sed ' | ||
| - | / | ||
| - | rm -I $DICOACONVERTIR.dic $DICOACONVERTIR-tmp.dic | ||
| - | mkdir -p / | ||
| - | mv --force $DICOACONVERTIR.*i* / | ||
| - | done | ||
| - | </ | ||
| - | |||
| - | ===== Références ===== | ||
| - | |||
| - | * http:// | ||
| - | * http:// | ||
| - | * http:// | ||
| - | * http:// | ||
| ---- | ---- | ||
