Latex R降价功能与“类似”;纽科曼“;用乳胶?

Latex R降价功能与“类似”;纽科曼“;用乳胶?,latex,markdown,r-markdown,Latex,Markdown,R Markdown,R Markdown是否具有与LaTex的“newcommand”类似的构造?我希望能够将\var定义为\mathrm{var},以避免在数学模式下额外键入内容。如果没有,人们如何减少降价中排版公式的重复?使用\newcommand{\var}{\mathrm{var}}就像在LaTeX中一样: --- 标题:“无标题” 作者:“作者” 日期:“2017年1月15日” 输出:html\u文档 --- ```{r设置,include=FALSE} knitr::opts_chunk$set(ec

R Markdown是否具有与LaTex的“newcommand”类似的构造?我希望能够将
\var
定义为
\mathrm{var}
,以避免在数学模式下额外键入内容。如果没有,人们如何减少降价中排版公式的重复?

使用
\newcommand{\var}{\mathrm{var}}
就像在LaTeX中一样:

---
标题:“无标题”
作者:“作者”
日期:“2017年1月15日”
输出:html\u文档
---
```{r设置,include=FALSE}
knitr::opts_chunk$set(echo=TRUE)
```
\新命令{\var}{\mathrm{var}
##降价
这是一份R降价文件$\var+2$Markdown是一种用于
编写HTML、PDF和MS Word文档。有关使用R标记的详细信息,请参见
看见

请注意,为了在输出中正确处理它,您必须使用
$
..
$

绕过需要在序言中的
\DeclareMathOperator
要求:

()

要在HTML输出中正确使用
\newcommand
,您的LaTeX应该与单
$
或双
$
对齐。这也适用于像
\begin{align*}
这样的环境

---
title: "Test"
author: "qwr"
date: "January 22, 2019"
output: html_document
---

\newcommand{\Var}{\operatorname{Var}}

$\Var(X)$

$$
\begin{align*}
\Var[Y] &= x \\
&= 3
\end{align*}
$$

当作为beamer演示输出时,我遇到了上述解决方案的问题,特别是在使用公式模式($$$$$而不是$$$)时。将新命令放在一个单独的文件中解决了这个问题

---
title: Title
author: Author
date: "8/22/2018"
output:
  beamer_presentation:
    includes:
      in_header: preamble.tex
---
其中Premission.tex包含用户定义的命令

然后可以在内联($\var$)和方程模式($$\var$$)中使用该命令


您还可以将其他内容放在premission.tex中,如帧编号等。

我正在使用
bookdown
,需要在pdf、html和docx输出中保持一致。上述解决方案都不适用于我的案例。以下是我决定采用的方法:

序言.tex

\usepackage{amsthm}
\DeclareMathOperator*{\argmin}{argmin}
\newcommand{\var}{\mathrm{Var}}
YAML标题:

--- 
title: "A Minimal Book Example"
author: "Yihui Xie"
date: "`r Sys.Date()`"
site: bookdown::bookdown_site
output: 
  bookdown::pdf_book:
    includes:
      in_header: preamble.tex
    toc: no
  bookdown::word_document2:
    reference_docx: template.docx
  bookdown::gitbook:
    split_by: none
documentclass: article
bibliography: [book.bib, packages.bib]
biblio-style: apalike
link-citations: yes
---

<!--- For HTML Only --->
`r if (!knitr:::is_latex_output()) '
$\\DeclareMathOperator*{\\argmin}{argmin}$
$\\newcommand{\\var}{\\mathrm{Var}}$
'`

<!--- For DOCX Only --->
`r if (!knitr:::is_latex_output() & !knitr:::is_html_output()) '
\\DeclareMathOperator*{\\argmin}{argmin}
\\newcommand{\\var}{\\mathrm{Var}}
'`
# Prerequisites

