Filter results in the Backlink pane with block level granularity

Currently, the filter works at page level (even block-level operators). Simply put, the results returned by the filter are used to select the pages and the backlink locations are shown.

This post is to summarize some internal discussions about improving the behavior of the backlink pane filtering system (same thing goes for the backlink in document).

Two ideas for improving:

  1. (Base) Introduce a button for “match anywhere on the linked notes”. The filter turns into simple, plain-text, block-wise search over the backlinked notes. The position of the backlinks in the notes is ignored.

  2. (Advanced) Use the matches from the filter, compare them with the matches from the backlink, then only show ones that overlap by the block (are within the same block).

12 Likes

This is an excellent news. Looking forward to seeing this in Obsidian !

Just in case, the same feature is also discussed here (but in addition with 3 other features to improve the backlinks pane) :

We prefer atomic feature requests.

Use case or problem

As most of the Roam migrants might notice, if you want to filter a backlink using a relevant word in the search bar in the Backlinks plane then your search results will be too noisy and irrelevant.
That’s because Obsidian is searching for your result in page level instead of the block level.

Obsidian interprets a page in the same way Roam interprets blocks (in backlinks search). This is a big problem for Daily notes users (like me).
Here’s how my daily notes look like in Obsidian. Here I have linked a Chrome plugin and also mentioned a productivity course.

Okay, now I might want to search for chrome plugins related to productivity.

If I go ahead and use the search filter in the backlinks plane to search “productivity” within the backlinks to Chrome Plugin, then the daily notes page (in the above screenshot) shows up where I have mentioned productivity in the context of Skillshare Class.

Because of this problem, in Obsidian we can’t speak of dozen different things on the same page as we do in Roam Research. I know some of you might say that “You can create separate pages for separate topics, It is different to Roam”. I mean this is such a basic feature that it affects my overall note-taking approach (daily notes
approach)

Proposed solution

Now this solution might not be that important to put the hard work on. I respect the Developers putting in thousands of hours to run Obsidian. I’m giving a solution that seems obvious to me. If I’m wrong please correct me.

The solution is to give an option to search block level in addition to page-level in the backlinks search bar.

Inside any page, if you want to refer to a block then you have to type [[^^ and then all the blocks within all the pages would appear to select as a reference.
In the same way, if we can type ^^ to filter out the backlinks based on the relevant words that are in the same block as the backlink, then it would be easy to search the backlinks through thousands of notes.

You can type ^^ to search for relevant words that are mentioned in the same block as the backlink.

OR

Give us a core plugin to switch search filter from page level to block-level.

The same problem is mentioned in the below post:
Using Daily Notes as a convert from Roam

6 Likes

Are there any news on this? I am still not able to use the block operator on the Backlinks search filter. Am I doing something wrong or this feature has till not been implemented?

As blocks are now defined this proposal may be a recipe for false negatives.

  • A
    • B

block:(A B) fails to match even this simple structure.

For anyone used to the Roam way this behavior will be misleading at best.

I would also find block level searching/filtering in backlinks to be extremely useful. At the moment, I am needing to switch from editing view to reading view, enable “show more context” and then use the in page find features to try to search the contents within a block. Not saying it isn’t possible but the workflow is a bit tedious.

+1 for this FR

Here is use case to help motivate

Lets say I have a page [[movies]] and I’m looking at the backlinks for this page and many of these linked mentions also contain a link to [[kids]], I can then click on [[kids]] to filter my backlinks to show all backlinks that contain [[movies]] and [[kids]] in the same block.

The extra nice part in Roam and Logseq is that their backlinks panels contains clickable list of internal links with a count next to it. So if I have 100 backlinks for [[movies]] I can just see a list that might say [[kids]]x5 [[drama]]x10 etc, which indicates which other pages are referenced in the blocks that are listed in the backlinks result panel, I can then click on those other links to add one or more filters on the fly.

So perhaps within the movies backlink panel I would easily add the folders [[kids]] [[unwatched]] to quickly find movies to watch with my family.

Its the kind of feature that seems quite arbitrary and niche until you use it and then it seems so obvious and indispensable.