docblockr 插件需安装社区维护分支 sublimetext-docblockr,语法模式须为支持语言且光标位于函数定义行或其正上方空行;默认无类型占位符,需手动配置 jsdoc_template;列模式是快捷键失效时的兜底方案。

DocBlockr 插件装不对,/** + Enter 就是废的
装错版本是失效第一原因:搜 DocBlockr 容易装到已停更的旧版(作者不是 nikhilm)。必须用 Package Control 装社区维护分支——按 Ctrl+Shift+P(Mac 为 Cmd+Shift+P),输 Package Control: Install Package,搜到 GitHub 仓库名 sublimetext-docblockr 才对。装完建议重启 Sublime,否则部分版本不加载。
光标位置和语法模式,缺一不可
/** + Enter 不触发,90% 是这两项没配准:
- 右下角语法必须是
JavaScript、Python、PHP等支持语言,不能是Plain Text(点它手动切) - 光标必须在函数定义行(如
function foo()或def bar():)任意位置,或其正上方空行;在函数体里、变量行、已有注释行都不行 -
Enter是触发键,Tab只用于生成后跳字段,别搞混 - 检查是否有插件(如
Emmet)劫持了Enter行为,可临时禁用验证
生成的注释没类型占位符?得手动配模板
默认生成的 @param 后面是空的,不会自动填 {number} 或 {string}。要加类型提示,必须改用户配置:
- 进
Preferences → Package Settings → DocBlockr → Settings – User - 加一行:
"jsdoc_template": "/**\n * $1\n * @param {$2} $3\n * @return {$4}\n */" - 保存后,
/**+Enter就会带占位符,光标停在描述处,Tab可顺次跳转
快捷键冲突或语法不支持时,列模式才是真兜底
当 Ctrl+/ 失效、Ctrl+Shift+/ 不包裹、甚至 DocBlockr 完全不响应,别折腾配置——直接上列模式:
- Windows/Linux:按住
Alt,鼠标从第一行目标列拖到最后一行对应列 - macOS:按住
Option,同样操作 - 松手后输入
//或#,所有行同一列位置同步出现 - 这招不依赖语法识别、不看插件状态、不care缩进是否对齐,专治各种“注释失灵”
真正容易被忽略的是作用域(scope)匹配机制:Sublime 不看文件后缀,而是看光标所在位置的实际语法 scope。比如 .vue 文件里 <script></script> 区域能触发 DocBlockr,但 <template></template> 区域可能完全没反应——这不是插件问题,是 scope 没覆盖到。











