web-dev-qa-db-fra.com

Comment afficher les valeurs actuelles des variables prédéfinies de VS Code (telles que "$ {workspaceFolder}")?

Je suis confronté à un problème avec le débogueur de code VS en essayant de déboguer du code source angular TypeScript, et je pense que la raison en est que certains de ces VS Code Variables ont le mauvaise valeur - comme suggéré ici .

J'aimerais suivre ce conseil, mais je ne vois pas comment interroger les variables de code VS (par exemple, afficher les valeurs actuelles de ces variables pour mon projet).

L'une de ces variables est

$ {workspaceFolder}

Ils sont utilisés dans les fichiers de configuration du code VS, pour cet exemple dans le launch.json fichier.

Savez-vous s'il existe un moyen d'afficher ces valeurs? Par exemple, enregistrer les valeurs ou les afficher dans une fenêtre d'alerte serait juste suffisant pour que je puisse le dépanner.

9
Matt

Il peut y avoir un meilleur moyen, mais vous pouvez exécuter un

//  "preLaunchTask": "Echo vars" in your debug launch like:

{
    "name": "Chrome : Launch with sourcemaps",
    "type": "chrome",
    "request": "launch",
    "url": "http://localhost:3000",
    "webRoot": "${workspaceRoot}",
    "sourceMaps": true,
    "runtimeArgs": [
    "--remote-debugging-port=9222"
    ],
    "preLaunchTask": "Echo vars"
},

dans votre tâche de lancement, puis dans tasks.json, ajoutez:

{
   "label": "Echo vars",
   "command": "echo",
   "args": [
     "${env:USERNAME}",
     "workspaceFolder = ${workspaceFolder}"
   ],
   "type": "Shell"
},

Ces valeurs seront répercutées sur le terminal.


EDIT : Parce qu'une version ultérieure de vscode prend désormais en charge l'envoi de variables au terminal, cette plus simple liaison de touches affichera les valeurs dans le terminal:

{
  "key":  "alt+q",
  "command": "workbench.action.terminal.sendSequence",
  "args": {
    // "text": "${env:USERNAME}",  // this works
     "text" : "file = ${file};  workspaceFolder = ${workspaceFolder}"
  }  
},

puis Alt-q imprime les valeurs.

14
Mark