Grub Basket33 downloadsScan legacy HTML highlights, map each colour to a native highlight colour, back up affected notes, then convert them — with full revert.
An Obsidian plugin that converts legacy <mark> HTML highlights — like those written by the Highlightr plugin — into Obsidian's native highlight colours (==🔴text==), with a guided, fully reversible workflow.
Obsidian's native highlight colours use an emoji marker right after the opening ==. This plugin finds your existing HTML highlights, lets you decide how each colour maps, backs up every affected note, and then does the conversion — so a whole vault's worth of highlights moves over in one reviewed pass.
<mark> highlight and groups them by distinct colour, with per-colour occurrence and note counts. It detects both inline hex (<mark style="background:#RRGGBBAA">) and Highlightr class markup (<mark class="hltr-…">).manifest.json, before any conversion runs. Backup folder names are collision-checked, so a backup never overwrites an earlier one.== are detected and left untouched rather than risk corrupting them, and the count of skipped highlights is shown. Conversion is idempotent, so re-running never double-converts.The plugin converts highlights on Obsidian 1.7.2 and later. The converted syntax (==🔴text==) renders as coloured highlights in builds that support native highlight colours; on builds that don't, the emoji marker shows as literal text.
Search for "Highlight Migrator" in Settings → Community plugins and install it.
Add the repository grub-basket/Highlight-Migrator in the BRAT plugin.
Copy main.js, manifest.json, and styles.css from the latest release into <vault>/.obsidian/plugins/highlight-migrator/, then enable the plugin.
hltr-*) highlights, in addition to inline hex.pnpm install
pnpm run build
The build type-checks with tsc and bundles main.js with esbuild.
MIT.