Voici, au passage, un exemple de relecture mathématique via l’IA dans cette version de développement en action :
L’utilisateur peut éventuellement surligner une expression mathématique spécifique dans l’éditeur markdown et demander qu’elle soit corrigée. Ce serait bien d’avoir cela comme option dans le nouvel éditeur de mathématiques.
@sam Il s’avère que KaTeX ne fonctionne pas tout à fait correctement dans le nouveau plugin. Si vous y jetez un œil, il s’agit clairement d’un problème de police manquante et, en effet, la console indique qu’il y a un tas de fichiers de police (Woff-v2) qui sont introuvables.
Ainsi, le navigateur recherche dans un dossier ‘fonts’ adjacent à l’URL du sujet, ce qui est clairement faux.
Je suppose que tout cela a quelque chose à voir avec la fonction loadKaTeX définie dans le katex-bundle, qui, je suppose, charge KaTeX d’une manière non standard, ce qui fait que KaTeX ne sait pas vraiment où se trouve le fichier CSS. Je ne sais pas comment le réparer, cependant.
C’est exactement ça - oui. C’est évidemment un peu une coïncidence que « Relecture » soit une description suffisamment proche de ce que je veux qu’il fasse.
J’ai juste poussé un correctif pour KaTeX, faites-moi savoir si cela fonctionne, je dois le soumettre à @david pour confirmer qu’il est sûr, notre modèle de chargement de CSS n’est pas compatible avec les liens relatifs à l’intérieur du fichier CSS car nous intégrons une feuille de style.
Note, j’ai déplacé ceci vers un nouveau sujet dédié, car il se perdait et devenait bruyant sur le sujet principal des mathématiques. J’attends vraiment avec impatience cette mise à niveau, je pense que nous sommes très proches.
Si quelqu’un est impatient d’essayer cette nouvelle version ou si (comme moi) il est impatient car il a des cours qui l’utiliseront dans quelques jours, vous pouvez installer cette version autonome ici :
Je l’ai basée sur ce commit, je crois, et je l’ai modifiée pour qu’elle tire MathJax d’un CDN, plutôt que de manière interne.
Je vois que cette demande de tirage (pull request) a été fusionnée et je remarque également que vous deux avez fourni beaucoup d’efforts pour la mener à terme - donc merci beaucoup pour cela !
Je n’ai pas l’intention d’installer cette version tout de suite, car je l’ai déjà fait fonctionner suffisamment bien sur mon site Discourse ; j’ai cependant quelques questions.
Concernant le calendrier de publication : Le code apparaît déjà dans main sur GitHub. Je suppose que si quelqu’un installait une toute nouvelle instance Discourse aujourd’hui, il aurait automatiquement cette toute nouvelle version du plugin mathématiques. Est-ce correct ?
Concernant les chargeurs (loaders) : D’après ce que je peux voir dans le code, il semble que l’idée de définir les fonctions loadMathjax et loadKatex dans le cœur ait été abandonnée. La dernière version semble revenir à loadScript, bien qu’il ne me soit pas clair d’où vient le script. Est-ce correct ? Si oui, pourquoi ?
Je suis actuellement sur la dernière version stable +17 sur une instance de production assez lourde en calculs mathématiques.
C’est vraiment agréable de voir que [grid] fonctionne désormais correctement sur Meta - c’est une grande amélioration de la qualité de vie pour les publications denses en maths. Je suis prêt à faire des compromis sur [center] si nécessaire.
Pour information, j’avais précédemment rencontré des cas limites concernant les maths à l’intérieur de [grid] / [details], que j’avais documentés ici (au cas où ce soit encore utile) :
Merci encore à tous ceux qui travaillent sur la mise à niveau vers MathJax 4 - c’est formidable de voir ce niveau de finition arriver.
Je rencontre l’erreur MathJax « Erroneous nesting of equation structures » lorsque j’utilise \begin{align}...\end{align} à l’intérieur de $$...$$. Cela semble être MathJax appliquant plus strictement la règle « ne pas imbriquer les environnements d’équation » lors des travaux de mise à niveau v4.
En pratique, le modèle Discourse fiable consiste à utiliser aligned à l’intérieur de l’enveloppe $$ :
$$\n{\large\n\begin{aligned}\na \u0026= b \\\\\n \u0026= c\n\\end{aligned}\n}\n$$
Ceci évite d’imbriquer une structure d’équation d’affichage (align) à l’intérieur d’une autre enveloppe d’affichage ($$...$$), ce qui déclenche l’erreur.
Ce comportement est conforme à MathJaxV4, ainsi qu’au LaTeX pur, donc je suppose qu’il n’y a pas de « bogue » ici. Il vaut certainement la peine de souligner que l’utilisation de aligned plutôt que align est la bonne approche, cependant !