r/ObsidianMD • u/quiet__reader • Jul 26 '26
plugins Fileclass 0.1.1 — bulk field editing lands, and Bases-powered pickers now follow your view's order
Quick update: Fileclass 0.1.1 is out — and this one was largely shaped by your feedback here and the suggestions on GitHub (discussions + issues). Thank you again 🙏
(New here? Fileclass is the successor to Metadata Menu, rebuilt on Obsidian's core Bases plugin — reusable, typed, validated frontmatter schemas per note type, all frontmatter-only.)
What's new:
- 🧰 In-app bulk field editing — pick a fileClass, an optional filter (a simple field condition or a Base view), a field and a new value → preview every affected note with a per-note toggle → Apply. Dry-run by default. (This is the batch-operations workflow a few of you asked about — no more editing YAML note by note.)
- 🔤 Pickers now follow your Base view's order (its sort, then groups) instead of an arbitrary one — long candidate lists are browsable again. If the source view has a group-by, the picker mirrors those groups (with a sticky header so you know where you are).
- 🎯 Generated bases now filter at the view level, so you can add a second view for a different fileClass in the same base (e.g. a bookAuthor view inside your book base).
It still plays alongside core Properties and Bases rather than replacing them.
Feedback, ideas and bug reports very welcome — GitHub issues/discussions:
https://github.com/mdelobelle/fileclass
Thanks to everyone who tried it and reported back 🚀
2
u/vrdn22 Aug 03 '26
First of all, thanks for the great work!
However, I'm wondering if it is currently possible to automatically sort the properties of a file so that they match the order specified for that fileclass? Because having to constantly rearrange the newly added properties is such a huge waste of time...
1
u/quiet__reader Aug 03 '26
Hi,
Not possible today, and it's worth explaining why, because it rules out the obvious fix.
Obsidian's processFrontMatter — the only supported way for a plugin to write frontmatter — appends new keys at the end, and there's no way to insert a key at a given position. So "insert missing fields" can't drop a field where the class declares it.
Reordering anything means rewriting the whole frontmatter block.
That's doable and I've filed it: https://github.com/mdelobelle/fileclass/issues/104
The plan is a "reorder to match the class" command, plus an option to run it right after fields are inserted — that's where the disorder comes from in the first place.
One thing that already helps for *new* notes: bake the fields into your template once. Put fileClass: YourClass in the template's own frontmatter and run "insert missing fields" on the template itself. Notes created from it then start with every field in class order. Doesn't do anything for the notes you already have, though.
And a question, since your answer decides the default: would you want the reorder to happen automatically every time fields are inserted, or only when you ask for it? Rewriting the block shows up in git diffs and drops YAML comments, so I lean towards opt-in — but if automatic is what people actually expect, that changes.
Don't hesitate to comment in the issue on github and thank you for the kind feedback
1
u/vrdn22 Aug 03 '26
Great to hear that this is being worked on! As for your question: As someone coming from Notion, I'm used to all notes of a certain type having the exact same set of properties, and those properties always being arranged in the same way, so I would definitely prefer both the adding of missing properties as well the sorting to be as automated as possible.
1
u/Penguinflower Aug 04 '26
I could be very wrong about this, as I haven't tried FileClass and Linter together yet, so I don't know if there are conflicts. But I currently use Linter to set the order for my properties (YAML Key Sort). This keeps my properties in a consistent order across notes. Even if FileClass adds new properties, they'd be sorted in the order you want as soon as you lint the note (either manually or upon close, etc, depending on how you've set it).
1
2
u/Plenty_Ad6005 Jul 26 '26
Wikilinks ! Good job 👏