如何通过RMarkdown中的YAML头(头包含字段)包含多行LaTeX代码?

如何通过RMarkdown中的YAML头(头包含字段)包含多行LaTeX代码?,yaml,latex,r-markdown,Yaml,Latex,R Markdown,我需要在一个.tex文件中包含以下代码,该文件是通过RMarkdown从自定义模板生成的,以消除错误。但是,如果我在YAML标题中尝试以下操作: header-includes: \newenvironment{CSLReferences}% {}% {\par} 它作为单行解析到.tex文件中,如\newenvironment{CSLReferences}%{}%{\par},从而注释掉%之后的所有内容。那么,我如何才能更改YAML部分,使其正确地解释为3行不同的内容呢?经过一

我需要在一个.tex文件中包含以下代码,该文件是通过RMarkdown从自定义模板生成的,以消除错误。但是,如果我在YAML标题中尝试以下操作:

header-includes: 
  \newenvironment{CSLReferences}%
  {}%
  {\par}

它作为单行解析到.tex文件中,如
\newenvironment{CSLReferences}%{}%{\par}
,从而注释掉
%
之后的所有内容。那么,我如何才能更改YAML部分,使其正确地解释为3行不同的内容呢?

经过一些尝试和搜索,这一点很有效(在编写问题时找到了解决方案):

有趣的是,我找不到太多


编辑: 正如@samcarter在评论中提到的&一个答案,在这个特定的案例中,一行就足够了,就像

header-includes:
   \newenvironment{CSLReferences}{}{\par}

不用担心降价解析,您可以在一行中编写命令:

header-includes: 
    \newenvironment{CSLReferences}{}{\par}

或者,通过标记解析避免所有这些恼人的问题,并将您的定义放在一个.tex文件中,您可以通过

includes:
  in_header: header.tex

在标题中使用此定义的特定情况下,无论如何都不需要
%
…感谢您指出这一点。然而,有时需要不止一行,这就是为什么我标记了我的答案。
includes:
  in_header: header.tex