我的全局宏显示了具有特定标签的所有提琴手的列表。该标记取自调用宏的提琴手的列表字段。该宏在常规 tiddler 中使用时可以正常工作,但如果我将 tiddler 设置为侧边栏 via $:/tags/SideBar
,侧边栏会显示选项卡,但内部没有任何内容。
我的原始版本在我明确标识标签时调用宏时工作如下:<<activityList book>>
,但我真正想要的是将标签(书)放在一个字段中并拉取它:<$macrocall $name=activityList category={{!!list}} />
。
我制作了另一个版本,其工作方式如下:它使用与上面相同的宏调用,但现在列表字段[book]
包含在其中,如<<revisedActivityList [book]>>
.
这是第一个宏(第 3 行和第 4 行不相关,它们只是输出):
\define activityList(category:"" tag:"tag[")
<$list filter="[$tag$$category$]]">
» <$link to=<<currentTiddler>>><$view field=title/></$link><br>
{{||$:/core/ui/ViewTemplate/tags}}
</$list>
调用者:
<$macrocall $name=activityList category={{!!list}} />
在此版本中,括号由列表宏过滤器参数提供。注意不寻常的第二个参数(它允许我从按标签搜索切换到按另一个过滤器函数搜索,例如 has 或 is)。这不是真的必要,但我发现它有效。
我重新设计了这个以修复括号并将括号放在列表 FIELD 中,认为这就是问题所在。
\define revisedActivityList(category:"" tag:"tag")
<$list filter="[$tag$$category$]">
» <$link to=<<currentTiddler>>><$view field=title/></$link><br>
{{||$:/core/ui/ViewTemplate/tags}}
</$list>