R Markdown用户常见问题解答

回答R Markdown用户关于Quarto最常问的问题。

我可以使用Quarto做什么?

Quarto®是一个基于Pandoc的开源科学和技术出版系统。您可以将叙述性文本和代码编织在一起,生成优雅格式的输出,如文档、网页、博客文章、书籍等。

Quarto听起来与R Markdown相似。有什么区别,为什么要创建一个新项目?

在核心上,Quarto的工作方式与R Markdown相同:

Quarto的工作原理:qmd到knitr到md到pandoc到多种格式,包括pdf、HTML和Microsoft Word

Quarto的目标是使创建和协作科学和技术文档的过程显著改善。Quarto将R Markdown、bookdown、distill、xaringan等功能整合到一个单一的一致系统中,并包含了我们在过去10年从R Markdown中学到的一切。

用于科学论述的语言和运行时数量非常广泛(特别是Jupyter生态系统非常流行)。Quarto的核心是多语言和多引擎的(目前支持Knitr、Jupyter和Observable,未来可能支持其他引擎)。

另一方面,R Markdown从根本上与R绑定,这严重限制了它能够惠及的从业者数量。Quarto是Posit将R Markdown带给所有人的尝试!与R Markdown不同,Quarto不依赖或要求R。Quarto从R、Python、Javascript和Julia开始,旨在支持甚至尚未存在的语言。

虽然它是一个“新”系统,但也应注意到它与现有内容高度兼容:您可以使用Quarto渲染大多数未经修改的R Markdown文档和Jupyter笔记本。其理念是在保持与现有格式兼容并适应用户工作环境的同时,对可重复研究进行长期重大投资。

R Markdown会消失吗?我的R Markdown文档还能继续工作吗?

R Markdown不会消失!R Markdown被广泛使用,并且继续工作良好。它将继续得到积极支持。我们并没有离开R Markdown,而是在扩大我们的范围。多年来有许多功能请求,对于某些功能,我们可能会引导您使用Quarto,而不是在R Markdown中实现所有功能。R Markdown中现有的所有内容将继续工作并得到支持。没有计划进行弃用。

更多信息请阅读Yihui Xie的博客文章随着Quarto的到来,R Markdown会消失吗?不会。

我应该从R Markdown切换到Quarto吗?

如果您喜欢使用R Markdown,没有必要切换!R Markdown将继续得到支持并像以往一样工作。如果您愿意,欢迎尝试Quarto,但没有必要切换。某些新功能可能仅在Quarto中存在,因此如果您想使用这些功能,那么您可以在那里尝试。

我们应强调切换不是必须的。虽然我们不计划在R Markdown及相关包中进行重大功能开发,但我们将在未来很长时间内继续维护它们(较小的改进和错误修复)。此外,由于在大多数情况下,Rmd文件可以不经修改由Quarto渲染,您可以继续使用R Markdown,并且在您决定切换时,切换成本仍然很小。

我使用X(bookdown、blogdown等)。Quarto的等效功能是什么?

以下是R Markdown生态系统中各种包和功能的Quarto等效项(在某些情况下,Quarto等效项尚未可用,但将在今年晚些时候提供):

你能像为 R Markdown 创建自定义格式一样为 Quarto 创建自定义格式吗?

Quarto 提供了一个扩展机制,通过短代码过滤器来为格式添加功能,也可以创建自定义格式。与 R Markdown 中的自定义输出格式的一个主要区别是,Quarto 扩展不使用 R,而是使用 Lua,例如,如果你需要在自定义元数据字段背后添加一些逻辑。如果你需要使用它来开发你的扩展,请参阅使用 Lua 开发以开始。 一些来自 R Markdown 自定义格式的功能,如自定义编织行为,现在也可以通过执行选项在 YAML 中完成。

作为 Quarto 自定义格式的例子,Quarto 的期刊文章rticles R 包中一些自定义输出格式的移植。扩展存放在 Quarto Journals Github 组织中,你可以找到关于如何自定义模板管理作者的信息。

如果你是 R Markdown 自定义格式的高级开发者,扩展机制可能仍然有限制(如预处理器和后处理器)。Quarto 中的扩展功能将随着时间的推移而改进——不要犹豫,在我们的讨论板上分享你的用例或愿望。

什么时候是开始使用 Quarto 而不是 R Markdown 进行新项目的好时机?

Quarto v1.0 在 rstudio::conf(2022) 上宣布。这是第一个稳定的版本,已经是使用 Quarto 开始新项目或迁移现有 R Markdown 项目(如果你愿意的话)的优秀基础。如果你开始使用 Quarto,请务必关注最新发布和变更,因为开发非常活跃。

RStudio IDE 是否支持 Quarto?

是的!你需要使用 RStudio v2022.07 或更高版本,它包括对编辑和预览 Quarto 文档的支持。

你可以从 https://posit.co/download/rstudio-desktop/ 下载最新版本的 RStudio(v2023.12)。

Posit Connect 是否支持 Quarto?

是的!你可以将 Quarto 内容发布到 Posit Connect v2021.08.0 或更高版本。Quarto 需要按照 Posit Connect 管理员指南中的文档启用。Connect 的用户文档参考了 Quarto.org 文档,介绍了如何从 RStudio IDE 发布。要发布基于 Python 的 Quarto 内容,你可以使用 rsconnect-python CLI,从各种位置发布,包括 VSCode、JupyterLab 或终端。