
Sublime Text 里怎么把选中文本转成大写或小写
直接用内置命令,不用装插件。Windows/Linux 按 Ctrl+K 再按 Ctrl+U 转大写,Ctrl+K 再按 Ctrl+L 转小写;macOS 是 Cmd+K 然后 Cmd+U 或 Cmd+L。
注意:必须先选中文字,否则命令无效;如果只光标定位没选中,会操作当前单词(取决于是否开启 word_separators 的影响)。
- 快捷键是“两段式”——先按组合键触发模式,再按字母键执行动作,中间不能停太久,否则要重来
- 对多行、带空格或换行符的选区也生效,但不会自动 trim 首尾空白,原样转换
- 不区分 ASCII 和 Unicode 字母,中文、日文假名等非拉丁字符会被跳过,不影响它们
想让首字母大写(title case)怎么办
Sublime 原生不支持 title_case,但可以靠正则替换凑合实现:
查找: \b([a-z])
替换为: \U$1\E
然后勾选 Regular Expression(Alt+R)和 Case Sensitive(Alt+C),点全部替换。
- 这个正则只匹配单词开头的小写字母,
\U和\E是 Sublime 的大小写转换元字符,不是通用正则语法 - 它不处理已含大写的混合词(比如 “iPhone” → “IPhone”),也不识别缩写(如 “USA” 可能变成 “Usa”)
- 如果文本里有数字开头的“单词”(如
3dModel),\b可能断在奇怪位置,结果不可控
为什么有时快捷键没反应?常见卡点
最常踩的坑不是快捷键记错,而是编辑器状态干扰了命令响应:
- 当前文件被设为只读(右下角显示
Read Only),所有编辑类命令都会静默失败 - 用了某些插件(比如
Emacs Pro Essentials或Vintage)启用了 Vim 模式,Ctrl+K会被拦截成其他用途 - 输入法处于中文状态时,部分系统(尤其是 Windows + 某些输入法)会吞掉
Ctrl+K组合,看起来像“没反应” - 快捷键冲突:检查
Preferences → Key Bindings里有没有自定义规则覆盖了默认映射
需要批量处理多个文件?别硬扛
Sublime 本身不提供跨文件大小写批量操作,强行用“在文件夹中查找”+替换容易误伤注释、字符串、变量名。
更稳的做法是导出内容,用命令行处理:
sed 's/.*/\U&/g' file.txt # 全大写(GNU sed)
awk '{print toupper($0)}' file.txt # 更兼容的全大写- Sublime 的
Find in Files不支持\U/\L这类大小写元字符,别在这儿试 - 如果必须在 Sublime 内完成,建议先用
Ctrl+Shift+F找到目标范围,复制出来新建标签页单独处理,完事再粘回去 - 涉及代码文件时,尤其要注意:改函数名、变量名大小写可能破坏引用,别忘了全局搜索确认上下文
大小写转换看着简单,真要保准确,得盯住上下文、编码、输入法和插件这四点。漏一个,就可能白忙活半天还改错了地方。










