TiddlyWiki:按多个标签过滤目录

Gra*_*ist 5 tiddlywiki tiddlywiki5

我有一个 tiddlywiki,里面有多个角色扮演游戏笔记。每个小东西都标有各自的游戏名称和类别(例如“城市”或“NPC”)。

现在我想创建一个仅列出例如一个游戏的 NPC 的目录。我想用toc.

我目前的代码是这样的:

<div class="tc-table-of-contents">
<<toc 'NPC'>>
</div>
Run Code Online (Sandbox Code Playgroud)

但是,这给了我所有 NPC。如何添加另一个标签作为过滤条件?

Sor*_*tad 2

可能为时已晚,无法帮助您,但对于遇到此问题的其他人来说,宏sort的参数toc可以包含任意一个或多个过滤步骤,因此您可以执行以下操作:

<div class="tc-table-of-contents">
<<toc 'NPC' sort:"tag[SecondTag]">>
</div>
Run Code Online (Sandbox Code Playgroud)

有关及其同级选项的完整说明,请参阅目录宏。toc


如果您希望过滤器匹配多个条件并组合在一起,您可以说,例如,tag[one]tag[two]。不过,OR 条件并不是真正设计用于此处,因为您需要运行多个筛选器才能在筛选器中执行 OR 条件,并且该sort命令仅需要筛选步骤。

从 5.1.23 开始,这是一个似乎适用于 OR 条件的 hack:

<div class="tc-table-of-contents">
<<toc 'TableOfContents' sort:"tag[one]][all[shadows+tiddlers]tag<__tag__>!has[draft.of]tag[two]">>
</div>
Run Code Online (Sandbox Code Playgroud)

然而,这本质上是对宏进行注入攻击toc,所以如果我是你,我不相信它会继续工作。如果您需要如此复杂的东西,您可能最好自己用一个$list或三个小部件来组装一些东西,而不是尝试使用toc宏。