【问题标题】:How can I specific the initial level to have my table of contents be expanded to in an R bookdown project (gitbook output format)? With YAML setting?如何在 R bookdown 项目(gitbook 输出格式)中指定初始级别以将目录扩展到?使用 YAML 设置?
【发布时间】:2021-10-02 19:58:04
【问题描述】:

我有一个大型的 bookdown 项目,其中包含我设置为使用 4 级标题的目录,它做得很好,但开始扩展(见第一次编辑,这不准确) .我希望它崩溃开始。我在 _output.yml 中指定了目录深度:

bookdown::gitbook:
  toc_depth: 4

一个示例 .Rmd 文件的部分可能具有以下标题。我还包括了生成 gitbook 输出格式的 YAML 标头):

---
site: bookdown::bookdown_site
output: bookdown::gitbook
---

# Any Given Programming Language
## Overview
### Variables
### Data Types
#### int
#### double
#### String
#### bool
...

默认行为的问题是,比如说,我想从上面选择“数据类型”。当我这样做时,它会折叠它包含的列表(int、double 等),我宁愿它默认只显示节标题。这样我可以单击标题,将我带到该部分的开头,它可以让我链接到任何子部分(而不必再次单击“数据类型”来打开此列表)。

我不知道这是否是一个选项,但如果不是,它真的应该是。我不喜欢默认设置。

如果我可以指定一个默认扩展级别,也就是 ## 或 ### 而不是 ####(我的示例中的默认值),那就更好了。但我最初的问题是,目前我的 toc 深度是 4,它会扩展到该深度,如果它刚刚开始折叠到深度 1,我会很高兴(# My Book Titles)。

编辑:我错了它开始完全扩展,不知道为什么我这么认为(也许它已经保存状态)。它开始在第 2 级标题 (##) 处展开,但是当您单击其中一个标题时,它会同时展开第 3 级 (###) 和第 4 级 (####)。当我单击第 3 个标题以跳转到该部分的开头时,它会折叠第 4 个标题(请参阅上面单击的数据类型讨论)。我仍然希望它只是向下展开下一个级别,以便我可以单击该标题然后查看它包含的内容,或者能够设置要显示的目录的默认级别。 gitbook 输出似乎有点小故障。甚至不要让我在搜索栏上开始...


使用我接受的解决方案,您的 _output.yml 文件应该包含以下内容:

bookdown::gitbook:
  toc_depth: 4
  config:
    toc:
      collapse: section (or subsection, or subsubsection)

在我看来,目录的行为仍然很奇怪,但这很有帮助。

另一个修改:subsubsection 会在加载时展开所有级别的标题,但是当您稍后单击标题时不能折叠任何级别 - 我喜欢这种行为。

【问题讨论】:

    标签: r yaml bookdown tableofcontents gitbook


    【解决方案1】:

    使用去折叠设置。

    toc:
      collapse: section
    

    对于其他级别,collapse: subsection, collapse: subsubsection, ...

    【讨论】:

    • 这是对的。将其设置为部分会折叠所有内容,这是我想要的主要内容。将其设置为 subsection 会打开 2 级标题(这是默认设置),奇怪的是 subsubsection 跳过 3 并打开所有 4 个(仍然存在在不折叠所有 4 级的情况下无法进入 3 级标题的烦人问题,但是都好)。您还需要 config: 在它之前,就像我在底部上方的 YAML 标头中编辑的一样。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-06
    • 2022-11-11
    相关资源
    最近更新 更多