我发现了许多与之相反的问题,这些问题似乎可以通过我想要摆脱的行为来解决。
当我调试应用程序时,我总是得到
Press any key to continue . . .
(现在是空的)外部窗口
这个应用程序是一个文本gui应用程序(想想vim),窗口中从来没有任何有用的东西。我希望外部窗口关闭时,我停止应用程序或停止调试。但是我找不到这样做的开关
如果我理解正确的话,这主要是设计的,目前是不可配置的。
引用@weinand:
最初,我们在调试会话结束时立即关闭终端,但由于这种行为,用户抱怨他们看不到运行时错误或程序输出。这就是为什么会出现"按任意键继续…",,添加了Wait。IIRC的想法是,如果有问题(退出代码!= 0),则保持终端打开,否则关闭终端。
(请参阅链接引用的其余部分,以获取@weinand的更多有用信息)
VS Code本身在提供配置设置来控制这个方面是有限的。再次引用@weinand:
对外部终端的支持由单个调试扩展提供。VS Code不知道它们,也不能在launch.json中提供泛型属性。
但是单独的调试扩展可以提供这样的选项。请提交针对扩展的功能请求。
人们发现了一些变通方法:
配置外部终端设置指向一个包装器程序,该程序接受VS Code的命令行和导致提示符发生的附加语句,然后在执行其余命令之前从命令字符串中删除该提示符。(源)
写一个
postDebugTask
,执行一个系统命令杀死终端进程(源)
您可以在问题单中看到其他关于解决问题的方法的讨论,并订阅它以获取其状态的更新。
松散相关的问题票,但关于集成(非外部)终端:当kind:集成时,runterminalrequest显示不必要的输出# 100538 .