Header Filename

approved

by rbrauner

Automatically renames files based on the first H1 heading, with kebab-case and Polish diacritics support. - This plugin has not been manually reviewed by Obsidian staff.

52 downloadsUpdated 17d agoMIT

Header Filename

Automatically renames notes in Obsidian based on the first # Heading in the document.

Features

  • Inserts a default heading (# untitled) when creating a new empty note
  • Renames the file to match the first H1 heading on every edit
  • Converts names to kebab-case (My Note TitleMy-Note-Title)
  • Translates diacritics to ASCII equivalents (ćc, żz, etc.)
  • Collapses duplicate separators (ABC - CDABC-CD)
  • Configurable debounce delay to avoid excessive file renames
  • Batch rename all files from command palette

Settings

SettingDefaultDescription
EnabledtrueToggle the plugin on/off
Default headinguntitledHeading text inserted into new notes
Debounce delay500 msTime to wait after the last edit before renaming

Install

  1. Clone this repo into your vault's .obsidian/plugins/header-filename/ directory
  2. Run npm install && npm run build
  3. Enable the plugin in Obsidian → Settings → Community plugins

Releasing

  1. Bump version and create a release:
just create-version 1.0.0

This will:

  • Update version in manifest.json and package.json
  • Commit the changes
  • Create a git tag
  • Push to GitHub
  1. GitHub Actions will automatically build and create a release with the plugin files attached.

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.