amato2170 downloadsType a trigger character to mention anything: links to an existing note, or to a lightweight heading inside a shared stub file if no real note exists yet. Promote a mention to a full note whenever it deserves one.
An Obsidian plugin for people who mention way more things than they want to turn into full notes.
Type a trigger character (@ by default) followed by a name:
Mentions.md by default) and links to that heading instead of
forcing you to create — and later manage — a whole new note.main.js, manifest.json, and styles.css from the
latest release.<vault>/.obsidian/plugins/lightweight-mentions/.https://github.com/Amato21/Lightweight-MentionsThis plugin isn't on the official Community Plugins list yet.
Type @ (configurable) followed by a name and pick a suggestion:
[[Note]].alias or
aliases, single string, comma-separated, or a YAML list) → inserts
[[Note|Alias]].[[Mentions#Heading]].Create "..." appends ## Name to the stub file and
inserts [[Mentions#Name]].Promote mention to full note — run with the cursor either on a
[[Mentions#Heading]] link anywhere in the vault, or inside that heading's
section in the stub file itself. It:
[[Mentions#Heading]] link across the vault to point at
the new note.Templater note: this plugin doesn't call Templater itself — it just
writes the chosen template's raw text into the new note (with
{{title}}/{{content}} substituted first). In practice, Templater syntax
in that text still gets executed: if Templater's "Trigger Templater on
new file creation" setting is enabled, Templater watches for any newly
created file (regardless of which plugin created it or whether it started
empty) and processes any Templater syntax already present in its content.
Go to Settings → Lightweight Mentions:
@).Mentions.md).{{title}} and {{content}}
placeholders.To power the mention suggester, this plugin reads the list of every markdown file in your vault (file names, not their content) plus the headings of the stub file, on every keystroke while the suggester is open. It never reads any other file's content, and nothing ever leaves your vault — no network requests are made.
Findings from the Obsidian plugin review, and how each was addressed:
| Finding | Status |
|---|---|
Release name must include the manifest.json version |
Fixed — release titles now include the version (e.g. "0.2.1 — ..."). |
Unawaited promise (main.ts, command callback) |
Fixed — wrapped with void. |
Unsafe any assignment (loadData() into typed settings) |
Fixed — result is cast to Partial<LightweightMentionsSettings> | null before merging. |
EditorSuggest.selectSuggestion returned Promise<void> instead of void |
Fixed — split into a sync void method that fires a private async helper. |
builtin-modules package flagged for replacement |
Fixed — swapped for Node's own module.builtinModules. |
Vault enumeration (vault.getMarkdownFiles, etc.) |
Documented, not changed — see "Data access" above; required for the mention suggester to work. |
See CHANGELOG.md for the full version history.
npm install
npm run dev # watch build
npm run build # production build (main.js)