Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
sword_creer_module_biblique [Le 20/06/2016, 18:28] L'Africain [Créer le module final] |
sword_creer_module_biblique [Le 06/03/2023, 13:30] (Version actuelle) L'Africain tags |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Precise Trusty}} | + | {{tag>Jammy Bible}} |
----- | ----- | ||
Ligne 7: | Ligne 7: | ||
Le cœur du projet SWORD est une bibliothèque multiplate-forme écrite en C++, offrant un accès, des fonctions de recherche et d'autres services à une collection grandissante de plus de 200 textes dans plus de 50 langues. Tout logiciel basé sur leur API peut utiliser cette collection.\\ | Le cœur du projet SWORD est une bibliothèque multiplate-forme écrite en C++, offrant un accès, des fonctions de recherche et d'autres services à une collection grandissante de plus de 200 textes dans plus de 50 langues. Tout logiciel basé sur leur API peut utiliser cette collection.\\ | ||
- | Le projet est un des premiers à avoir contribué au développement du format **OSIS** (pour Open Scripture Information Standard), un langage XML pour coder les écritures (traductions de la Bible, commentaires etc). | + | Le projet est un des premiers à avoir contribué au développement du format **OSIS** (pour Open Scripture Information Standard), un langage XML pour coder les écritures (traductions de la Bible, commentaires etc). |
- | [[:Xiphos]] et [[Bibletime]] sont des interfaces à Sword, qui permettent son utilisation graphique.\\ | + | [[:Xiphos]] et [[:Bibletime]] sont des interfaces à Sword, qui permettent son utilisation graphique.\\ |
Cette page a pour but de vous décrire la procédure pour créer un module biblique avec les outils Sword. | Cette page a pour but de vous décrire la procédure pour créer un module biblique avec les outils Sword. | ||
Ligne 21: | Ligne 21: | ||
Il existe plusieurs formats pour créer un module, **vpl**, **imp**, et **osis** entre autre. Ici nous favoriserons le format **osis**. Vous trouverez [[http://www.crosswire.org/wiki/File_Formats|ici]] toutes les informations sur les divers formats possibles. | Il existe plusieurs formats pour créer un module, **vpl**, **imp**, et **osis** entre autre. Ici nous favoriserons le format **osis**. Vous trouverez [[http://www.crosswire.org/wiki/File_Formats|ici]] toutes les informations sur les divers formats possibles. | ||
- | ====Créer le fichier sfm==== | + | ====Créer le fichier usfm==== |
- | La première chose à faire est de télécharger ce [[http://paratext.org/system/files/usfmReference2_4.pdf|PDF]] qui vous donnera toutes les références nécessaires à la création d'un fichier **sfm**, ainsi que les codes propres à chaque livre biblique. | + | La première chose à faire est de télécharger ce [[http://paratext.org/system/files/usfmReference2_4.pdf|PDF]] qui vous donnera toutes les références nécessaires à la création d'un fichier **usfm**, ainsi que les codes propres à chaque livre biblique. |
Dans un premier temps lorsque vous aurez récupéré ou converti en fichiers texte les livres bibliques (vous pouvez utiliser **unoconv** pour cela), il faudra renommer chaque livre par son numéro d'identification, comme indiqué dans le pdf plus haut. | Dans un premier temps lorsque vous aurez récupéré ou converti en fichiers texte les livres bibliques (vous pouvez utiliser **unoconv** pour cela), il faudra renommer chaque livre par son numéro d'identification, comme indiqué dans le pdf plus haut. | ||
- | Par exemple pour la Genèse vous nommerez votre fichier **01_GEN_nom_de_bible.sfm**. | + | Par exemple pour la Genèse vous nommerez votre fichier **01_GEN_nom_de_bible.usfm**. |
Cela fait, modifier votre fichier texte, pour qu'il ressemble à ceci: | Cela fait, modifier votre fichier texte, pour qu'il ressemble à ceci: | ||
- | <file> | + | <file bash> |
\id GEN | \id GEN | ||
\mt1 LA GENÈSE | \mt1 LA GENÈSE | ||
\c 1 | \c 1 | ||
- | \p | + | \s I — LES ORIGINES DE L’HUMANITÉ |
- | \mt2 I — LES ORIGINES DE L’HUMANITÉ | + | \s2 La Parole de Dieu ordonne le monde |
- | \mt2 La Parole de Dieu ordonne le monde | + | \p |
\v 1 Au commencement Dieu créa le ciel et la terre. | \v 1 Au commencement Dieu créa le ciel et la terre. | ||
\v 2 La terre était informe et vide, les ténèbres couvraient l’abîme, et l’Esprit de Dieu planait au-dessus des eaux. | \v 2 La terre était informe et vide, les ténèbres couvraient l’abîme, et l’Esprit de Dieu planait au-dessus des eaux. | ||
Ligne 59: | Ligne 59: | ||
sed -i 's/^[0-9] [a-z]*/\\v &/g' $FILE | sed -i 's/^[0-9] [a-z]*/\\v &/g' $FILE | ||
sed -i 's/^[0-9][0-9] [a-z]*/\\v &/g' $FILE | sed -i 's/^[0-9][0-9] [a-z]*/\\v &/g' $FILE | ||
+ | sed -i 's/^[0-9][0-9][0-9] [a-z]*/\\v &/g' $FILE | ||
+ | |||
#ajoute \c devant chaque ligne commencant par deux chiffre | #ajoute \c devant chaque ligne commencant par deux chiffre | ||
sed -i 's/^[0-9]+\n/\\c &\n\\p/g' $FILE | sed -i 's/^[0-9]+\n/\\c &\n\\p/g' $FILE | ||
+ | sed -i 's/^[0-9][0-9]+\n/\\c &\n\\p/g' $FILE | ||
+ | sed -i 's/^[0-9][0-9][0-9]+\n/\\c &\n\\p/g' $FILE | ||
+ | |||
#rename 's/txt/sfm/g' $FILE Commande à utiliser si vous voulez travailler avec des fichier .txt | #rename 's/txt/sfm/g' $FILE Commande à utiliser si vous voulez travailler avec des fichier .txt | ||
- | # Mettre \mt1 devant les noms des livres bibliques | + | # Mettre \s devant les éventuels titres |
- | #sed -i 's/^[A-Z]/\\mt1 &/g' $FILE | + | #sed -i 's/^[A-Z]/\\s1 &/g' $FILE |
- | #sed -i 's/^[1-2] [A-Z]/\\mt1 &/g' $FILE | + | #sed -i 's/^[1-2] [A-Z]/\\s1 &/g' $FILE |
done | done | ||
</code> | </code> | ||
Ligne 70: | Ligne 75: | ||
Attention au possible problème d'espace (comme les espaces cadratin) qui peuvent se glisser dans votre texte. Dans ce cas utilisez l'expression régulière **\s** pour les supprimer ou les remplacer, plutôt que la vrai espace dans le script sed... | Attention au possible problème d'espace (comme les espaces cadratin) qui peuvent se glisser dans votre texte. Dans ce cas utilisez l'expression régulière **\s** pour les supprimer ou les remplacer, plutôt que la vrai espace dans le script sed... | ||
Il vous faudra encore compléter manuellement le code du livre biblique à la première ligne du fichier sfm après **\id**. | Il vous faudra encore compléter manuellement le code du livre biblique à la première ligne du fichier sfm après **\id**. | ||
+ | |||
+ | <note tip>À partir de cette étape il est possible d'utiliser [[:Bibledit-Desktop]] pour la conversion en osis et même en module.</note> | ||
====Convertir au format osis==== | ====Convertir au format osis==== | ||
- | Une fois vos fichiers bien codés en **.sfm** il faudra les convertir en **osis**. Pour cela, téléchargez le script **usfm2osis.py** | + | Une fois vos fichiers bien codés en **.usfm** il faudra les convertir en **osis**. Pour cela, téléchargez le script **u2o.py** |
- | [[https://github.com/chrislit/usfm2osis/blob/master/scripts/usfm2osis.py|ici]]. [[:archivage|Décompressez-le]] dans le dossier contenant les fichier **.sfm**. | + | [[https://github.com/adyeths/u2o/|ici]]. Rendez-le exécutable et copiez-le dans le dossier contenant les fichier **.usfm**. |
Lancez-le comme suit: | Lancez-le comme suit: | ||
- | <code>./usfm2osis.py Nom_de_votre_bible -x *sfm</code> | + | <code bash>./u2o.py -e utf-8 -o Nom_de_votre_module.osis.xml -l code_langue -v -d ID_sword *.usfm</code> |
- | L'option -x est obligatoire sinon le script ne fonctionne pas. | + | |
Vérifiez qu'il ne vous retourne pas d'erreurs, si c'est le cas, corrigez-les. Si vous ne savez pas dans quel fichier se trouve l'erreur, utilisez la commande **grep** pour les trouver. | Vérifiez qu'il ne vous retourne pas d'erreurs, si c'est le cas, corrigez-les. Si vous ne savez pas dans quel fichier se trouve l'erreur, utilisez la commande **grep** pour les trouver. | ||
Les erreurs fréquentes sont un code collé à un chiffre, par exemple //\v1// au lieu de //\v 1//, ou un chiffre collé à un verset, par exemple //\v 1Alors...// au lieu de //\v 1 Alors...//. | Les erreurs fréquentes sont un code collé à un chiffre, par exemple //\v1// au lieu de //\v 1//, ou un chiffre collé à un verset, par exemple //\v 1Alors...// au lieu de //\v 1 Alors...//. | ||
Ligne 96: | Ligne 102: | ||
DataPath=./modules/texts/ztext/Dossier de l'archive/ | DataPath=./modules/texts/ztext/Dossier de l'archive/ | ||
ModDrv=zText | ModDrv=zText | ||
- | GlobalOptionFilter=OSISHeadings #Pour afficher les notes, introductions... | + | GlobalOptionFilter=OSISHeadings #Pour afficher les introductions |
- | GlobalOptionFilter=OSISFootnotes | + | GlobalOptionFilter=OSISFootnotes #Pour afficher les notes |
GlobalOptionFilter=OSISScripref | GlobalOptionFilter=OSISScripref | ||
Encoding=UTF-8 | Encoding=UTF-8 | ||
Ligne 104: | Ligne 110: | ||
SourceType=OSIS | SourceType=OSIS | ||
Lang=la langue de votre bible, fr pour le français | Lang=la langue de votre bible, fr pour le français | ||
- | GlobalOptionFilter= | + | ;GlobalOptionFilter= |
- | SwordVersionDate=2012-03-08 | + | SwordVersionDate=2017-03-08 |
Version=0.1 | Version=0.1 | ||
History_0.1=Version de base | History_0.1=Version de base | ||
- | TextSource=LBOL | + | ;TextSource= |
- | LCSH= | + | ;LCSH= |
DistributionLicense=copyright | DistributionLicense=copyright | ||
Description= | Description= | ||
Ligne 127: | Ligne 133: | ||
Lang=la langue de votre bible, fr pour le français | Lang=la langue de votre bible, fr pour le français | ||
Category=Commentaries | Category=Commentaries | ||
- | GlobalOptionFilter= | + | ;GlobalOptionFilter= |
- | SwordVersionDate=2012-03-08 | + | SwordVersionDate=2017-03-08 |
Version=0.1 | Version=0.1 | ||
History_0.1=Version de base | History_0.1=Version de base | ||
- | TextSource=LBOL | + | ;TextSource= |
- | LCSH= | + | ;LCSH= |
DistributionLicense=copyright | DistributionLicense=copyright | ||
Description= | Description= | ||
Ligne 148: | Ligne 154: | ||
<?xml version="1.0" encoding="UTF-8"?> | <?xml version="1.0" encoding="UTF-8"?> | ||
- | <osis xsi:schemaLocation="http://www.bibletechnologies.net/2003/OSIS/namespace | + | <osis xsi:schemaLocation="http://www.bibletechnologies.net/2003/OSIS/namespace |
http://www.bibletechnologies.net/osisCore.2.1.1.xsd" | http://www.bibletechnologies.net/osisCore.2.1.1.xsd" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
Ligne 174: | Ligne 180: | ||
<div type="chapter" osisID="Chapter 1"> | <div type="chapter" osisID="Chapter 1"> | ||
- | <p>Ceci est le Chapitre 1, introduction. | + | <p>Ceci est le Chapitre 1, introduction. |
- | <reference osisRef="Gen.1.1">Genese 1,1</reference> est le premier verset de la Bible. | + | <reference osisRef="Gen.1.1">Genese 1,1</reference> est le premier verset de la Bible. |
- | <reference osisRef="Rev.22.21">Apocalypse 22,21</reference> est le dernier verset de la Bible. | + | <reference osisRef="Rev.22.21">Apocalypse 22,21</reference> est le dernier verset de la Bible. |
- | <reference osisRef="Ps.119">Psaume 119</reference> est le plus long chapitre de la Bible. | + | <reference osisRef="Ps.119">Psaume 119</reference> est le plus long chapitre de la Bible. |
- | <reference osisRef="Prov.1-Prov.9">Proverbes 1-9</reference> introduit le livre des Proverbes. | + | <reference osisRef="Prov.1-Prov.9">Proverbes 1-9</reference> introduit le livre des Proverbes. |
- | <reference osisRef="John.1-John.1.18">Jean 1,1-18</reference> introduit le livre de Jean. | + | <reference osisRef="John.1-John.1.18">Jean 1,1-18</reference> introduit le livre de Jean. |
<reference osisRef="2Cor.6.14-2Cor.7.1">2 Corinthiens 6,14-7,1</reference> est un enseignement sur la sainteté. | <reference osisRef="2Cor.6.14-2Cor.7.1">2 Corinthiens 6,14-7,1</reference> est un enseignement sur la sainteté. | ||
</p> | </p> | ||
Ligne 289: | Ligne 295: | ||
=====Création d'un module pour un dictionnaire ou un calendrier===== | =====Création d'un module pour un dictionnaire ou un calendrier===== | ||
- | FIXME : cette partie est en cours de test, d'expérimentation, elle est donc imcomplète. | + | FIXME : cette partie est en cours de test, d'expérimentation, elle est donc incomplète. |
Ceci concerne tout les types de modules sous forme de liste, un dictionnaire, un calendrier, un glossaire... | Ceci concerne tout les types de modules sous forme de liste, un dictionnaire, un calendrier, un glossaire... | ||
Pour créer à l'archive après avoir écrit votre fichier **tei/xml** utilisez ce script: | Pour créer à l'archive après avoir écrit votre fichier **tei/xml** utilisez ce script: |