在常规的 Windows 终端中,Control+C 键绑定(bind)到 SIGINT,允许您中断正在运行的进程。 Visual Studio Code 的集成终端使您能够通过 terminal.integrated.commandsToSkipShell 传递键命令,这非常有用。虽然 Control+C 是默认复制的键绑定(bind),但 SIGINT 在设置中并不明显,无法为其设置键绑定(bind)。如何将 SIGINT 发送到 Visual Studio Code 集成控制台,最好是对其进行键绑定(bind),以便您可以向进程发出停止或中断信号?
这是我能够找到的文档,不幸的是,它没有提及 SIGINT 或使用 Control+C 进行中断,我认为这是常见的需要:https://code.visualstudio.com/docs/editor/integrated-terminal
最佳答案
事实证明,在 Windows 的 Visual Studio Code 上,ctrl-c
和 ctrl-v
等命令被设置为绕过终端并由 VSCode 本身处理.
要修复,只需打开您的首选项File>Preferences>Settings
(ctrl-,
)并添加您自己的terminal.integrated.commandsToSkipShell
设置值(value)。最好让 VSCode 使用它的 intellisense 功能为你完成工作,这样你就可以获得所有默认设置,这样你就不会意外更改你期望工作的其他行为。
然后继续并移除 workbench.action.terminal.copySelection
让 ctrl-c
工作和 workbench.action.terminal.paste
让 ctrl-v
工作。
粘贴到终端仍然适用于 ctrl-shift-v
但我还没有弄清楚如何进行复制。如果我这样做,我会更新这个答案。
关于visual-studio-code - Visual Studio Code 集成终端中的 SIGINT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43667317/