Issac Roy86 downloadsLinks every note carrying a promoted tag to that tag's concept note, through a managed tag_links property.
An Obsidian plugin that links tags to notes.
Suppose I have an #Obsidian tag and an [[Obsidian]] note. The benefit of the tag is that I can refer to subtags, e.g. #Obsidian/Graph, without having to refer to a dead / empty note, e.g. [[Obsidian Graph]]. The benefit of the note is that it's linkable and you can visualize the connections through the graph view.
What if I want the best of both worlds? What if I want to see every referral to the concept of Obsidian, which spans the note, the tag, and the subtags. This plugin solves the syncing between notes and tags.
Simply refer to the tag or subtag, e.g. #Obsidian/Graph, and the plugin will automatically add the relevant note, e.g. [[Obsidian]], to a tag_links property in the frontmatter, which handles the note linking.
aliases: ["#Obsidian"].tag_links property holding links to the matching concept notes, automatically created, managed, and deleted by the plugin as needed.#Obsidian/Graph links to the #Obsidian concept note, unless Obsidian/Graph has a concept note of its own.Obsidian/Graph becomes Obsidian Graph). The plugin adds the tag alias and links every note carrying the tag.tag_links property. A full resync also runs on startup.Changes are written about 2 seconds after you stop editing, so a tag is not linked while you are still typing it.
| Event | Result |
|---|---|
| Add or remove a tag | The note's tag_links is updated. |
| Delete a concept note | Links to it are removed. |
| Rename a concept note | Obsidian updates the links; the plugin leaves them alone. |
| Rename a tag with Tag Wrangler | The tags and the tag alias change together, so links keep working. |
tag_links and cannot be concept notes. For example, exclude your templates folder so template tags do not create links.Tag Wrangler is optional, but recommended. When it is installed:
Without Tag Wrangler, Promote is available from the editor menu only, and a renamed tag needs its alias updated by hand.
The plugin reads every Markdown note in the vault to find tags and concept notes. It writes only the tag_links property, the aliases property when you promote or demote, and the new note when Promote creates one. It makes no network requests.
The plugin is not in the community plugin directory yet. Install it with BRAT:
TheBoyRoy05/Obsidian-Unified-Tag-Links.BRAT installs the latest release and keeps it updated.
Requires Obsidian 1.4.4 or later. Works on desktop and mobile.
Clone into .obsidian/plugins/unified-tag-links/ of a test vault, then run npm install and npm run dev to rebuild main.js on every save. npm test runs the test suite.