v1.4 中的 AST 处理变更
在 Quarto v1.3 中,我们增加了对将 HTML 表格解析为原生 Pandoc 元素的支持,从而使得复杂的表格布局在更多格式中可用。Quarto v1.4 在此基础上进行了一些扩展。
更精细的表格处理控制
在 v1.3 中,可以通过在 HTML 表格本身中指定 quarto-disable-processing="true"
选项来禁用此 HTML 处理。
在 v1.4 中,可以通过文档和项目级别的元数据来控制此行为,使用 html-table-processing: none
YAML 选项:
---
html-table-processing: none
---
此文档中的 HTML 表格将不会被处理。
```{r}
library(huxtable)
# 您的 huxtable 表格将不会被 Quarto 处理
```
此外,您可以通过用带有 {html-table-processing="none"}
属性的围栏 div 包围元素来选择性地禁用文档部分的处理:
---
html-table-processing: none
---
此文档中的 HTML 表格将不会被处理。
::: {html-table-processing="none"}
```{r}
library(huxtable)
# 由于周围的 div,您的 huxtable 表格将不会被 Quarto 处理
```
:::
```{r}
library(gt)
# 您的 gt 表格将像在 1.3 中一样被处理
```
在 LaTeX 原始块中包含 Quarto Markdown
在 Quarto v1.3 中,HTML 原始块可以使用语法 <span data-qmd="<<markdown-content>>"/>
或 <span data-qmd-base64="<<base64-encoded-markdown-content>>"
来允许发出原始块的库受益于 Quarto 功能,如交叉引用解析和短代码。
在 Quarto v1.4 中,此功能也适用于 LaTeX 格式。如果 Quarto 检测到语法 \QuartoMarkdownBase64{<<base64-encoded-markdown-content>>}
,内容将被解码,在 Quarto 中处理(包括用户过滤器),然后插入回 LaTeX 原始块。
这对于寻求发出 LaTeX 内容但仍可以包含 “Quarto 内容” 的第三方库很有用。请注意,与 HTML 功能不同,Quarto 目前仅支持 LaTeX 块中的 base-64 编码内容。
请注意,与 HTML 表格解析功能不同,此 LaTeX 功能目前无法禁用。我们预计这没有必要,因为 QuartoMarkdownBase64
不太可能与现有的 LaTeX 环境冲突。