繁体   English   中英

\\ newcommand与Kritr中的参数不起作用

[英]\newcommand with arguments in Kritr not working

我对Knitr不太熟悉,因此我试图编写我的第一个文档,从我的乳胶文件“导入”一些“ \\ newcommand”。

我所有的“ \\ newcommand”都经过完美处理,但带有“ arguments”的除外。

例如,我添加了通常在乳胶中使用的软件包:

header-includes:
    -\usepackage{a4wide,amsmath,amsthm,epsfig,graphicx}
- \usepackage{amsmath,amsthm,amssymb}
- \usepackage{amsfonts}
- \usepackage{graphics}
- \usepackage{subfigure}
- \usepackage{dsfont}
- \usepackage{bbm}
- \usepackage{bm}
- \usepackage{xcolor}
- \usepackage{dcolumn}
- \usepackage{pstricks,fancyhdr,fancybox}
- \usepackage{dcolumn}
- \usepackage{bm}

但是以下方法不起作用

\newcommand{\PR}[1]{\bm{P}\left\{{#1}\right\}}

错误是

output file: newfile.knit.md

"../Documents/RStudio/bin/pandoc/pandoc" +RTS -K512m -RTS newfile.utf8.md --to latex --from markdown+autolink_bare_uris+ascii_identifiers+tex_math_single_backslash --output newfile.pdf --template "C:\Users\P14814\Documents\R\win-library\3.4\rmarkdown\rmd\latex\default-1.17.0.2.tex" --highlight-style tango --latex-engine pdflatex --variable graphics=yes --variable "geometry:margin=1in" 
! Missing $ inserted.
<inserted text> 
                $
l.180 \newcommand{\PR}{[}1{]}\{\bm{P}

pandoc.exe: Error producing PDF
Error: pandoc document conversion failed with error 43
In addition: Warning message:
running command '"../Documents/RStudio/bin/pandoc/pandoc" +RTS -K512m -RTS newfile.utf8.md --to latex --from markdown+autolink_bare_uris+ascii_identifiers+tex_math_single_backslash --output newfile.pdf --template "C:\Users\P14814\Documents\R\win-library\3.4\rmarkdown\rmd\latex\default-1.17.0.2.tex" --highlight-style tango --latex-engine pdflatex --variable graphics=yes --variable "geometry:margin=1in"' had status 43 
Execution halted

非常感激你的帮助!!

我强烈建议您将这些命令放在一个外部文件(例如preamble.tex ,并通过includes选项将其includes

output:
  pdf_document:
    includes:
      in_header: preamble.tex

请参阅R Markdown书籍的3.3.7.3节: https ://bookdown.org/yihui/rmarkdown/pdf-document.html

使用header-includes并不完全安全。 Pandoc在生成LaTeX输出时可能会破坏某些字符。 如果您的Pandoc版本高于2.0(请检查rmarkdown::pandoc_version() ),则可以使用原始LaTeX块来保护LaTeX内容,例如,

header-includes: |
  ```{=latex}
  \usepackage{a4wide,amsmath,amsthm,epsfig,graphicx}
  \usepackage{amsmath,amsthm,amssymb}
  ......
  ```

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM