Mac下VSCode集成终端如何删除最后一条命令及输出?
在VSCode集成终端用⌘L实现清除最后一条命令及输出
解决步骤
- 打开VSCode键盘快捷键JSON配置
- 按下快捷键
⌘K ⌘S打开键盘快捷键面板,点击右上角「打开键盘快捷方式(JSON)」图标,进入keybindings.json编辑界面。
- 按下快捷键
- 添加自定义快捷键配置
在文件中插入以下配置项:
注:之前你尝试的{ "key": "cmd+l", "command": "workbench.action.terminal.sendSequence", "args": { "text": "\u001b]l\u0007" }, "when": "terminalFocus" }"\u001b]l"缺少了OSC序列的结束标记\u0007(BEL字符),这是配置无效的原因。完整序列发送后就能触发「清除到上一个标记」的功能,和Mac自带Terminal的⌘L效果一致。 - 保存配置并测试
保存keybindings.json后,回到VSCode集成终端按下⌘L即可验证功能。
备用方案(若上述配置无效)
如果你的shell环境不支持ANSI序列,可尝试用shell命令组合模拟:
{ "key": "cmd+l", "command": "workbench.action.terminal.sendSequence", "args": { "text": "\u001b[1G\u001b[K\nclear -x\n" }, "when": "terminalFocus" }
这个配置先清空当前输入行,再执行clear -x清除屏幕但保留滚动缓冲区,可接近原生功能效果。
内容的提问来源于stack exchange,提问作者Unknown
相关产品推荐
相关产品推荐

