Sublime大小写转换需两段式触发:Ctrl+K松开后再按动作键,正则中\u\l\U\E仅作用于紧邻字符或指定范围,title_case对连字符/撇号处理保守,自定义快捷键须加至用户配置区。

Ctrl+K 是命令前缀键,不是三键连按
Sublime 的大小写转换快捷键本质是「命令前缀 + 动作键」两段式触发,Ctrl+K 本身不执行任何操作,必须松开后再按后续键。很多人卡在“没反应”,其实是误以为要 Ctrl+K+U 三键同时按下——系统根本收不到这个组合,因为 Ctrl+K 已被截断为前缀模式。
-
Ctrl+K→ 松开 →Ctrl+U:转大写(upper_case) -
Ctrl+K→ 松开 →Ctrl+L:转小写(lower_case) -
Ctrl+K→ 松开 →Ctrl+C:标题格式(title_case,空格分隔,首字母大写) -
Ctrl+K→ 松开 →Ctrl+S:大小写互换(swap_case)
macOS 用户把 Ctrl 换成 Cmd 即可,逻辑完全一致。
正则替换中控制大小写:\u、\l、\U...\E 不是变量名
在 Find → Replace 面板开启正则(Alt+R)后,大小写控制符只对紧邻的**下一个字符**或**指定范围**生效,不是作用于整个捕获组或匹配项。
-
\u$1:仅把$1的第一个字符变大写(如(hello)→\u$1得Hello) -
\l$2:仅把$2的第一个字符变小写 -
\U$1\E:把整个$1内容转为大写(\U开启全大写模式,\E显式终止) - 错误写法:
\u$0想让整行首字母大写 → 实际只改第一个字母,因$0是整行匹配,\u仍只作用于其首字符
Title Case 处理连字符和撇号很保守
内置 title_case 命令(Ctrl+K→Ctrl+C)默认只按空格切分单词,对 don't、multi-word、iPhone 这类结构不敏感:
-
hello world sublimetext→Hello World Sublimetext(正确) -
don't panic→Don't Panic(✓,撇号后仍算单词) -
multi-word→Multi-word(✗,连字符后未大写) -
iPhone app→Iphone App(✗,不会保留 P 大写)
若需智能处理,得装插件如 TitleCase 或 Case Conversion,再绑定自定义快捷键(如 Ctrl+Alt+T)。
自定义快捷键必须写进用户配置区
所有修改都应加到 Preferences → Key Bindings 右侧的「User」面板里,绝不能动左侧「Default」文件——升级 Sublime 后会被覆盖。
- 新增绑定示例:
[ {"keys": ["ctrl+shift+u"], "command": "upper_case"} ] - 多个相同
keys绑定时,Sublime 按加载顺序取最后一条;若已有插件占用了ctrl+shift+u,你的新绑定会失效 - 建议每次添加前,在用户配置区全文搜索
"ctrl+shift+u",确认无重复
真正容易被忽略的是:你记住了快捷键,却忘了它背后依赖的是「命令名」是否可用——比如插件禁用后,title_case 命令还在,但某些第三方 smart_title_case 命令就直接报错找不到。










