Custom Selectors
pendingby hodie
Allows defining 'selector' properties (e.g., selector.status) which display as interactive dropdown menus with pre-defined options in both the standard Properties View and inside Bases views.
Obsidian Custom Selectors Plugin
This is a plugin for Obsidian that allows you to define "selector" properties (e.g., selector.status) which display as interactive dropdown menus with pre-defined options.
The plugin dynamically injects these dropdowns into both the standard Properties View (at the top of your markdown notes) and inside the tables generated by the core Obsidian Bases plugin.
Features
- Global configuration: Define your properties and their allowed options centrally in the plugin settings.
- Properties view support: Replaces standard text inputs for matched properties with a native dropdown menu.
- Obsidian Bases support: Seamlessly injects dropdowns into table cells within Bases views, allowing you to quickly change property values without typing.
- Cross-view sync: Changing a selector in the Properties view immediately updates any open Bases table, and vice versa.
- Default values: Optionally set the first option as the default when creating new files from a Bases view via the +New button.
How to use
- Enable the plugin in your Obsidian vault.
- Go to Settings > Custom Selectors.
- Click Add selector.
- In the first field, enter the name of the property you want to turn into a dropdown (e.g.,
selector.statusorpriority). - In the second field, enter a comma-separated list of the options you want to appear in the dropdown (e.g.,
To-Do, Doing, Done). - Toggle the switch on if you want new files created from a Bases view to automatically get the first option as a default value.
- Exit settings.
Whenever you add a property with that exact name to a note's frontmatter, it will now render as a dropdown in both the Properties view and any linked Base tables.
Manual installation
Since this plugin is not yet in the community directory, you can install it manually:
- Download the latest release from the Releases page on GitHub.
- Extract the archive into your vault's plugins folder:
<vault>/.obsidian/plugins/custom-selectors/.- Ensure the folder contains
main.js,manifest.json, andstyles.css.
- Ensure the folder contains
- Reload Obsidian.
- Go to Settings > Community plugins and turn off "Safe mode".
- Enable the "Custom Selectors" plugin.
Local development
If you want to build the plugin from source:
- Clone this repository into your plugins directory.
- Run
npm installto install dependencies. - Run
npm run devto start compilation in watch mode, ornpm run buildfor a production build.
Compatibility
This plugin requires Obsidian 1.8.0 or later. It manipulates the DOM of the Properties and Bases views, so it may require updates if the Obsidian core UI changes significantly in future versions.
License
This project is provided under the MIT License.
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.