Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prise en charge de LaTex dans l'éditeur de texte pour les formules mathématiques #492

Open
jubonhomme opened this issue May 7, 2020 · 42 comments
Assignees

Comments

@jubonhomme
Copy link
Collaborator

Suite à une demande d'un enseignant de Mathématiques pour avoir un éditeur de formules mathématiques avec LaTex par exemple....
Je pose la question ici pour garder une trace du souhait.

Une première recherche de 3 min sur un exemple d'éditeur web collaboratif prenant en charge LaTex:
https://github.com/overleaf/overleaf

Tu es toujours plus rapide que moi ;)
https://github.com/mathquill/mathquill

@louis-ev
Copy link
Member

louis-ev commented May 7, 2020

Pour référence future : https://justamouse.com/mathquill4quill/

@louis-ev
Copy link
Member

louis-ev commented May 7, 2020

C’est peut-être même assez faisable…

@louis-ev louis-ev self-assigned this May 7, 2020
@MattDevil
Copy link

Merci pour la prise en compte de cette demande d'évolution !
Mathquill a l'air assez simple d'utilisation et idéal pour un niveau élèmentaire/collège et début de lycée.
Latex, c'est la Rolls de l'édition des formules de maths, par contre, c'est davantage adapté pour les profs, les étudiants dans le supérieur ou en lycéen scientifique.
Je sais que Latex est utilisable sur des sites web gérés par SPIP, ou par l'application en ligne CodiMD (intégrée à Apps.edu)
Je ne sais pas si ça peut aider...

@jubonhomme
Copy link
Collaborator Author

CodiMD utilise la syntaxe markdown
Et de ce que j'ai pu voir ici
https://demo.codimd.org/features#MathJax
il intègre MathJax, mais je ne sais pas du tout comment c'est géré dans le code.

Pour dodoc, Louis utilise le moteur Quill, donc le plugin MathQuill semblait plus simple à intégrer... de ce que je comprends. Mais je ne suis pas développeur..juste testeur curieux.

Si CodiMD le propose dans Apps.edu, quels sont les exports possibles qui permettraient de les intégrer simplement dans dodoc pour des publications ? export format image ?

@MattDevil
Copy link

CodiMD exporte en html (avec du MathJax dedans), Markdown, PDF, et via Pandoc en LaTeX, odt, Textile (?)... pas d'export au format image.
Ceci dit on peut toujours faire des copies écrans du texte mathématiques et l'intégrer comme image dans Do.doc, mais on perd la possibilité de modifier ensuite.
Quand a intégrer des fichiers images, un à un, pour chaque formules, c'est jouable de façon très ponctuelle, mais trop contraignant sinon.

@louis-ev
Copy link
Member

Bonjour !

pour synthétiser, en terme de temps de design / développement :

  • si le plugin https://justamouse.com/mathquill4quill/ convient, c’est pas bcp de boulot à intégrer et ça peut atterrir dans la version de développement rapidement,
  • si il ne convient pas, à moins d’avoir de très nombreux retours dans ce sens et un financement pour pouvoir y consacrer le temps nécessaire je ne pense pas qu’on intègrera cette fonctionnalité dans un futur proche malheureusement.

@MattDevil
Copy link

MattDevil commented May 11, 2020

Pour moi, mathquill4quill serait très bien et prioritaire par rapport à la solution LaTeX beaucoup plus technique à maîtriser pour les rédacteurs.
Et si en plus ça ne demande pas trop de boulot...

@jubonhomme
Copy link
Collaborator Author

Pour info , vu sur la liste Educ de l'APRIL et aussi retweeter par @MattDevil
https://github.com/ClementGre/PDF4Teachers

PDF4Teachers intègre LaTeX pour annoter des PDF.

Peut être une piste pour LaTeX mais aussi pour générer des PDF dans dodoc qui je crois pose problème avec les dernières versions de Electron.

@louis-ev
Copy link
Member

@jubonhomme PDF4Teachers est entièrement développé en Java, et pour une utilisation par une personne en local. Impossible de reprendre ou s’inspirer du code du coup…

Peut être une piste pour LaTeX mais aussi pour générer des PDF dans dodoc qui je crois pose problème avec les dernières versions de Electron.

Ha ? Tu as repéré un soucis dans les dernières versions à ce niveau là ?
Ou alors tu parles du fait que le module qui permet de consulter des PDF dans Electron n’est pas compatible avec les dernières versions d’Electron ?

@jubonhomme
Copy link
Collaborator Author

