Sim*_*tes 16 visual-studio-code
"console": "integratedTerminal"在 launch.json 中使用时,程序输出被重定向到集成终端。但是,在终止调试会话并启动另一个调试会话后,终端会被重新使用,这可能非常烦人。
我还没有找到让 VSCode 清除终端的方法——可以使用属性清除 tasks.json 中的面板clear: true,但这仅适用于构建任务等任务,但对调试面板没有影响。
非常感谢帮助。
提前
致谢 - 西蒙
v1.55 中有一个新设置:
debug.terminal.clearBeforeReusing
某些调试扩展允许在 VS Code 的集成终端中启动调试对象。为了保持集成终端的数量较少,VS Code 会尝试重用未被仍在运行的命令阻止的终端。这种方法的结果是以前的命令和程序输出将在终端中保持可见,这有时会令人困惑。
在此版本中,我们引入了一项新功能,可以在开始新的调试会话之前自动清除集成终端。该功能由新设置控制
debug.terminal.clearBeforeReusing。
然而,这仅适用于诸如构建任务之类的任务,但对调试面板没有影响。
“调试控制台”每个会话都应该是新文本。
如果您想将终端输出重定向到调试控制台,您可以对launch.json文件使用以下属性:
internalConsoleOptions
控制内部调试控制台何时打开。
redirectOutput
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"internalConsoleOptions": "openOnSessionStart",
"redirectOutput": true
}
]
Run Code Online (Sandbox Code Playgroud)
这两个一起使用将打开“调试控制台”而不是终端,并且只提供必要的输出;如果您仍然需要它,它仍然会发送到终端:
另一种选择是根本不使用终端:
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "internalConsole",
}
]
Run Code Online (Sandbox Code Playgroud)
这意味着,它根本不会发送到(或使用)您的集成终端,而只会打开调试控制台,该控制台不会显示任何cd类似的语句或可执行开销,也没有以前的历史记录
快捷方式(绝对不那么用户友好):
终端:重新启动活动终端
CommandId:workbench.action.terminal.relaunch
终端:清除
CommandId:workbench.action.terminal.clear
这些选项并不能回答“调试开始时如何清除终端”的问题,而是为 vscode 新手考虑作为替代方案的选项。我不太确定他们认为终端是否适合调试,因为我们有一个调试控制台和调试/运行面板。这可能很复杂的原因是扩展使用自己的输出通道进行调试。例如,Python 使用与 Code Runner 完全不同的终端。javascript 也是如此,然后还有本机支持。
| 归档时间: |
|
| 查看次数: |
1097 次 |
| 最近记录: |