SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 293 visiteurs en ce moment

Accueil > Rédaction > Assistants de rédaction > Création d’articles à partir de fichiers OpenOffice > odt2spip : création d’articles à partir de fichiers OpenOffice (...)

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

6 mars 2009 – par cy_altern – 179 commentaires

Toutes les versions de cet article : [français] [italiano]

54 votes

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

Installation

  • téléchargez le zip du plugin correspondant à votre version de SPIP
  • pour l’installation et l’activation, suivez la procédure standard : cf la documentation officielle

Utilisation

Rien que de très simple : 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...

Un exemple de page générée à partir d’un fichier « type » : http://tice.espe.univ-amu.fr/demo/s...

Plus de précisions :

  • 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 (que les puristes passent leur chemin, il n’y a ici aucun respect des aspects sémantiques habituellement liés à l’utilisation des raccourcis typographiques !) :
    • 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.

Utilisation de fichiers Word :

Pour passer d’un fichier Word (format .doc ou .docx) à un fichier odt utilisable par ce plugin, il est conseillé de faire la conversion (« enregistrer sous... » au format ODT) dans LibreOffice (ou OpenOffice) et non pas dans Word (vous avez déja vu un logiciel Microsoft respecter correctement des spécifications de format standard ???)

TO DO

  • Comme d’habitude, piètre graphiste que je suis, si quelqu’un avait le courage de faire un logo moins crasseux, il est le bienvenu ! Merci popojcb !
  • Ajouter la gestion des dessins SVG intégrés dans le fichier texte (avec une version jpg obtenue par conversion automatique pour les navigateurs qui supportent pas svg..)
  • Ajouter la gestion des équations mathématiques qui sont en MathML dans le fichier texte (si vous connaissez un convertisseur MathML -> LaTeX écrit en PHP et open-source, merci de me prévenir !) Merci Amaury Adon pour m’avoir trouvé la référence de la librairie XSLT « MathML 2.0 to LaTeX »
  • Ajouter une interface de configuration pour rendre paramétrable les conversion « imposées » pour les niveaux de titre...

Notes techniques

Le moteur de transformation du fichier odt est basé sur une feuille de style XSLT (/odt2spip/inc/odt2spip.xsl) qui opère sur le fichier content.xml extrait du fichier odt envoyé et dézippé dans un répertoire temporaire /tmp/odt2spip/XXX où XXX représente l’id_auteur en cours . Cette transformation permet de produire le titre et le texte de l’article. Les images sont également extraites du fichier dézippé et intégrées comme documents attachés à cet article (après un éventuel redimensionnement). Le répertoire temporaire de l’auteur (/tmp/odt2_spip/XXX) est effacé à la fin de l’opération.

Si vous souhaitez participer au développement de ce plugin ou faire des modifications du convertisseur XSLT, le répertoire /tests de ce plugin comprend le fichier ODT « type » ainsi que le fichier xml correspondant pour réaliser vos tests.

Si vous êtes sur un SPIP mutualisé, il se peut que vous ayez des problèmes de chemins vers les fichiers lors de la transformation xslt : voir ce fil de discussion pour une éventuelle solution (pour PHP 5) problème réglé avec la version [0.14].

Versions

[version 0.11] support des formules mathématiques

[version 0.12] choix du mode d’intégration des images (img / doc)

[version 0.13] choix de la langue de publication de l’article généré

[version 0.14] compatibilité avec la mutualisation du noyau SPIP 2.0

