如何使用pandoc将降价公式转换为pdf

如何使用pandoc将降价公式转换为pdf,pdf,latex,markdown,pandoc,Pdf,Latex,Markdown,Pandoc,我有一个包含大量公式(我认为是mathjax)的降价文档,它在标记为2的应用程序中表现良好。当我试图用pandoc将其转换为pdf以创建参考书目时,我得到了一个错误 例如,与 \\[ \mu_{s,h,d,y} = \left\{ \begin{array}{1 1} \omega_{s,h,d,y} + \delta_{s}(t_{s,h,d-1,y} - \omega_{s,h,d-1,y}) & \quad \text{for $t_{s,h,d-1,y}$ is r

我有一个包含大量公式(我认为是mathjax)的降价文档,它在标记为2的应用程序中表现良好。当我试图用pandoc将其转换为pdf以创建参考书目时,我得到了一个错误

例如,与

\\[ \mu_{s,h,d,y} = \left\{
  \begin{array}{1 1}
    \omega_{s,h,d,y} + \delta_{s}(t_{s,h,d-1,y} - \omega_{s,h,d-1,y}) & \quad  \text{for $t_{s,h,d-1,y}$ is real} \\
    \omega_{s,h,d,y} & \quad  \text{for $t_{s,h,d-1,y}$ is not real}
  \end{array} \right.
 \\]
看起来像

然而,当我跑的时候

pandoc -H format.sty -V fontsize=12pt --bibliography northeast_temperature_refs.bib --csl=american-geophysical-union.csl northeast_temperature_ms2.md -o northeast_temperature_ms.pdf --mathjax
无论是否使用
--mathjax
,我都会得到以下错误

! Missing $ inserted.
<inserted text> 
                $
l.268 \textbackslash{}{[} \mu

pandoc: Error producing PDF from TeX source
我得到以下错误:

! LaTeX Error: Illegal character in array arg.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...                                              

l.278   \begin{array}{1 1}

pandoc: Error producing PDF from TeX source
!LaTeX错误:数组arg中的字符非法。
有关说明,请参阅LaTeX手册或LaTeX配套手册。
键入H以获得即时帮助。
...                                              
l、 278\开始{array}{11}
pandoc:从TeX源生成PDF时出错
这是我第一次尝试在罐装程序之外编写方程式,希望能得到任何帮助。当我对Marked进行快速检查时,我认为我做得很好,但显然它不能像我现在这样与pandoc一起工作


我在约塞米蒂的Mac电脑上安装了MacTex

我认为pandoc不包括array命令,因为在IPython笔记本中,您的命令对我不起作用。但是,用
cases
语句替换array命令对我来说确实有效:

\\[ \mu_{s,h,d,y} = \begin{cases}
    \omega_{s,h,d,y} + \delta_{s}(t_{s,h,d-1,y} - \omega_{s,h,d-1,y}) & \quad  \text{for $t_{s,h,d-1,y}$ is real} \\
    \omega_{s,h,d,y} & \quad  \text{for $t_{s,h,d-1,y}$ is not real}
  \end{cases}
 \\]

Marked在引擎盖下使用了与Pandoc不同的标记处理器(多重标记),Pandoc对等式有不同的语法(
\\[\\]
,而不是
$$
)。如果要以单一格式编写标记的previewing/HTML和pandoc PDF/Anyther输出,可以将标记的处理器更改为pandoc(方向)。通过这种方式,您可以对所有内容使用
$
语法。

在命令行中使用普通md文件的pandoc转换,这对我来说不太有效,但是如果我将
\[
\\]
替换为
$
,那么所有内容都会按预期工作。似乎pandoc不识别\[并使用$$,而标记使用\[并且不识别$$。只要Pandoc或Marked/MultiMarkdown正确传递,array命令应该在MathJax和LaTeX中都可以使用。array应该可用,如果不可用,则取决于您的LaTeX模板,而不是Pandoc。或者,您可以使用MMD表达式扩展名运行Pandoc:
Pandoc-f markdown+tex\U math\U双反斜杠-tpdf
太棒了,非常感谢!现在我觉得为Marked付费是完全值得的(很好的应用程序)。
\\[ \mu_{s,h,d,y} = \begin{cases}
    \omega_{s,h,d,y} + \delta_{s}(t_{s,h,d-1,y} - \omega_{s,h,d-1,y}) & \quad  \text{for $t_{s,h,d-1,y}$ is real} \\
    \omega_{s,h,d,y} & \quad  \text{for $t_{s,h,d-1,y}$ is not real}
  \end{cases}
 \\]