web-dev-qa-db-ja.com

ビルドを開始するときにVS Codeターミナルを自動的にクリアするにはどうすればよいですか?

押す Ctrl+Shift+B Visual Studio Code(GNU Make)を実行するように構成されている)でビルドを開始し、ビルドツールの出力が[ターミナル]ウィンドウに書き込まれます。

ただし、前のビルドの出力に追加されるため、混乱を招きます。

新しいビルドを開始する前に、VS Codeを構成してターミナルウィンドウをクリアするにはどうすればよいですか?

16
Roger Lipscombe

2018年11月の更新

このコミット (およびその後のいくつかのフォローアップ)の時点で、clearプレゼンテーションオプションをタスクに追加して、各タスクを実行する前にターミナルをクリアできるようになりました。

作業例(新しいclone + buildの場合):

{
    // See https://go.Microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "[gcc] Build",
            "type": "Shell",
            "command": "g++",
            "args": [
                "source.h",
                "-Wall",
                "-o",
                "a.out"
            ],
            "presentation": {
                "clear": true                        // <-- this line
            }
        }
    ]
}

(注:リンクされたコミットdiffにはclearBeforeExecutingという名前のキーがありますが、明らかにclearに変更されました)。

これに先立ち、次のようにパスにclear_g++スクリプトを作成しました。

#!/bin/bash
clear
exec g++ $*

commandg++からclear_g++に変更しました。

このアプローチ のアイデアが好きだったので、うまくいきませんでした。

18
jedwards

私は解決策を見つけようとしましたが、見つけることができませんでした。私が試した簡単なハックは、新しいタブで新しいビルドを開くことです。このpresentationキーをtasks.jsonのタスクに追加します

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

panel:newは新しいターミナルで開きます。

5
shyammakwana.me

自分でビルドタスクを制御する場合、clearコマンドを簡単に追加できます。

"tasks": [
    {
        "label": "build",
        "type": "Shell",
        "command": "clear && make",
....
1
xtofl

このユーザー設定を追加して、実行をクリックすると出力タブをクリアします(▶)

"code-runner.clearPreviousOutput": true,

これは端末をクリアすることと同じではありませんが、誰かが望んでいることかもしれません。

[編集]これにはRunner拡張機能が必要です。VSCode内でスクリプトを直接テスト/実行するためにお勧めします。

1
jim birch

設定メニューから変更できます(少なくともバージョン1.30.2以降から)...

Macでは、[コード]> [設定]> [設定]をクリックします。

次に、「clear」を検索して、「Clear Previous Output」をチェックします。

Clear Previous Output from menu settings

0