[Request] Group the tags shown in Tags filter

I have been considering changing one of my databases to a flat structure with tag based approach, which would rely heavily on the Tags Filter to find files.
This database contains mainly bookmarks and PDF exports of webpages, across various topics.

It would be very useful if this filter could display tags grouped.
I’ve recently discovered a bookmarking platform called TagPacker which implements very well.

Here is an example of the demo in their website.
On the right there’s the filter, with the tags grouped. (They call these groups “tagpacks”).

In my case, whenever I save a bookmark in DEVONthink, I assign:

  • A single tag indicating the content type of webpage (examples: Article, Blog post, Interview, Tutorial, Video, etc)
  • A single tag indicating the consumption status (To read / watch, Read / watched)
  • One or more tags indicating the topics

I achieved this by having created the tags “Type” and “Status”, excluded them from tagging, and created the appropriate child tags under each of them.
Currently, my topic tags don’t have a parent tag.

I use the Tags Filter in list view, but the tags are all displayed mixed together in a long list. So to bring some order, I prefixed all the child tags of Type with "1-Type: " and the child tags of Status with "2-Status: ". This way, the tags filter shows:

  • 1-Type: Article
  • 1-Type: Blog post
  • 1-Type: Video
  • 2-Status: Read / watched
  • 2-Status: To read / watch
  • Topic 1
  • Topic 2

This is the closest I can achieve to having my tags grouped.
Some disadvantages of this are:

  • The more tags of type “Type” I have, the more my topic tags will be pushed down in the list, and require scrolling down.
  • The prefixes add “visual noise”

It would very useful to really be able to group them, just like TagPacker.
It could be a configurable option along the lines of “Use tags excluded from tagging to group its subtags in Tags Filter”.

Is this something that DEVONtechnologies would consider?

The request is noted but I don’t see how this TagPacker is doing anything particularly different than just using hierarchical tags. And it’s not similar in function to the Tags filter pane. It’s akin to just using tags in a database.

Thank you for your response, Jim.

I don’t see how this TagPacker is doing anything particularly different than just using hierarchical tags. And it’s not similar in function to the Tags filter pane.

By selecting a tag in the filter in TagPacker, the results shown are filtered by that tag, and the tags available to select in the filter, across all the tag packs (groups of tags) becomes smaller so that it only includes tags from the subset of results being presented in the main pane.
When multiple tags are selected, we get the result of combining them using “AND”.

That is exactly the behaviour that I see in DEVONthink’s Tags Filter pane.
The difference is that TagPacker groups them.

Or did I misunderstand your comment?

IMO the demo page shows many of the deficiencies of this over-complicated “packed tags” approach.

  • Each time you select a tag, the appearance of the tags filter changes drastically, increasing your cognitive workload.
  • You have to maintain your tags and put them into desired groups, which can be time-consuming if you have a large number of tags.
  • The process of selecting tags from the side panel can be arduous if you have hundreds of them in each tag group.

This approach seems more suitable for smaller operations, e.g. personal blogs. I don’t think it would scale well.

Actually selecting a hierarchical tag and its subtags in the sidebar should do more or less the same, especially if the option to show only documents is enabled.

Why not just use search? tags: <type> <subject> ? Or am I misunderstanding your usecase.

It changes for a good reason. The results are narrowed down, and so are the tags in the filter because there’s no point in showing tags that wouldn’t show any results.
It’s exclusive tagging: we only want to see results that contain all selected tags.
The Tags Filter in DEVONthink works this way, too.

This organisation of tags into groups is a good thing. Tags represent different things, and it makes sense to separate the concepts into groups.
Also, the tags that represent the type of content and the consumption status can be set up in the beginning, and from that point onwards, the only new tags created over time are Topic tags, according to the item being saved.

But it’s even worse if you don’t have groups at all to separate the tags, because that actually means that you actually have them all in a single group.

Searching requires keeping the tags in my memory, and knowing what to look for.

Sure, I know some of the tags I use and could search, but this is nowhere as efficient as selecting tags shown in the Tags Filter pane.

I want to find saved content by selecting tags, which progressively narrows down the results by eliminating irrelevant tags and results.

I can indeed start by selecting a tag in the sidebar under “Tags”, and then drill down further using the filter.

But my point is that the tags listed in the filter are all mixed. For example, let’s say I selected a “To read / watch” tag, which is a “Status” tag, in the tag hierarchy.
Since I wouldn’t have any item tagged multiple “Status” tags, as that wouldn’t make sense, the Tags Filter discards “Read / watched”.
But it still shows all the “Type” tags and “Topic” tags mixed together (and the selected “Status” tag is also shown) like this:

  • Animals <---- Topic tag
  • Article <---- Type tag
  • Blog post <---- Type tag
  • Development <---- Topic tag
  • To read / watch <---- Status tag
  • United Kingdom <---- Topic tag

As you can see, this makes it mentally difficult to distinguish tags and drill down.
The best I could do to avoid this was, as I described in the post, to rename the child tags of “Type” and “Status” so they are listed at the top of the Tags Filter pane.

