How to filter on a field with brackets

Hi ,

i have some tiddlers that have this field value [[`]] , i have set them up this way to make them unique ,which now i am starting to realize it was a bad idea .

regular filters are not returning tiddlers holding this value

like <$list filter="[field[[[`]]]]">

is there a certain way of treating brackets as field values when running a filter against them

First, as you’ve noted, it’s a bad idea to use doubled-square brackets as literal text within a field value, (unless that field is supposed to contain a list of items, and some of the list items contain a space, e.g., “one [[two words]] three”).

Also, as you’ve noted, it is problematic to use square brackets within a literal filter operand, since the square brackets are processed by the filter syntax as delimiters to surround the operand value.

Fortunately, short of re-writing everything to avoid this “bad idea”, there is a workaround: first put your literal value in a variable, and then reference that variable in the filter syntax, like this:

<$let value="[[`]]">
<$list filter="[field<value>]">...</$list>
5 Likes

Thank you Eric,

Worked , and yes totally bad idea ,definitely not doing it again!! :slight_smile: