alt+点击/拖动失效因columnselection设为false;alt+方向键无效多因输入法拦截;alt+z失效常被系统或软件劫持;列选择后需按esc退出,否则光标持续同步编辑。

Alt+点击/拖动不触发多光标或列选择?先看 editor.columnSelection
VSCode 默认允许 Alt+鼠标拖动进入列选择模式,但前提是开关没被关掉。很多人改过设置却忘了这行关键配置:"editor.columnSelection": true。它默认是 true,但一旦被设为 false(比如被某个插件重写、或手动误删),Alt 拖动就退化成普通选区——只拉横线,不立竖条。
验证方式:打开命令面板(Ctrl+Shift+P),输入 Preferences: Open Settings (JSON),搜索 columnSelection。没找到就加一行;找到了但值是 false,改成 true 并保存。不用重启,但建议执行 Developer: Reload Window 确保生效。
Alt+↑/↓ 或 Alt+←/→ 没反应?输入法大概率在“吃键”
搜狗、微软拼音、QQ 输入法在中文模式下,会把 Alt+↑ 当作中英文切换、Alt+← 当作后退快捷键,根本不会把事件传给 VSCode。这不是 VSCode 的 bug,是输入法主动拦截。
- 临时验证:切到纯英文输入状态(
Win+Space或Cmd+Space),再试Alt+↑—— 若此时生效,问题锁定在输入法 - Windows 用户:进搜狗设置 → 高级 → 快捷键 → 关掉「使用快捷键快速中英文切换」
- macOS 用户:系统设置 → 键盘 → 快捷键 → Mission Control 里禁用
Option+↑;辅助功能里也检查是否启用了粘滞键 - 别依赖“自动切英文”:VSCode 编辑器里敲完
;或}后,输入法常卡在中文态,必须手动切
Alt+Z 自动换行切换无效?别修 VSCode,先查谁“截胡”了
Alt+Z 是个普通组合键,没有特权。它失效几乎从不因为 VSCode 配置损坏,而是被系统、输入法或后台工具提前消费。比如 Windows 下搜狗用 Alt+Z 唤出符号面板,macOS 辅助功能用它触发缩放,TeamViewer 或录屏软件也可能监听。
最稳的替代方案是 Ctrl+K Ctrl+Z(注意不是同时按,是先按 Ctrl+K 松开,再按 Ctrl+Z)。这个 chord 组合极少被系统或输入法劫持,且 VSCode 默认就绑定 editor.action.toggleWordWrap,无需任何配置。
非要保留 Alt+Z?唯一可靠方式是手动编辑 keybindings.json,加一条带严格 when 条件的规则:
[{"key":"alt+z","command":"editor.action.toggleWordWrap","when":"editorTextFocus && !editorReadonly"}]
图形界面里重绑容易失败,因为旧绑定未清除干净;直接写 JSON 才能精准覆盖。
按完 Alt 操作后光标“失控”?你可能忘了按 Esc
Alt+拖动或 Alt+点击进入列选择或多光标态后,VSCode 不会自动退出。所有后续输入(打字、删除、回车)都会同步到所有光标位置。很多人发现“改了一处变八处”,其实是残留光标还在生效,而非快捷键失效。
这不是设计缺陷,是刻意为之:它假设你要连续编辑多处,所以不打断流程。但 VSCode 不提示、不高亮、也不弹窗——唯一的退出方式就是按一次 Esc。
养成习惯:每次 Alt 操作后下意识按一下 Esc,能避开大量“为什么我只点了一下却改了整列”的困惑。这个细节极小,却是多数人排查时最先忽略的环节。











