Format LaTeX (Importation/Exportation)

Besoin identifié :

  • Importer du LaTeX, au moins partiellement
  • Exporter les documents produits au format LaTeX
  • Disposer d’un schéma de l’architecture de l’application

Évolution proposée :
Importer du LaTeX en supprimant les entêtes et la plupart des commandes à l’exception des principales (\textbf; \textit)
Générer des sorties au format LaTeX pour les principales fonctionnalités.

Au fil du temps (des versions) l’importation LaTeX pourrait prendre en compte plus de commandes.

Pour l’import, avez-vous déjà essayé de transformer votre latex en html (htlatex ou autres : pdftex - Convert LaTeX to HTML - TeX - LaTeX Stack Exchange), et de coller l’html dans le nouvel éditeur web ? Il est probable que les titres et sections de texte soient correctement importés. Par contre, les formules mathématiques qui y sont intégrées ne seront pas repérées en tant que tel, mais ce serait peut-être déjà un début qui peut aider…

Bonjour,

Merci pour votre suggestion. Je dois reconnaître que j’ai été fort déçu des résultats obtenus jusqu’à présent par les outils de transpositions de LaTeX vers du HTML. Cela pourrait être corrigé par un ou plusieurs modèles (templates) Opal élaborés en ce sens et documentés côté technique pour faciliter leur évolution par la communauté au fil du temps qui augmenterait ou améliorerait la transposition LaTeX/HTML avec un système de gestion de version pour intégration des meilleurs éléments à partir des forks proposés en fonction des priorités de développement. Ceux qui ne connaîtrait pas le principe de gestion de version pourrait passer par un intermédiaire pour soumettre leurs évolutions.

A chaque fois que j’utilise Opal, c’est pour présenter en présentiel ou en ligne mes cours et exercices sans perdre du temps dans l’aspect informatique. Je veux dire par la que les fonctionnalités avancées de mise en forme ne sont pas ma préoccupation première: en d’autres termes je préfère accepter avec Opale une mise en page de base préétablie que de devoir passer du temps à faire du positionnement au pixel près. Cette remarque reste vraie lorsque j’utilise par exemple un power point ou tout autre application de présentation en ligne. Lorsque j’ai besoin d’un positionnement ou d’un tracé très précis, j’utilise alors des outils spécifiques pour créer une image avant de l’importer dans le document ou l’application.

@vbr pourrais-tu apporter des précisions sur l’import de LaTeX ? Importer en tant que fichier/ressource/item ? (quel type d’extension de fichier ?) Importer dans un bloc de texte ?

Par ailleurs pour la génération au format LaTeX, je t’invite à créer une autre demande d’évolution car les deux choses sont indépendantes.

L’idée est de pouvoir importer le texte d’un fichier .tex en le débarassant des commandes LaTeX et en remplaçant les plus simples (\textbf, \testit, texttt…) par leur équivallent HTML/CSS.

La création au format LaTeX est indépendante mais il est préférable d’en avoir conscience dès l’importation car l’exportation au format LaTeX est tout aussi essentielle.

Ok, c’est donc dans le cas où tu aurais par exemple un contenu déjà tout rédigé en LaTeX, que tu voudrais passer à Opale, sans avoir à resaisir tout, si j’ai bien suivi.

Oui, c’est exactement ça ! Cependant l’'importation LaTeX est aussi essentiel que l’exportation LaTeX, même rudimentaire, car c’est un gage d’ouverture sur un autre produit réputé en assurant une passerelle dans les deux sens.

Latex est un langage de mise en page, sans structuration formel et c’est là que l’interopérabilité avec un système fortement structuré comme Scenari et forcément limité.
C’est exactement le même problème avec des documents ODT ou DOCX, certes il est possible qu’ils soient a peut près structurés et écrits en utilisant un template et des styles religieusement suivis mais dans la vrai vie c’est presque jamais la réalité, et les éditeurs de ces formats permettent très / trop facilement d’enfreindre toutes les règles de structuration qui avaient étés définis.
Nous avons une assez grande expérience dans la reprise documentaire et c’est toujours un joli bordel avec une relecture totale voir une re-écriture obligatoire.

