fileheader插件新建文件不自动生成注释,是因为默认关闭自动插入开关;需在preferences → package settings → fileheader → settings的user文件中启用"auto_add_to_new_file": true,且确保未被注释、重启编辑器,并确认当前syntax非plain text。

FileHeader 插件装完没反应,不是插件坏了,是默认关着自动插入开关。 它不靠“新建文件”动作触发,而靠配置项 auto_add_to_new_file 控制;改错位置、没重启、语法识别不对,都会让你以为它失效。
怎么让新建文件自动加头?先开总开关再配语言
打开 Preferences → Package Settings → FileHeader → Settings,确保左侧 User 文件里有这行且**没被注释掉**:
"auto_add_to_new_file": true
常见错误:
- 把配置写在 Default 文件里(会被升级覆盖)
- 只改了 User 设置但没重启 Sublime Text
- 当前文件 syntax 是 Plain Text,插件根本不响应
如果只想对 Python/JS 文件生效,还要在同个 Settings 里加:
"fileheader_custom_template": {
"supported_filetypes": ["python", "javascript"]
}
supported_filetypes 值必须小写、用英文名(不是 .py 或 js),否则无效。
作者名、时间格式怎么自定义?别碰模板,改变量
模板里写的 ${author}、${date} 不是占位符,是真实变量,值来自 Settings:
-
"author": "Zhang San"—— 改这里比硬编码进模板安全,团队协作时也方便统一 -
"date_format": "Y-m-d H:i:s"—— 注意大小写:H是 24 小时制,i是分钟,s是秒;写成h:i:s就会显示 12 小时制 -
${file_name}和${file_path}在未保存文件里返回空字符串,别用它们做条件判断
想加中文星期?原生不支持 ${weekday_zh},得换 DocBlockr 或自己写插件扩展。
Ctrl+Alt+T 快捷键没反应?检查作用域和冲突
这个快捷键只在源码视图下生效,比如右下角显示 Python、JavaScript 才管用;在 Markdown、Console 或 Plain Text 里按,完全静默。
- 进
Preferences → Key Bindings搜file_header,看有没有重复或"disabled": true的条目 - 想换快捷键?直接在 User Key Bindings 加一行:
{"keys": ["ctrl+shift+h"], "command": "add_file_header"} - 性能上几乎无负担,但在未分块的大日志文件(>50MB)里频繁触发,会卡——这是 Sublime 自身限制,不是插件问题
团队项目怎么保证所有人格式一致?别信个人 Settings
单靠每个人改自己的 User Settings,协作时根本保不住格式。Sublime 支持 per-project 配置,优先级高于全局设置。
菜单栏 Project → Edit Project,在 "settings" 下加完整块:
"file_header": {
"author": "",
"description_format": "@desc: ${1:description}",
"license": "MIT"
}
注意:"author": "" 表示强制留空(避免填错名字),但如果设为 null 或删掉这一项,插件会 fallback 到 User Settings,失去约束力。
真正容易被忽略的是:文件头是否插入、插在哪一行、用什么符号包裹,全由当前 syntax scope 决定——不是文件后缀,也不是你心里认定的语言。哪怕你写的是 Python,右下角显示 Plain Text,FileHeader 就不会动一个字。











