fileheader插件需手动启用auto_add_to_new_file并重启sublime text才生效,且必须在settings-user中配置supported_filetypes、default变量及对应.tmpl模板,变量大小写和语法须严格匹配。

装完 FileHeader 插件后新建文件没生成头部,不是插件坏了,是它根本没被启用——默认 auto_add_to_new_file 是 false,必须手动设为 true 并重启编辑器才生效。
怎么让新建文件自动加头部?
FileHeader 不会“自动运行”,只响应一个开关:是否允许在新建文件时插入。这个开关就是 auto_add_to_new_file,且必须写在正确的配置位置。
- 打开
Preferences → Package Settings → FileHeader → Settings - User - 确保文件里有且仅有一行未被注释的配置:
"auto_add_to_new_file": true - 删掉或注释掉
Settings - Default里的同名项(它会被覆盖,还容易误判) - 改完必须彻底退出 Sublime Text(macOS 上要右键 Dock 图标 → “退出”,不能只关窗口)再重开
为什么 .vue / .ts / .html 新建后没反应?
FileHeader 默认只认 py、js、java 等少数后缀,对前端常用类型是“盲区”。它不看文件扩展名,而是靠 supported_filetypes 列表 + 对应的 .tmpl 模板文件双重匹配。
- 在
Settings - User中添加:"supported_filetypes": ["vue", "ts", "html"](注意:小写,无点号,无空格) - 进
Preferences → Browse Packages… → FileHeader → template → header - 检查是否存在
vue.tmpl、typescript.tmpl、html.tmpl;没有就复制javascript.tmpl改名,或新建空文件 -
html.tmpl必须用<!-- -->包裹变量,vue.tmpl的<script></script>块要用//或/* */,混用会静默失效
作者名、邮箱这些变量为啥不显示?
FileHeader 不读系统用户名,所有自定义变量都得显式声明,且大小写、拼写、括号格式必须完全一致,否则留空也不报错。
- 在
Settings - User的Default对象里写全:"author"、"email"、"desc"等字段(首字母小写) - 模板里对应位置必须是
{{author}}、{{email}}(双大括号,大小写严格匹配) - 错写成
{{Author}}、${author}、{author}都不会替换 -
date_format可选,比如"date_format": "Y-m-d H:i:s",影响{{create_time}}输出
Ctrl+Alt+T 快捷键没反应?
这个快捷键只在语法识别正确的源码视图下有效,不是全局命令,也不是“新建即触发”。
- 新建文件后,先保存为带后缀的文件(如
index.vue),再确认右下角状态栏显示的是Vue或TypeScript,不是Plain text - 如果仍无效,进
Preferences → Key Bindings搜索file_header,看是否有重复绑定或"disabled": true - 想换快捷键?直接在
Key Bindings - User里加:{"keys": ["ctrl+shift+h"], "command": "add_file_header"}
最容易忽略的一点:FileHeader 的「保存时更新 last_modified_by / time」只对已有合法头部的文件生效,它不会补全缺失的头部——你得先确保每个文件都通过插件新建并保存过一次,后续保存才会触发更新。











