Filters for note body, not just backlinks

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.

Folks, consider voting on this request too:

Till the time this feature is launched, is there any workaround to achieve the same outcome? I have recently switched from Roam where I had a dedicated Tasks page, which has now become an infinitely long page on LogSeq.

Sure, I think one reason the developers haven’t made this a priority is that Logseq has two powerful query syntaxes: basic and advanced. The basic syntax is easy enough to learn (see the documentation) and can often accomplish the same thing. I just feel it is a bit much to have to write a query every time you want to accomplish a task that could be more quickly done with a filter… For more on advanced queries, I recommend asking for help in the Discord channel devoted to queries. People there are very helpful.

I am already using a query, but there is no way to edit inside query results, right? For example, if I have to add another task to my ‘todo’ I need to go to my original block (which contains all done items as well) and only then reflects in the cleaner query view.

You can switch query results between regular view and table view. If it is regular view you can edit directly. But yes, you can only edit that block, if you want to add another block that isn’t shown in the query you have to navigate back - but this would be the same with filters as well.

Thanks for the quick response. Here’s a screenshot of my query result (in regular view). I am trying to add another item in the todo list but it doesn’t allow me to (unless I add it as a sub-bullet). Am I missing something or is this the expected behaviour?

(A funny way I discovered though is to add a sub-bullet and then drag it to make it a bullet, but just checking if there’s a cleaner way)

This is the expected behavior. It would be the same with a filter though. Any item not in the query or filter would not show up. However, there are some plugins in marketplace that make it easy to generate TODO items in your journal from any page or view, they might help you.

The query Idea sounds good but if I am trying to recall a very specific piece of information really quick it would be easier for me to click the filter button and filter by tag in the main page boddy liek I do on roam.

I feel liek the use case for query is for persistent filtering.

1 Like

I agree. This feature is a priority for me, but I am just speculating why it wasn’t built in from the beginning like in Roam.


What Logseq lacks for me as a user who switched from Roam. It’s the lack of filters in the sidebar, “unlinked referances” and the whole page. I’ve used them quite often. It would be great if these types of filters were in Logseq, and the Link button in “unlinked referances” would also be great if it was added. :slightly_smiling_face:

  1. If you shift-click the tag, all blocks with references to it will dissapear (on that page)
    If you just click the tag, all blocks WITHOUT references to it will disappear, so only those with the tag will remain.

I too think it’s simple, and Roam does it simply too, so it could be a good example (it’s what I’ve described above, but you could see it working like we want)

Thank you!