使用 pug (jade) 为指定文件夹中的文章选择性地生成 table 的内容

Use pug (jade) to selectively generate table of contents for articles in specified folders

我正在使用带有 jade 支持的 harp 版本 0.21.0 在 Windows 上开发静态站点 7. 下面的 harp 文档链接显示了使用 _layout.ejs 进行嵌套布局的示例以及如何创建博客文章列表:

https://harpjs.com/docs/development/layout

https://harpjs.com/recipes/blog-posts-list

仅当当前页面位于包含多于一篇文章的组文件夹中时,我才想将文章链接放在侧容器中,如下所示。

_layout.jade
index.jade
+ group1
    article1
+ group2
  _data.json
  article1
  article2

_layout.jade

head
  title= title
  meta(name='description', content='#{ description }')
body
  #wrap
    #side
      p(align='center')
      img(src=sideimg, width='259', height='387', alt=imgtag)
      != partial("_toc.jade")
    #main
      != yield
    #footer

_data.json

 {
 "article1": {
   "pagetitle": "Article 1 Title",
   "sideimg"  : "/img/freebird.png",
   "imgtag"   : "bird flying under Sun"
 },
 "article2": {
   "pagetitle": "Article 2 Title",
   "sideimg"  : "/img/freebird.png",
   "imgtag"   : "bird flying under Sun"
 }
 }

_toc.jade伪代码(什么是正确的jade语法?)

if current page is in group1 folder then 
  do nothing
if current page is in group2 folder then
  for each article in group2 folder
    ul
      li
         insert #{ pagetitle } as link in side container

我有两个问题。

  1. 如果这可以使用 jade 部分来完成,那么 _toc.jade 中 jade 代码的语法是什么?

  2. 如果这可以在 jade 中使用块和扩展来完成,那么该方法中的代码是什么?

harp 文档包含一些食谱,其中包含我使用 _toc.jade 方法解决自己问题的线索。

_toc.jade(此代码适用于原始问题的上下文)

if current.path[0] == 'group2'
  for group2, pagetitle in public.group2._data
    a(href="/group2/#{ pagetitle }") 
      p.i= group2.pagetitle