An Obsidian plugin that synchronizes titles between filename, frontmatter, and first heading in your notes.
This plugin helps maintain consistency between the three places where a note's title can appear:
- The filename
- The
title
field in the frontmatter - The first level 1 heading (
#
) in the note
The plugin provides four commands:
- Sync titles using default source: Uses the default source (configurable in settings) to update all other title locations
- Sync titles using filename as source: Uses the filename to update frontmatter title and first heading
- Sync titles using frontmatter as source: Uses the frontmatter title to update filename and first heading
- Sync titles using first heading as source: Uses the first level 1 heading to update filename and frontmatter title
The plugin includes several intelligent features:
- Customizable sync targets: Choose which title locations to sync (all three, or any pair of two)
- Detects already synchronized titles: If all titles that should be synced are already the same, the plugin will notify you and skip unnecessary updates
- Proper spacing: Ensures exactly one empty line between frontmatter and the first heading
- Handles edge cases: Properly creates first headings when none exist and provides helpful error messages
- Handles illegal characters: Automatically sanitizes titles when updating filenames to remove or replace characters that aren't allowed in filenames
Having the same title in multiple places provides redundancy and makes your notes more accessible:
- Consistent filenames make it easier to find notes in your file system
- Frontmatter titles enable better metadata management and can be used with plugins like Dataview
- First-level headings provide visual context when reading the note
You can now choose which of these title locations matter most to your workflow and selectively sync between them.
Visit the documentation site to learn how to make the most of File Title Updater in your Obsidian workflow.
This plugin is a labor of love, developed and maintained during my free time after work and on weekends. A lot of thought, energy, and care goes into making it reliable, user-friendly, and aligned with PTKM principles.
If you find this plugin valuable in your daily workflow:
- If it helps you update titles more effectively
- If it saves you time and mental energy
Please consider supporting my work. Your support would mean the world to me and would help me dedicate more time and energy to:
- Developing new features
- Maintaining code quality
- Providing support and documentation
- Making the plugin even better for everyone
You can support this project in several ways:
- ⭐ Star the project on GitHub
- 💝
- Sponsor my work on GitHub
- 💌 Share your success stories and feedback
- 📢 Spread the word about the plugin
- 🐛 Report issues to help improve the plugin
Thank you for being part of this journey! 🙏