Терминал будет повторно использоваться задачами, нажмите любую клавишу, чтобы закрыть его

#c #macos #visual-studio-code #terminal

#c #macos #visual-studio-code #терминал

Вопрос:

Я изучаю C , используя vscode на mac BigSur. Терминал всегда печатает «Терминал будет повторно использоваться задачами, нажмите любую клавишу, чтобы закрыть его». И после попытки добавить «презентацию» со свойством «панель: создать». Эта проблема все еще возникает.

это моя задача.json

 {
"tasks": [
    {
        "type": "cppbuild",
        "label": "C/C  : g   build active file",
        "command": "/usr/bin/g  ",
        "args": [
            "-g",
            "${file}",
            "-o",
            "${fileDirname}/${fileBasenameNoExtension}"
        ],
        "options": {
            "cwd": "/usr/bin"
        },
        "problemMatcher": [
            "$gcc"
        ],
        "group": {
            "kind": "build",
            "isDefault": true
        },
        "presentation": {
            "echo": true,
            "reveal": "always",
            "focus": true,
            "panel": "new"
        },
        "detail": "Generated task by Debugger"
    }
],
"version": "2.0.0"}
 

это мой файл launch.json

 {

"version": "0.2.0",
"configurations": [
    {
        "name": "g   - Build and debug active file",
        "type": "cppdbg",
        "request": "launch",
        "program": "${fileDirname}/${fileBasenameNoExtension}",
        "args": [],
        "stopAtEntry": false,
        "cwd": "${workspaceFolder}",
        "environment": [],
        "externalConsole": false,
        "MIMode": "lldb",
        "preLaunchTask": "C/C  : g   build active file"
    }
]}
 

введите описание изображения здесь

Ответ №1:

Этого сообщения "Terminal will be reused by tasks, press any key to close it." можно избежать, добавив свойство "showReuseMessage": false внутри блока «презентация».

 "presentation": {
        "echo": true,
        "reveal": "always",
        "focus": true,
        "panel": "new",
        "showReuseMessage": false
    },
 

Однако нам все равно нужно нажать клавишу enter, чтобы вернуться в командную строку. Чтобы избежать нажатия клавиши enter, "close": true внутри блока «презентация» также следует добавить другое свойство.

 "presentation": {
        "echo": true,
        "reveal": "always",
        "focus": true,
        "panel": "new",
        "showReuseMessage": false,
        "close": true
    },
 

Я протестировал выше в Visual Studio Code версии 1.68.0 в Windows 10, 64-разрядная платформа.