En gros on ne peut pas retrouver (ou c’est très peu probable) dans une source Latex la structure formel du document tel qu’il existait dans la tête de l’auteur. Un peut comme on ne peut pas retrouver la définition exact d’un cercle écrit en SVG dans un export JPEG.

Des formats de départ sont légions PDF, PPT, ODT, DOCX, RTF, Latex, Markdown, HTML, XML, TXT, et que sais-je encore. Vouloir directement importer tous ces formats individuellement nous semble illusoire c’est pour cela que l’éditeur Web de SCENARI se consacre à un seul, HTML, qui est proposé dans le presse-papier par un grand nombre d’éditeurs au moment ou on effectue un CTRL+C. Un formatage HTML simple devient donc le format pivot entre un éditeur tierce, et SCENARI.

1 « J'aime »

LaTeX a une structuration ( section, subsection, subsubsection…) et tout écart se fait ressentir dans la mise en page mais généralement on fait confiance à LaTeX qui s’occupe lui même des principales règles typographiques si bien que la reprise fidèle de la mise en page n’est pas ce qui est le plus important.

Si l’on souhaite une structuration plus forte, on peut utiliser Docbook par dessus ! Il faut peut-être envisager une sortie Docbook ou XML ? Si une sortie XML existe déjà alors il ne manquerait que la documentation pour savoir à quoi correspond chaque balise XML et ses éventuelles particularités pour faciliter une reprise du XML par une moulinette de manière à l’importer sous LaTeX ou sous Docbook. Ou peut-être qu’une documentation technique sur comment est généré le HTML/CSS à partir des fonctions d’édition d’Opale permettrait de faire un convertisseur HTML/CSS vers LaTeX approprié (en tant qu’outil externe par d’autres développeurs open source pour dégager du temps aux développeurs Opale) .

Une importation d’un document LaTeX construit sur un modèle LaTeX de base simple serait certainement un axe à étudier. Un module même en version 0.1 susciterait un intérêt

Il me semble que passer du HTML/CSS vers un autre format peut demander pas mal de travail si on n’a pas pensé dès le départ à un autre format ou si une documentation technique sur la génération HTML/CSS n’a pas été rédigé en association avec chaque fonctionnalité d’édition d’Opale.

Il est vrai que vouloir importer tant de formats est illusoire (surtout les premiers) ou cela prendrait du temps, c’est pourquoi je n’ai mentionné que LaTeX. On peut quand même l’envisager ou à défaut, disposer de ressources adaptées pour entreprendre une telle démarche

  1. Coder une publication Latex pour Opale est certainement possible et il me semble que cela à déjà été fait dans le passé, par contre je sais plus par qui et dans quel contexte.
  2. Passer d’une structure donné Latex à une structure Opale serait également possible par une moulinette externe.

Le point 2 peut être entrepris par n’importe-quel développeur, qui a une bonne connaissance de Latex et d’XML et une volonté de comprendre comment est structuré Opale dont le schéma est relativement contraint et assez simple. Aucune connaissance approfondie de SCENARI est nécessaire. Cette moulinette pourrait simplement produire un scar (un ZIP) prêt à être importé dans un atelier Opale.

Le point 1 par contre nécessite des compétences de modélisation avancés dans SCENARIbuilder mais me semble tout a fait faisable.

Peut-être une solution pour obtenir un convertisseur LaTeX2Opale : La communauté BlueHats organise le « BlueHats Semester of Code » : début 2022, un semestre de stage pour des étudiants de Centrale Supélec, au cours duquel ils seront chargés de travailler sur des projets de logiciels libres utilisés par des administrations. Si vous êtes agent public, vous pouvez soumettre vos projets dans le pad prévu à cet effet.

1 « J'aime »

En ce qui concerne l’import de LaTeX, le Comité Opale considère qu’il est préférable de gérer cet import avec un outil externe pour les raisons évoquées dans ce fil : Importer des questions Moodle - #13 par lalejand

En ce qui concerne la génération, il faudrait plus de détails. Générer une sortie LaTeX pour répondre à quel besoin ? Parce que la sortie pdf postscriptum n’est pas assez bonnes (auquel cas, il vaudrait mieux améliorer postscriptum) ? Parce que dans certains contextes le format LaTeX est imposé ? … ?

Étant donné que le débat n’est pas clos, le Comité Opale laisse cette demande en analyse.