Michael Naumov7k downloadsAllows to view/edit nested frontmatter properties.
YAML frontmatter nests, but Obsidian's Properties editor does not. Give a note a nested structure and the panel shows you nothing useful — the values are there in the file, and the only way to read or change them is to edit the raw YAML by hand and hope you get the indentation right.
This plugin renders nested objects and arrays as a collapsible tree in the Properties panel, where you can read them, edit them, change their types, and rename or delete a nested key across the whole vault.
---
level1simple: simple1
level1Nested:
level2simple: simple2
level2Nested:
level3simple: simple3
level3Nested:
level4simple: simple4
level4Nested:
level5simple: simple5
---
Inspired by this feature request.
The documentation is a demo vault. Every feature has a note whose own frontmatter demonstrates it — open the note, look at the Properties panel, and you are looking at the feature.
Start reading here — it is plain markdown, so it works on GitHub with nothing installed.
A copy of the vault ships with every release. You can access it via any of the following:
nested-properties-demo-vault.zip from the Releases. It unzips into a single nested-properties-demo-vault-<version> folder.demo-vault/ in this repository.A nested property arrives collapsed by default, and a collapsed row is readable on its own: it shows a one-line preview of its content rather than an opaque { ... }, with any complex value inside it elided so the row stays one line tall.
If you would rather some of it arrived already open, set Settings → Nested Properties → Initial expand level — 1 opens the nested property but not its children, 2 opens the children too, and so on. An array index counts as a level of its own, so in generated.foo.0 the array item sits one level below generated.foo.
A note can override the setting for itself:
---
nestedProperties:
initialExpandLevel: 2
---
The plugin is available in the official Community Plugins repository.
To install the latest beta release of this plugin (regardless if it is available in the official Community Plugins repository or not), follow these steps:
Add plugin button once and wait a few seconds for the plugin to install.By default, debug messages for this plugin are hidden.
To show them, run the following command in the DevTools Console:
window.DEBUG.enable('nested-properties');
For more details, refer to the documentation.
All notable changes to this project will be documented in the CHANGELOG.
Contributions are welcome — see CONTRIBUTING to get set up.
See my other Obsidian resources.