ctrl+d是增量多选,需严格匹配完整单词;ctrl+shift+l在每行末加光标,位置取决于初始选区;snippet触发依赖正确scope和保存路径;侧边栏管理须通过open folder而非ctrl+o。

Sublime Text 不需要“从入门到精通”,真正卡住效率的,是那几个高频但极易用错的操作。掌握以下四点,覆盖 90% 日常编辑场景。
Ctrl+D 多次按为什么总跳过想改的词?
它不是模糊搜索,而是严格按“当前选中内容”逐个匹配完整单词(match_whole_word 默认开启)。
- 没选中就按
Ctrl+D,Sublime 会自动双击取词——光标停在user_name中间,可能只取到_name,后续全错 - 想匹配子串(比如
username_input里也命中user),得先手动选中user再按,或关掉match_whole_word - 遇到不想改的地方(如字符串里的
"user_id"),按Ctrl+K再按Ctrl+D跳过该次匹配 - 按太快或中间停顿太久,Sublime 可能判定为两次独立操作,漏掉某次匹配
Ctrl+Shift+L 拆多行光标后,所有行都往右偏移了?
光标位置取决于你最初选中的范围——如果选区包含缩进空格,光标就落在缩进上,一输字母,所有行都跟着右移。
- 要让光标统一落在行首,先选中多行,再按
Ctrl+Shift+L,然后立刻按Home或运行命令面板里的Align Indent - 选中带空行的文本块后按它,空行也会生成光标,但光标落在空行开头,容易漏改
- 该操作不可逆,原始选区消失;若只是想复制多行再分别粘贴,别用它,改用命令面板搜
Split Selection into Lines
自己写的 snippet 为什么死活不触发?
90% 是 scope 没对上,不是代码写错了。
- 保存文件名必须是
log.sublime-snippet,不能是log.snippet或log.xml - 必须存到
Packages/User/目录下(用Preferences → Browse Packages…打开路径) - 不确定当前文件的
scope?按Ctrl+Shift+P输入Developer: Show Scope Name,光标处会显示类似source.js meta.block.js的完整值 -
<scope>source.js, source.vue</scope>这样写多 scope 才生效,只写source太宽泛,可能被其他插件拦截
侧边栏和标签页管理总混乱?
Sublime 的项目结构靠“文件夹”而非单个文件驱动,侧边栏本质是项目视图。
- 不要只用
Ctrl+O打开单个文件——用File → Open Folder添加整个目录,侧边栏才真正可用 -
Ctrl+K+Ctrl+B切换侧边栏显示,不是Ctrl+B单独按(那是加粗) - 标签页太多时,
Ctrl+P输入文件名前缀可快速跳转;Ctrl+W关闭当前标签,Ctrl+Shift+W关闭全部 - 误关侧边栏又找不到入口?不是 bug,是快捷键记混了——确认是否按了
Ctrl+K后漏掉了B
最常被忽略的是:Sublime 没有“全局设置覆盖一切”的概念,每个功能(多光标、snippet、快捷键)都依赖上下文——文件类型、当前选区、是否在项目中。不看 scope、不查选区边界、不确认是否在项目根目录下操作,再熟的快捷键也会失效。