Non pas de soucis sur la version actuelle mais pas compatible si mise à jour d'Electron comme tu m'avais expliqué.
C'était pour garder le lien qui pourrait être une piste pour gérer les pdf sans une dépendance à Electron.
Le nom de PDF4Teachers tourne bcp en ce moment sur les listes d'échanges logiciel libre et éducation.

@louis-ev
Copy link
Member

En fait l’export PDF tourne bien et n’a pas de raison de plus tourner en mettant à jour Electron. C’est la visualisation de PDF dans l’interface de do•doc même (donc uniquement pour la version hors ligne, car en ligne c’est le navigateur web qui prend ça en charge) qui pose problème.

J’ai vu passer PDF4Teachers oui, ça a l’air assez utile effectivement.

@louis-ev
Copy link
Member

Pour en revenir à nos moutons, j’ai activé l’option "Formula" de quill est installé ses dépendances — 200ko mine de rien… Il faudra faire un point sur toutes les dépendances côté client, qui font que do•doc pèse de + en + lourd au chargement et à la compilation javascript.

Concrètement le fichier JS de do•doc (qui contient aussi le CSS) pèse actuellement 2.8mo, soit 700ko à transférer par le réseau après compression. C’est pas trop horrible en considérant que la gestion des autres contenus est particulièrement méticuleuse (gestion des images, des pictos, etc.) mais ça commence à peser. Il faudrait revoir le build process du code côté client. Bref, je m’égare…

À tester donc ici : https://test.dodoc.fr/coucou
image

@jubonhomme
Copy link
Collaborator Author

Super... je laisse les vrais Mathématiciens tester ;)...

@MattDevil
Copy link

Wooowwww
Alors, je n'ai pas eu le temps de tester (journée de pré-retour en classe... compliquée...) mais même pas une semaine de l'idée à la réalisation : ce n'est plus du développement, ou alors du "développement quantique", quand le dev va plus vite que la lumière ;-)
Un grand merci donc !
Et je fais un petit retour de test d'ici ce soir.

@jubonhomme
Copy link
Collaborator Author

J'ai l'impression que ça fonctionne plutôt bien...
Après avoir vu cet article
https://nicolasf.wordpress.com/2020/05/10/codimd-markdown-et-latex-presentation/

j'ai pu faire quelques copier coller d'écriture et tout à l'air de bien fonctionner...

Oui, Louis est un développeur Quantique et Qualitatif !

@MattDevil
Copy link

Bon, je n'ai pas pu attendre... j'ai testé.
Grosse claque : en fait c'est du latex intégré. Pur jus. C'est parfait ! Utilisable en l'état.

Un vrai appeau à profs de maths cette affaire... ;-)

Si jamais il y avait des évolutions à prévoir (sans savoir si c'est déjà possible) :

  • pouvoir éditer une formule déjà écrite pour la corriger/modifier au lieu de la retaper.
  • pouvoir utiliser les petites fonctions pre-programmées de mathquill pour faire des fractions, des racines carrées etc...(je ne sais pas si je suis clair) resterait pratique pour les élèves.

Bon, en tout cas, c'est déjà une tuerie.
Un ENORME merci !
Matthieu

@MattDevil
Copy link

MattDevil commented May 14, 2020

Je me réponds à moi même :
Pour les "petites fonctions pré-programmées de mathquill" il s'agit de cocher l'option "Use custom operator buttons" pour y accéder. Mais quand on le fait, on ne peut plus écrire "le code latex pur". C'est l'un ou l'autre quand on édite une formule. \edit on : ces deux dernières phrases, c'est n'importe quoi... \edit off

@jubonhomme
Copy link
Collaborator Author

Pour éditer une formule déjà écrite je ne sais pas si c'est possible mais dans l'exemple
https://justamouse.com/mathquill4quill/ si tu coches l'historique "Display formula history: " ça permet de revenir assez facilement sur les dernières formules.
Ça permettrait d'avoir plus simplement les dernières... mais avoir le retour à l'affichage de la source je ne sais pas.
Mais la question m’intéresse aussi pour revenir sur les codes iframe

@MattDevil
Copy link

Oui, avec l'historique ça serait un plus assez pratique.
Comme l'option "Custom operator buttons"
Mais si Louis ne les as pas intégrées, c'est que c'est peut être que c'est pas si simple que ça...

C'est déjà intégré dans la branche dev ou il faut attendre un peu avant de se lâcher sur l'install d'un petit serveur perso ? ;-)

@jubonhomme
Copy link
Collaborator Author

c'est déjà dans la dev ;)
eac8e38

@MattDevil
Copy link

👍

@louis-ev
Copy link
Member

louis-ev commented May 14, 2020

C’était pas très compliqué à intégré, Quill https://github.com/quilljs/quill et Katex https://katex.org/ sont les deux paquets responsables de tout ça :) Merci à leurs dév :)

Je n’ai pas réussi à intégrer mathquill4quill par contre, impossible de comprendre leur doc d’installation pour l’adapter aux spécificités de do•doc :/
C’est pour ça que vous voyez pas ces options là pour l’instant…

@MattDevil
Copy link

Dans l'état, c'est vraiment très pratique pour éditer directement des formules LaTeX.
Avec Mathquill4quill, on a l'historique et l'édition "accompagnée" des formules : 2 options pratiques mais qui semblent incompatibles avec l'édition de formules en LaTeX.
Le choix de l'un ou l'autre (s'ils s'excluent mutuellement, et au delà des questions techniques), est une décision qui me semble lié à la politique de do.doc (à quel public on s'adresse, pour quels usages ? Que souhaite-t-on encourager ? etc...)
Ce soir, et égoïstement, je suis proche de la jubilation. :-) Quill et Katex forever. ;-)

