VSCode执行sendSequence前自动打开集成终端的功能实现问询
VSCode快捷键需求实现方案
这个需求完全可以通过VSCode原生功能实现,无需额外安装扩展。
你原来的配置仅覆盖了终端聚焦时的触发场景,调整逻辑后即可实现自动判断终端状态的效果,核心原理是利用VSCode内置的runCommands指令组合多步操作,配合终端聚焦命令自带的缺省终端创建逻辑完成需求。
具体配置方法
把你原来的快捷键配置替换为以下内容即可,将#command#替换为你实际要执行的命令即可,命令末尾的\n代表自动回车执行命令:
{ "key": "ctrl+r", "command": "runCommands", "args": { "commands": [ "workbench.action.terminal.focus", { "command": "workbench.action.terminal.sendSequence", "args": { "text": "#command#\n" } } ] } }
效果说明
- 触发快捷键时,
workbench.action.terminal.focus会自动判断:如果没有正在运行的终端就创建新终端并聚焦,如果已有活跃终端就直接聚焦到最近使用的终端 - 命令执行完成后终端默认保持打开状态,只要你没有修改VSCode终端自动关闭的默认配置,不需要额外设置
- 全程复用已有终端,不会重复创建新的终端窗口
内容的提问来源于stack exchange,提问作者Adam Labuš
相关产品推荐
相关产品推荐

