如果我访问 TiddlyWiki 网站,我可以看到选项卡Content。如何为我的 tiddlywiki 文件创建自己的目录?
我发现这方面的文档确实令人困惑,但这是我所做的最有效的:
<div class="tc-table-of-contents">
<<toc-selective-expandable 'TableOfContents' sort[ind]>>
</div>
然后,用目录标记每个tiddler。
最后,在编辑每个tiddler时,添加一个名为“ind”的新字段(对于索引 - 您可以将其更改为您喜欢的任何内容,当然,只要它没有在其他地方使用)。为“ind”分配一个从 0 开始的值,告诉它您希望 tiddlers 进入的顺序。我增加了 10 而不是 1,以防我想重新排列一些内容或在中间插入更多内容。
创建一个新的tiddler并给出标题Contents
在标签下,给出值 $:/tags/SideBar
在输入此tiddler 的文本下,给出
<$list filter={{$:/core/Filters/AllTiddlers!!filter}} template="$:/core/ui/ListItemTemplate"/>
这在文档中有解释。
简短版本:向您想要出现在目录中的页面添加一些标签(例如Content
);然后在您希望它出现的位置,使用具有该标签名称的宏之一(例如
<<toc Content>>
)。要制作嵌套目录,请使用出现在顶层的标签名称来标记页面。例如,如果您有一个名为
First
且带有
Content
标记的提琴手,那么您可以使用
First
标记更多提琴手,它们将在目录中缩进显示在
First
下面。
我最终得到了与安德鲁提供的用于生成正常内容页面的解决方案类似的解决方案,但我想要更多,所以我还进行了以下更改。到 $:/core/ui/ViewTemplate/body
<$list filter="[all[current]!tag[Hide Contents]]">
<div class="tc-table-of-contents">
<<toc-selective-expandable '' sort[created]sort[content-index]>>
</div>
</$list>
然后,我将标签“隐藏内容”添加到任何我不想有一个下拉列表指示其“子项”的tiddler。对于主要内容,我需要指定名称,否则它在侧边栏中时不起作用。内容索引字段是我自己添加的字段,它允许我强制排序,但我发现默认按创建日期排序对我来说最有效。