Filters for note body, not just backlinks

As Roam Research does. I want to filter blocks based on tags.

This is very useful for task management.
For example, only look on tasks with high priority tags or issue types.

Consider voting for / commenting on this issue: Filters for note body, not just backlinks

Can a moderator merge these two requests?

Just merged to this topic.

2 Likes

Honestly, sort of painful (with day to day note taking) not having this feature! :frowning:

3 Likes

Adding my vote for this!

1 Like

This is the last thing that keeps me from switching from Roam.

Thinking of coming from Roam also and really would miss this feature.

1 Like

In my scenario, I use logseq as both knowledge garden and GTD system. So I have 2 big system in one graph. So I have notes only related to ME(Plans/Visions/Self-Awareness), and knowledge that can shared to public. So half of the time I need to split them in the big graph and referenced links.

The key thing is, in logseq page and tag are treat as the same thing. So if we want to really “tag” some blocks for later filtering (like category or Resource Sources) but not want a link (their group is so big and the graph or links of it is not so valuable, and they will messy my graph), the only way is using property(as prefix or body filtering is also not supported).
So I suppose the problems is we lack a way of category without links, maybe a better mindset is to treat page property as the first class member of logseq as tags and pages, and give enough freedom and power to page property.

Specific to my problem, if logseq have a filter in graph and referenced links that can filter with page/block property (like not show page with [relation:: ME]), then I can get a clean graph.

This feature is very necessary

Dynalist has a in-page search feature which is very useful. You type an arbitrary string, and the entire page gets filtered by that string: every bullet containing that string and its ancestors get shown, and all else gets filtered out.

It works beautifully on dynalist, very responsive, simple, and very intuitive. As you type a substring, the page gets filtered live. Such a feature would be fantastic.

This might be what is being asked here, or slightly different: the filters for linked issues is not an arbitrary-string filter, but a link/keyword/tag on-off filter. What I’m asking for above is an arbitrary string in-page search filter.

Yes, that sounds nice, but as you noted is a separate request. I suggest opening up another feature request just for this, so that the two can be tracked separately.

1 Like

@Luhmann, thanks for clarifying. Sounds good, I opened a request here.

1 Like

This sounds like a simple enough feature to be implemented via a plugin. How’d the ideal implementation look to you?

I’m thinking, toolbar button, that on click hides based on a specific tag and you can customize this tag in plugin settings.

Thanks. But this is not about filtering based on “a specific tag” but based on any tag, as you can currently do in the Backlinks. The Logseq backlink filter is not ideal however, because if you have many tags it does not currently let you do a search, like you can do in Roam. I personally like the way it works in Dynalist where you can click on the tags in context. (Though it would need to be a command-click or something like that to avoid going to the target page for that tag.)

1 Like

Hmm, could you record a screen recording perhaps?

Do you mean something like this would be ideal?

  1. Click toolbar
  2. Brings up UI
  3. UI will list every tag that is linked to on the page
  4. If you click the tag, it will turn gray or something
  5. There will be a button for apply filter
  6. Click the button to filter out blocks that link to the “grayed” tag(s)

Click

I’m not sure why a video is necessary? Have you experimented with the backlinks filter built into Logseq already? You can click to filter out everything but that filter, or shift-click to hide everything with that filter, and you can do this to multiple tags at the same time. The only difference is that this would work on the page itself instead of the backlinks section. And the missing feature that Roam has which Logseq does not is the ability to search when you have many links.

1 Like

Is the plugin flow I sent, essentially what you’d want it to do?

  1. Click toolbar
  2. Brings up UI
  3. UI will list every tag that is linked to on the page
  4. If you click the tag, it will turn gray or something
  5. There will be a button for apply filter
  6. Click the button to filter out blocks that link to the “grayed” tag(s)

Not exactly. Let’s say I have a page of recipes marked with the following tags: [[apples]], [[pumpkins]], [[pies]], and [[stews]]

If I click on [[pies]] I wouldn’t want to “filter out” pies, as you suggest in 6, but I would want to filter out everything else (i.e. [[stews]]). In another workflow I would want to filter “for” [[apples]] while filtering “out” [[stews]] at the same time. All this is currently possible in the backlinks filter, and in the in-page filter on Roam (and Dynalist), but for some reason not yet possible in Logseq.

I personally don’t think this should be a plugin but see it as an essential built-in feature. However, perhaps a good plugin could eventually be made part of the default code?

@Aryan I should note that the use-case that most closely resembles your suggested workflow relates to hiding “DONE” task items, and there is already a plugin for this: “Wide Eyed.” What is needed for other workflows is something much more robust and flexible.