alexkucera326 downloadsAdd bookmarks to your notes for quick navigation. Click the bookmark icon in the note header to set a bookmark, click again to jump back to it.
Add bookmarks to your Obsidian notes for quick navigation. Click the bookmark icon in the note header to set a bookmark, click again to jump back to it.
Long documents can be challenging to navigate, especially when you need to frequently jump between different sections. Traditional bookmarks in browsers don't help with individual document navigation, and Obsidian's built-in linking requires creating permanent markers.
This plugin solves the problem by providing temporary, session-based bookmarks that:
Perfect for researchers, writers, and anyone working with lengthy documents who needs quick navigation without permanent document modifications.
{vault}/.obsidian/plugins/bookmark/https://github.com/AlexKucera/bookmarkThe bookmark icon changes state to show whether a bookmark is set:
| Command | Description | Default Hotkey |
|---|---|---|
Toggle bookmark |
Set bookmark at current position or jump to existing bookmark | Not set |
Clean up multiple bookmarks |
Remove all bookmark markers from the current note | Not set |
You can assign custom hotkeys to these commands in Obsidian's Settings → Hotkeys.
The plugin uses invisible HTML comment markers (<!-- bookmark-marker -->) to track bookmark positions. These markers:
| Issue | Solution |
|---|---|
| Bookmark not appearing | Try reloading the note or restarting Obsidian |
| Multiple bookmark warning | Use the "Clean up multiple bookmarks" command |
| Bookmark in wrong location | The plugin uses scroll position detection - try setting bookmark while stationary |
| Bookmark not jumping correctly | Ensure you're not in a heavily formatted section; try another location |
This plugin is built with TypeScript and uses esbuild for bundling.
# Clone the repository
git clone https://github.com/AlexKucera/bookmark.git
cd bookmark
# Install dependencies
npm install
| Command | Description |
|---|---|
npm run dev |
Start development mode with watch compilation |
npm run build |
Build for production with type checking |
npm run version |
Bump version and update manifest files |
eslint main.ts |
Run ESLint on main TypeScript file |
tsc -noEmit -skipLibCheck |
Run TypeScript type checking |
The plugin consists of several key components:
main.ts) - Main plugin orchestratorbookmarkManager.ts) - Core bookmark logicviewActionManager.ts) - Header button managementgutterDecoration.ts) - Visual gutter indicatorsContributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
If you find this plugin helpful, consider supporting its development:
Alexander Kucera