Quarto不完全指北 第一节 下载
Quarto 不完全指北 · 第一节 下载
Quarto 是 R 语言开发团队 Posit 开发的新一代开源出版工具,用于替换 Rmarkdown,并且在一定程度上具有学术写作的能力,甚至可以它创建一个网站,基于 Pandoc 和 Deno (你可以在 Quarto 的安装目录里找到这两个工具)。不仅对于 R 的支持良好,而且对于 Python, Julia, Obeservable 都有良好支持。
由于是一个新的工具,官方的文档没有对于中文的支持,因此这篇博客记录了 Quarto 的基本使用方法。
环境配置
Quarto 可以使用以下两种方式下载。注意,无论是哪一种,都需要良好的网络支持。
-
使用
winget
命令winget install --id Posit.Quarto
-
在官网上选择合适的版本进行下载
在 cmd 中输入
quarto --version
出现一段数字即下载成功。
附加组件的下载
Quarto 有两个附加组件:
- TinyTex
- Chromium
可以使用
quarto list tools
查看附加组件的下载情况,正常情况应该出现类似下面的提示
[✓] Inspecting tools
Tool Status Installed Latest
chromium Not installed --- 869685
tinytex Up to date v2022.10 v2022.10
TinyTex
TinyTex 是 Texlive 的一个发行版,Quarto-Pandoc 依赖它编译 qmd 文件为 pdf 格式。不过如果系统的环境变量中已经有了 Tex Live,则 Quarto 会自动使用,不用下载 TinyTex。
另外,Quarto 只对 Tex Live 进行了适配,如果使用外部 Tex 系统,只推荐使用 Tex Live。
下载 TinyTex
quarto install tinytex
升级 TinyTex
quarto update tinytex
使用 Quarto 下载的 TinyTex 默认是不会添加到环境变量的,也就是说,如果没有其它 Tex 发行版,在 cmd 中输入latex
或xelatex
会得到“'xxx' 不是内部或外部命令,也不是可运行的程序或批处理文件。”这样的提示。如果想独立使用 TinyTex,需要使用
quarto install tinytex --update-path
Chromium
Quarto 使用 Chromium 对 HTML 文件进行预览,如果系统中已经有了 Chromium 系浏览器如 Chrome, Edge, 360 极速浏览器, VScode等则不用下载。
下载 Chromium
quarto install Chromium
升级 Chromium
quarto update Chromium
编辑器
Quarto 文件的默认扩展名是 qmd,这是一个纯文本文件。
理论上,完全可以使用记事本编写 qmd 文件,然后使用 Quarto 渲染,但是仍然有几个编辑器是受到官方推荐的
私以为,能使用 Neovim 的大佬,已经不再需要这篇教程了,而我个人并不使用 Rstudio,因此这一节集中在使用 VScode 和 Jupyter Lab 来使用 Quarto 上。
Jupyter Lab
基于 Jupyter Lab 使用 Quarto 并不需要额外的组件支持,Quarto 支持直接渲染 ipynb 文件,但是在文件中需要一些额外的 metadata 说明,这一篇博客中暂且不提。
VScode
朋友,不知道你是否知道宇宙第一的文本编辑器 VScode 呢?如果你没有尝试过,请务必试一试。
基于 VScode 使用 Quarto 需要先安装它的官方扩展
Quarto现在只是一个出版工具,并不绑定任何语言,如果要使用代码相关的功能,还需要在系统中安装语言内核,以及在vscode中安装相关的扩展
另外,在 VScode 中使用 Python 要通过 Jupyter 作为中介,检查系统中的 Jupyter 是否被 Quarto 使用,需要下面的命令
quarto check jupyter
如果正确安装,应该出现类似下面的提示
[>] Checking Python 3 installation....OK
Version: 3.11.5 (Conda)
Path: C:/Anaconda3/python.exe
Jupyter: 5.5.0
Kernels: python3, ir
(-) Checking Jupyter engine render....0.00s - Debugger warning: It seems that frozen modules are being used, which may
0.00s - make the debugger miss breakpoints. Please pass -Xfrozen_modules=off
0.00s - to python to disable frozen modules.
0.00s - Note: Debugging will proceed. Set PYDEVD_DISABLE_FILE_VALIDATION=1 to disable this validation.
0.00s - Debugger warning: It seems that frozen modules are being used, which may
0.00s - make the debugger miss breakpoints. Please pass -Xfrozen_modules=off
0.00s - to python to disable frozen modules.
0.00s - Note: Debugging will proceed. Set PYDEVD_DISABLE_FILE_VALIDATION=1 to disable this validation.
[>] Checking Jupyter engine render....OK
最后,按ctrl+,
打开设置,在设置的右上角,点击“打开设置(json)”按钮,在 setting.json
文件中添加以下配置
{
"[quarto]": {
"editor.quickSuggestions": {
"comments": "on",
"other": "on",
"strings": "on"
}
}
}
这个配置开启了代码自动补全和建议
参考
Quarto 官网