Ici & Là

01 Société 02 Histoire 03 Science 04 Science fiction 05 SPIP 06 NTIC 07 Sondages 08 Divers
La meilleure façon de réaliser ses rêves est de se réveiller (Paul Valéry)

Accueil > SPIP > Aide à la rédaction > odt2spip : création d’articles à partir de fichiers OpenOffice (...)

odt2spip : création d’articles à partir de fichiers OpenOffice Writer

lundi 13 juin 2016, par François Daniel Giezendanner

Notez cet article
0 vote

Ce plugin permet de générer un article SPIP à partir du téléchargement d’un fichier au format .ODT (OpenOffice ou LibreOffice Writer). Il gère la majorité des raccourcis typographiques, détecte les différents niveaux de titre et fait l’intégration des images automatiquement.

 Important

La transformation des fichiers ODT impose que l’extension XSL de PHP soit active sur le serveur web


 Utilisation

PNG - 31 ko

Une fois le plugin activé, dans la page de gestion d’une rubrique vous trouverez une boite de dialogue qui permet de choisir le fichier à télécharger depuis votre ordinateur : « Créer un article à partir d’un fichier ODT ».

Une fois validé l’article est automatiquement créé avec le statut « proposé à la publication », si nécessaire le fichier ODT original est attaché comme document à l’article et le plugin vous bascule sur la page de cet article.
La transformation opérée par le plugin

Ce plugin ne fait qu’une transformation du contenu du fichier en code SPIP : il n’assure aucun miracle si votre fichier initial est construit de façon non-conforme aux règles de l’utilisation d’un traitement de texte et ne fera rien que vous ne puissiez reproduire avec les raccourcis typographiques de SPIP...

Plus de précisions :

  • JPEG - 14.3 ko

    Il est nécessaire d’avoir utilisé les styles pour définir les titres dans le fichier OpenOffice si vous voulez que le plugin les détecte. La conversion se fait selon les règles suivante :

    • si il existe au moins un paragraphe avec le style Titre, son contenu est utilisé pour générer le titre de l’article. Sinon c’est le Titre de niveau le plus important qui est utilisé : Titre 1 > Titre 2 > Titre 3... .
    • Le premier niveau de Titres est transformé en intertitres SPIP {{{Titre niveau 1 intertitre}}} (si Titre 1 n’existe pas, Titre 2 est utilisé à sa place, Titre 3 à la place de Titre 2, et ainsi de suite).
    • Le deuxième niveau est mis en gras et séparé du restant par des sauts de lignes {{Titre niveau 2 en gras}}.
    • Tous les autres niveaux de titre sont passés en italique et séparés par des sauts de ligne {Titres de niveau 3, 4, 5... en italique}.
  • Si d’aventure vous aviez décidé d’utiliser le plugin Enluminure typographique ou le plugin Intertitres hiérarchisés qui définissent et utilisent des niveaux de titres supplémentaires (vade retro satanas !), odt2spip détecte leur présence et, automatiquement, utilise les raccourcis « enrichis » tels que {2{titre niveau deux}2} ou {4{titre niveau quatre}4} (ces raccourcis sont interprétés par ces 2 plugins).
  • Le plugin récupère les images intégrées dans le fichier d’origine à condition qu’elles soient au format jpg ou png ou gif (n’espérez rien si vous avez des fichier BMP ou TIFF intégrés !), les retaille pour approximer du mieux possible la taille qu’elles avaient dans le texte, les intègre comme documents SPIP et les place avec un raccourci de la forme <imgXXX|left> ou <imgXXX|right> ou <imgXXX|center> en fonction de la position à laquelle se trouvait l’image dans le texte d’origine.
  • Attention ! pour que cette fonctionnalité soit opérationnelle, il faut que les images aient été intégrées dans le texte en utilisant les fonctions d’insertion d’image (menu « Insertion » > « Image » > « A partir d’un fichier... ») et non pas via un copié/collé du contenu de l’image dans le texte (qui génère un bitmap non récupérable).
  • Les formules mathématiques (rédigées à l’aide de l’éditeur d’équation natif d’OOo Writer ou des outils complémentaires tels l’excellent Cmath) sont en principe complètement gérées : le plugin génère le code LateX et le place dans une balise math : <math>$\frac{\sqrt{2x+9}}{4y-6}=\frac{\alpha 3}{\beta 2}$</math>.
  • Les notes de bas de page sont gérées sans problèmes ni restrictions.
  • Pour les tableaux, pas de problème tant que vous n’essayez pas de faire des tableaux imbriqués (c’est à dire un tableau dans une cellule de tableau) : les fusions de cellules horizontales et verticales sont gérées en principe correctement.
  • Les listes à puce et numérotées, imbriquées ou non, sont en principe correctement gérées tant qu’elles ne sont pas interrompues par d’autres éléments (donc pas de reprise de numérotation d’une liste à la suivante).

 Eléments non-gérés ou supprimés

  • Pour les tableaux et les listes le plugin ne gère pas les contenus ayant un style de Titre.
  • Les fioritures de style de texte sont limitées à celles autorisées par les raccourcis typographiques : gras et italique donc pas de texte de couleur ni avec des fonds colorés (beurk !), pas de variations de police ni de taille de texte (ce qui évitera que les rédacteurs pourrissent la charte graphique du site !)
  • Les en-têtes, pieds de page, index ou table des matières sont purement et simplement supprimés.
  • Les dessins (flèches, bulles et autres formes crées avec l’outil de dessin d’OOo Writer) ne sont pas (encore ?) supportés.

 Exemple d’utilisation du plugin odt2spip

L’article Ergonomie logicielle (odt2spip) a été créé avec le plugin odt2spip à partir du fichier odt attaché à l’article. Ce document odt a été créé par copié-collé de l’article Ergonomie logicielle dans l’espace publique. Ensuite :

  • Les images y ont été intégrées en utilisant les fonctions d’insertion d’image (menu « Insertion » > « Image » > « A partir d’un fichier... »).
  • Les titres ont été définis avec les styles dans le fichier OpenOffice afin qu’ils soient détectés par le plugin.

Globalement la conversion fonctionne parfaitement : titres, paragraphes, gras, italique, images, tableaux, listes à puces, la plupart des liens, etc. sont parfaitement convertis en code spip.

Ce fichier odt n’est pas parfait car il est partiellement « contaminé » par la démarche du copié-collé par rapport à un fichier créé directement dans Open Office. Il engendre donc des problèmes de conversion, c’est par exemple le cas pour les notes de bas de page qui n’y sont pas gérées ou certains liens « mal » copiés.


 Conclusion

Pour des fichiers odt créés en natif dans Open Office ou dans Microsoft Word (puis convertis en odt dans Open Office) le plugin odt2spip fonctionne parfaitement.

Il constitue donc une aide précieuse pour la rédaction d’articles, en particulier par des gens dont l’activité est « externes » au CMS SPIP ou simplement à partir de documents disponibles au format odt ou doc ou tout autre format convertible dans Open Office ou Microsoft Word.


 Sources, suite et téléchargement