korofileheader保存时自动生成头部注释需同时满足:fileheader.configobj.autoadd设为true,且fileheader.custommade中必须包含大小写正确的"date": "do not edit"字段,缺一不可。

KoroFileHeader 的自动头部注释不是“装完就生效”,必须手动配置 settings.json 中的 fileheader.customMade 和 fileheader.configObj.autoAdd,否则保存文件时不会自动生成。
为什么新建文件没出现头部注释?
常见现象:插件已安装、快捷键 Ctrl+Alt+I(Windows)能手动触发,但保存新文件时注释依然不出现。
根本原因在于插件默认关闭「保存时自动添加」功能,且未定义任何头部字段。即使你只填了 "Author": "xxx",只要 "Date": "Do not edit" 缺失或拼写错误(比如写成 "date"),整个自动逻辑就会静默失败。
-
fileheader.configObj.autoAdd必须设为true(默认是false) -
fileheader.customMade至少要包含"Date": "Do not edit"—— 这是插件识别“可自动生成”的硬性标记 - 字段名大小写敏感:
"Author"可以,"author"会被忽略 - 如果项目中已有头部注释(哪怕只有一行
//),插件默认不再覆盖,需设"autoAlready": true才强制更新
如何正确配置 settings.json 实现保存即生成?
打开 VSCode 设置 → 点击右上角「打开设置(JSON)」图标 → 在 JSON 文件中粘贴以下最小可用配置:
{
"fileheader.customMade": {
"Author": "your name",
"Date": "Do not edit",
"Description": ""
},
"fileheader.configObj": {
"autoAdd": true,
"autoAlready": false,
"prohibitAutoAdd": ["json", "md", "txt"]
}
}
说明:
-
"autoAdd": true是开关,没有它一切免谈 -
"prohibitAutoAdd"推荐显式列出不想加注释的后缀,避免在.json配置文件里误塞注释导致语法错误 - 不要加
"Version"字段——文档明确警告:插件会因该字段校验失败而停用自动功能 - 日期格式由插件内部控制,无需指定
yyyy-MM-dd HH:mm:ss等格式,填"Do not edit"即可
保存后时间/编辑人没更新?检查 LastEditTime 和 LastEditors
自动更新最后编辑时间与人名,依赖两个独立字段:LastEditTime 和 LastEditors。它们和 Date 互不影响,但必须同时存在且值为 "Do not edit" 才生效。
- 只配了
Date,没配LastEditTime→ 创建时间更新,但修改时间永远停留在首次保存时刻 -
LastEditors值写成"LastEditors": "me"→ 永远显示 "me",不会随当前系统用户或 Git 配置变化 - 想让
LastEditors自动取 Git 用户名?目前插件不支持直接读取git config user.name,只能靠人工维护或配合脚本替换 - 注意:这些字段必须放在
fileheader.customMade下,不能错放到fileheader.cursorMode里
中文路径/特殊字符导致注释乱码或生成失败
当文件路径含中文、空格或符号(如 项目-2026/模块A/工具.cpp),部分旧版 KoroFileHeader 会解析 FilePath 字段出错,表现为注释末尾缺失 @FilePath 行,或整块注释无法插入。
解决方式很直接:
- 升级插件到最新版(v6.9.0+,2026 年 7 月后发布)已修复多数路径解析问题
- 若仍异常,临时在
fileheader.customMade中删掉"FilePath": ""字段(插件默认不生成该行,除非你显式配置) - 避免在
Description中使用未转义的*或/,可能干扰注释块闭合逻辑
真正容易被忽略的是:插件对「文件是否已有头部注释」的判断极其严格——哪怕多一个空行、少一个星号,都可能导致后续保存时不触发更新。建议首次配置后,用一个空白 .cpp 文件测试完整流程:新建 → 保存 → 修改 → 再保存 → 对比两次注释中 LastEditTime 是否变化。











