Sublime如何批量转换字母大小写_Sublime大小写快捷键用法【技巧】

2次阅读

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

Sublime如何批量转换字母大小写_Sublime大小写快捷键用法【技巧】

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$1Hello
  • l$2:仅把 $2 的第一个字符变小写
  • U$1E:把整个 $1 内容转为大写(U 开启全大写模式,E 显式终止)
  • 错误写法:u$0 想让整行首字母大写 → 实际只改第一个字母,因 $0 是整行匹配,u 仍只作用于其首字符

Title Case 处理连字符和撇号很保守

内置 title_case 命令(Ctrl+KCtrl+C)默认只按空格切分单词,对 don'tmulti-wordiphone 这类结构不敏感:

  • hello world sublimetextHello World Sublimetext(正确)
  • don't panicDon't Panic(✓,撇号后仍算单词)
  • multi-wordMulti-word(✗,连字符后未大写)
  • iPhone appIphone App(✗,不会保留 P 大写)

若需智能处理,得装插件如 TitleCaseCase 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 命令就直接报错找不到。

text=ZqhQzanResources