Allow "Subtree" or "Raw Link" Specification In ![[Embeds]] and Link Preview Windows


Obsidian currently supports file, header, and block/bullet level link embeds. This is great! :partying_face:

Some current behavioral details:

  • Header level link embeds show all content until either the next header of the same level or the end of the file is reached.
  • Block level link embeds show the content of the linked block/bullet.

Use case or problem

Sometimes I want to see header level link behavior for blocks. For example, with a file of this format:

# Heading
- Spec 1
    - Detail A
    - Detail B
    - Detail C
- Spec 2

I might want to embed all the content from Spec 1, but I don’t want it to be rendered as a heading.

Proposed solution

Add the ability to choose the preview/embed style – either just the current line as blocks currently work or the entire “subtree” as headers currently work.

This could potentially be accomplished by adding a single character to specify “full tree”. It could be a double !!, for example: !![[filename#^block_id]].

It would be doubly neat if syntax maintains uniform usage with the behavior of heading links. (So, perhaps reversing the syntax above so the double !! does the single-block embed and single ! does the entire subtree embed as headers do.)

So, in the end, usable syntax might be:

  • Entire subtree: ![[filename#^block_subtree]]
  • Block-only Link: !![[filename#^block_txt_only]].

I have also requested this behavior for Dendron

Related feature requests


2 posts were merged into an existing topic: Support sub-list block-id linking

Ability to embed nested sublist/subtree under “Spec 1” without
the top level “Spec 1” itself has been already requested in Support sub-list block-id linking

IMHO, these requests could be merged.

1 Like