Cómo mostrar las ecuaciones matemáticas en la rebaja general de github (no en el blog de github)


151

Después de investigar, descubrí que Mathjax puede hacer esto. Pero cuando escribo algún ejemplo en mi archivo de descuento, no muestra las ecuaciones correctas:

He agregado esto en el encabezado del archivo de descuento:

<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default"></script>

Y escriba la declaración mathjax:

(E = mc ^ 2), $$ x_ {1,2} = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2b}. $$

¡Pero Github no muestra nada para los símbolos matemáticos! Por favor ayudame, gracias! Dime cómo mostrar símbolos matemáticos en las páginas de descuento de github.


2
No resuelve el problema para los usuarios generales, pero esta respuesta sugiere un script de navegador que al menos puede permitirle ver ecuaciones: stackoverflow.com/q/11255900/180892
Jeromy Anglim

gitlab utiliza Katex
Foad

Respuestas:


144

¡Pero Github no muestra nada para los símbolos matemáticos! por favor ayudame, gracias!

El análisis de rebajas de GitHub lo realiza la biblioteca SunDown (ex libUpSkirt).

El lema de la biblioteca es " Biblioteca de procesamiento de rebajas rápida, segura y que cumple con los estándares en C" . La palabra importante es "seguro", teniendo en cuenta su pregunta :).

De hecho, permitir que se ejecute JavaScript estaría un poco fuera del contrato estándar de texto a HTML de MarkDown.

Además, todo lo que parece una etiqueta HTML se escapa o se elimina.

Dime cómo mostrar símbolos matemáticos en general Github Markdown.

Su mejor opción sería encontrar un sitio web similar a yuml.me que pueda generar imágenes sobre la marcha al analizar la cadena de consulta URL proporcionada.

Actualizar

He encontrado algunos sitios que ofrecen a los usuarios dicho servicio: codedogs.com ( ya no parece admitir la integración ) o iTex2Img . Es posible que desee probarlos. Por supuesto, pueden existir otros y algunos Google-fu te ayudarán a encontrarlos.

dada la siguiente sintaxis de rebaja

![equation](http://www.sciweavers.org/tex2img.php?eq=1%2Bsin%28mc%5E2%29&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=)

mostrará la siguiente imagen

ecuación http://www.sciweavers.org/tex2img.php?eq=1%2Bsin%28mc%5E2%29&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=

Nota : para que la imagen se muestre correctamente, deberá asegurarse de que la parte de la cadena de consulta de la url esté codificada en porcentaje . Puede encontrar fácilmente herramientas en línea para ayudarlo con esa tarea, como www.url-encode-decode.com


66
@nultoken, gracias por tu útil respuesta. Usé el sitio web iTex2Img al que hizo referencia anteriormente y agregué dos fórmulas a mi documentación. Tengo un problema que cuando abro la página de documentación en GitHub, ambas fórmulas se muestran igual mientras que en realidad son diferentes. ¿Sabrías por qué sucede?
Sam

3
mathurl.com también es un sitio web notable si tiene que generar la imagen.
Martin Thoma

2
Sin embargo, esto no parece funcionar en Github. La imagen no se procesa. Alguien sabe por qué?
OganM

1
@OganM La sintaxis ha cambiado. El enlace también se ha corregido y probado en GitHub
nulltoken el

1
El sitio iTex2Img no parece funcionar constantemente para mí. La imagen no parece renderizarse en Github.
timbram

91

Markdown admite HTML en línea. El HTML en línea se puede usar para ecuaciones en línea rápidas y simples y, con una herramienta externa, para una representación más compleja.

Inline rápido y simple

Para elementos en línea rápidos y simples, utilice códigos de entidad y ampersand HTML . Un ejemplo que combina esta idea con el texto del subíndice en markdown es: h θ (x) = θ o x + θ 1 x, cuyo código sigue.

    h<sub>&theta;</sub>(x) = &theta;<sub>o</sub> x + &theta;<sub>1</sub>x

Aquí se pueden encontrar códigos de entidad y símbolos HTML para símbolos matemáticos comunes . Códigos para letras griegas aquí .

Si bien este enfoque tiene limitaciones, funciona en prácticamente todas las rebajas y no requiere ninguna biblioteca externa.

Representación en línea escalable compleja con LaTeX y Codecogs

Si sus necesidades son mayores, use un procesador externo de LaTeX como CodeCogs. Crea una ecuación con el editor de CodeCogs . Elija svg para renderizar y HTML para el código de inserción. Svg rinde bien en cambiar el tamaño. HTML permite que LaTeX se lea fácilmente cuando se está mirando la fuente. Copie el código de inserción desde la parte inferior de la página y péguelo en su descuento.

<img src="https://latex.codecogs.com/svg.latex?\Large&space;x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}" title="\Large x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}" />

Esto combina esta respuesta y esta respuesta .

El soporte de GitHub solo a veces funcionó utilizando la sintaxis html sin procesar anterior para LaTeX legible para mí. Si lo anterior no funciona para usted, otra opción es elegir la representación codificada en URL y usar esa salida para crear manualmente un enlace como:

\ Large x = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2a}

