将用户定义的 Latex 环境放入 R markdown 或 knitr

将用户定义的 Latex 环境放入 R markdown 或 knitr

当我尝试在 R markdown 文档中包含用户定义的环境时,出现错误。我在顶部有:

header_includes:
- \usepackage{amsmath}
- \usepackage{amssymb}
- \usepackage{amsthm}
- \newtheorem{assumption}{Assumption}

然后在文档本身中,如果我写

\begin{assumption}
$a > b$
\end{assumption}

当我单击编译时,出现错误“!未定义的控制序列 \begin{assumption}”。

如果我使用常规证明环境或方程环境,则不会出现错误。也就是说,

\begin{equation}
a^2 + b^2 = c^2
\end{equation} 

没有给我一个错误。当然,在 latex 文档的序言中包含“header_includes”部分,然后在该 latex 文档中使用假设环境是没有问题的。如果我可以将 Latex 直接复制并粘贴到 R markdown 中,那就太好了,因为 TexStudio 有许多不错的自动完成功能和配色方案,使其成为编写 latex 的更好环境,但 Markdown 是集成 LaTex 和代码的更简单方法。任何帮助都很好。谢谢!

答案1

您不需要将\newtheorem宏列为header_includes参数,只需将其放在文档的顶部:

---
标题:“测试”
标头包括:
- \usepackage{amsmath}
- \usepackage{amssymb}
- \usepackage{amsthm}
---

\newtheorem{假设}{假设}

这是我的假设:

\开始{假设}
$a > b$
\结束{假设}

并做了。

在此处输入图片描述

相关内容