[version 0.15] compatibilité avec la barre typo V3 (cf #forum435614) et correction de l’incompatibilité des fonctions de révision du plugin snippets avec la version 2.1 de SPIP (cf #forum434725)

[version 2.0] compatibilité SPIP 3.0

[version 2.1] permettre la mise à jour d’un article à partir d’un fichier odt (cf #forum474504)

Ce plugin existe en 2 version :

  • La version « historique » (0.15.3, fichier odt2spip_19_20_21.zip) assure un maximum de compatibilité PHP / SPIP : php5 + spip 2.* , php5 + spip 1.9.2*, php4 + spip 2.*, php4 + spip 1.9.2*.
  • la version « actuelle » : (2.1.*, fichier odt2spip_30.zip) exclusivement PHP 5 + SPIP 3.*

Voir en ligne : http://plugins.spip.net/odt2spip

P.-S.

Mille mercis à popojcb pour le logo, à mmmxvvv et D. Bard pour les fichiers de langue.

Librairie XSLT utilisée pour la conversion des formules MathML d’OOo vers LateX : MathML 2.0 to LaTeX de Vasil Yaroshevich http://www.raleigh.ru/MathML/mmltex...

Pour ce qui est du traitement des sauts de lignes/sauts de paragraphes, merci de lire http://www.spip-contrib.net/odt2spi... avant de poster une réclamation ! : merci à dreline pour avoir réglé ce problème !

Dernière modification de cette page le 8 novembre 2015

Retour en haut de la page

Tout afficher

Vos commentaires

  • Le 9 février à 14:54, par pgiron En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

    Bonjour,
    Une petite correction de forme dans le formulaire : le texte « Aucun fichier sélectionné » déborde du cadre. Voir fichier joint ;-)

    JPEG - 30.3 ko

    Répondre à ce message

  • Le 18 novembre 2014 à 11:25, par Ysabeau En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

    Comme c’est bientôt Noël et qu’on ne sait jamais j’en profite pour faire une demande supplémentaire.

    Serait-il envisageable que le plugin récupère automatiquement dans les champs Descriptif et Chapo les paragraphes de style « descriptif » et « chapo » (ou d’autres noms mais fixés par le plugin) ? De cette façon non seulement les articles seraient écrits correctement, mais en plus les champs seraient tous remplis ce qui serait formidable pour tous ceux qui utilisent ces champs de SPIP (ce que je conseille très fortement) et du coup, le retravail sur un article serait voisin du zéro hormis les images (je préfère intégrer les images à la main parce que je ne supporte pas les noms avec des longs chiffres mais c’est personnel).

    Au besoin, on pourrait même ajouter un modèle de saisie d’article donc au format odt, ici ou ailleurs, pour faciliter le travail des rédacteurs qui ne sont pas des paresseux mais qui préfèrent travailler sur la qualité du texte plutôt que de se concentrer que l’aspect technique (je peux même le concevoir si on veut et le mettre en ligne aussi sur le site des modèles de LibreOffice voire sur celui d’OpenOffice).

    En tous cas moi, ça m’arrangerait bien.

    Encore merci pour ce plugin.

    • Le 18 novembre 2014 à 18:21, par cy_altern En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

      oui, on pourrait imaginer arriver à quelque chose d’automatique à partir de paragraphes ayant des styles fixés (basiquement on pourrait prendre le nom du champ comme nom de style : « descriptif », « chapo », « surtitre », « ps »...). Ca me semble d’ailleurs complémentaire avec la demande de ton message du 11/09.
      Alors je ne promet rien mais comme il va falloir que je fasse le passage en SPIP 3.1 ça pourrait être une occase si il s’avère que ça ne demande pas des journées complètes de débogage des XSLT...

    • Le 18 novembre 2014 à 21:01, par Ysabeau En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

      Eh eh eh, c’était une commande pour le père Noël, si ça peut aboutir à quelque chose et bien tant mieux, sinon tant pis.
      De toute façon, là j’ai déjà pondu un modèle pour article SPIP qui va me servir à moi, c’est pas tout perdu :-).
      Il est en ligne pour quelques temps ici :
      http://www.numericoach.net/?-Divers-docs-
      ou bien : http://www.numericoach.net/?Titre-1-titre-de-l-article-suivi

      Login : odt2
      Mot de passe : plugin.

      à toute fins utiles .

      Et oui, l’article a été généré avec odt2spip.

      En tous cas merci de toute façon.

    Répondre à ce message

  • Le 3 septembre 2014 à 10:03, par liberté En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

    Bonjour,

    J’utilise odt2spip pour faire des tableaux à partir de fichiers pdf en copier-coller, corrigés manuellement sur un fichier Libre office.

    Ca marche bien sauf que les textes ne sont pas alignés (que j’ajoute ou non des photos).

    Merci pour toute aide.

    Spip 3.0.17

    PNG - 417.8 ko

    Répondre à ce message

  • Le 11 septembre 2014 à 10:14, par Ysabeau En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

    C’est encore plus puissant que ce que je pensais.
    Je viens d’intégrer, pour tester, un CV avec une partie en deux colonnes, mais fait dans les règles de l’art (avec des styles et tout le toutim) : tout a été intégré très proprement et le texte mis en deux colonnes remis sur une seule et correctement (pas de gloubilgoulba de textes).
    Cela dit, personnellement j’utilise des styles pour tout, donc mes gras et italiques sont en style accentuation forte et accentuation (ceux par défaut de LibreOffice). Serait-il envisageable que le plugin récupère les gras et les italiques à partir de là ? C’est d’une importance mineure cela dit.

    Répondre à ce message

  • Le 8 juin 2014 à 14:19, par Ysabeau En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

    Il y a un petit bug très mineur depuis, je pense, la dernière mise à jour : le message « Installation réussie » reste affiché sur la page de gestion des plugins, même si on clique sur la croix pour le désafficher, il revient systématiquement dès qu’on réaffiche cette page.

    Ça n’empêche pas de travailler, ça n’a aucun impact sur le fonctionnement, c’est donc tout à fait mineur et pas gênant. Mais si cela devenait une mode que tous les plugins se mettaient à suivre, on serait mal barrés :-)

    Répondre à ce message

  • Le 13 avril 2014 à 10:03, par Fennec72 En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

    si nécessaire le fichier ODT original est attaché comme document à l’article

    Ajouter une interface de configuration pour rendre paramétrable les conversion « imposées » pour les niveaux de titre...

    Serait-il possible dans cette future interface de configuration de pouvoir choisir le comportement par défaut d’odt2spip quant à l’attachement ou non du fichier ODT d’origine ?

    Dans plusieurs sites ont je m’occupe, le comportement pas défaut qui m’intéresse est de ne pas attacher le fichier ODT.

    En attendant une telle interface de configuration, quel est le fichier du plugin à modifier pour avoir un tel comportement par défaut et quelle est la modification du code à opérer dans ce cas ?

    merci d’avance

    • Le 14 avril 2014 à 13:58, par cy_altern En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

      bonne idée : la version 2.1.1 propose donc une option de configuration pour ce comportement (cf http://zone.spip.org/trac/spip-zone...)

    • Le 14 avril 2014 à 15:14, par Fennec72 En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

      Merci de cette réactivité !

      Si j’avais su, j’aurais fait cette suggestion plus tôt.

      Une autre suggestion :
      Ajouter une phrase de méthode à appliquer quand le texte d’origine était un document MS Word :
      exemple :
      -  Si le texte d’origine vient d’un document MS Word, évitez les copier-coller directement de Word vers OpenOffice ou LibreOffice Writer.
      -  Passer par l’intermédiaire d’un éditeur de texte simple, mais gérant le .RTF (pour ne par perdre gras italique et liens)
      -  Vous éviterez ainsi des temps de calcul parfois interminables à l’importation par odt2spip et un texte truffé de métadonnées issues de MS Word et réduisant à néant le temps gagné par l’importation.
      -  Exemple : < !—[if gte mso 9]>< !—StartFragment—>

      À rédiger de façon, sans doute, plus simple.

    • Le 8 juin 2014 à 14:21, par Ysabeau En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

      J’ai bien fait de lire cette page. Hop, aussitôt lu, aussitôt fait.

      Merci.

    Répondre à ce message

  • Le 1er avril 2014 à 11:52, par Perline En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

    Bonjour,
    Je viens d’utiliser ce plugin sur un site externe (SPIP 2.1.8) et je m’aperçois qu’il ne prend pas en charge les liens.
    C’est amusant car en 2004 il y avait un petit logiciel (en exe, pour windows, et en freeware...) spipedit qui le faisait.
    Est-ce que c’est que techniquement ce n’est pas possible ou bien trop compliqué que ce n’est pas implémenté ?
    Merci.

    Répondre à ce message

  • Le 19 mars 2014 à 11:52, par Suske En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

    Salut cy_altern et merci (encore) pour ce beau plugin, je l’emploie de plus en plus (les users deviennent paresseux...).

    Deux idées :
    -  permettre de màj un article via le plugin (ou forcer un id_article ?)
    -  Pour le titre d’article, récupérer « Titre principal » en priorité s’il existe (c’est le style que je trouve le plus souvent en LO quand le user met le titre dans l’entête avec m$ wOrd)

    Je les mets là pour discussion et mémoire (je sais que personne ne s’ennuye ;-) )

    Répondre à ce message

  • Le 26 septembre 2013 à 17:32, par lilibaba En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

    Bonjour,

    Je viens de passer à spip3 j’installe odt2spip 2.02 mais malheureusement il ne publie plus mes images...

    dans l’article il met bien les balises :

    Object 1;;;;;;;;;|center> Object 2;;;;;;;;;|center>

    mais il ne charge pas les photos dans les documents
    et du coup il n’y a rien dans mon article enfin que le texte.

    j’ai peut être oublié quelque chose mais j’ai essayé en cochant image et en cochant document et le résultat est le même : pas de photo...

    merci d’avance

    • Le 2 octobre 2013 à 08:45, par lilibaba83 En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

      Bonjour,
      Pour info et pour les débutants comme moi :

      Il ne faut pas :
      -  utiliser word
      -  utiliser le « enregistrer sous odt » de word
      -  faire des copier coller dans open office

      il faut :
      -  créer de toute pièce son article dans open office
      -  les copier coller depuis excel fonctionnent
      -  utiliser la fonction insérer image
      -  importer le odt dans spip en cochant « image »

      Merci à la personne qui m’a apporté un début de réponse qui m’a mis sur la bonne voie,
      à+

    • Le 22 mars 2014 à 12:24, par cy_altern En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

      Merci pour ces précisions : j’ai ajouté à la doc les points sur l’intégration des images et la méthode de conversion depuis Word.

    Répondre à ce message

  • Le 12 août 2013 à 12:57, par waielbi En réponse à : odt2spip : création d’articles à partir de fichiers OpenOffice Writer

    Une bonne nouvelle ! J’attendais avec impatience la version compatible avec SPIP 3.0. Merci je vais essayer ça tout de suite !

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Mailsubscribers

    16 janvier 2013 – 274 commentaires

    Ce plugin permet de gérer les inscriptions (ou abonnements) à la diffusion de contenu par email. Mailsubscribers permet de gérer les inscriptions par Opt-in simple ou double et la désinscription par URL. Ce plugin gère également plusieurs listes (...)

  • noiZetier v2

    9 novembre 2012 – 36 commentaires

    Le noiZetier offre une interface d’administration permettant d’insérer au choix des éléments modulaires de squelettes (noisettes) et de les ajouter ainsi à ses squelettes. Compatibilité La version 2 du noizetier fonctionne sous SPIP 3. Elle est (...)

  • cirr : plugin « rédacteur restreint »

    29 octobre 2010 – 60 commentaires

    Ce plugin « cirr : rédacteur restreint » permet d’affecter des rubriques aux rédacteurs et modifie les droits afin qu’un rédacteur restreint (ou un administrateur restreint) voit dans l’espace privé uniquement les rubriques qui lui sont affectées (et leur (...)

  • Un retour d’expérience d’utilisation de Formidable

    26 octobre – commentaires

    Il s’agissait de créer un formulaire d’inscription à un évènement modérer les inscriptions dans le privé publier les inscriptions dans le public Nous avons discuté de cette présentation lors de l’apéro SPIP du 15 février 2016 à la Cantine (...)

  • Métas +

    3 décembre – 14 commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

Ça spipe par là