You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改VSCode集成终端CtrlBreak热键以向运行程序发送Sigterm

修改VSCode终端的CtrlBreak快捷键并解决Windows适配问题

一、自定义CtrlBreak快捷键

VSCode默认的Ctrl+\发送CtrlBreak的映射属于终端内部行为,不在常规快捷键面板中显示,需通过自定义快捷键JSON修改:

  1. 打开快捷键设置面板:按下Ctrl+K再按Ctrl+S
  2. 点击面板右上角的「打开键盘快捷方式(JSON)」图标({}形状)
  3. 在打开的keybindings.json中添加以下配置(示例将快捷键改为Ctrl+Shift+B,可自行替换为你需要的组合):
{
    "key": "ctrl+shift+b",
    "command": "workbench.action.sendSequence",
    "args": {
        "text": "\u001b[3;2~"
    },
    "when": "terminalFocus"
}
  • \u001b[3;2~是CtrlBreak对应的标准ANSI转义序列,Linux和Windows终端均可识别为CtrlBreak信号
  • "when": "terminalFocus"确保仅当终端处于聚焦状态时,该快捷键才生效

二、解决Windows下VSCode集成终端的CtrlBreak失效问题

Windows下VSCode集成终端对原生CtrlBreak信号的处理存在兼容性问题,上述自定义配置通过发送标准ANSI序列可绕过该问题,适配CMD、PowerShell、Windows Terminal等所有集成到VSCode的终端环境,效果与你在外部终端使用CtrlBreak一致。

补充说明

之前尝试的仅发送^c(Ctrl+C)的方案,只能触发Python的KeyboardInterrupt异常;而CtrlBreak在Windows下可强制终止进程,Linux下也能更可靠地终止卡住的程序,这是两者的核心区别。

内容的提问来源于stack exchange,提问作者Shayan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 22:43:11