【发布时间】:2018-10-09 11:42:52
【问题描述】:
是否可以让 RStudio 在编辑器中的 rmarkdown 文档中呈现自定义 LaTeX 命令?
也就是说,我希望能够看到即时呈现的自定义命令,而不必先编织文档,就像标准 LaTeX 在编辑器视图中自动呈现一样。
【问题讨论】:
标签: r latex rstudio r-markdown xelatex
是否可以让 RStudio 在编辑器中的 rmarkdown 文档中呈现自定义 LaTeX 命令?
也就是说,我希望能够看到即时呈现的自定义命令,而不必先编织文档,就像标准 LaTeX 在编辑器视图中自动呈现一样。
【问题讨论】:
标签: r latex rstudio r-markdown xelatex
是的,尽管根据我的经验,支持有些参差不齐。
RStudio 使用 MathJax 进行 LaTeX 显示。它不是所有的 LaTeX,它是为在网页中显示数学模式表达式而设计的子集。您可以在此处阅读详细信息:https://docs.mathjax.org/en/latest/tex.html。
来自该网页的“定义 TeX 宏”部分:
您可以使用 \def、\newcommand、\renewcommand、\newenvironment、\renewenvironment 和 \let 命令来创建自己的宏和环境。然而,与实际的 TeX 不同,为了让 MathJax 处理此类定义,它们必须包含在数学分隔符中(因为 MathJax 仅在数学模式下处理宏)。
所以如果你有类似的东西
$$
\newcommand{\myexp}{\exp}
$$
在您的html_document 中,您可以稍后使用\myexp。但这在pdf_document 中不起作用。正如我所说,参差不齐。
一般来说,对于需要宏定义的严肃 LaTeX 文档,我不会在 RStudio 中使用 Markdown。在 TeXworks 或 TeXShop 中使用knitr 的类似 Sweave 的格式,并安装处理引擎以便支持编织。
【讨论】: