kramdown 中的 Latex \newcommand
Latex \newcommand in kramdown
我知道 cramdown 不支持 \newcommand 类型的宏。
是否有不涉及 Pandoc 的解决方法,以便它可以在 GitHub 博客中与 Jekyll 一起使用?
这将是输入降价:
---
layout: post
---
\newcommand{\a}{\alpha}
This is a test $$\a$$.
输出应该是一个 Jekyll 博客,带有数学符号,如 this。
这里似乎有两个问题——第一,是否可以在 kramdown 中定义类似于 LaTeX 的 \newcommand
语法的命令,第二,kramdown 是否支持数学。
关于第一个问题,kramdown 本身不支持该语法或我所知道的任何类似语法,and probably isn't going to in the future,因此您不能定义非数学 kramdown 命令。您需要使用一种专注于完整性而不是易用性和简单性的语言,例如 LaTeX,才能获得这样的功能。
不过,对于数学,MathJax(kramdown 使用的解析器)会解析 \newcommand
:继续在第一个代码块中使用它。例如,
$$\newcommand{\a}{\alpha} \a{}/2 $$
使用预期的计算机现代斜体希腊字母 alpha 产生预期分数,您还可以在每个后续代码块中使用 \a
。如果您不希望它们散布在整个文档中的随机代码块中,您还可以在文档的开头设置一个代码块,其中包含所有 \newcommand
定义。
关于第二个问题,我想在这一点上很明显,kramdown 确实使用与 LaTeX 类似的符号来处理数学:
Here is a paragraph with some inline math, $$ \pi{}/2 $$, followed by
some text and a math block.
$$ \int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi} $$
这产生:
<p>Here is a paragraph with some inline math, <script
type="math/tex">\pi{}/2</script>, followed by some text and a math
block.</p>
<script type="math/tex; mode=display">\int_{-\infty}^{\infty} e^{-x^2}
dx = \sqrt{\pi}</script>
如果在您的网站上未能成功呈现,请不要忘记在 HTML 页面的 <head>
中 include the MathJax library:
<script type="text/javascript"
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
我知道 cramdown 不支持 \newcommand 类型的宏。 是否有不涉及 Pandoc 的解决方法,以便它可以在 GitHub 博客中与 Jekyll 一起使用?
这将是输入降价:
---
layout: post
---
\newcommand{\a}{\alpha}
This is a test $$\a$$.
输出应该是一个 Jekyll 博客,带有数学符号,如 this。
这里似乎有两个问题——第一,是否可以在 kramdown 中定义类似于 LaTeX 的 \newcommand
语法的命令,第二,kramdown 是否支持数学。
关于第一个问题,kramdown 本身不支持该语法或我所知道的任何类似语法,and probably isn't going to in the future,因此您不能定义非数学 kramdown 命令。您需要使用一种专注于完整性而不是易用性和简单性的语言,例如 LaTeX,才能获得这样的功能。
不过,对于数学,MathJax(kramdown 使用的解析器)会解析 \newcommand
:继续在第一个代码块中使用它。例如,
$$\newcommand{\a}{\alpha} \a{}/2 $$
使用预期的计算机现代斜体希腊字母 alpha 产生预期分数,您还可以在每个后续代码块中使用 \a
。如果您不希望它们散布在整个文档中的随机代码块中,您还可以在文档的开头设置一个代码块,其中包含所有 \newcommand
定义。
关于第二个问题,我想在这一点上很明显,kramdown 确实使用与 LaTeX 类似的符号来处理数学:
Here is a paragraph with some inline math, $$ \pi{}/2 $$, followed by
some text and a math block.
$$ \int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi} $$
这产生:
<p>Here is a paragraph with some inline math, <script
type="math/tex">\pi{}/2</script>, followed by some text and a math
block.</p>
<script type="math/tex; mode=display">\int_{-\infty}^{\infty} e^{-x^2}
dx = \sqrt{\pi}</script>
如果在您的网站上未能成功呈现,请不要忘记在 HTML 页面的 <head>
中 include the MathJax library:
<script type="text/javascript"
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>