Mac: filter out tags not available AND can't get to work as filter expression

Hi,

I want to filter out all daily to do list drafts. These are tagged “day-plan”. After studying the manual and reading severa; related threads, I cannot figure out any way to do this on Mac. Just using an iOS device is not really an acceptable workaround for several different reasons.

Below are all the approaches that I tried unsuccessfully:

  1. I do not see anywhere I can click to omit tags using the visual filter UI–I suspect that the Mac version doesn’t have this implemented. The red arrow in the below screenshot indicates the empty area where I understand the omit buttons should be.

  2. I have tried a lot of different possible ways to compose a filter to omit a given tag, but with no success. For example, “!tag:day-plan”, “-tag:day-plan”, “NOT tag:day-plan”, and even “Friday AND NOT tag:day-plan”.

  1. Nor can I see any way to do this with Workspaces, but I haven’t studied this for any time.

The one and only thing that does work for me is using the untagged filter. However, omitting all tagged notes is a very poor substitute for omitting a particular tag.

Please help!

Thanks,

Paul

Incidentally, I’ve also tried a lot of regular expressions that simply don’t work–this was noted also in a July 2023 post: How to filter for "(tag1 OR tag2) NOT tag3"

You are in single tag filter mode, if you wish to filter with multiple tags you must change to multiple tag mode in the filter pane options (...) menu. (related docs).

Once in that mode, you will have the options to do and/or groups and omit tags in the filter pane.

You cannot omit tags in the query string alone. !tag: isn’t a valid construct - you have to use tag filtering.

Most likely would want to create a workspace for this…and use a tag filter express like friday, !day-plan in the workspace.

Ah, I see, it’s buried under there to try to keep things simpler. I thought I saw it visible by default before.

So the only way to exclude a tag is to use the builder, or to negate the tag in a workspace–there is no way to construct a query that omits a tag? And thus there is no way to use a tag negation in any sort of complex expression? Does it work from Javascript at least?

Paul

Tag filters and queries can be combined. Tag filters are always applied first, and then text queries applied only to the drafts that have already matches the tag filter – so there’s no particular limits, and yes, tag filters are available through scripting, most easily by building temporary workspaces and querying them, or loading them in the list. Things like:

let ws = new Workspace()
ws.tagFilter = "!day-plan"
ws.queryString = "Friday"
app.applyWorkspace(ws)

More commonly, you would just have a “Not Planned” workspace or similar with the !day-plan tag filter, and load it to work with, then do whatever sub queries you need withing that workspace.