【已解决】如何将指定文件或指定文件夹里所有文件中的H2标题内容汇总并输出到table中?

请仔细说明自己遇到的问题,以下是参考模板。这里不要求非得按模板发帖,但内容中包含相关要素能让大家更好地帮助你。


遇到的问题

如题,我搜集了一些群聊的话题和内容,以heading(level2)+content的形式记录到了不同的文件里,并且加了标签。现在我希望通过dataview将这些文件中的H2标题汇总并输出到table中,并附上标签和引用文档。

预期的效果

1、表格展示所有H2 Headings;
2、点击headings可以跳转到对应文件(最好是能定位到指定位置)。

已尝试的解决方案

找不到能够获取文件headings的方法。请求论坛大佬帮帮忙?

const source = '#you_tag'; //edit this

    dv.pages(source)
	.sort(note => note.file.name)
    .forEach(t1 =>{
		dv.el("br","");
		dv.table([t1.file.name],		app.metadataCache
        .getFileCache(app.vault.getAbstractFileByPath(t1.file.path) ?? "")
		.headings
		.map(t2 => ["  ".repeat(t2.level)+'[['+t1.file.name+'#'+t2.heading+'|'+t2.heading+']]']));
		}
    )

这是我自用的,列出指定标签的所有headings,并且加上跳转的,你可以试试在这上面改造你的需求

1 个赞

太棒了,感谢大佬…source改成文档的路径,就满足我的需求了