67 votes

Comment changer le terminal intégré dans visual studio code ou VSCode

Je veux changer le terminal intégré en CMDER j'utilise Vscode sur Windows 8.1 j'ai vérifié la doc et aussi le fichier de préférence mais je suis confus donc à partir des lignes suivantes, quelle ligne va le changer

// Terminal externe

// Customizes which terminal to run on Windows.
"terminal.external.windowsExec": "%COMSPEC%",

// Customizes which terminal application to run on OS X.
"terminal.external.osxExec": "Terminal.app",

// Customizes which terminal to run on Linux.
"terminal.external.linuxExec": "xterm",

// Terminal intégré

// The path of the shell that the terminal uses on Linux.
"terminal.integrated.shell.linux": "sh",

// The command line arguments to use when on the Linux terminal.
"terminal.integrated.shellArgs.linux": [],

// The path of the shell that the terminal uses on OS X.
"terminal.integrated.shell.osx": "sh",

// The command line arguments to use when on the OS X terminal.
"terminal.integrated.shellArgs.osx": [],

// The path of the shell that the terminal uses on Windows. When using shells shipped with Windows (cmd, PowerShell or Bash on Ubuntu), prefer C:\Windows\sysnative over C:\Windows\System32 to use the 64-bit versions.
"terminal.integrated.shell.windows": "C:\\Windows\\system32\\cmd.exe",

// The command line arguments to use when on the Windows terminal.
"terminal.integrated.shellArgs.windows": [],

// Controls the font family of the terminal, this defaults to editor.fontFamily's value.
"terminal.integrated.fontFamily": "",

// Controls whether font ligatures are enabled in the terminal.
"terminal.integrated.fontLigatures": false,

// Controls the font size in pixels of the terminal, this defaults to editor.fontSize's value.
"terminal.integrated.fontSize": 0,

// Controls the line height of the terminal, this number is multipled by the terminal font size to get the actual line-height in pixels.
"terminal.integrated.lineHeight": 1.2,

// Controls whether the terminal cursor blinks.
"terminal.integrated.cursorBlinking": false,

// Controls whether locale variables are set at startup of the terminal, this defaults to true on OS X, false on other platforms.
"terminal.integrated.setLocaleVariables": false,

// A set of command IDs whose keybindings will not be sent to the shell and instead always be handled by Code. This allows the use of keybindings that would normally be consumed by the shell to act the same as when the terminal is not focused, for example ctrl+p to launch Quick Open.
"terminal.integrated.commandsToSkipShell": [
    "editor.action.toggleTabFocusMode",
    "workbench.action.debug.continue",
    "workbench.action.debug.restart",
    "workbench.action.debug.run",
    "workbench.action.debug.start",
    "workbench.action.debug.stop",
    "workbench.action.quickOpen",
    "workbench.action.showCommands",
    "workbench.action.terminal.clear",
    "workbench.action.terminal.copySelection",
    "workbench.action.terminal.focus",
    "workbench.action.terminal.focusNext",
    "workbench.action.terminal.focusPrevious",
    "workbench.action.terminal.kill",
    "workbench.action.terminal.new",
    "workbench.action.terminal.paste",
    "workbench.action.terminal.runSelectedText",
    "workbench.action.terminal.scrollDown",
    "workbench.action.terminal.scrollDownPage",
    "workbench.action.terminal.scrollToBottom",
    "workbench.action.terminal.scrollToTop",
    "workbench.action.terminal.scrollUp",
    "workbench.action.terminal.scrollUpPage",
    "workbench.action.terminal.toggleTerminal"
],

2 votes

47voto

mbernardeau Points 960

Pour changer le terminal intégré sous Windows, il suffit de modifier le fichier terminal.integrated.shell.windows ligne :

  1. Ouvrez les paramètres utilisateur VS (Préférences > Paramètres utilisateur). Ceci ouvrira deux documents côte à côte.
  2. Ajouter un nouveau "terminal.integrated.shell.windows": "C:\\Bin\\Cmder\\Cmder.exe" dans le document Paramètres de l'utilisateur, à droite, s'il n'y figure pas déjà. Ainsi, vous ne modifiez pas directement le paramètre par défaut, mais vous le complétez.
  3. Enregistrez le fichier des paramètres utilisateur.

Vous pouvez ensuite y accéder avec les clés Ctrl + backtick par défaut.

9 votes

Cela fait toujours apparaître la fenêtre Cmder au lieu de l'intégrer.

4 votes

@Martin Comme écrit dans ce numéro, github.com/Microsoft/vscode/issues/12006 Comme Cmder est un émulateur de terminal, il ne peut pas être intégré. Vous pouvez utiliser Clink à la place.

