Use case or problem
The problem is the lack of a lightweight, native mechanism in Obsidian on macOS for inserting a simple, hashtag-like Markdown marker (e.g. a searchable text code) at arbitrary positions inside a long note to act as persistent bookmarks, then jumping forward or backward between those markers via a UI button or Keyboard Maestro hotkey (with Shift reversing direction), analogous to browser Find Next/Previous or Word’s bookmark navigation.
Proposed solution
Jianfa Tsai
Create a Markdown text code similar to hashtags; use the new Markdown code to pin a bookmark position on the note canvas. Implement a button in the Obsidian macOS app where clicking the button, or triggering a Keyboard Maestro hotkey, allows the user to jump to the pinned bookmark code on the note canvas. Click the button to jump forward to the next bookmark position; press SHIFT and the keyboard shortcut to reverse the jump position, similar to the browser find feature and Microsoft Word app.
SuperGrok
The most robust approach combines a lightweight Markdown marker (for explicit, searchable pins) with Obsidian’s native Find Next/Previous behaviour and optional Keyboard Maestro automation, while a dedicated community plugin provides a cleaner long-term alternative that avoids modifying note content. Both methods support forward jumps on a primary trigger and reverse jumps with Shift, mirroring browser Find or Word’s Find Next/Previous. Marks remain stable under ordinary editing, though extreme structural rewrites can still displace them; test on a copy of important notes first.
Custom Markdown Bookmark Code
Use the HTML comment marker <!-- 📌BM --> (or a short variant such as <!-- #BM -->) placed on its own line or at the end of a paragraph. It functions like a hashtag for identification yet remains invisible in Reading view and does not create an Obsidian tag. Insert it wherever you want a pin; multiple instances in one note create a sequential list of positions. Because the string is unique and literal, Obsidian’s built-in search can locate every occurrence without extra plugins.
Example placement:
Some important paragraph about library cataloguing.
<!-- 📌BM -->
The next section begins here.
In Live Preview or Source mode the comment is visible for editing; in Reading view it disappears, leaving only the surrounding content. The emoji provides a visual cue when scanning source text, while the HTML wrapper prevents accidental tag or link interpretation.
Native Obsidian Navigation (Button and Hotkey Equivalent)
Obsidian already supplies the exact forward/reverse behaviour requested. On macOS the current defaults are:
- Find in current file:
⌘F - Find Next:
⌘G - Find Previous:
⌘⇧G
Open the Find bar (⌘F), type📌BM(or the exact marker text), and press Return. Subsequent⌘Gjumps advance to the next marker;⌘⇧Greverses. The Find bar itself acts as the persistent “button”: once the search term is entered, the Next and Previous controls (or the keyboard equivalents) cycle through every pinned location in document order. This matches browser Find and Word’s Find Next/Previous exactly, including wrap-around at the end of the note.
For a true on-screen button without opening the Find bar each time, assign the “Find next” and “Find previous” commands to any unused hotkeys under Settings → Hotkeys. A Stream Deck, Touch Bar, or on-screen keyboard button can then trigger those hotkeys. The gutter or scrollbar does not natively host custom markers, so the Find controls remain the built-in UI element.
Keyboard Maestro Integration
Because you already use Keyboard Maestro, a short macro can expose the same jumps globally or via a dedicated hotkey that works even when focus is elsewhere.
Recommended macro structure:
- Trigger: any hotkey (for example
⌃⌥Bfor “bookmark next”). - Activate Obsidian if it is not frontmost.
- Pause 0.2 s.
- Type the keystroke
⌘G(Find Next). - Optional second macro with trigger
⌃⌥⇧Bthat types⌘⇧G(Find Previous).
A slightly more explicit version first ensures the correct search term is active: - Type
⌘F. - Type the marker string
📌BM. - Type Return.
- Then
⌘Gor⌘⇧Gas needed.
Save the macro in a group that is active only while Obsidian is the front application if you prefer not to override system-wide shortcuts. This replicates the requested “click the button / press the hotkey to advance, Shift to reverse” behaviour and works with the Markdown markers above.
Preferred Plugin Alternative: Line Marks
A recently released community plugin, Line Marks, solves the same problem without inserting any Markdown into the note. Marks live in plugin storage, survive typing, line insertions, deletions, and list reordering, and appear as bookmark icons in the gutter. Clicking a gutter icon toggles a mark; the scrollbar also shows coloured indicators that jump on click. Dedicated commands exist for “Jump to next mark” and “Jump to previous mark”; assign them to hotkeys (or trigger those hotkeys from Keyboard Maestro) to obtain the identical forward/Shift-reverse cycle. When the end of the current file is reached the plugin can continue to the next marked file or loop inside the current file according to settings.
Install from Settings → Community plugins → Browse → search “Line Marks”, then enable it. The gutter icons serve as the on-screen buttons; the assigned hotkeys serve as the Keyboard Maestro targets. Because no text is written into the note, the pins cannot be accidentally deleted by ordinary editing and do not affect export or publishing.
Comparison, Edge Cases and Implications
The pure Markdown approach keeps everything inside the note (portable, no plugin dependency, visible in any Markdown editor) but requires the Find workflow and can be disrupted if the comment is deleted or the surrounding text is heavily rewritten. The Line Marks plugin is more resilient to editing, offers visual gutter and scrollbar feedback, and supports cross-file navigation, yet the marks exist only while the plugin is installed. Both support the exact forward/reverse interaction model requested.
Edge cases include: very large notes where Find becomes slow (the plugin is usually faster); simultaneous editing from multiple devices (plugin marks sync via the vault data folder; Markdown markers sync as ordinary text); and Reading-view-only workflows (the plugin still works; pure Markdown markers remain searchable). If you frequently export notes or share them with collaborators who do not use Obsidian, prefer the Markdown markers so the pins travel with the file. For personal long-form research notes inside a single vault, Line Marks plus Keyboard Maestro hotkeys is the lower-friction solution.
Either method can be combined: keep a few explicit <!-- 📌BM --> anchors for export-critical sections while using Line Marks for day-to-day navigation. Test both on a sample note containing several markers before applying them to production research files.