How to? filter needed for regular tags of regular tiddlers, but ignore regular tags on system tiddlers

Hoo boy, this will be hard to explain.

I created a system tiddler as a placeholder that holds all the tags I plan to use in a file. I want those tags to show up in edit mode in the tags dropdown. So far so good.

Now I want to do a list widget of: all the regular tags tagged in regular tiddlers. But I don’t want the tags in the $:/placeholder tiddler to be listed unless they are the current tags of regular tiddlers.

So, if $:/placeholder has the tags Matthew Mark Luke and John, and the only one of those that is in use as a tag on a regular tiddler is Matthew, I want Matthew to show up on the list of tags, not the other three. Then if later I tag a regular tiddler “Luke”, that will also show up on the list.

What filter would I use?
If I do nothing, all four will show up because they are tags of $:/placeholder.
I can’t do -[tags[$:/placeholder]], because then none of them will show up even if they are tags of other tiddlers.

Are there other tags you might also expect to see (e.g. Acts, James, Revelation ?) Or is it all driven by $:/placeholder!!tags ?

Per my initial understanding of your question, this seems to work:

<$list filter="[all[tiddlers]]-[[$:/placeholder]]+[tags[]] :intersection[[$:/placeholder]tags[]]"/>

Thanks Mark, that did the trick! I will have to study that filter to understand the ‘intersection’ part, which I have not seen before.

Well, hmmm now it doesn’t work, and I don’t know why. See the link below to see the problem. Note that the top box should show New Tiddler 1, which is tagged Genesis, and does appear in the bottom box if you type [tag[Genesis]].

https://giffmex.org/experiments/i-frame-o.html

The problem tiddler is $:/.giffmex/ListSearches/TagPills.

Ignore the filename, which needs to change. I experimented with iframes to the other files. But while I could drag the tag pills into the other files via the iframe, I could not get the files to save.

I don’t see Genesis in $:/.giffmex/tags/placeholder .

Well, that would do it! I just added some tiddlers with tags, and they were working fine. I couldn’t figure out why. That explains everything. I truly will drive myself crazy one of these days with my mistakes!

I just updated the file, so you can see what I am shooting for, with more clarity.

Thanks Mark!

If I may add there are possibly less mind bending ways to to this if all you are using $:/placeholder for is to gather a set of tags.

For example $:/placeholder could contain the list of tags in its text field, list or other field.

Or if the the tags are only for use on regular tiddlers start with only regular tiddlers to not see those on system tiddlers ie ; $:/placeholder
[all[]!is[system]tags[]]

Oh, I forgot to add you can tag a set of tags, and use this master tag to “list” the set of tags. but once again that can be a little mind blending and add confusion.

Thanks Tones, good point, much less complicated.