Flexible, context-aware toolbars for your notes in Obsidian.
Flexible, context-aware toolbars for your notes in Obsidian.
The Note Toolbar plugin for Obsidian lets you create context-aware toolbars for your notes, which can include commands, file and folder links, websites/URIs, menus, and scripts (Dataview, Templater, and JavaScript).
What's new? See the Release Notes
What's ahead? See the Roadmap
Jump to:
Toolbars can stick to the top on scroll:
Have a toolbar appear when text is selected:
More options on mobile:
In order for Note Toolbar to provide a built-in library of helpful tools, and scripting extensibility, the plugin needs access to read, write, and list files within a vault. The majority of these features are completely optional.
Expand below to see what's accessed and why. Let me know (via GitHub ↗ or Google form ↗) if you have any questions or concerns.
See disclosures...
Uses Obsidian APIs newer than the declared minAppVersion
The plugin uses some internal Obsidian APIs. This warning is indicating that some of those APIs will be public in a newer release, and should go away then.
Vault Read: Reads individual vault files via the Obsidian API
Used by script items to read in a user script to execute it (if configured to do so).
Used in Note Toolbar's modal API to display a file.
Vault Enumeration: Enumerates all files in the vault. Gives the plugin access to every file path in the vault.
Used by the Settings UI to show a list of files or folders in the vault (e.g., to select a script file, or to select a folder for mapping).
Other notes
URLs links from the plugin are used for: the user guide, donation page, and for a page to facilitate sharing of toolbars or toolbar items with other users (source code). See the documentation in src/utils/Urls.ts, which contains all external URLs referenced by the plugin.
Note that all Gallery item scripts can be inspected (and modified) after adding them to any toolbar.
_ Runner up in the Obsidian Gems of the Year 2024: New plugins category._
Note Toolbar's UI, and Style Settings options, are also available in:
| Language name | Native name | Contributors |
|---|---|---|
| Chinese (Simplified) | 简体中文 | @Moyf |
| German | Deutsch | @hartimd |
| Japanese | 日本語 | @dai |
| Ukrainian | Український | @Laktiv |
Click here or:
Installing beta versions via BRAT
BRAT lets you beta-test plugins, to provide feedback.
As beta versions become available, I welcome your feedback and any issues you uncover!
Disclaimer: Betas are pre-release versions of the plugin. It is strongly encouraged to make a backup of your Note Toolbar's data.json file before proceeding, and/or test within a separate vault (depending on the nature of the beta).
Install the BRAT plugin:
Open Settings > Community Plugins
Disable safe mode, if enabled
Browse, and search for "BRAT"
Install the latest version of BRAT
Open BRAT settings (Settings -> BRAT)
Scroll to the Beta plugin list section
Add beta plugin
Specify this repository: chrisgurney/obsidian-note-toolbar
Enable the Note Toolbar plugin (Settings -> Community plugins)
In Note Toolbar's settings, confirm the version number at the top is the latest beta version. You may need to restart Obsidian, or re-open your vault.
Once enabled, open Note Toolbar's settings:
notetoolbar property. Set it to the name of your toolbar.If you want your toolbar to show without using a property, try mapping a folder (like wherever your Daily Notes are stored) to your new toolbar.
See the User Guide for detailed instructions, and tips, and the discussions for examples.
In the Gallery, explore 100+ items that can be added to toolbars in just a couple clicks/taps.
See the User Guide for detailed instructions, tips, and lots more.
Screenshots of Note Toolbar's configuration:
Note Toolbar is licensed under GPL 3.0. See the LICENSE.
Shout out to other projects and people who helped me with questions I had while developing this plugin:
Check out the discussions to ask a question or request a feature.
Help add or review translations.
**See Troubleshooting in the [User Gu
No open issues yet, or sync has not completed.