He estado usando Markdown para las notas de clase, y es genial. Incluso hago un preprocesamiento en Markdown para poder hacer cosas como tablas. Pero este término estoy enseñando una clase con muchas matemáticas, y me encantaría poder poner fórmulas LaTeX con Markdown, algo como esto:
The refinement relation is written $a \sqsubseteq b$, which can be
pronounced "$a$ approximates $b$" or "$b$ is at least as defined as $a$".
Me gustaría poder tomar cada fragmento de LaTeX y preprocesarlo en un buen archivo PNG antialias que luego podría incluir en mi Markdown a través de la <img>
etiqueta HTML . Pero no tengo ni idea de cómo tomar un fragmento de LaTeX y obtener una buena imagen que
- Tiene el cuadro delimitador correcto
- Es antialias
Todo lo que sé hacer es obtener páginas completas en formatos DVI, PostScript o PDF.
Estoy seguro de que este problema se ha solucionado, pero no he podido adivinar los términos de búsqueda correctos. ¿Alguna sugerencia sobre cómo resolverlo o dónde buscar una solución existente?
EDITAR : Después de instalar mathTeX, puedo decir que el código es inflexible, que viola el estándar de la Jerarquía del sistema de archivos de Linux y que es un trabajo de aficionados, tanto en el sentido bueno como en el malo de esa palabra. El código es tan complejo que no hay fallas obvias. Estaré buscando alternativas.
Además, está claro que, en el fondo, las soluciones se basan en dvipng
.
UN AÑO MÁS TARDE : Nunca obtuve la integración perfecta que esperaba, pero estoy cojeando en un guión de mi propio diseño. Resulta que en lugar de dvipng
eso es un poco más fácil de usar dvips -E
y el convert
programa de ImageMagick. Los beneficios son un poco más de control de cosas como la escala y la facilidad de crear un fondo transparente. Los curiosos pueden inspeccionar este ejemplo .
No puedo recomendar esta solución a nadie. Pero tampoco puedo recomendar MathTeX.
fuente
Respuestas:
¿Has probado con Pandoc ?
fuente
Quizás mathJAX es el boleto. Está construido en jsMath , una biblioteca de JavaScript vintage de 2004.
A partir del 5 de febrero de 2015, me gustaría recomendar KaTeX , la biblioteca Javascript LaTeX más eficiente de Khan Academy.
fuente
Agregue el siguiente código en la parte superior de sus archivos Markdown para obtener compatibilidad con la representación de MathJax
y luego `$ x ^ 2 $` o `$$ x ^ 2 $$` se mostrarán como se esperaba :-)
Siempre puede instalar una versión local de MathJax si no desea utilizar la distribución en línea, pero es posible que deba alojarla a través de un servidor web local.
ACTUALIZACIÓN : en estos días solo uso pandoc en lugar de la rebaja canónica, pero lo anterior sigue siendo útil.
fuente
Contestaré tu pregunta con una contrapregunta ...
¿Qué opinas del modo Org? No es tan puro como Markdown, pero es similar a Markdown, y me resulta fácil trabajar con él, y permite incrustar Latex. Cf. http://www.gnu.org/software/emacs/manual/html_node/org/Embedded-LaTeX.html
Posdata
En caso de que no haya visto el modo org, tiene una gran fuerza como un "lenguaje de marcado natural" de propósito general sobre Markdown, es decir, su tratamiento de tablas. La fuente:
representa justo lo que crees que será ...
Y el Latex se renderiza en pedazos usando el latex preview del modo tex.
fuente
dvipng
. El problema de la tabla es importante, pero ya he escrito un preprocesador para resolverlo :-) +1deberías mirar multimarkdown http://fletcherpenney.net/multimarkdown/
tiene soporte para metadatos (encabezados, palabras clave, fecha, autor, etc.), tablas, asciimath, mathml, demonios, estoy seguro de que puede pegar el código matemático de látex allí mismo. Básicamente es una extensión de Markdown para agregar todas estas otras características muy útiles. Utiliza XSLT, por lo que puede crear fácilmente sus propios estilos LaTeX y convertirlos directamente. Lo uso todo el tiempo y me gusta mucho.
Desearía que la rebaja solo incorporase multimarkdown. Sería bastante agradable.
Editar : Multimarkdown producirá html, latex y algunos otros formatos. HTML puede venir con una hoja de estilo de su elección. también se convertirá en MathML, que se muestra en Firefox y Safari / Chrome, si no recuerdo mal.
fuente
RStudio tiene un buen IDE gratuito que permite Markdown y LaTeX.
fuente
Kramdown hace exactamente lo que usted describe:
https://kramdown.gettalong.org/syntax.html#math-blocks
Y es mucho más confiable y bien definido que Markdown.
fuente
Puede encontrar mimeTeX útil.
fuente
dvipng
es el caballo de batalla. Gracias por un gran puntero! +1Oye, esta podría no ser la solución más ideal, pero funciona para mí. Terminé creando una extensión Python-Markdown LaTeX.
https://github.com/justinvh/Markdown-LaTeX
Agrega soporte para expresiones matemáticas y de texto en línea usando una sintaxis $ math $ y% text%. La extensión es un preprocesador que utilizará latex / dvipng para generar pngs para las ecuaciones / texto respectivas y luego codificará base64 los datos para alinear las imágenes directamente, en lugar de tener imágenes externas.
Luego, los datos se colocan en un archivo de caché delimitado simple que codifica la expresión en la representación de base64. Esto limita la cantidad de veces que se debe ejecutar el látex.
Aquí hay un ejemplo:
La salida:
Como puede ver, es un resultado detallado, pero eso realmente no es un problema ya que ya está usando Markdown :)
fuente
sí, pero tendrás que hackearlo un poco tú mismo. He escrito un filtro que reemplaza las etiquetas de látex
$\some\inline\latex$
o$$\some\equation$$
con las etiquetas de imagen apropiadas para un script mimetex.cgi . Me llevó 5 minutos.Advertencia: espectacularmente feo ...
Por supuesto, usted mismo debe definir el CSS apropiado para las imágenes .block e .inline ...
fuente
Me encontré con esta discusión solo ahora, así que espero que mi comentario siga siendo útil. Estoy involucrado con MathJax y, por cómo entiendo su situación, creo que sería una buena manera de resolver el problema: deja su código LaTeX como está y deja que MathJax represente las matemáticas al verlas.
¿Hay alguna razón por la que prefieras imágenes?
fuente
Qué idioma estás usando?
Si puede usar ruby, entonces se puede configurar maruku para procesar matemáticas usando varios convertidores de látex-> MathML. Instiki usa esto. También es posible extender PHPMarkdown para usar itex2MML y convertir las matemáticas. Básicamente, inserta pasos adicionales en el motor Markdown en los puntos apropiados.
Entonces, con ruby y PHP, esto se hace. Supongo que estas soluciones también podrían adaptarse a otros idiomas: también obtuve la extensión itex2MML para producir enlaces perl.
fuente
Estaba buscando exactamente lo mismo cuando encontré teqhtml . Realiza la conversión de ecuaciones $ y $$ a imágenes con la ventaja adicional de alinear la imagen resultante verticalmente con el texto circundante. No hay muchos documentos, pero es bastante sencillo.
Espero que ayude a algunos futuros lectores.
fuente
Lamento despertar un hilo muy antiguo, pero he estado usando jemdoc durante un par de años y es realmente excelente.
fuente
Es posible analizar Markdown en Lua usando el código Lunamark (vea su repositorio de Github ), lo que significa que Markdown puede ser analizado directamente por macros en Luatex y admite la conversión a muchos de los formatos compatibles con Pandoc (es decir, la biblioteca es muy adecuada para usar en
lualatex
,context
Metafun, Plain Luatex ytexlua
scripts).El proyecto fue iniciado por John MacFarlane , autor de Pandoc, y el desarrollo de la herramienta sigue de cerca el de Pandoc y es de una calidad similar (es decir, excelente).
Khaled Hosny escribió un módulo de Contexto, proporcionando un soporte macro conveniente. La respuesta de Michal a ¿Hay algún paquete con soporte Markdown? La pregunta proporciona un código que proporciona soporte similar para Latex.
fuente