0

我想以具有任意嵌套深度和“干净”的提琴手标题的层次结构大纲样式排列提琴手。

如果我有顶级提琴手 A 和 B,我希望同时拥有 A:foo 和 B:foo(或 A/foo 和 B/foo)

将两者的标题都设为 Foo 会很好,但如果标题必须是 A:foo 或 A/foo 可能没问题,但当您深入几个级别并需要添加大量提琴手时会有点沉重:

A/content/objects/users/Sally

A/content/objects/users/Bill

...

如果我必须输入所有内容并手动保持直线,这有点麻烦。我真的很想打开提琴手并从那里A/content/objects/users创建一个Sally或提琴手。Bill

有没有办法做到这一点(有或没有插件)?

4

1 回答 1

2

一种方法...创建一个在编辑给定节点时将显示“创建新节点”按钮的 tiddler。在我的示例中,我们称它为“NewNodeTemplate”。向其中添加此标签:“$:/tags/EditTemplate”。这将强制在编辑任何 tiddler 时使用模板。

然后把它放在提琴手的身体里:

\define Concatenate()
$(first)$$(divider)$$(second)$
\end

<$set name=first value={{!!namespace}}>
<$set name="divider" filter="[all[current]has:field[namespace]]" value="/" emptyValue="">
<$set name=second value={{!!caption}}>
<$reveal type="nomatch" state="!!caption" text="">
<$button>
<$action-createtiddler $basetitle="New node" namespace=<<Concatenate>>/>
Create New Node
</$button>
</$reveal>

为此,您必须手动创建命名空间的根 tiddler/节点。因此,创建“A”根提琴手。在该节点中创建一个“标题”字段并将“A”放入其中(或您希望在 A 的命名空间中出现的任何内容)。添加标题字段后,将出现“创建新节点”按钮。单击它以创建命名空间的子节点。警告:该节点不会自动出现在 Story River 中——请查看侧边栏中的“更多/最近”选项卡。你应该有一个“新节点”提琴手。打开它。它应该有一个预先填充的命名空间字段。接下来,更改标题并添加标题“Foo”——应该会出现“创建新节点”按钮。重复。

为您自己的按钮文本和默认的 tiddler 标题自定义 EditTemplate tiddler。另外,如果您想在 Story River 中自动打开新创建的 tiddler,我认为有几种方法可以做到这一点。我不喜欢这个...但是您可以将 $savetitle="!!tiddler-title" 添加到 createtiddler 小部件,并添加导航小部件以在 River 中显示新的 tiddler:

\define Concatenate()
$(first)$$(divider)$$(second)$
\end

<$set name=first value={{!!namespace}}>
<$set name="divider" filter="[all[current]has:field[namespace]]" value="/" emptyValue="">
<$set name=second value={{!!caption}}>
<$reveal type="nomatch" state="!!caption" text="">
<$button>
<$action-createtiddler $basetitle="New node" $savetitle="!!tiddler-title" namespace=<<Concatenate>>/>
Create New Node
<$action-navigate $to={{!!tiddler-title}}/>
</$button>
</$reveal>

现在唯一要做的就是创建一个 Tiddler 来显示您正在寻找的轮廓。

这对你有用吗?

于 2021-01-28T14:15:03.117 回答