能,官方 Sublime Text Keymap 扩展开箱即用,无需修改 keybindings.json;它由 Microsoft 维护,重写命令绑定逻辑,支持 Ctrl+D 多选等原生行为,并通过 editor.multiCursorModifier 设置恢复 Ctrl+Click 加光标功能。

Ctrl+P、Ctrl+D、Ctrl+Shift+K 等)直接生效,不重启、不冲突、不踩坑。
装完就用:别碰 keybindings.json,先装扩展
VSCode 从 1.80 版本起已将 Sublime Text Keymap 扩展列为官方维护项,发布者是 ms-vscode。它不是模拟器,而是重写了底层命令绑定逻辑,让 Ctrl+D 真正触发 editor.action.addSelectionToNextFindMatch,而不是简单映射键位。
- 打开扩展面板(
Cmd+Shift+X或Ctrl+Shift+X) - 搜
Sublime Text Keymap,认准发布者为Microsoft或ms-vscode - 点击安装,**不用重启 VSCode**,新文件一打开就能用
Ctrl+D多选词 - 如果
Ctrl+Shift+L没反应,检查是否被其他插件劫持了editor.action.splitSelectionByLine命令
Ctrl+Click 加光标失效?改一个 setting 就行
Sublime 的 Ctrl+Click(Windows/Linux)或 Cmd+Click(macOS)直接添加光标,VSCode 默认是“跳转到定义”。这不是快捷键没生效,而是行为策略不同。
- 打开
settings.json(Cmd+,→ 右下角齿轮 →Open Settings (JSON)) - 加这一行:
"editor.multiCursorModifier": "ctrlCmd" - 保存后,
Ctrl+Click立刻还原 Sublime 行为;不需要额外绑定快捷键 - 注意:该设置只影响鼠标点击,不影响
Ctrl+D或Ctrl+Shift+L等键盘操作
为什么手动编辑 keybindings.json 容易翻车
直接往 keybindings.json 里塞 Sublime 风格的键位,看似灵活,实则埋雷。VSCode 的 when 条件判断比 Sublime 严格得多,稍有偏差就会导致快捷键静默失效。
-
"when": "editorTextFocus"是基础条件,但 Sublime 的Ctrl+Shift+P在非编辑器区域也应生效,需额外加"when": "textInputFocus || editorTextFocus" - 某些命令在 VSCode 中无直接等价物(如 Sublime 的
Ctrl+Shift+V粘贴并格式化),硬映射会触发错误提示command 'editor.action.pasteAndIndent' not found - 扩展自带的 Keymap 已处理所有边界场景(比如多根编辑器、终端聚焦、调试面板弹出时的行为降级)
- 如果你真要微调,优先在 UI 快捷键面板(
Cmd+K Cmd+S)里搜索命令名再覆盖,比手写 JSON 更直观
迁移后仍卡顿?检查这三处冲突点
即使扩展装了、setting 改了,个别快捷键仍不响应,大概率是三方插件抢了控制权,而非 VSCode 本身问题。
-
Ctrl+P打不开文件?禁用所有带 “Quick Open”、“Goto” 字样的插件,尤其是旧版Project Manager或Advanced New File -
Ctrl+Shift+K删除整行没反应?查keybindings.json是否存在重复绑定,或被Auto Rename Tag插件拦截(该插件有时会劫持Ctrl+Shift+K用于标签操作) -
Alt+F3全选相同词失灵?确认未启用 Vim 插件的vim.useSystemClipboard,该选项会干扰多光标底层事件流
workbench.tree.renderIndentGuides 或 workbench.activityBar.visible 等开关——它们不属于快捷键迁移范畴,但直接影响“熟悉感”。


















