可重复性研究
可视化模式包括对Quarto功能(常用于技术写作)的广泛支持,包括方程、引用、交叉引用、脚注、嵌入代码和LaTeX。本文将更深入地介绍如何使用这些功能。
方程
LaTeX方程使用标准的Pandoc Markdown语法编写(编辑器将自动识别语法并将方程视为数学内容)。当你不直接编辑方程时,它会以渲染的数学形式显示:
如上所示,当你使用键盘或鼠标选择一个方程时,你可以编辑方程的LaTeX。当你输入时,方程的预览将显示在它下面。
交叉引用
交叉引用通过提供对各种实体(如图表、表格和方程)的编号引用和超链接,使读者更容易导航你的文档。
每个可交叉引用的实体都需要一个标签(唯一标识符)和标题(描述)。例如,这是一个可交叉引用的图表:
![大象](elephant.png){#fig-elephant}
标题(“大象”)和标签(#fig-elephant
)的存在使得这个图表可以被引用。这使你可以在文档的其他地方使用以下语法引用它:
请参见@fig-elephant以查看示意图。
这是渲染为HTML时的样子:
有关创建交叉引用和自定义其显示的完整文档,请参见交叉引用文章。
使用插入 -> 交叉引用…命令插入交叉引用:
你也可以只输入交叉引用标签的前缀(例如@fig-env
)并通过自动补全选择它:
类似于超链接,你也可以通过点击选中时的弹出链接导航到交叉引用的位置:
你还可以使用IDE全局搜索直接导航到任何交叉引用:
## 脚注 {#footnotes}
你可以使用插入 -> 脚注命令(或使用⇧⌘ F7快捷键)来包含脚注。脚注编辑在主文档正下方的面板中进行:
默认情况下,脚注会立即出现在其所在块的下方,并以Markdown格式书写。你可以通过编辑器选项自定义此行为。
嵌入代码
你在Quarto文档中包含的源代码可以仅用于显示,也可以由Jupyter或Knitr在渲染过程中执行。此外,代码可以是内联的,也可以是块形式的。
显示代码
要显示但不执行代码,可以使用插入 -> 代码块菜单项,或开始新的一行并输入:
```
(用于普通代码块);或```<lang>
(其中<lang>是某种语言)用于带有语法高亮的代码块。
然后按Enter键。要内联显示代码,只需用反引号包围文本(`code`
),或使用格式 -> 代码菜单项。
代码块
要插入可执行的代码块,请使用插入 -> 代码块菜单项,或开始新的一行并输入: ```{r}
然后按下Enter键。请注意,r
可以是knitr支持的其他语言(例如python
或sql
),您还可以包含块标签和其他块选项。
要包含内联R代码,只需创建正常的内联代码(例如,通过使用反引号或⌘ D快捷方式),但需在其前面加上r
或{r}
。例如,此内联代码将由knitr执行:`r Sys.Date()`
。请注意,当在可视模式下显示代码时,它不会带有反引号(但在源代码模式下它们仍会显示)。
运行代码块
您可以使用代码块右上角的运行按钮或使用⇧⌘ Enter键盘快捷方式来执行当前选定的R或Python代码块:
您可以使用工具栏按钮或使用⌥⌘ P键盘快捷方式来执行到当前代码块的所有代码块。
LaTeX和HTML
在可视化模式下编写时,您还可以包含原始LaTeX命令或HTML标签。原始标记将被自动识别并进行语法高亮。例如:
上述示例使用了内联LaTeX和HTML。您还可以使用格式 -> 原始菜单中的命令来包含原始内容的块。例如,这里是一个带有原始LaTeX块的文档:
请注意,当不生成基于LaTeX的输出时,Pandoc会忽略LaTeX命令,当不生成基于HTML的输出时,它会忽略HTML标签。
引用
可视化模式使用标准的Pandoc markdown表示法来引用(例如[@citation]
)。引用可以从多种来源插入:
如果您从Zotero、DOI查找或搜索中插入引用,它们会自动添加到您的文档参考文献中。
参考文献
Pandoc支持多种格式的参考文献,包括BibTeX和CSL。使用bibliography
YAML元数据字段将参考文献添加到您的文档中。例如:
```markdown
---
title: "我的文档"
bibliography: references.bib
link-citations: true
---
请注意,我们还指定了 link-citations
选项,这将使您的引用成为指向相应参考文献条目的超链接。
有关参考文献格式的更多信息,请参阅 Pandoc 引用 文档。
插入引用
您可以通过使用 插入 -> 引用 命令或直接使用 Markdown 语法(例如 [@cite]
或 @cite
)来插入引用。
引用放在方括号内,并用分号分隔。每个引用必须有一个键,由 @
+ 数据库中的引用标识符组成,并且可以选择性地有一个前缀、定位符和后缀。引用键必须以字母、数字或 _
开头,并且可以包含字母数字、_
和内部标点字符(:.#$%&-+?<>~/
)。以下是一些示例:
您也可以编写文内引用,如下所示:
See the Pandoc Citations documentation for additional information on citation syntax.
Use the toolbar button or the ⇧⌘ F8 keyboard shortcut to show the Insert Citation dialog:
Note that you can insert multiple citations by using the add button on the right side of the item display.
Markdown Syntax
You can also insert citations directly using markdown syntax (e.g. [@cite]
). When you do this a completion interface is provided for searching available citations:
Citation IDs
Before inserting a citation from an external source you may wish to customize its ID. Within the Insert Citation dialog, click the edit button on the right side of citations to change their ID:
If you insert a new citation via code completion, you will also be provided with the opportunity to change its default citation ID.
For citations inserted from Zotero, you can also use the Better BibTeX plugin to generate citation IDs (this can be enabled via Citation Options if you have Better BibTeX installed).
Citation Preview
Once you’ve inserted a citation, place the cursor over it to see a preview of it along with a link to the source if one is available:
Citations from DOIs
Use the From DOI pane of the Insert Citation dialog to insert a citation based on a DOI (e.g. that you have retrieved from a PubMed or other search):
If you are using markdown syntax, you can also paste a DOI after the [@
and it will be looked up:
Once you’ve confirmed that it’s the correct work (and possibly modified the suggested ID), the citation will be inserted into the document and an entry for the work added to your bibliography.
Citations from Search
Use the Crossref, DataCite, and PubMed panes of the Insert Citation dialog to search one of those services for a citation:
Items inserted from a search will automatically be added to your bibliography.
Note that for PubMed queries you can use the full supported query syntax. For example, this query searches on the author and title fields: Peterson[Author] AND Embolism[Title]
. You can learn more about building PubMed queries here: https://pubmed.ncbi.nlm.nih.gov/advanced/.
Citations from Zotero
Zotero is a popular free and open source reference manager. If you use Zotero, you can also insert citations directly from your Zotero libraries. If you have Zotero installed locally its location will be detected automatically and citations from your main library (My Library) will be available:
Zotero references will also show up automatically in completions:
Items from Zotero will appear alongside items from your bibliography with a small “Z” logo juxtaposed over them. If you insert a citation from Zotero that isn’t already in your bibliography then it will be automatically added to the bibliography.
If you are running both RStudio and Zotero on your desktop, then no additional configuration is required for connecting to your Zotero library. If however you using RStudio Server and/or want to access your Zotero library over the web, then a few more steps are required (see the Zotero Web API section for details).
Group Libraries
Zotero Groups provide a powerful way to share collections with a class or work closely with colleagues on a project. By default, Zotero Group Libraries are not included in the Insert Citation dialog or citation completions. However, there are options available to use group libraries at a global, per-project, or per-document level.
For example, here we specify a project-level option to use the Reproducible Research Series (Year 1) group library:
You can also specify one or more libraries within YAML. For example:
```
请注意,您也可以通过zotero: false
完全关闭文档的Zotero功能:
``` yaml
title: “可重复性研究” zotero: false —