Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RFC] 拆分目录格式 #1002

Open
diauweb opened this issue Nov 10, 2021 · 7 comments
Open

[RFC] 拆分目录格式 #1002

diauweb opened this issue Nov 10, 2021 · 7 comments

Comments

@diauweb
Copy link
Member

diauweb commented Nov 10, 2021

目前目录是由一个 src/ 下写死的文件 sidebar.yaml 统一维护的。为便于维护,试提出一种新的目录格式。

  1. 目录保存在 docs 目录下,与文档文件同级
  2. 目录按层级拆分为不同文件
  3. 一般使用名称 index.yml

index.yml 应提供一个数组,其中包含当前项其下的子目录和页面。
单项只提供一个字符串时,表示文档的文件名,标题由文档元数据提供;提供一个 只有一项的 K-V Pair 时,K 表示标题,V 表示文件名。
对于子目录,必须提供一个标题。只有子目录文件需要提供文件扩展名按文件搜索,其余的文档路径以Gatsby创建的页面路径为准。

在解析文件名时,以当前 index 文件所在目录为相对目录。文件名前有 / 的以文档目录顶部目录开始解析

例如:

# /index.yml
- 简介: intro/ # equivalent to intro/index.yml
- 语言基础: lang/
- 算法基础: basic/
# /intro/index.yml
- Getting Started: /
- resources
- common-mistakes
- ./common-tricks
- /intro/non-trad/
@ouuan
Copy link
Member

ouuan commented Nov 10, 2021

hugo 是把 title 和 weight 放内容 md 的 frontmatter 里,用 weight 进行排序,供参考。

@ouuan
Copy link
Member

ouuan commented Nov 10, 2021

hugo 是把 title 和 weight 放内容 md 的 frontmatter 里,用 weight 进行排序,供参考。

这个主要是需要排序的内容比较多的时候会麻烦

@ouuan
Copy link
Member

ouuan commented Nov 10, 2021

才发现现在的 title 就是在文档 md 里的,为什么这个 RFC 要把 title 移出来..

@diauweb
Copy link
Member Author

diauweb commented Nov 10, 2021

才发现现在的 title 就是在文档 md 里的,为什么这个 RFC 要把 title 移出来..

目前我们在使用frontmatter管理标题,目录里没必要再出现一个标题了

@Enter-tainer
Copy link
Member

当时写目录这块的代码的时候,感觉“只有一项的kv对”有一点毒瘤,解析起来比较麻烦。这个rfc里面还是保持了之前的设计,是处于兼容性的考虑吗

@diauweb
Copy link
Member Author

diauweb commented Nov 10, 2021

当时写目录这块的代码的时候,感觉“只有一项的kv对”有一点毒瘤,解析起来比较麻烦。这个rfc里面还是保持了之前的设计,是处于兼容性的考虑吗

只是为了易读性考虑的

@ouuan
Copy link
Member

ouuan commented Nov 10, 2021

才发现现在的 title 就是在文档 md 里的,为什么这个 RFC 要把 title 移出来..

目前我们在使用frontmatter管理标题,目录里没必要再出现一个标题了

哦我没看清那个 K-V pair 是目录不是文件..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants