ctrl+f9 排序需选中完整行,未选中则全文件排序;默认大小写敏感、字符序排数字、无原生降序键,css 排序需严格格式或用 csscomb 插件。

Ctrl+F9 就是排序,但必须选中完整行
Sublime Text 的 Sort Lines 功能不作用于光标位置或部分文字,只对“被选中的行”生效——哪怕你只漏选了一个换行符,那行就不会参与排序。
- 正确做法:用鼠标拖选时拉到行尾(看到光标跳到下一行开头),或按
Ctrl+L(Windows/Linux)/Cmd+L(macOS)逐行选中,再按住Shift键扩展选区 - 错误现象:点了
Ctrl+F9没反应 → 实际是没选中任何内容;或者只选中了某几行中间的单词,排序直接静默失败 - 注意:未选中任何文本时,
Ctrl+F9会对整个文件所有行排序,容易误操作,尤其在大配置文件里改完才发现顺序全乱了
大小写敏感是默认行为,Banana 真的会排在 apple 前面
Sublime 默认按 ASCII 值排序,大写字母(A–Z,65–90)优先于小写字母(a–z,97–122),所以 Banana 一定排在 apple 前面,这不是 bug,是设计如此。
- 如果需要忽略大小写,菜单里找
Edit → Sort Lines → Sort Lines (case insensitive)(部分版本支持);没有该选项时,先全选 →Ctrl+K, Ctrl+L转小写 → 再Ctrl+F9排序 - 数字字符串也按字符排:
10.txt、2.txt、100.log排序后是10.txt → 100.log → 2.txt,因为比较的是首字符'1'和'2' - 想按数值大小排?得补零(
002.txt)、或装Sort Numbers插件,原生不支持
降序不是一键的事,别在菜单里找 Sort Lines (Z-A)
Sublime 没有原生绑定的 Z-A 降序快捷键,很多用户卡在这一步反复翻菜单——其实它压根不提供这个菜单项(某些旧版 UI 曾短暂出现过,但已移除)。
- 可靠做法只有两步:先
Ctrl+F9升序 → 全选结果 →Ctrl+Alt+R(Win/Linux)或Cmd+Option+R(macOS)执行Reverse Lines - 如果你高频使用降序,建议手动加快捷键:打开
Preferences → Key Bindings,插入这条绑定:[{"keys": ["ctrl+shift+f9"], "command": "sort_lines", "args": {"reverse": true}}] - 注意别混淆:
Ctrl+Shift+U是去重(Unique),Ctrl+Alt+R才是反转;按错可能删掉重复行而不是倒序
CSS 属性排序看着方便,但真排完得人工核对
对 CSS 声明块用 Sort Lines 只做纯文本排序,不识别语法含义,z-index 会排在 width 后面(z > w),-webkit-box-orient 也可能被拆开离群。
- 前提必须严格:每行一个声明、无缩进、无行内注释,比如
color: #000;可以,margin: 0;或/* reset */ padding: 0;会导致错位 - 前缀属性顺序会被打乱:标准属性
display: flex;和对应前缀-webkit-display: flex;不再相邻,破坏兼容性逻辑 - 更稳妥的做法是装
CSSComb插件,配好.csscomb.json,用右键CSSComb: Sort—— 它能理解语义,但不处理@media或嵌套规则内部
排序这事,表面按个快捷键就完,实际得看数据结构、大小写策略、是否含数字、要不要保留语义关系——一不留神,排完比原来还难读。