This is a _sample_ book written in **Markdown**.
--
标题:“最简单的书籍示例”
作者:《谢一辉》
日期:“`r Sys.date()`”
站点:bookdown::bookdown\u站点
输出:
bookdown::pdf\U图书:
包括:
in_头:preamble.tex
toc:没有
bookdown::word_document2:
参考文档:template.docx
bookdown::gitbook:
拆分:无
文档类:文章
参考书目:[book.bib,packages.bib]
图书馆风格:apalike
链接引用:是的
---
`r如果(!knitr:::is_latex_output())'
$\\DeclareMathOperator*{\\argmin}{argmin}$
$\\newcommand{\\var}{\\mathrm{var}$
'`
`r如果(!knitr:::is_latex_output()&!knitr:::is_html_output())'
\\DeclareMathOperator*{\\argmin}{argmin}
\\新命令{\\var}{\\mathrm{var}
'`
#先决条件
这是一本用**降价**编写的样本书。

或者,只需将该定义包装在
\ensuremath{…}
@qwr:不一定在这里。是否可以将
\newcommand{\var}{\mathrm{var}}
放在
头.html
中?@YulongNiu:我不知道。您必须确保它是有效LaTeX语法的一部分。它应该能够构成
标题includes
子句的一部分。如中所示,
标题包括:-\usepackage{something}-\newcommand{\var}{\mathrm{var}}-\…
我是否可以发表一条评论,这样就可以省下几个小时的簿记沮丧。在Premission.tex中包含\newcommand语句将按预期生成PDF文件,但html版本不会获取newcommand(宏将显示为红色),尽管这不会为我生成任何错误。另一方面,如果在01-foo.Rmd中包含\newcommand,则两个版本都将包含新命令。@robinhankin您应该将您使用的任何新命令放在single或double$中。看我的回答,我可以部分证实罗宾说的话<通过
bookdown::render_book()
转换为
.html
时,不考虑code>preamble.tex。将代码(仅)放在第一个
.Rmd
中将适用于
.html
(注意章节必须以
#
开头的要求),但随后无法通过
bookdown::render_book(,output_format=“pdf_document”)
输出到
.pdf
。我想
preamble.tex
会起作用。所有这些都告诉我,在我的情况下,最好还是坚持使用HTML(我想要的是一种简单的文本着色方法,而使用LaTeX似乎是最简单的方法)。为什么有必要这样做?@Iowndrul:感谢您为PDF和HTML提供了一个向下预订选项!对我来说,它适用于像
\newcommand{\var}{\mathrm{var}}
这样的数学元素。但是,由于某些原因,它不适用于纯文本,例如,如果我想为长单词创建快捷方式,如
\newcommand{\short}{AreallyLongWordiHaveToTypeFrequency}
。你知道有什么解决办法吗?我强烈希望\short比此处建议的
r short
\newcommand{\var}{\mathrm{Var}}
\usepackage{amsthm}
\DeclareMathOperator*{\argmin}{argmin}
\newcommand{\var}{\mathrm{Var}}
--- 
title: "A Minimal Book Example"
author: "Yihui Xie"
date: "`r Sys.Date()`"
site: bookdown::bookdown_site
output: 
  bookdown::pdf_book:
    includes:
      in_header: preamble.tex
    toc: no
  bookdown::word_document2:
    reference_docx: template.docx
  bookdown::gitbook:
    split_by: none
documentclass: article
bibliography: [book.bib, packages.bib]
biblio-style: apalike
link-citations: yes
---

<!--- For HTML Only --->
`r if (!knitr:::is_latex_output()) '
$\\DeclareMathOperator*{\\argmin}{argmin}$
$\\newcommand{\\var}{\\mathrm{Var}}$
'`

<!--- For DOCX Only --->
`r if (!knitr:::is_latex_output() & !knitr:::is_html_output()) '
\\DeclareMathOperator*{\\argmin}{argmin}
\\newcommand{\\var}{\\mathrm{Var}}
'`
# Prerequisites

This is a _sample_ book written in **Markdown**.