This is with a setup where I only have 3 categories of tags, in which the various areas of interest are considered “Topic” tags and therefore are all siblings.
But I could be interested in having brands as child tags of a “Brand” tag and countries as child tags of a “Country” tag.
So even if I started by selecting a particular tag from the tag hierarchy, as you suggested - for example, a “Status” tag again - I would still be seeing a list of tags from various categories - Brands, Countries, Types (of content), Topics, etc - all mixed together in the Tags Filter pane.

You can open an upper level tag (or any tag) in a separate window and then view the tag filter for just that tag hierarchy.

As you drill down, you’ll see the tags you select and also tags that are applied in common.

For instance, a document is tagged with both “drivel” and “useless”. If you drill down to the drivel tag, you’ll see the useless tag as well. If you expand useless with the little triangle you’ll see the documents tagged as useless which are, furthermore, drivel.

In my case, too many such notes. I’m such a poor scholar.

Am I right in saying that you’re not referring to using the Tag Filter at all in that approach?
If I’m understanding correctly, I think this is similar to this suggestion from @cgrunenberg, isn’t it?

Actually, there are two basic camps: those who approve of hierarchical tagging and those who don’t. There is no right or wrong. It’s a matter if perspective. We support both but also recommend a mix of the two. See the Getting Started > Tagging section of the built-in Help and manual.

For completeness, I have double-click opens groups in a new window unchecked, although checked would be fine, too. Also, double-click opens documents externally is unchecked.

When I double-click on a tag, the pane that lists all the files focuses on that tag. The pane or area I’m talking about is between the sidebar and the document area with View->Preview set to Widescreen.

Once focused on a tag, click the Tags icon on the bottom edge of the sidebar or click Tools->Filter->Tags.

This will give you a list of all the tags applied to documents tagged with the tag you’re focused on. You can click tags in that map to further refine the tag filtering.

You can also navigate around in the sidebar, preserving the tag filter.

Does this do what you need?

It’s possible to autocomplete tags when searching them in DT.

I keep a smart group named “tag filter” in the left side bar. When I want to find files with a certain set of tags, I double click the smart group, and type in the Tag is field.

This means you don’t have to remember exactly what the tag is to search for it. And you can easily save the results, which will automatically update itself when there are new files.

IMO text search can be much more efficient than sifting through a long list of tags, grouped or not. In terms of time complexity on the user’s side, text search is approximately O(1), whereas list selection may be something in between O(logn) and O(n).

Not to mention the dread I feel every time I have to use a side pane full of filter options …

1 Like

I hear you regarding clean interfaces and simple access - but the tag filter is pretty easy to use, at least in the situations where I’ve found it helpful.

It was one of many Devonthink features I didn’t know was there for years.

I agree Smart Groups shouldn’t be considered set-and-forget, either. I have a couple that I frequently make ad-hoc changes to, fitting my mood and current need.

Thank you for the suggestion. I have experimented with this.

That approach still requires you to keep tags and combinations of tags in your memory, because it requires you to enter a valid combination.
Let’s say you want to find documents using a combination 3 tags. Two of those tags may be a valid combination that would yield results but there’s a 3rd one that makes the entire search query yield 0 results.
And then you may find yourself not knowing which of the 3 tags is causing that, and you have to go back to the smart group to eliminate one and try again.

Using the Tags Filter pane, that does not happen, because the moment you select the 1st tag, the list of available tags becomes smaller, limited to the tags being used in the results.
And you can also type in that pane to quickly find tags. :wink:
For those reasons, looking for tags is not a repetitive search through a long fixed-size list.

You get everything you can do with the Smart Group but in a much more interactive approach.
But by no means I’m trying to change the way you like to use DEVONthink :slight_smile:

That is the problem – it’s good when you need it, but it becomes an impediment when you don’t.

For example, some of the academic websites I use put every single search parameter in the left side pane, and refuse to recognize year:1970 in the text search field. That means I have to find that year in a long, paginated list, which is rather inconvenient and much, much slower than typing.

You might argue that selecting year 2023 can be trivial. But typing year:2023 is really easy, too. And since typing is never an impediment, why should I adopt an alternative, sometimes impeding way to filter things?

I think your smart groups approach is useful and completely valid. What’s really nice is both methods, smart group and tag filter, are always available.

I’ve never used Devonsphere. Does it have any applicability here?

I understand (and respectfully disagree with) your preference for interactive UI over efficiency. As I have said, the grouped tags filter approach can be suitable in some use cases, but surely not all, considering that DT is often used to manage a significantly large number of files. There is a reason we have Google Search, but not something like Google Tags Filter for Web Pages, because the sheer volume of existing webpages makes filtering by tags useless.

Anyway, the workflow that suits your needs is the best one :slightly_smiling_face:

My understanding is that the usage you’re describing consists of typing multiple tags at once in the Tags Filter pane search.
Is this understanding correct?

If so, the issue is not about “year:1970” not being recognised, because it is:
tags_filter_search

The issue is that it does not work by entering multiple tag names at once It works by finding and clicking on one tag at a time.

So you can quickly find what you’re looking for by typing it in the Tags Filter too, without having to sift through a long list.