Aquí, por cierto, hay un ejemplo de corrección de pruebas matemáticas mediante IA en esta versión de desarrollo en acción:
El usuario puede opcionalmente resaltar una expresión matemática específica en el editor de markdown y solicitar que se corrija. Sería bueno tener eso como una opción en el nuevo editor de matemáticas.
@sam Resulta que KaTeX no está funcionando del todo bien en el nuevo complemento. Si le echas un vistazo, es claramente un problema de fuente faltante y, de hecho, la consola indica que hay un montón de archivos de fuente (Woff-v2) que no se encuentran.
Por lo tanto, el navegador está buscando en una carpeta ‘fonts’ adyacente a la URL del tema, lo cual es claramente incorrecto.
Supongo que todo esto tiene algo que ver con la función loadKaTeX definida en el katex-bundle, que supongo carga KaTeX de una manera no estándar, lo que provoca que KaTeX realmente no sepa dónde reside el archivo CSS. Sin embargo, no sé cómo arreglarlo.
Acabo de enviar una corrección para KaTeX, avísame si funciona. Necesito consultarlo con @david para confirmar que es seguro; nuestro patrón para cargar CSS no es compatible con enlaces relativos dentro del archivo CSS porque estamos incrustando una hoja de estilo.
Nota, moví esto a un nuevo tema dedicado porque se estaba perdiendo y volviendo ruidoso en el tema principal de matemáticas. Tengo muchas ganas de esta actualización, siento que estamos muy cerca.
Si alguien está ansioso por probar esta nueva versión o si (como yo) no puede esperar ya que tiene clases que la usarán en unos días, entonces puede instalar esta versión independiente aquí:
Me basé en este commit, creo, y lo cambié para que obtenga MathJax de una CDN, en lugar de internamente.
Veo que esta solicitud de extracción (pull request) se ha fusionado y también noto que ambos dedicaron bastante trabajo para llevarla a buen término, ¡así que muchas gracias por eso!
No planeo instalar esta versión todavía, ya que ya la tengo funcionando suficientemente bien en mi sitio de Discourse; sin embargo, tengo un par de preguntas.
Sobre el calendario de lanzamientos: El código ya aparece en main en GitHub. Supongo que si alguien instalara una instancia de Discourse completamente nueva hoy, automáticamente tendría esta versión completamente nueva del complemento de matemáticas. ¿Es eso correcto?
Sobre los cargadores (loaders): Por lo que puedo deducir del código, parece que se abandonó la idea de definir las funciones loadMathjax y loadKatex en el núcleo. La última versión parece volver a loadScript, aunque no me queda claro de dónde viene el script. ¿Es eso correcto? Si es así, ¿por qué?
Actualmente estoy en la última versión estable +17 en una instancia de producción bastante cargada de matemáticas.
Me alegra mucho ver que [grid] ahora funciona correctamente en Meta; es una gran mejora en la calidad de vida para las publicaciones con mucha densidad matemática. Estoy dispuesto a hacer concesiones con [center] cuando sea necesario.
Como contexto, anteriormente encontré algunos casos extremos relacionados con las matemáticas dentro de [grid] / [details], que documenté aquí (en caso de que todavía sea útil):
Gracias de nuevo a todos los que trabajan en la actualización de MathJax 4; es genial ver que este nivel de pulido está llegando.
Estoy viendo el error de MathJax “Nidificación errónea de estructuras de ecuaciones” cuando uso \begin{align}...\end{align} dentro de $$...$$. Esto parece ser MathJax aplicando de forma más estricta la regla de “no anidar entornos de ecuaciones” durante el trabajo de actualización a la versión 4.
En la práctica, el patrón fiable de Discourse es usar aligned dentro del envoltorio $$:
$$
{\large
\begin{aligned}
a &= b \\
&= c
\end{aligned}
}
$$
Esto evita anidar una estructura de ecuación de visualización (align) dentro de otro envoltorio de visualización ($$...$$), que es lo que desencadena el error.
Este comportamiento concuerda con MathJaxV4, así como con LaTeX puro, así que supongo que aquí no hay ningún “error”. ¡Sin embargo, definitivamente vale la pena señalar que usar aligned en lugar de align es el camino a seguir!