2010-10-04 6 views
7

Me encanta LaTeX. Entendamos eso directamente desde el principio.¿Existe una sintaxis más fácil/clara como Markdown que pueda compilarse en LaTeX?

Lo único que deseo es una sintaxis más clara que se compile en LaTeX, como Markdown para HTML. Esto se debe a que la mayor parte de la simple creación de documentos que hago (como tomar notas en clase), podría ser más rápida y mejor si solo pudiera escribir 1/2 en lugar de \frac{1}{2} y lo compila en una fracción ordenada. Conozco y uso AucTeX, y hace que escribir sea más rápido, pero aún no es muy claro y es más propenso a los errores de sintaxis en general.

Si existe una sintaxis tan simple que se compila en LaTeX, por favor dígame en las respuestas a continuación. Si no hay nada satisfactorio, me gustaría comenzar un proyecto de código abierto para alcanzar este objetivo, pero me gustaría saber primero de las alternativas existentes.

+0

LaTeX * es * un TeX más simple ya ... El problema básico aquí es uno de poder hacer * cualquier cosa *. Tome el ejemplo de la fracción que eligió: hacer que funcione, haría más difícil decir cuándo quería '1' seguido de '/' seguido de '2' todo en el modo de texto estándar y la fuente (en el contexto de escribir una fecha, tal vez) ... Entonces la pregunta es "¿Qué casos de uso son lo suficientemente especiales como para hacerlos fallar a expensas de todos los demás?". También tenga en cuenta que Markdown * no puede * hacer algunas cosas, ese es el costo de poder hacer otras cosas muy fácilmente. – dmckee

+0

@dmckee: Bueno, en el ejemplo '1/2', esperaría que convirtiera' 1/2' en una fracción solo en el modo matemático. ¿Eso no tendría sentido? – Chetan

+0

@dmckee: Pero sí, lo que dices tiene sentido. Estaba pensando que muchas de las cosas que hace con LaTeX son mucho más comunes que otras, y tendría sentido tener una sintaxis simplex cuando esté interesado en usar LaTeX para tomar notas rápidas o documentos simples. Si quisiera crear documentos más complejos y aprovechar su funcionalidad más oscura, usaría la sintaxis completa. Por mi parte, me encantaría usar una sintaxis más corta al tomar notas en clase, por ejemplo. – Chetan

Respuesta

3

A Markdown to LaTeX script existe para la implementación de reducción de Markdown in Python. Hay otro extension llamado mdx_math que permite matemáticas LaTeX en línea. El Haskell Markdown to whatever converter, Pandoc, puede tener matemáticas LaTeX en línea y puede exportar a LaTeX. Probablemente haya otros en el Markdown family. Sin embargo, ninguno de estos (AFAIK) ofrece una sintaxis alternativa para hacer matemáticas.

Hay unos mathematical markup languages según Wikipedia. Aunque está escrito en JavaScript, podría estar interesado en ASCIIMathML.

Probablemente necesites escribir algo tú mismo, pero una extensión de reducción buscó bloques que usaran una sintaxis limpia (como ASCIIMathML) sería perfecto.

+0

Excelente, el script ASCIIMathML es muy similar a lo que estaba pensando. Ahora bien, si esto se implementara para convertir a LaTeX, y otras cosas como secciones y formato se agregaran a la sintaxis simple, sería justo lo que estoy buscando. – Chetan

+1

Creo que la mejor manera de hacerlo sería ampliando Markdown para que, digamos, los bloques '~ 1/(a ​​+ b) ~' se traten como matemáticos y se conviertan con algo como ASCIIMathML. –

+1

O puede modificar Markdown para que los bloques '\' 'se traten como matemáticos en lugar de como código en línea. –

0

No conozco otra sintaxis más fácil para LaTeX.

Sin embargo, existe TeXML, que es un convertidor XML-to-TeX/LaTeX. Puede sonar extraño al principio, pero podría hacer que hacer sus sintaxis personalizadas sea mucho más fácil simplemente convirtiéndolos a XML, y luego llamando a TeXML. La sintaxis de TeX es complicada: líneas vacías significativas, caracteres especiales TeX, generalmente también falta de unicode ... TeXML hace que sea más fácil lidiar con esto.

2

Si solo piensas en los casos más simples, te enfrentarás a un mundo de dolor. \frac{1}{2} es muy simple.

Lo usaría para su sintaxis simple para cada uno de los siguientes:

\frac{1}{x + 1}

\frac{1}{x} + 1

\frac{x^2}{x + 1}

x^\frac{2}{x + 1}

\frac{x}{{x + 1}^2}

\frac{x}{x + 1}^2

Estaría muy sorprendido si su primer intento no incluye varios duplicados (conflictos).

+1

Justo en la parte superior de mi cabeza, así es como se verían esos ejemplos: '1/(x + 1)', '1/x + 1',' (x^2)/(x + 1) ', 'x^(2/(x + 1))', 'x/((x + 1)^2)', '(x/(x + 1))^2' – Chetan

+0

Y mi sintaxis simple se analizaría automáticamente entre paréntesis en fracciones y añada paréntesis ('\ left (' y '\ right)') donde sean necesarios para que la ecuación sea más clara. – Chetan

+1

¿Pero y si no quieres paréntesis? ¿O qué tal si lo haces? Si fuera fácil entenderlo, ¿no crees que Knuth lo habría hecho? – hadley

0

Sé que estaba buscando un código más simple, no un nuevo editor, y dijo que usaba AucTeX (que no, no sé si esto ayuda), pero TeXlipse para Eclipse tiene algunas características de edición agradables que puede hacer una entrada más rápida, incluida la adición de llaves finales} y comandos finales \ end {env} y permitir tabular las llaves. Solo un pensamiento.

+0

Sí, AucTeX hace cosas similares. Simplemente no estoy satisfecho con eso :) – Chetan

0

reStructuredText puede compilar a látex (el lenguaje en sí es mucho más simple que TeX, a pesar de que todavía utiliza la sintaxis TeX de fórmulas), ver Generating LaTeX with Docutils artículo. Existen varias extensiones para reStructuredText, como Sphinx.

También puede consultar MathJax que puede leer matemática en cualquier formato (incluyendo ASCIIMath) y tiene una opción de menú para mostrar matemática como TeX.

1

Realmente debe comprobar pandoc que tiene una excelente integración entre el descuento y el látex. Lo que es bueno es que puedes simplemente dejar látex en línea para hacer frente a los bits de iffly para los que el descuento es demasiado simple.

Cuestiones relacionadas