有没有办法在README中渲染LaTex ?md在GitHub存储库?我在谷歌上搜索了堆栈溢出,但没有一个相关的答案似乎可行。


当前回答

好消息! 根据这篇博文,现在GitHub在自述文件中支持Mathjax。

可以使用$分隔符使用内联LaTeX语法,或者使用$$分隔符使用块内语法。

其他回答

我的诀窍是用木星笔记本。

GitHub内置了呈现.ipynb文件的支持。你可以编写内联的LaTeX代码并在笔记本中显示,GitHub会为你呈现它。

下面是一个示例笔记本文件:https://gist.github.com/cyhsutw/d5983d166fb70ff651f027b2aa56ee4e

您还可以看看我的工具latexMarkdown2Markdown,它可以将LaTeX转换为SVG并生成带有章节编号的内容表。

自述文件2Tex

我一直在写一个脚本,它可以自动地把LaTeX排版很好地转换成github风格的markdown: https://github.com/leegao/readme2tex

在Github上渲染LaTeX有一些挑战。首先,github风格的markdown去掉了大多数标签和属性。这意味着没有基于Javascript的库(如Mathjax),也没有任何CSS样式。

自然的解决方案似乎是嵌入预编译方程的图像。但是,您很快就会意识到,LaTeX不仅仅是将美元符号的封闭公式转换为图像。

简单地嵌入来自在线编译器的图像会给文档带来这种不自然的外观。事实上,我认为它在日常的x^2数学俚语中比跳跃更有可读性

我相信确保你的文档以自然和可读的方式排版是很重要的。这就是为什么我写了一个脚本,除了将公式编译成图像外,还确保生成的图像正确地拟合并与其余文本对齐。

例如,下面是一个.md文件的摘录,涉及正则表达式的一些枚举属性,使用readme2tex:

正如您所期望的,顶部的方程集是通过启动相应的align*环境来指定的

**Theorem**: The translation $[\![e]\!]$ given by
\begin{align*}
...
\end{align*}
...

注意,当内联方程($…$)与文本一起运行时,显示方程(那些由\begin{ENV}分隔的方程…\end{ENV}或$$…$$)居中。这使得那些已经习惯使用LaTeX的人可以很容易地保持工作效率。

如果这听起来有帮助,一定要去看看。https://github.com/leegao/readme2tex

如果你对https://www.codecogs.com/latex/eqneditor.php有问题,我发现https://alexanderrodin.com/github-latex-markdown/对我有用。它生成您需要的Markdown代码,因此您只需将其剪切并粘贴到README中。md文档。

自2022年5月以来,这已得到官方支持:

内联:

Where $x = 0$, evaluate $x + 1$

块:

Where
$$x = 0$$

Evaluate
$$x + 1$$