Wow, I didn't realize search had changed so much. I really need to pay
attention to those release notes.
The five laws of concatenation, which I just made up:
Wikitext can't eat Wikitext
Wikitext can't eat Widgets
Widgets can't eat Widgets
Widgets CAN eat Wikitext.
Wikify can sometimes bend laws 1 through 3
The following version may be too distant from what you wanted, but might
serve as a start. It did work in my quick test:
\define ppfilter(pp) [tag[data_page]search:text:literal["father":
"{{!!parent_page}}"]]
<$wikify name=search text=<<ppfilter>>>
Variable: <<search>>
<$list filter=<<search>> >
* Search Result: {{!!title}}
</$list>
</$wikify>
HTH
-- Mark
On Monday, January 7, 2019 at 8:17:10 PM UTC-8, D X wrote:
>
> I imagine I'm missing something obvious, but I'm unable to construct a
> working filter to search JSON tiddlers for a specified field value on TW
> 5.1.18. Concat() is a usual $1$$2$$3$, etc. macro. Here are a few
> variations that don't work for me:
>
> 1. Non-$macrocall, single brace field ref, quote-delimited:
> <$set name=search value=<<concat "'"
> '[tag[data_page]search:text:literal["father": "' {!!parent_page} '"]]' "'"
> >> >
> Variable: <<search>>
> <$list filter=<<search>> >
>
> * Search Result: {{!!title}}
> </$list>
> </$set>
> Output 1:
> search: '[tag[data_page]search:text:literal["father": "{!!parent_page}"]]'
>
> - list: [tag[data_page]search:text:literal["father":
> "{!!parent_page}"]]
>
>
> 2. Non-$macrocall, double brace field ref, quote-delimited:
> <$set name=search value=<<concat "'"
> '[tag[data_page]search:text:literal["father": "' {{!!parent_page}} '"]]'
> "'" >> >
> search: <<search>>
> <$list filter=<<search>> >
>
> * list: {{!!title}}
> </$list>
> </$set>
> Output 2:
> search: '[tag[data_page]search:text:literal["father": "Kyle"]]'
>
> - list: [tag[data_page]search:text:literal["father": ""]]
>
>
> 3. Non-$macrocall, double brace field ref, non-quote-delimited:
> <$set name=search value=<<concat
> '[tag[data_page]search:text:literal["father": "' {{!!parent_page}} '"]]' >>
> >
> search: <<search>>
> <$list filter=<<search>> >
>
> * list: {{!!title}}
> </$list>
> </$set>
> Output 3:
> search: [tag[data_page]search:text:literal["father": "Kyle"]]
> --LIST DOESN'T RETURN RESULTS--
>
> 4. $macrocall, double brace field ref, non-quote-delimited:
> <$set name=search value=<$macrocall concat
> 1='[tag[data_page]search:text:literal["father": "' 2={{!!parent_page}}
> 3='"]]' /> >
> search: <<search>>
> <$list filter=<<search>> >
>
> * list: {{!!title}}
> </$list>
> </$set>
>
> Output 4:
> <$set name=search value=<$macrocall concat
> 1='[tag[data_page]search:text:literal["father": "' 2=Kyle 3='"]]'
> </$macrocall> > search:
> --LIST RETURNS EVERY TIDDLER--
>
> Seems like the quote delimiting is broken here, but I don't see the issue.
> What's more, trying to close the <$macrocall> tag with /> seems to be
> closing the <$set> macro as well.
>
> And there are a few other permutations of the above, none of which work.
> =/ Help welcome and thanks in advance!
>
--
You received this message because you are subscribed to the Google Groups
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit
https://groups.google.com/d/msgid/tiddlywiki/5e272a7f-ab18-4ea1-9e7b-851f39180585%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.