Filename Checker

approved

by yueyinfeng

Finds duplicate Markdown filenames in configured folders after ignoring filename prefixes. - This plugin has not been manually reviewed by Obsidian staff.

17 downloadsUpdated 10d agoMIT

Filename Checker

Filename Checker is an Obsidian plugin that finds duplicate Markdown filenames in configured folders after ignoring filename prefixes.

It is useful when notes use IDs, serial numbers, or other prefixes but should still be checked by their readable names.

Features

  • Check the folder of the active note.
  • Pick a configured folder and check it manually.
  • Compare only direct Markdown files in the selected folder.
  • Ignore filename prefixes with a simple wildcard pattern.
  • Save the result as a Markdown report and open it automatically.

Installation

Community Plugins

After the plugin is accepted into the Obsidian community plugin directory:

  1. Open Obsidian Settings.
  2. Go to Community plugins.
  3. Search for Filename Checker.
  4. Install and enable the plugin.

Manual Installation

  1. Download main.js and manifest.json from a GitHub release.
  2. Create a folder named filename-checker inside your vault's .obsidian/plugins/ folder.
  3. Put main.js and manifest.json in that folder.
  4. Reload Obsidian and enable Filename Checker in Community plugins.

Usage

Open the plugin settings and add one or more target folders. Each folder needs:

  • Target folder: the vault-relative folder path.
  • Wildcard: the filename pattern to remove before comparing names.

The plugin adds two commands:

  • Check duplicate filenames in the current file folder.
  • Pick a configured folder and check duplicate filenames.

After each check, the plugin creates a report named like:

文件名重复检查_2026-07-25T12-30-00.md

If the configured result folder does not exist, the report is saved in the vault root.

Wildcard Examples

The wildcard pattern removes the matched part from each filename, then compares the remaining filename.

For example, with wildcard *_:

GS001_Example.md -> Example.md
GS002_Example.md -> Example.md

These two files are reported as duplicates.

Other examples:

*_      removes everything through the matched underscore
GS*     removes the part matched by GS*
GS*_    removes the part matched by GS*_

Filename Checker only checks direct Markdown files in the configured folder. It does not scan subfolders in the first release.

Privacy

Filename Checker does not connect to the network, does not collect telemetry, and does not read files outside your Obsidian vault. It only reads Markdown filenames in the folders you configure and writes Markdown report files inside your vault.

Development

Install dependencies:

npm install

Build the plugin:

npm run build

For development watch mode:

npm run dev

Release assets for Obsidian are:

  • main.js
  • manifest.json

The GitHub release tag must match the version field in manifest.json exactly, for example 1.0.0.

License

MIT

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.