Visual Studio Code如何编写自定义命令仅撤销光标所在行的更改
VSCode单行未保存更改撤销方案
方案1:使用内置原生功能(无需额外配置/插件)
VSCode默认自带行级撤销能力,不需要自定义命令即可直接使用:
- 编辑器左侧gutter(行号旁边的区域)会对未保存修改的行做标记:修改行显示蓝色竖条、新增行显示绿色竖条、删除位置显示红色三角
- 光标移动到需要撤销修改的目标行,点击左侧对应行的修改标记,在弹出的选项中选择「撤销行更改」即可,仅会重置该行的未保存修改,其余编辑内容完全保留
如果需要绑定快捷键提升效率:
- 按下
Ctrl+K Ctrl+S打开快捷键配置面板 - 搜索「撤销行更改」,给该命令绑定你习惯的快捷键即可
方案2:自定义命令(适合个性化定制场景)
如果需要实现更复杂的逻辑(比如结合Git撤销已保存但未提交的行修改),可以通过自定义多命令实现:
- 在VSCode扩展市场搜索安装
multi-command扩展 - 按下
Ctrl+Shift+P调出命令面板,输入「打开用户设置(JSON)」,在配置中添加如下代码:
"multiCommand.commands": [ { "command": "multiCommand.undoCurrentLineChanges", "sequence": [ "expandLineSelection", "workbench.action.files.revertSelectedLines", "cancelSelection" ] } ]
- 回到快捷键配置面板,搜索
multiCommand.undoCurrentLineChanges,绑定自定义快捷键后即可一键调用
注意事项
- 上述两种方案均不会影响目标行修改之后的其他编辑操作,可替代全局
Ctrl+Z实现精细化的行级撤销 - 针对已保存但未提交到Git的行修改,选中目标行后右键选择「Git: 撤销选定范围的更改」,即可重置该行到上次提交的状态
内容的提问来源于stack exchange,提问作者KT12
相关产品推荐
相关产品推荐