4 votes

Je suis conscient. C'était pour clarifier pour ceux qui trouvent cette réponse

42voto

khernand Points 431

Il est possible de le faire fonctionner dans VS Code et de faire en sorte que le terminal Cmder soit intégré (pas de pop up).

Pour le faire :

  1. Créez une variable d'environnement "CMDER_ROOT" pointant vers votre répertoire Cmder dans votre répertoire.
  2. Dans (Préférences > Paramètres utilisateur) dans VS Code, ajoutez les paramètres suivants :

"terminal.integrated.shell.windows": "cmd.exe"

"terminal.integrated.shellArgs.windows": ["/k", "%CMDER_ROOT%\\vendor\\init.bat"]

9 votes

Cela fonctionne sous Windows 10, mais j'ai dû modifier les barres obliques dans le chemin d'accès aux arguments : ["/k", "%CMDER_ROOT%\\vendor\\init.bat"]

2 votes

Cela a très bien fonctionné avec la suggestion de @Lodybo. Merci !

2 votes

Notez que j'ai dû créer une variable d'environnement CMDER_ROOT. Cela n'a pas fonctionné si j'ai simplement remplacé %CMDER_ROOT% dans le fichier de configuration par le chemin d'accès à init.bat.

28voto

etp23 Points 171

Je sais que c'est tard mais vous pouvez rapidement accomplir cela en tapant Ctrl + Shift + p et ensuite tapez default, il montrera une option qui dit

Terminal : Sélectionner le shell par défaut

il affichera alors tous les terminaux disponibles pour vous.

1 votes

Excellente suggestion. En l'utilisant, j'ai pu facilement passer de cmd.exe à bash. C'est simple et agréable.

1 votes

Il existe deux types de terminaux : les consoles et les consoles intégrées. Ce dernier est utilisé lors du débogage du code. Cette réponse ne l'affecte pas, elle ne répond donc pas vraiment à la question du PO.

0 votes

Cela fonctionne toujours !

10voto

De Docs officiels%22)

La configuration correcte de votre shell sous Windows est une question de localisation de la le bon exécutable et de mettre à jour le paramètre. Vous trouverez ci-dessous une liste des exécutables courants de l'interpréteur de commandes et leur emplacement par défaut.

Il existe également la commande pratique Sélectionner le shell par défaut qui peuvent être accessible par la palette de commande qui peut détecter et régler ceci pour pour vous.

Vous pouvez donc ouvrir une palette de commande en utilisant ctrl+shift+p utilisez la commande Sélectionner le shell par défaut Le code VS affiche alors toutes les interfaces de ligne de commande disponibles, sélectionnez celle que vous voulez, le code VS la définit automatiquement comme terminal intégré par défaut.

Si vous voulez le définir manuellement, trouvez l'emplacement de l'exécutable de votre cli et ouvrez les paramètres utilisateur de vscode( ctrl+, ), alors le jeu

"terminal.integrated.shell.windows":"path/to/executable.exe"

Exemple pour gitbash sur windows7 :

"terminal.integrated.shell.windows":"C:\\Users\\stldev03\\AppData\\Local\\Programs\\Git\\bin\\bash.exe",

4voto

ford04 Points 112

Pour le terminal de l'OP Cmder hay un guide d'intégration a également laissé entendre dans la documentation de VS Code .

Si vous voulez utiliser le code VS tâches et rencontrent des problèmes après le passage à Cmder il y a une mise à jour de la réponse de @khernand. Copiez ceci dans votre settings.json fichier :

"terminal.integrated.shell.windows": "cmd.exe",

"terminal.integrated.env.windows": {
  "CMDER_ROOT": "[cmder_root]" // replace [cmder_root] with your cmder path
},
"terminal.integrated.shellArgs.windows": [
  "/k",
  "%CMDER_ROOT%\\vendor\\bin\\vscode_init.cmd" // <-- this is the relevant change
  // OLD: "%CMDER_ROOT%\\vendor\\init.bat"
],

Le fichier invoqué s'ouvrira Cmder comme terminal intégré et passer à cmd pour les tâches - jetez un coup d'œil à la source aquí . Ainsi, vous pouvez omettre de configurer un terminal séparé en tasks.json pour faire fonctionner les tâches.

À partir de VS Code 1.38, il y a également "terminal.integrated.automationShell.windows" qui vous permet de configurer votre terminal pour les tâches de manière globale et d'éviter les problèmes liés aux Cmder .

"terminal.integrated.automationShell.windows": "cmd.exe"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X