A.B*_*.B. 13 visual-studio-code vscode-tasks
当(在这种情况下货物构建)执行任务,在VSCode终端画面显示如下:
> Executing task: cargo build <
(output of the task here)
Terminal will be reused by tasks, press any key to close it.
Run Code Online (Sandbox Code Playgroud)
烦人的是,这将我带离了普通终端,然后我必须获取终端窗口的焦点并按一个键才能返回。而当我这样做时,货运量的输出就消失了。
我如何停止这种行为?
如何摆脱文本的第一行和最后一行?
检查 VSCode 1.57(2021 年 5 月,OP 后 2.5 年)的新功能是否有帮助:
自动关闭任务终端
任务
presentation属性有一个新close属性。
设置close为true将导致终端在任务退出时关闭。Run Code Online (Sandbox Code Playgroud){ "type": "shell", "command": "node build/lib/preLaunch.js", "label": "Ensure Prelaunch Dependencies", "presentation": { "reveal": "silent", "revealProblems": "onProblem", "close": true } }
[编辑:18-08-2018] 使用关闭选项时切换到问题选项卡会更好,因为这样可以确保任务终端关闭,但问题会正确突出显示。这是来自 VSCode 1.59.0。
有一个名为 的新演示选项showReuseMessage。将以下内容添加到您的任务定义中。
"presentation": {
"showReuseMessage": false
}
Run Code Online (Sandbox Code Playgroud)
明确地说,执行任务将始终以VS Code创建一个新的集成终端。没有办法解决。最重要的是要显示原始终端,而不是新创建的集成终端。(我们希望显示原始终端。)
@Gregory Cosmo Haun的解决方案将禁止显示消息“终端将被任务重用,请按任意键将其关闭”。但是,它仍然显示了新的集成终端,而不是普通终端。(因此您仍然必须按“任意键”以关闭该终端并显示原始终端)
一个更好的解决方案是set "reveal": "silent",它将仍然创建一个新的集成终端,但是除非执行任务时出错,否则不会显示它。我还进行了设置"clear": true(这是可选的),以便在执行任务之前清除终端。我故意省略了"showReuseMessage": false(这是可选的),但是您可以添加它。谁在乎提示是否被抑制?最重要的是,不会显示新创建的终端,因此我不必“按任何键”将其关闭。
"presentation": {
"reveal": "silent",
"clear": true
}
Run Code Online (Sandbox Code Playgroud)
顺便说一句,您也可以设置"reveal": "never",但是如果执行任务有问题,通常您会希望看到错误消息。
我认为,这是最好的解决方案。是的,在执行任务时总会创建一个新的集成终端,但是至少不会显示出来(除非有错误),您可以安全地忽略它,而无需按任何键将其关闭。
一种可能性是将以下命令添加到“任务”中:
"presentation": {
"panel": "new"
},
Run Code Online (Sandbox Code Playgroud)
作为
"tasks": [
{
"label": "python",
"type": "shell",
"command": "python",
"presentation": {
"panel": "new"
}
}
]
Run Code Online (Sandbox Code Playgroud)
这并不能完全解决问题,但至少不会将所有结果一个接一个地堆放在面板中。
灵感来自https://github.com/Microsoft/vscode/issues/35642
| 归档时间: |
|
| 查看次数: |
4934 次 |
| 最近记录: |