Typing pipe "|" when inserting a link doesn't autocomplete

Steps to reproduce

  1. Create a link with [[
  2. Select something from the autocomplete
  3. Type “|” to give it a different name

Expected result

Autocompletes the result and puts cursor after “|”.

This should be the same behavior as when inserting ^ or # for backlinks

Actual result

Doesn’t autocomplete and just inserts “|”, resulting in a non-functional link


  • Operating system: MacOS Big Sur 11.1
  • Obsidian version: v0.10.18

Additional information

1 Like

nope, this is done on purpose. search the forum.

It would be nice if you could actually link to some of those posts (we like banklinks, right?), because when I was creating this I wasn’t able to find anything relevant (probably my search wasn’t good).

I searched again and found Using display text `|` in links does not auto-complete the selected note which is another post of you saying “this was discussed and reported other times”

Searched again and found Using pipe for alternative text does not autocomplete the link

It not a bug. It’s a design decision. Otherwise you could not easily write non-existing pages.

Maybe I don’t fully understand what the usecase for “write non-existing pages” is. When would you want to link to pages that don’t exist yet? I’m asking because I genuinely don’t know.

(Also this really feels like a bug because it’s so similar and yet not working the same as as ^ and #. If this is being asked over and over again, maybe this design choice is not as clear as thought and needs some rethinking/adjustment. Or maybe some easy-to-find tip somewhere that you should press TAB for that case.)

1 Like

I ever saw it discussed. It’s so old post (it’s hard to find. I tried to search it again, but not find it). Hope you can understand WhiteNoise.

Writing non-existing pages means you type [[link with no page]] which is not existed .md file (just link). People usually use this because they’re still writing in the current page and want to make [[page]] for later (think it as potential page).

If “|” make an autocomplete, it will be hard to make alias for [[link with no page]] because it will create autocomplete with existing page, not with non-existing page.

For workaround, they will need to press “Esc” to avoid autocomplete with existing page and this creates a writing friction. That’s why “|” doesn’t create an autocomplete.

Different with #, ^, which people will always want to link to existing page.

Sorry for my bad English, hope it’s help.