@jubonhomme
Copy link
Collaborator Author

jubonhomme commented May 14, 2020

Par curiosité j'ai donc fait quelques clics sur Katex... et j'ai découvert plein de nouvelles possibilités.

Et donc par soucis d'équité je propose qu'on pousse directement la possibilité pour les profs de Chimie... ne faisons pas de différences dans les sciences..
Vive mhchem for Katex !!

https://mhchem.github.io/MathJax-mhchem/
https://github.com/KaTeX/KaTeX/tree/master/contrib/mhchem

Configuration of KaTeX
For information on how to make the \ce command available, see the KaTeX docs. Just write this line into your pages’s , after the call to katex.js:

<script src="https://cdn.jsdelivr.net/npm/katex@0.10.1/dist/contrib/mhchem.min.js"></script>

@jubonhomme
Copy link
Collaborator Author

jubonhomme commented May 14, 2020

Est-ce qu'avec ce type de bouton on pourrait modifier la source des formules ( et des iframes) ?

https://github.com/benwinding/quill-html-edit-button

voir aussi cet exemple
https://codepen.io/anon/pen/ZyEjrQ

Edit :
A lire ce fil ça n'est pas une bonne méthode
quilljs/quill#128 (comment)

Mais je n'ai pas tout compris...

@MattDevil
Copy link

Bonsoir @jubonhomme et @louis-ev,
A tout hasard, une petite question : Suite à "un petit problème" de disque dur :-) , j'ai réinstallé mon système (Ubuntu) et j'utilise désormais do.doc en local avec le appimage (alors qu'avant, je l'avais installé en mode "serveur" depuis le dépôt).
Et, je me suis alors rendu compte que l'édition de formules mathématiques ne fonctionnait plus (alors que ça marche toujours très bien ici : https://test.dodoc.fr/coucou)
Est-ce lié au appimage (dernière version stable dispo) et en repassant en version serveur/dev ça marcherait à nouveau ?
Si c'est le problème : est-ce possible d'intégrer l'édition de formules dans le appimage (et le .exe pour windows : j'ai testé et ça ne marche pas non plus...) qui restent, tous les deux, plus simples à utiliser pour les collègues.
Par avance merci,
Matthieu

@jubonhomme
Copy link
Collaborator Author

jubonhomme commented Apr 12, 2022

Bonsoir,
Oui j'ai vérifié aussi sur mon système Ubuntu 20.04 et dodoc 9.1.4 et l'outil de formule ne fonctionne plus.
Si je tape e=mc^2
j'obtiens à l'affichage ceci :
e=mc^2e=mc2

Donc l'outil renvoi bien quelque chose visiblement mais pas avec l'affichage correct.
Je vais essayer sur une session sous win pour vérifier si ça vient de linux ou de la version de dodoc.

@louis-ev
Copy link
Member

Hello

la question est : depuis quand ne fonctionne t’il plus ?
Si vous pouvez me dire cela, ça m'aiderai beaucoup :)

@MattDevil
Copy link

A la réflexion, je ne l'ai jamais vu fonctionner avec le fichier appimage ou .exe : uniquement en mode "serveur"
Je ne peux donner plus de précisions... :-(

@MattDevil
Copy link

J'ai essayé avec cette version https://files.latelier-des-chercheurs.fr/do%e2%80%a2doc-9.0.17-dev.AppImage
et ça ne fonctionne pas. COmme ça a été développé en mai 2020 et que la version testée est la première publiée après cette date... j'ai l'impression que c'est resté dans la branche "dev" mais jamais intégré au appimage ou exe...
Ce serait possible ça ?

@louis-ev
Copy link
Member

Non, impossible :)
Il faut que je relance ma VM, je vous dis après.