![\Large x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}](https://latex.codecogs.com/svg.latex?x%3D%5Cfrac%7B-b%5Cpm%5Csqrt%7Bb%5E2-4ac%7D%7D%7B2a%7D)

Esto incorpora manualmente LaTex en el texto de la imagen alternativa y usa una URL codificada para renderizar en GitHub.

Renderizado multilínea

Si necesita una representación de varias líneas, consulte esta respuesta .


1
Esto funcionó muy bien. Tuve que convertir un jupyter notebook (.ipynb) .mdy las ecuaciones eran esencialmente código de látex multilínea.
Marc Maxmeister


11

Otra solución alternativa es usar cuadernos jupyter y usar el modo de reducción en las celdas para representar ecuaciones.

Las cosas básicas parecen funcionar perfectamente, como las ecuaciones centradas

\begin{equation}
...
\end{equation}

o ecuaciones en línea

$ \sum_{\forall i}{x_i^{2}} $

Aunque, una de las funciones que realmente quería no se mostraba en github era \mbox{}, que era un fastidio. Pero, en general, esta ha sido la forma más exitosa de representar ecuaciones en github.


3
Gracias por esta respuesta, pero existe este problema: logré usar jupyter notebook en modo de reducción y la ecuación aparece bien. Sin embargo, ahora, ¿cómo puedes hacer para transferir esta reducción de Jupyter a readme.mdGitHub?
DavidC.

1
Las ecuaciones no se procesan directamente en archivos Markdown. Las ecuaciones tendrían que ser imágenes para estar en el readme.md. Sin embargo, siempre puedes ponerte file.ipynbgithub y github lo hace bien.
hexicle

8

Ahora es 2020, permítanme resumir el progreso de la fórmula matemática que brinda soporte a los hosts del repositorio de código fuente.

GitHub y Bitbucket

GitHub y Bitbucket aún no admiten la representación de fórmulas matemáticas, ya sean los delimitadores predeterminados u otros.

Bitbucket Cloud / BCLOUD-11192 - Agregue compatibilidad con LaTeX en documentos MarkDown (BB-12552)

GitHub / markup - Representación de ecuaciones matemáticas

GitHub / marcado - Soporte de látex

Foro de la comunidad de GitHub - [SOLICITUD DE FUNCIONES] LaTeX Math en Markdown

talk.commonmark.org - Se puede agregar la fórmula matemática a la rebaja

GitHub apenas ha hecho ningún progreso sustancial en los últimos años.

GitLab

GitLab ya es compatible, pero no es la forma más común. Utiliza su propio delimitador.

This math is inline $`a^2+b^2=c^2`$.

This is on a separate line

```math
a^2+b^2=c^2
```

Markdown con sabor a GitLab - Matemáticas

¿Quién apoya a los delimitadores universales?

Un analizador Markdown usado por Hugo

Otras formas de renderizar


6

Si bien GitHub no interpretará las fórmulas MathJax, puede generar automáticamente un nuevo documento Markdown con las fórmulas reemplazadas por imágenes.

Le sugiero que mire la aplicación GitHub TeXify :

Aplicación GitHub que busca archivos con extensión * .tex.md y muestra sus expresiones TeX como imágenes SVG

Cómo funciona (desde el repositorio de origen ):

Cada vez que presione TeXify se ejecutará y buscará archivos * .tex.md en su última confirmación. Para cada uno de ellos, ejecutará readme2tex, que tomará expresiones LaTeX encerradas entre signos de dólar, lo convertirá en imágenes SVG simples y luego guardará la salida en un archivo de extensión .md (Eso significa que un archivo llamado README.tex.md se procesará y la salida se guardará como README.md). Después de eso, el archivo de salida y las nuevas imágenes SVG se confirman y se devuelven a su repositorio.


2

Hay una buena solución para su problema: use el complemento github de TeXify (mencionado por la respuesta de Tom Hale , pero desarrollé su respuesta en el siguiente enlace): más detalles sobre este complemento github y explicación de por qué este es un buen enfoque que puede encontrar en esa respuesta .


2

Utilizo el proceso mencionado a continuación para convertir ecuaciones a rebajas. Este trabajo es muy bueno para mi. ¡¡Es muy simple!!

Digamos que quiero representar la ecuación de multiplicación de matrices.

Paso 1:

Obtenga el script para sus fórmulas desde aquí: https://csrgxtu.github.io/2015/03/20/Writing-Mathematic-Fomulars-in-Markdown/

Mi ejemplo: quería representar Z(i,j)=X(i,k) * Y(k, j); k=1 to nen una suma de fórmulas.

ingrese la descripción de la imagen aquí

Haciendo referencia al sitio web, el script necesario era => Z_i_j=\sum_{k=1}^{10} X_i_k * Y_k_j

Paso 2:

Use el codificador de URL: https://www.urlencoder.org/ para convertir el script en una URL válida.

Mi ejemplo:

ingrese la descripción de la imagen aquí

Paso 3:

Utilice este sitio web para generar la imagen copiando y pegando la salida del Paso 2 en el parámetro de solicitud "eq" - http://www.sciweavers.org/tex2img.php?eq=<b><i>paste-output-here</i></b>&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=

- Mi ejemplo:
http://www.sciweavers.org/tex2img.php?eq=Z_i_j=\sum_{k = 1} ^ {10}% 20X_i_k% 20 *% 20Y_k_j & bc = Blanco & fc = Negro & im = jpg & fs = 12 & ff = arev & edit =

ingrese la descripción de la imagen aquí

Paso 4:

Imagen de referencia usando la sintaxis de rebajas ![alt text](enter url here)

- Copie esto en su rebaja y estará listo:

![Z(i,j)=X(i,k) * Y(k, j); k=1 to n](http://www.sciweavers.org/tex2img.php?eq=Z_i_j%3D%5Csum_%7Bi%3D1%7D%5E%7B10%7D%20X_i_k%20%2A%20Y_k_j&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=)

La imagen a continuación es la salida del descuento. ¡¡Viva!!


ingrese la descripción de la imagen aquí


cualquiera que lea esto, "Typora" es mi nueva aplicación de descuento favorita ... solo digo
Dexter

0

Con respecto a la conversión de imágenes tex →, la herramienta LaTeXiT produce resultados de mucha mayor calidad. Creo que es estándar en la mayoría de las distribuciones de TeX, pero ciertamente puede encontrarlo en línea si aún no lo tiene. Todo lo que necesita hacer es ponerlo en el TeX, arrastrar la imagen a su escritorio, luego arrastre desde su escritorio a un sitio de alojamiento de imágenes (uso imgur).


Cabe señalar que LaTeXiT parece funcionar solo en MacOS (aunque eso no se indica explícitamente en el sitio web).
ƒacu.-

0

Usé lo siguiente en el encabezado del archivo Mark Down

<script type="text/javascript" async
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js? 
config=TeX-MML-AM_CHTML"
</script>

Luego escribí la siguiente declaración matemática
$$ x_ {1,2} = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2b}. $$
Funcionó para mí

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.