Sublime Text大小写转换需先按Ctrl+K(或Cmd+K)松手再按U/L/C/S,非三键连按;正则替换中\U需配\E终止,否则全行大写;自定义快捷键须写入User键绑定文件。

Ctrl+K不是组合键,是命令前缀,必须松手再按
Sublime Text 的大小写转换不靠 Ctrl+K+U 这种三键连按触发。真正流程是:Ctrl+K(Windows/Linux)或 Cmd+K(macOS)→ 松开 → 单独按 U(大写)、L(小写)、C(title case)或 S(swap case)。连按不松手,系统大概率识别为 Ctrl+K, Ctrl+K(删到行尾)或被中文输入法吞掉 U/L 键。
- 确认输入法已切至英文状态,尤其 Windows 上搜狗、微软拼音常拦截
- 检查文件右下角是否显示
RO(只读),只读状态下操作静默失败 - 光标若落在字符串或注释内,部分语法高亮模式(如 Python、HTML)会跳过该区域
- 插件如 Vintage、Emacs Pro Essentials 或 Case Conversion 可能劫持
Ctrl+K前缀,导致原生命令失效
没选中时也生效?只作用于光标所在单词
upper_case 和 lower_case 命令永远只处理当前选区;没选中任何文本时,并不会扫描整行或识别命名风格,而是严格定位到光标所在的**单个单词**(以非字母/数字边界切分)——比如光标停在 userName 中任意位置,结果是 USERNAME;停在 user_name 上,结果是 USER_NAME,不会拆成下划线转驼峰。
- 多光标(
Ctrl+D或Ctrl+鼠标左键)下,每个光标各自处理其覆盖的单词或选区 - 多行选中时,每行独立转换,不会跨行合并逻辑或对齐格式
-
-(连字符)会被视为单词边界,first-name会被当两个词处理;但_和$属于单词一部分
正则替换里 \U 必须配 \E,漏写就全乱了
在 Ctrl+H(替换面板)中启用正则(点 .* 图标)后,\U 不是“让下一个字符大写”,而是开启“全大写模式”,持续生效直到遇到 \E 或匹配结束。漏掉 \E 是最隐蔽也最常踩的坑。
- 正确写法:
\U$0\E(整个匹配项转大写)、\u$1\E(捕获组 1 首字母大写) - 错误写法:
\U$1(缺\E)→ 从 $1 开始直到行尾所有文本都会被强制转大写 -
\u(小写 u)表示首字符大写,\U(大写 U)表示全大写;\l和\L同理,注意区分大小写
想自定义快捷键?必须写进 User 键绑定文件
原生不支持单键触发,但可以自定义。关键点:只能编辑 Preferences → Key Bindings 右侧的「User」面板(左侧 Default 是只读的,升级必丢),命令名必须拼写准确,例如 upper_case,拼错会报 command not found。
- 粘贴以下内容进 User 面板即可生效(无需重启):
[{"keys": ["ctrl+shift+u"],"command":"upper_case"},{"keys": ["ctrl+shift+l"],"command":"lower_case"}]
Ctrl+K, Ctrl+L 失效,可手动补绑定:{"keys": ["ctrl+k","ctrl+l"],"command":"lower_case"}
\E 的终止语义——前者决定你按得对不对,后者决定你改得准不准。


















