web-dev-qa-db-fra.com

Comment effacer automatiquement le terminal VS Code lors du démarrage d'une construction?

J'appuie Ctrl+Shift+B pour démarrer une construction Code Visual Studio (il est configuré pour exécuter simplement GNU Make), et la sortie de l'outil de génération est écrite dans la fenêtre Terminal.

Cependant, il est ajouté à la sortie de la version précédente, ce qui prête à confusion.

Comment configurer VS Code pour effacer la fenêtre du terminal avant de commencer une nouvelle construction?

10
Roger Lipscombe

J'ai essayé de trouver une solution mais je ne peux pas. Le bidouillage simple que j'ai essayé est d'ouvrir la nouvelle construction dans le nouvel onglet. Ajoutez cette clé presentation à votre tâche dans tasks.json

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

panneau: nouveau ouvrira dans un nouveau terminal.

4
shyammakwana.me

Mise à jour de novembre 2018

À partir de this commit _ (et de quelques suivis ultérieurs), vous pouvez maintenant ajouter une option de présentation clear à votre tâche pour la vider du terminal avant chaque tâche.

Exemple de travail (sur clone frais + construction):

{
    // 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
            }
        }
    ]
}

(Remarque: la variable de validation liée a la clé nommée clearBeforeExecuting, mais apparemment, elle a depuis été remplacée par juste clear).

Avant cela, j'avais créé un script clear_g++ sur mon chemin avec juste:

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

Et changé ma command de g++ à clear_g++.

Depuis que j’ai aimé l’idée de cette approche mais cela n’a pas fonctionné.

4
jedwards

Si vous contrôlez vous-même la tâche de construction, il est facile d'ajouter une commande clear:

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

Ajoutez ce paramètre utilisateur pour effacer l'onglet OUTPUT en cliquant sur Exécuter (▶). 

"code-runner.clearPreviousOutput": true,

Ce n'est pas la même chose que d'effacer le terminal, mais c'est peut-être ce que quelqu'un veut.

[Éditer] Cela nécessite l'extension Runner, que je recommanderais pour tester/exécuter des scripts directement dans VS Code.

0
jim birch