Quarto RevealJS幻灯片:如何高亮代码输出指定行?
实现Quarto RevealJS幻灯片中代码输出的特定行高亮
Quarto目前没有类似code-line-numbers的直接选项来高亮代码输出的特定行,但可以通过以下两种方法实现需求:
方法一:自定义CSS+输出类
通过给代码块的输出添加自定义类,配合CSS样式定位高亮特定输出行。
- 在幻灯片文档的YAML头部指定自定义CSS文件:
--- title: "你的幻灯片标题" format: revealjs css: custom.css ---
- 在
custom.css文件中添加样式(以高亮第一行输出为例,可调整nth-child()数值定位其他行):
.highlight-specific-output .cell-output > pre > code > span:nth-child(1) { background-color: #ffffcc; /* 自定义高亮背景色 */ padding: 2px 4px; border-radius: 3px; }
- 在代码块中添加
class-output选项指定自定义类:
```{r, echo = TRUE, class-output="highlight-specific-output"} x <- 1 y <- 2 x + y x * y
设置完成后,代码输出的第一行(即`x+y`的结果)会被高亮。 ## 方法二:拆分代码块控制输出 将代码和输出拆分到不同代码块,精准控制需要高亮的输出内容。 1. 先运行代码但隐藏输出: ```r ```{r, echo = TRUE, results="hide"} x <- 1 y <- 2 sum_result <- x + y prod_result <- x * y
2. 单独显示并高亮目标输出: ```r ```{r, echo = FALSE, class-output="highlight-single"} sum_result
3. (可选)显示不需要高亮的输出: ```r ```{r, echo = FALSE} prod_result
4. 对应的CSS样式(添加到`custom.css`): ```css .highlight-single .cell-output > pre > code { background-color: #ffffcc; padding: 2px 4px; border-radius: 3px; }
这种方法灵活性更高,适合需要单独控制输出显示状态的场景。
内容的提问来源于stack exchange,提问作者user2728808
相关产品推荐
相关产品推荐

