rtmldown部分编号为html文档的深度

时间:2017-11-05 17:11:49

标签: html format r-markdown

我在yaml标题中使用以下内容对部分进行编号并指定目录深度:

output:
  html_document:
    toc: yes
    toc_depth: 3
    number_sections: true
    toc_float: 
      collapsed: false
    code_folding: hide
    theme: cerulean

对于自动编号的部分,我将深入4个部分(#### ....)编号。如何指定章节编号的深度限制?我知道如何使用#### .... {-}来抑制编号,但我会喜欢更自动的东西。

1 个答案:

答案 0 :(得分:4)

我不知道任何其他内置解决方案。而且我认为添加{-}所需的努力并不高。

无论如何,你可以在文档的开头添加这个块:

```{r, results='asis', echo = F}
toc_depth <- rmarkdown::metadata$output$html_document$toc_depth
sel <- paste0("h",(toc_depth+1):10, collapse = " > span, ")
cat(paste0("<style>",
           sel, 
           " > .header-section-number { display: none; } </style>"))
```

它会读出toc_depth YAML选项,然后打印一些CSS行,只是隐藏属于大于.header-section-number标题的类toc_depth的所有元素。