I am using a filter to return all lines of a tiddler text field like below:
"[<myTiddler>splitregexp[\n]!is[blank]]"
I use this several times and in several places in my code, so I use a $set widget to calculate the result and store them in a variable (e.g Lines
) like this:
<$set name=Lines filter="[<myTiddler>splitregexp[\n]!is[blank]]">
</$set>
The above practice is a recommended one for the sake of performance.
Then I use Lines
in different parts of my code like
<$list filter="[enlist:raw<Lines>]" variable=line>
other complex operation on line comes here ...
</$list>
The problem is, if in any line a wikilink is exist the above solution will break. The reason is the $set
adds [[...]]
to output and when they have wikilink a double brackets inside double bracket is occurred.
Note: For example if a line is See the [[Home Tiddler]] to learn
, the output of $set is [[See the [[Home Tiddler]] to learn]]
.
Question: What solution do you propose to have a better or equal performance here? Note that sometimes the tiddler has few tens of lines.