VS Code多终端环境下,实现选中代码在当前可见终端运行的问题
解决VS Code多终端下选中代码在当前终端运行的问题
原配置能把选中代码复制到终端,但没法执行,也回不到编辑器,而且常规的ctrl+enter方案只认首次打开的终端,适配不了多终端场景。直接修改宏配置就能解决:
修改后的settings.json配置
"macros": { // 需要安装geddski发布的macros扩展 "runSelectedInFocusedTerminal": [ "editor.action.clipboardCopyAction", "workbench.action.terminal.focus", "workbench.action.terminal.paste", // 发送回车指令,触发终端执行粘贴的代码 { "command": "workbench.action.terminal.sendSequence", "args": { "text": "\u000D" } }, "workbench.action.focusActiveEditorGroup", "cursorDown" ] }
keybindings.json保持原有配置即可
{ "key": "ctrl+]", "command": "macros.runSelectedInFocusedTerminal", "when": "editorTextFocus && editorLangId == 'python' && resourceExtname == '.py'" }
关键改动说明
- 新增
workbench.action.terminal.sendSequence命令,通过发送转义字符\u000D(对应回车),让终端自动执行粘贴后的代码 - 调整命令顺序,确保代码执行后再切回编辑器,解决无法返回原编辑器的问题
- 该宏会聚焦当前可见的终端(最近激活的终端),完美适配多终端切换的场景,不会局限于首个打开的终端
内容的提问来源于stack exchange,提问作者wizz
相关产品推荐
相关产品推荐

