2017-08-12 3 views
3

Mon tasks.json ressemble à ceci:Plusieurs « tâches de construction » pour le code de Visual Studio (python)

{ 
    // See https://go.microsoft.com/fwlink/?LinkId=733558 
    // for the documentation about the tasks.json format 
    // A task runner that runs a python program 
    "command": "python3", 
    "presentation": { 
     "echo": true, 
     "reveal": "always", 
     "focus": true 
    }, 
    "args": [ 
     "${file}" 
    ] 
} 

Quand je lance ctrl+shift+B le panneau supérieur demande « Sélectionnez la tâche de construction de fonctionner », et il y a un alternative: python3. Maintenant, si je voudrais ajouter une nouvelle tâche de construction (par exemple une commande runspider avec scrapy), elle est donc ajoutée aux tâches de construction. Comment pourrais-je ajouter cela?

Répondre

2

Vous pouvez définir des tâches multiples dans votre tasks.json en attribuant un tableau d'objets de tâche à la propriété des tâches, comme ceci:

{ 
    // See https://go.microsoft.com/fwlink/?LinkId=733558 
    // for the documentation about the tasks.json format 
    "version": "2.0.0", 
    "tasks": [ 
     { 
      "taskName": "python3", 
      "type": "shell", 
      "command": "python3", 
      "args": [ 
       "${file}" 
      ], 
      "presentation": { 
       "echo": true, 
       "reveal": "always", 
       "focus": true 
      } 
     }, 
     { 
      "taskName": "runspider", 
      "type": "shell", 
      "command": "runspider" 
     } 
    ] 
} 

En outre, Ctrl + Maj + B fonctionne par défaut Tâche de construction, donc vous pourriez vouloir régler votre keybinding "workbench.action.tasks.runTask".

{ 
    "key": "ctrl+shift+b", 
    "command": "workbench.action.tasks.runTask" 
} 

Une fois cela fait, vous pouvez sélectionner la tâche lorsque vous utilisez la commande workbench.action.tasks.runTask, comme indiqué ci-dessous:

Choose which task to run

Vous pouvez également choisir votre tâche de construction par défaut en définissant la propriété "group" sur la tâche. Ici, dans l'extrait suivant, votre tâche "python3" sera exécutée en tant que tâche de génération par défaut.

... 
"tasks": [ 
    { 
     "taskName": "python3", 
     "type": "shell", 
     "command": "python3", 
     "args": [ 
      "${file}" 
     ], 
     "presentation": { 
      "echo": true, 
      "reveal": "always", 
      "focus": true 
     }, 
     "group": { 
      "kind": "build", 
      "isDefault": true 
     } 
    }, 
    { 
     "taskName": "runspider", 
     "type": "shell", 
     "command": "runspider" 
    } 
] 
... 

Vous pouvez en savoir plus sur les tâches ici: Tasks in VSCode

+0

Merci! Les deux alternatives ont fonctionné, c'était vraiment bien écrit et une aide précieuse! – MrJalapeno

+1

VSCode a maintenant IntelliSense dans tasks.json et launch.json. – sauravsahu