shift+alt+↓(windows/linux)或 shift+option+↓(macos)是 vscode 当前稳定版官方绑定的“复制当前行到下方”快捷键,语义清晰、不依赖剪贴板、光标位置任意有效,选中文本则复制选区而非整行。

默认就是 Shift+Alt+↓(Windows/Linux)或 Shift+Option+↓(macOS),不装插件、不改配置,直接生效。
为什么不是 Ctrl+Shift+Alt+↓?
网上有些资料把两个命令混了:Ctrl+Shift+Alt+↓ 是 VSCode 旧版快捷键(现已弃用或被重映射),它实际触发的是 editor.action.copyLinesDownAction 的变体,但行为不稳定——容易被输入法、远程桌面工具劫持,且在多光标场景下逻辑异常。而 Shift+Alt+↓ 是当前稳定版本(1.90+)的官方绑定,语义清晰:只作用于“当前行”,不依赖剪贴板,插入后光标自动落于新行行首。
- 按一次,就在当前行正下方插入一模一样的副本(含缩进、空格、换行符)
- 光标停在行中任意位置(比如字符串中间、注释后、第 12 个字符)都有效
- 如果已选中文本,它会复制选区,而不是整行——这是最常误判的点
- 按住不放不会连发,必须松开再按一次才能继续复制
快捷键没反应?先检查这三件事
不是快捷键失效,大概率是环境干扰:
微软正式发布 Visual Studio Code 1.118 版本 。本次更新重点强化了 AI 开发体验与企业管理能力,其中最引人注目的是新增 Copilot CLI 远程控制功能,允许开发者通过手机或网页远程监控和接管 AI 会话 。同时,为了提高 AI 的运行性价比,新版本优化了令牌缓存策略以降低成本 。此外,1.118 版还引入了 Chronicle 本地历史追踪、TypeScript 7.0 支持以及更严格的企业级访问管控 。
- 焦点不在编辑器内:终端、搜索框、设置页获得焦点时,
Shift+Alt+↓不起作用;点一下代码区域再试 - 系统级冲突:某些输入法(如搜狗、微软拼音)、远程工具(ToDesk、AnyDesk)会劫持
Alt+↓组合;临时切换输入法或关闭远程控制再测 - 快捷键被覆盖:打开快捷键面板(
Ctrl+K Ctrl+S),搜索copy line down,确认对应命令仍是editor.action.copyLinesDownAction,且绑定为Shift+Alt+↓;若显示「冲突」,点击铅笔图标重新绑定
复制多行时怎么用?
想克隆连续多行,不能直接按 Shift+Alt+↓ —— 它只作用于光标所在行。正确做法是:
- 先用
Shift+↓或鼠标拖选,明确选中你要复制的连续多行 - 再按
Shift+Alt+↓,VSCode 会把整个选区原样复制到下方 - 注意:非连续选区(比如
Ctrl+Click点了两行)会被忽略,只复制光标所在行 - 粘贴后若格式错乱,检查是否开启了
editor.formatOnPaste;临时关掉可避免 Prettier/ESLint 自动重排
只想复制到剪贴板,不插入新行?
Shift+Alt+↓ 是「插入副本」,不是「复制到剪贴板」。如果你只是想把当前行内容存进剪贴板备用(比如要粘到别处),那就用 Ctrl+C(Windows/Linux)或 Cmd+C(macOS)——前提是没选中文本,且 "editor.emptySelectionClipboard": true 保持默认开启。
- 这个隐式复制行为有坑:光标停在上一行末尾时,
Ctrl+V可能多出一个空行 - 部分语言扩展(如 Pylance)会干扰该逻辑,导致有时复制失败
- 真正可靠的方式是先按
Ctrl+L(选中当前行),再Ctrl+C;虽然多一步,但 100% 稳定
最易被忽略的点:快捷键是否生效,和你有没有「选中文本」强相关;很多人卡在“明明按了却没反应”,其实只是光标刚好落在某段已选中的文字里——删掉选区,再试一次 Shift+Alt+↓ 就通了。










