To simplify the discussion, I’ll start with a simple example.
\define test()[is[tiddler]is[shadow]sort[title]count[]]
\define test2() {{{[is[tiddler]is[shadow]sort[title]count[]]}}}
\define test3() {{{ [is[tiddler]is[shadow]sort[title]count[]join[]] }}}
\define test4()[is[tiddler]is[shadow]sort[title]count[]join[]]
<<test>>
<$text text=<<test>> />
<<test2>>
<$text text=<<test2>> />
<<test3>>
<<test4>>
<$text text={{{[is[tiddler]is[shadow]sort[title]count[]]}}}/>
The output is shown in the image above.
Only <<test2>>
got the result I wanted. But it’s a missing link form that I want to turn into plain text.
I don’t want to use that last form, that’s too much filter content to write and not good for editing and maintenance. Because I will define many similar data.
Of course I know I can use lets for definitions, in fact that’s what I’m doing at the moment. But the other problem is that I would need to use the same variable in two or more entries, which I can’t do with lets. Only define, allows me to use import to achieve this.
So can anyone tell me how I should solve this problem? Or is there no suitable solution in the current situation? Any discussion I am more than welcome and appreciated.