image image


MathJax und CDATA

In meinem Beitrag über die Lorenzgleichung habe ich MathJax genutzt, um die Formeln zu zeichnen. Mit dem Ergebnis bin ich jedoch nicht wirklich zufrieden. Ich habe folgende LaTeX-Befehle eingegeben:

$$
\begin{gather}
\frac{dx}{dt}  = \gamma x + yz \\
\frac{dy}{dt}  = \sigma (y - z) \\
\frac{dz}{dt}  = -xy + \rho y - z
\end{gather}
$$

und dieses Ergebnis bekommen:

Aber eigentlich hätte ich die Formeln gerne – wie üblich – am Gleichheitszeichen ausgerichtet. Theoretisch funktioniert das mit diesen Kommandos:

$$
\begin{align}
\frac{dx}{dt}  & = \gamma x + yz \\
\frac{dy}{dt}  & = \sigma (y - z) \\
\frac{dz}{dt}  & = -xy + \rho y - z
\end{align}
$$

Doch leider zeichnet MathJax dann die Formeln zwar korrekt ausgerichtet, »verziert« diese aber noch zusätzlich mit einer häßlichen CDATA-Klammer.

Das liegt mit ziemlicher Sicherheit an dem &-Symbol, das für die Ausrichtung zuständig ist, doch leider habe ich bisher nirgendwo einen Tip gefunden, wie man dieses maskieren muß, damit MathJax die Formel korrekt interpretiert und zeichnet. Hat einer von Euch da draußen einen Hinweis?

Lösung

Erst einmal Dank an meine Kommentatoren, die mich auf die Lösung gebracht haben. Es war nämlich gar kein MathJax-, sondern ein kramdown-Problem. kramdown schreibt die CDATA-Klammer, da der Interpreter davon ausgeht, daß er ein XHTML-konformes Dokument schreibt. Die Seiten des Schockwellenreiters sind aber HTML5-Seiten, und die können so mit der CDATA-Klammer nicht umgehen.

Zwar hatte der Autor von kramdown schon vor knapp einem Jahr versprochen, eine Lösung des Problems zu liefern, aber anscheinend ist dies bisher nicht erfolgt. So habe ich mich an einer brute force-Lösung probiert. Im Final-Filter von RubyFrontier habe ich einfach folgende (Ruby-) Zeilen eingebaut:

adrPageTable[:renderedtext] = adrPageTable[:renderedtext].gsub("><![CDATA", ">%<![CDATA")
adrPageTable[:renderedtext] = adrPageTable[:renderedtext].gsub("]]>", "%]]>")

Und schon ist die häßliche CDATA-Klammer – wie Ihr auch oben im Text sehen könnt – verschwunden.


MathJax-Frage bitte flattrn

image image



Über …

Der Schockwellenreiter ist seit dem 24. April 2000 das Weblog digitale Kritzelheft von Jörg Kantel (Neuköllner, EDV-Leiter, Autor, Netzaktivist und Hundesportler — Reihenfolge rein zufällig). Hier steht, was mir gefällt. Wem es nicht gefällt, der braucht ja nicht mitzulesen. Wer aber mitliest, ist herzlich willkommen und eingeladen, mitzudiskutieren!

Alle eigenen Inhalte des Schockwellenreiters stehen unter einer Creative-Commons-Lizenz, jedoch können fremde Inhalte (speziell Videos, Photos und sonstige Bilder) unter einer anderen Lizenz stehen.


Werbung


Werbung


image  image  image
image  image  image