What's Changed
✨ Features
- Added "Strict heading match" option under link simplification settings. When disabled (default), filenames containing the heading as a substring will also be simplified (e.g. "260422_note" → "note"). When enabled, only exact matches are simplified.
🐛 Bug Fixes
- Heading links now correctly handle special characters (
# | ^ : %% [[ ]]) — matching Obsidian's autocomplete behavior - Fixed false-positive note-link simplification when filename contains heading as substring (e.g. "JavaScript" + "Java")
♻️ Refactor
- Extracted link-building logic into pure functions for better testability
- Added vitest with 86 tests
- Fix: encode spaces as %20 in Markdown link URLs by @lightmotive in #32
- Test: add vitest harness with pure function extraction by @lightmotive in #33
改动内容
展开中文说明
✨ 新功能
- 新增"严格匹配"选项(在"文件名匹配标题时简化链接"设置下方)。关闭时(默认),文件名包含标题子串也会简化(如 "260422_note" 匹配标题 "note")。开启时,仅完全匹配才会简化。
🐛 Bug 修复
- 标题链接现在正确处理特殊字符(
# | ^ : %% [[ ]])——与 Obsidian 自动补全行为一致 - 修复了文件名包含标题子串时的误判(如文件名 "JavaScript" + 标题 "Java" 不再被错误简化)
♻️ 重构
- 将链接构建逻辑提取为纯函数,提升可测试性
- 新增 vitest 测试框架,86 个测试用例
New Contributors
- @lightmotive made their first contribution in #32
Full Changelog: 1.5.2...1.5.3