Enable a link to a block in a note using Obsidian GitHub Publisher

Rmag Breaking News

Same article on GitHub Gist

TL;DR

Here’s my configuraiton (in data.json):

“censorText”: [
{
“entry”: “/ (\^\w+)$/gm”,
“replace”: ” <a id=$1></a>”,
“flags”: “”,
“after”: true
},
{
“entry”: “/#(\^\w+)\)/gm”,
“replace”: “#user-content-$1)”,
“flags”: “”,
“after”: true
}
],

Background

A link to a block in a note of Obsidian

Obsidian GitHub Publisher (the plugin)

What I miss

The plugin does not convert a unique block identifier ^identifier to an HTML anchor <a id=”^identifier”></a>.
Thus, a link to a block in a note [[note#^identifier]] or [text](note#^identifier) does not work.

1st try

I configured the plugin to replace a unique block identifier to an HTML anchor:

Regular expression to match: / (^w+)$/gm

Text to substitue: <a id=”$1″></a>

Surprise by GitHub Markdown renderer

Later, I found that GitHub Markdown renderer adds a prefix user-content- to each HTML ID,
e.g. id=”^identifier” becomes id=”user-content-^identifier”.

2nd try

I configured the plugin to add the prefix to each link:

Regular expression to match: /#(^w+))/gm

Text to substitute: #user-content-$1)

And everything is okay now.

Leave a Reply

Your email address will not be published. Required fields are marked *