我如何在 Jekyll 中 "watch" 多个源目录?

How can I "watch" multiple source directories in Jekyll?

我很确定我在 Jekyll 博客项目中看到有多个源文档目录,例如 _posts_pages,但是 source 中的参数 _config.yml 文件只能将 1 个目录作为其参数,数组和 space 分隔的目录字符串都不起作用。

我是否误解了 source 参数的含义?我期待 watch 使用它来指定哪些文件的更改将触发构建,以及要构建哪些文件。

此外,我还有about.md这样的片段可以包含在其他页面中。像这样的文件的最佳位置是什么?

source 配置指的是您的 <project_root>,而不是项目根目录中的各个目录。默认情况下,它设置为您的 current_directory(您所在的位置 运行 jekyll build (or) serve

默认情况下,Jekyll 监视源目录深处的所有嵌套文件和目录。

about.md 不应被视为要包含在其他文件中的片段。它是 full-blown "page",根据您的永久链接设置,它会呈现为 _site/about.html_site/about/index.html

要包含在其他页面中的片段位于 _includes 目录中,并通过 Liquid 构造插入 {% include <fragment-filename>.html %}

_layouts_includes_sass 以外,以下划线开头的目录将被 Jekyll 忽略,除非您 configure Jekyll 以将它们视为 "collections"。 _posts 是 pre-defined 和 hard-coded 集合目录。

有关 Jekyll 的更多信息,请参阅官方文档 https://jekyllrb.com

如果有人像我一样希望在 github-pages 中包含多个源文件夹,您只需在 github 中配置 jekyll root - master 分支上的页面。 IE。不在 gh-page 分支上,也不在 docs 文件夹上。

至此,所有文件夹都处理完毕。 README.md 被视为 index.md,您可以轻松地从根部的主 README.md 到文件层次结构中 "below" 的任何其他文档建立相对链接。因此让 jekyll 覆盖你所有的代码文档。