pandoc:受防护的代码块在 LaTeX 环境中不起作用

问题描述 投票:0回答:1

如果我在 pandoc markdown 中使用围栏代码块,它会产生合理的 LaTeX 输出:

\pagebreak
```python
foo = 1
```
pandoc input.md -o output.tex
\pagebreak

\begin{Shaded}
\begin{Highlighting}[]
\NormalTok{foo }\OperatorTok{=} \DecValTok{1}
\end{Highlighting}
\end{Shaded}

但是如果我用环境命令替换

\pagebreak
LaTeX 命令,受保护的代码块将不再工作:

\begin{minipage}{\textwidth}
```python
foo = 1
```
\end{minipage}
pandoc input.md -o output.tex
\begin{minipage}{\textwidth}
```python
foo = 1
```
\end{minipage}

pandoc 似乎对 LaTeX 环境有一些特殊的处理,这会破坏一些东西。有谁知道我可以在哪里寻找解决方案?我希望将环境命令按原样插入到输出中,就像所有其他 LaTeX 命令一样,无需任何特殊处理。

我知道的解决方案是将 LaTeX 代码本身作为围栏块插入,但这会添加很多不必要的代码行,我宁愿避免:

```{=latex}
\begin{minipage}{\textwidth}
```
`\begin{minipage}{\textwidth}`{=latex}
latex pandoc
1个回答
0
投票
---
output: pdf_document
---

\minipage{\textwidth}
```python
foo = 1
```
\endminipage
© www.soinside.com 2019 - 2024. All rights reserved.