Filter question using dictionary

I have some tiddlers tagged foo and some with other tags.
I also have a dictionary tiddler with tiddler titles and a status value, e.g

tiddler1: pending
tiddler2: resolved
tiddler3: pending
...

Some of the tiddler tagged foo appear in the dictionary, some don’t.

Problem
I wish to know what titles are tagged foo but that do not have the dictionary value resolved.

The filter will be used in a recursive loop that appears in a few places so efficiency is of some concern.

So far I’ve only come up with a solution using two separate filters but I’m hoping for a combined filter;

{{{ [tag[foo]] :map[[dict]getindex<currentTiddler>!match[resolved]then<currentTiddler>] }}}
{{{ [tag[foo]] -[[dict]indexes[]] }}}

Any help would be appreciated!

Hi @twMat

Try this:

\function excluded() [tag[foo]]:filter[[dict]getindex<currentTiddler>match[resolved]]+[format:titlelist[]join[ ]]
\function result() [tag[foo]remove<excluded>]

<<result>>

I can’t tell how it will behave performance-wise though.

Fred

1 Like

Much appreciated. I can’t quite tell if that is one filter or two, but it works as I only need to call the result function.