2017-09-05 4 views
3

Je voudrais utiliser Cygwin comme terminal intégré sur Visual Studio Code sur mon ordinateur portable Windows (car cela me permettrait d'utiliser les commandes de terminal Linux git et G ++, etc.) mais quand je Définissez la valeur pour "terminal.integrated.shell.windows": à l'adresse de l'application Cygwin (.exe) puis il ouvre un nouveau terminal Cygwin plutôt que de rester dans VS Code.VS Code - Cygwin en tant que terminal intégré

Donc, ma question est la suivante: puis-je utiliser Cygwin intégré dans le terminal de code VS et l'utiliser pour utiliser les commandes sur elle (mkdir, rm, etc.), mais aussi utiliser les commandes git et l'utiliser comme un compilateur intégré et débogueur (pour génériquement mais pour C++ au moins)? Et comment j'irais à propos de ça?

+0

Avez-vous Windows 10 sur votre ordinateur? Si c'est le cas, vous pouvez simplement utiliser WSL au lieu de Cygwin. – ifconfig

+0

En outre, @ user2766296 Je ne crois pas que VS Code fonctionne avec Cygwin en tant que terminal. – ifconfig

+0

@ifconfig, c'est le cas. Je l'ai juste essayé (voir la réponse ci-dessous), et cela fonctionne très bien. Même les couleurs de coque (.dircolors) fonctionnent. –

Répondre

7

Ces paramètres de configuration travaillent pour moi:

{ 
    // start bash, not the mintty, or you'll get a new window 
    "terminal.integrated.shell.windows": "C:\\cygwin\\bin\\bash.exe", 
    // Use this to keep bash from doing a 'cd ${HOME}' 
    "terminal.integrated.env.windows" { 
    "CHERE_INVOKING": "1" 
    }, 
    // Make it a login shell 
    "terminal.integrated.shellArgs.windows": [ 
    "-l" 
    ], 
} 
+2

J'ai dû corriger quelques fautes de frappe pour le deuxième paramètre: "terminal.integrated.env.windows": {"CHERE_INVOKING": "1"}, – Led

+0

J'ai modifié la réponse pour refléter cela. –

+0

Existe-t-il un moyen d'ajouter ceci comme une option de shell supplémentaire, de sorte que vous puissiez choisir d'utiliser cmd ou bash chaque fois que vous créez une nouvelle fenêtre de terminal? – mfortner

1

Vous pouvez simplement appeler le numéro sans Cygwin.bat ENV:

{ 
    // Replace with your Cygwin.bat file path 
    "terminal.integrated.shell.windows": "C:\\cygwin64\\Cygwin.bat", 
} 

Assurez-vous que les scripts BAT correspondent à votre Cygwin.