gpt4 book ai didi

visual-studio-code - 如何在不关闭的情况下重用 VS Code 任务窗口

转载 作者:行者123 更新时间:2023-12-04 21:46:35 28 4
gpt4 key购买 nike

我的目标是在 VS Code 中重用任务窗口。但是,当我输入 ctrl + c 时,任务停止,然后写道:“ 终端将被任务重用,按任意键将其关闭。”。

我不想关窗。这令人沮丧,因为它迫使我打开一个新窗口并导航到正确的目录。

我记录了问题的 gif(它是右侧的窗口):

enter image description here

我的任务配置如下所示:

{
"label": "some label",
"type": "npm",
"script": "build",
"path": "some-path/",
"problemMatcher": [],
"runOptions": { "runOn": "folderOpen" },
"group": "build",
"presentation": {
"echo": true,
"reveal": "silent",
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": false,
"group": "build"
}
}

我尝试了 presentation 的各种组合属性,但没有帮助。

VS Code 的相关功能请求是 here .

最佳答案

我不认为这是可能的,它可能是设计使然。

如果你看 schema of tasks.json , 你看:

/**
* The description of a task.
*/
interface TaskDescription {
/**
* The task's name
*/
label: string;

/**
* The type of a custom task. Tasks of type "shell" are executed
* inside a shell (e.g. bash, cmd, powershell, ...)
*/
type: 'shell' | 'process';

//...
}

The type of a custom task. Tasks of type "shell" are executed inside a shell



所以对我来说,这意味着如果你有一个“shell”类型的倒计时任务运行这个命令 seq 10 1 ,在幕后它会做:
devbox:~ dev$ bash -c "seq 10 1"
10
9
8
7
6
5
4
3
2
1
devbox:~ dev$

正如你所看到的,它立即退出,我不确定你能做些什么。 (虽然我可能错了)

即使您设置了“进程”类型的任务(命令是可执行文件的路径),它也不允许您重复使用终端。

话虽如此,您可以强制执行它,但 VS Code 不会对此感到高兴:(注意命令末尾的 && sh)
{
"version": "2.0.0",
"tasks": [
{

"label": "10 9 8 ...",
"type": "shell",
"command": "seq 10 1 && sh",
"presentation": {
"echo": true,
"focus": true,
"reveal": "always",
"panel": "shared",
},
"problemMatcher": [],
}
]
}

当您运行任务时,您会立即获得另一个 shell:

enter image description here

但是,如果您重新运行相同的任务,那么 VS Code 就会变得脾气暴躁:

enter image description here

我在 .vscode/settings.json 中看不到选项的事实支持您的用例让我认为这确实是一个设计选择:

enter image description here

关于visual-studio-code - 如何在不关闭的情况下重用 VS Code 任务窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59067229/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com