Sublime中Ctrl+Shift+/(或Cmd+Option+/)是块注释快捷键,但是否生效取决于语法是否定义blockComment;Python、CSS等常不支持,需切换语法或配置;选区须连续无空行、不跨折叠、不截断标签;可靠方案是绑定toggle_comment命令并设block:true。

Sublime 中没有“一键注释代码块”的通用功能,Ctrl+Shift+/(Windows/Linux)或 Cmd+Option+/(macOS)才是触发块注释的正确快捷键,但它是否真能包裹,完全取决于当前语法是否定义了 blockComment,不是所有语言都支持。
为什么 Ctrl+Shift+/ 按了没反应?
它不是失效,而是被语法规则拦下了:
- 右下角显示
Plain Text或Unsupported syntax→ 必须手动点击切换为JavaScript、CSS、HTML等真实语法 -
Python文件默认不支持块注释 →Ctrl+Shift+/在.py里必然静默,不会生成""" """ - CSS 文件常无响应 → 多数 CSS 语法包没配置
"block_comment": ["/*", "*/"],得装插件或手动补 - Vue/JSX 的
<template></template>区域不生效 → HTML 语法作用域未覆盖该 scope,需改高亮配置或用 snippet 替代
Ctrl+Shift+/ 的选区要求比你想象中严格
它不看缩进、不识别函数边界,只认“连续逻辑行”:
- 选中内容不能含空行 —— 含空行会退化为逐行加
//,甚至直接不响应 - 不能跨折叠区域 —— 光标在已折叠的
if块内部时,快捷键不触发 - 不能只选半行标签或字符串内片段 —— 比如只选
console.log(这几个字符,可能生成不闭合的/* - 若选区内已有
//行,Sublime 可能拒绝操作,或只对未注释行加//
想让块注释真正可靠,别靠快捷键猜语法
快捷键只是入口,真正起作用的是语法包里的 comments 配置。但改 Comments.tmPreferences 容易出错且升级后丢失,更稳的做法是:
- 用 Key Bindings 强制走块模式:
[{"keys": ["ctrl+alt+/"], "command": "toggle_comment", "args": {"block": true}}]—— 绑定新快捷键,绕过语法默认倾向 - 对冷门文件类型(如
.env、.conf)加 context 限定:"context": [{"key":"selector","operator":"equal","operand":"source.shell"}],避免误影响其他语言 - 临时兜底用列模式:按住
Alt(Win/Linux)或Option(macOS),鼠标从第一行开头拖到最后一行目标列位置,再输入//或/*
最常被忽略的一点:块注释不是“安全开关”,/* /* inner */ outer */ 这类嵌套在 JavaScript 中合法但 Sublime 不校验,手动写错会导致编译失败;而 Python 里强行用 """ """ 包裹多行,本质是字符串而非注释,可能意外参与运行逻辑。

















