#obsidian #templater #commander #卡片盒笔记法 #编码
使用obsidian 插件 templater,实现了脚本更新yaml的标题属性, 配合 Commander ,将这个能力绑定到保存宏组合中,尝试了豆包、元宝,最终使用[[kimi]]实验成功
/* 构造日期前缀 */
const today = new Date();
const y = today.getFullYear();
const m = String(today.getMonth() + 1).padStart(2, '0');
const d = String(today.getDate()).padStart(2, '0');
const datePrefix = `8.1.${y}${m}${d}`;
/* 读取现有 title */
const cache = app.metadataCache.getFileCache(file);
const currentTitle = cache?.frontmatter?.title;
/* 决定新标题 */
let newTitle;
if (!currentTitle) {
// 无值:用文件名
newTitle = `${datePrefix} ${file.basename}`;
} else if (!/^\d/.test(String(currentTitle).trim())) {
// 有值但非数字开头:日期 + 原 title
newTitle = `${datePrefix} ${String(currentTitle).trim()}`;
} else {
// 已满足要求,直接返回
new Notice("title 已符合规则,未变动");
return;
}
一句话规则
- 有值且不以数字开头 → 8.1.YYYYMMDD 原title
- 无值 → 8.1.YYYYMMDD 文件名
使用方法:
- js保存为 setTitleFromFilename.js(放在 Templater 的 Scripts 目录):
- 新建摸板笔记,在任意模板或空模板里放一行:
<%*
await tp.user.setTitleFromFilename(tp);
return ""; // 返回空串
%>
最终绑定到commander
推荐文章
- 5.2.20250715 Templater (0.950)
- 5.3.202504 obsidian插件-Front-Matter-Title (0.620)
- 5.3.202504obsidian-插件-wordpress:发布obsidian笔记到WordPress (0.569)
- 5app-知识管理工具-obsidian (0.569)
- 5.1.1应用-知识管理工具-五彩插件 (0.569)
- 1人物-中国武侠四大宗师-金庸 (RANDOM - 0.500)