Ich frage mich, wie schwierig es wäre, KaTeX hinzuzufügen, und ob dies jemand in Erwägung zieht. Deren Code scheint sich schnell zu entwickeln.
In unserem Fall wäre es von Vorteil, wenn wir auf dem Forum über Übersetzungen von Khan Academy dieselbe Darstellung wie bei Khan Academy selbst hätten.
Ich habe schnell etwas Code zusammengeschustert, der die Gleichungen auf dem Server rendert:
Es gibt noch keine Fehlerbehandlung, und die Schriftgröße stimmt nicht ganz mit der clientseitigen Version überein, aber es scheint in meiner Entwicklungsumgebung grundsätzlich zu funktionieren.
Ich finde die Idee wirklich gut. In einigen Fällen sollte das die Leistung deutlich verbessern und den Weg für E-Mail-Support ebnen! Wir müssen SVGs jedoch irgendwann trotzdem in PNGs umwandeln, um sie in E-Mails verwenden zu können.
Aus Gründen der Barrierefreiheit muss die Funktion jedoch optional bleiben.
@danekhollas Ich unterstütze einen PR, der KaTeX optional hinzufügt.
Da die Plugin-Entwicklung derzeit eindeutig über meinem Niveau liegt, wollte ich einfach versuchen, KaTeX über ein benutzerdefiniertes Theme hinzuzufügen, indem ich die autorender-Erweiterung von KaTeX verwende. Es hat irgendwie funktioniert, aber ich bin auf ein Problem gestoßen, wenn es darum geht, ein einzelnes $-Zeichen als mathematisches Trennzeichen zu unterstützen.
Es scheint, dass der Text, der in eingeschlossen ist, trotz Deaktivierung des MathJax-Math-Plugins in Text innerhalb von <span class="math"> umgewandelt wird und die Dollarzeichen verschwinden. Seltsamerweise kann ich dies auf META nicht reproduzieren. Hat jemand eine Idee?
Am Ende dieses KaTeX-GitHub-Issues berichtete jemand über ein sehr ähnliches Problem, das auf Kramdown zurückgeführt wurde, das diese automatische Konvertierung vornimmt…
Ja, die automatische Rendering-Funktion wird auf Discourse sehr wahrscheinlich extrem holprig funktionieren. Wir verlassen uns auf korrekte Hooks, die HTML-Abschnitte „dekorieren", während sie zum DOM hinzugefügt werden. Wir müssen das ordnungsgemäß umsetzen.
Vielleicht kann @misaka4e21 sich das ansehen und KaTeX im Mathematik-Plugin standardmäßig deaktiviert und optional machen?
Eine Sache, die man bedenken sollte: KaTeX bietet im Vergleich zu MathJax noch nicht alle Funktionen. Bei Khan Academy wird im Fehlerfall von KaTeX tatsächlich auf MathJax zurückgegriffen. Das wäre wahrscheinlich sinnvoll umzusetzen, sobald das Server-Side-Rendering implementiert ist; andernfalls müsste man ständig sowohl KaTeX als auch MathJax bereitstellen, was wahrscheinlich unerwünscht ist.
Wie trifft man die Entscheidung, wann auf eine Fallback-Lösung zurückgegriffen werden soll? Ich bin gespannt, ob dies auch auf Client-Seite entschieden werden kann?
Ich bin nicht direkt involviert, aber meine Vermutung ist, dass sie einfach auf MathJax ausweichen, wenn KaTeX einen Fehler wirft?
Und ich bin mir ziemlich sicher, dass sie das auch auf der Client-Seite machen.
Für weitere Informationen empfehle ich, sie direkt auf ihrem GitHub zu fragen.