使用 Pandoc 时禁用“TeX math”

Sti*_*gma 4 markdown tex pandoc

在 Pandoc 中阅读 Markdown 时如何禁用 TeX 内容?我正在处理许多 Markdown 文件,但由于存在明显使用 Markdown 式语法的文本,其中一些文件会出现警告。

[WARNING] Could not convert TeX math '@#', rendering as TeX:
  @#
   ^
  unexpected '#'
  expecting "\\bangle", "\\brace", "\\brack", "\\choose", "\\displaystyle", "{", letter, digit, ".", "\\mbox", "\\text", "\\textbf", "\\textit", "\\textrm", "\\textsf", "\\texttt", "\\bm", "\\boldsymbol", "\\mathbb", "\\mathbf", "\\mathbfcal", "\\mathbffrak", "\\mathbfit", "\\mathbfscr", "\\mathbfsfit", "\\mathbfsfup", "\\mathbfup", "\\mathbold", "\\mathcal", "\\mathds", "\\mathfrak", "\\mathit", "\\mathrm", "\\mathscr", "\\mathsf", "\\mathsfit", "\\mathsfup", "\\mathtt", "\\mathup", "\\pmb", "\\symbf", "\\texttt", "\\sqrt", "\\surd", "\\mspace", "\\hspace", "\\mathop", "\\mathrel", "\\mathbin", "\\mathord", "\\mathopen", "\\mathclose", "\\mathpunct", "\\phantom", "\\boxed", "\\overset", "\\stackrel", "\\underset", "\\frac", "\\tfrac", "\\dfrac", "\\binom", "\\genfrac", "\\substack", "_", "^", "\\begin", "\\ensuremath", "\\bigg", "\\Bigg", "\\big", "\\Big", "\\biggr", "\\Biggr", "\\bigr", "\\Bigr", "\\biggl", "\\Biggl", "\\bigl", "\\", "\\left", "\\not", "!", "'", "''", "'''", "''''", "*", "+", ",", "-", ".", "/", ":", ":=", ";", "<", "=", ">", "?", "@", "~", "\\operatorname" or end of input
Run Code Online (Sandbox Code Playgroud)

由于我在这些文本中没有使用任何数学或花哨的排版,因此我宁愿禁用这种解释,而不是试图找出正确的方法来转义实际上触发它的序列。

但如果这是不可能的,我很想知道逃避@的“正确”方法,无论逃避@的正确方法是什么。大概 '@'?或者还有更多我不知道的 TeX 式语法吗​​?

Way*_*lan 5

您可以禁用-EXTENSIONNAME附加到输入格式的任何扩展。因此,在您的情况下,您可能想要禁用tex_math_dollars,因此格式为-f markdown-tex_math_dollars,其内容为“使用格式降价减去/不带 tex_math_dollars 扩展名”。完整的命令可能如下所示:

pandoc -f markdown-tex_math_dollars -o output.html input.md
Run Code Online (Sandbox Code Playgroud)

另一种选择是使用默认情况下(或根本不包括)TeX 支持的Markdown 变体之一。例如,要使用 GitHub Flavored Markdown (gfm):

pandoc -f gfm -o output.html input.md
Run Code Online (Sandbox Code Playgroud)