@jubonhomme
Copy link
Collaborator Author

Bonjour
Je viens de tester sur ma session Win10 et version 9.1.2
Même soucis que sur Ubuntu et même affichage.

En fait je ne me souviens plus l'avoir utilisé sur un poste, tous les exemples que j'ai retrouvés sont sur une instance serveur de dodoc, et sur serveur il n'y a aucun soucis.

@jubonhomme
Copy link
Collaborator Author

Testé à nouveau sur la version 9.3.5 sous ubuntu et ça ne fonctionne pas non plus comme sur le serveur test.dodoc.fr

@MattDevil
Copy link

Ah, zut...
Pour la V10 peut être ? Ce serait top.

@louis-ev
Copy link
Member

Il manque peut-être pas grand chose…

Possible d'avoir un protocole de test à reproduire et qui ne fonctionne pas actuellement sur test.dodoc.fr ?

Je viens d'aller ici et d'ajouter des formules et j'ai l'impression que ça fonctionne (avec firefox du moins) :
image

J'ai ajouté un e=mc^2

@MattDevil
Copy link

Il manque peut-être pas grand chose…

Possible d'avoir un protocole de test à reproduire et qui ne fonctionne pas actuellement sur test.dodoc.fr ?

En fait, ça fonctionne très bien sur test.dodoc.fr (et sans doute sur toutes les installations en mode "serveur").
Mais, d'après mes souvenirs et ceux de Julien, cela semble n'avoir jamais fonctionné quand on utilise un dodoc installé avec le fichier appimage ou .exe (et ça reste le mode le plus utilisé dans les établissements scolaires)

Matthieu

@jubonhomme
Copy link
Collaborator Author

Je pense que c'est effectivement pas grand chose.
Sur les "dodoc serveur" ça passe très bien, j'ai essayé sur celui de canopé et c'est bon aussi.

Par contre sur toutes les versions poste de travail (même la 9.3.5) il y a un bug d'affichage.

Par exemple si je colle cette formule dans la fenêtre popup
\sum_{i=0,\ i\neq j}^n u_{ij}

voici ce que ça donne sur la version serveur :
image

et sur la version poste :
image

L'outil formule fonctionne, la fenêtre s'ouvre on peut coller du latex dedans mais l'affichage bug. Il y a une double écriture du résultat avec une prise en compte partielle du latex.

Est-ce que du côté de dodoc ce sont les mêmes outils ou bien il y a une différence entre serveur et poste ?

Et pour revenir à la question de dodoc 10 je ne sais plus si c'est encore le même outil de texte mais il me semble que ça change non ? C'est toujours quill ?

@jubonhomme
Copy link
Collaborator Author

jubonhomme commented Apr 9, 2023

Je viens de voir que Reveal.js gère directement KaTex / MathJax (et Markdown)
https://revealjs.com/math/

Comme c'est maintenant ajouté à dodoc pour les pdf ça pourrait peut-être aussi servir à la gestion de publication en Markdown avec les formules de maths à la place de Quill et de son plugin.

Je pense que le public intéressé par les formules mathématiques sera plus tourné vers des publications directement en Markdown... Ton avis @MattDevil ?

@MattDevil
Copy link

A priori, je ne pense que du bien de l'intégration du Markdown dans do·doc, surtout si cette intégration supporte les formules LaTeX.
Est-ce que ça vient remplacer les usages de "formules" : pour la frange "geek" des fablab et des profs, sans aucun doute. Pour les moins geeks, ce serait sans doute préférable de pouvoir intégrer une formule simple dans un texte, sans passer par le markdown... mais bon, c'est toujours pareil, on est tous d'accord pour avoir des fonctionnalités en plus, mais plus rarement d'en voir disparaître... ;-)

@louis-ev
Copy link
Member

louis-ev commented Nov 8, 2023

Hello !
ça vous va si on garde ce chantier pour la v10.1 ? pour éviter de trop retarder la v10 (objectif fin d'année !)

@jubonhomme
Copy link
Collaborator Author

Ok pour moi, ça pourrait venir avec une recette markdown et pas juste une fonction en plus dans l'éditeur de texte que peu de personnes utilisent

@MattDevil
Copy link

Ok pour moi également : inutile de retarder la sortie de la V10 pour ça...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants