Lorsque vous travaillez dans un codespace, vous pouvez ouvrir une nouvelle fenĂȘtre de terminal avec lâinterprĂ©teur de commandes de votre choix, changer votre interprĂ©teur de commandes par dĂ©faut pour les nouvelles fenĂȘtres de terminal ou installer un nouvel interprĂ©teur de commandes. Vous pouvez Ă©galement utiliser des dotfiles pour configurer votre interprĂ©teur de commandes.
Les codespaces qui utilisent lâimage conteneur de dĂ©veloppement par dĂ©faut sont fournis avec les interprĂ©teurs de commandes bash
, zsh
et fish
installĂ©s. Si vous ouvrez un nouveau codespace dans le client web VS Code ou si vous vous connectez Ă un codespace via SSH, le terminal sâouvre avec une session bash
exĂ©cutĂ©e par dĂ©faut. Dans lâapplication de bureau VS Code, lâinterprĂ©teur de commandes par dĂ©faut dĂ©pend de vos paramĂštres locaux et de votre systĂšme dâexploitation. Pour plus dâinformations, consultez Profils de terminal dans la documentation VS Code.
Changement de lâinterprĂ©teur de commandes par dĂ©faut dans VS Code
Si vous ne souhaitez pas utiliser lâinterprĂ©teur de commandes par dĂ©faut, vous pouvez ouvrir une nouvelle session de terminal avec un autre interprĂ©teur de commandes.
-
Si vous ne voyez pas le terminal intégré dans VS Code, appuyez sur Ctrl+`.
-
Ă droite de lâicĂŽne permettant dâouvrir une nouvelle fenĂȘtre de terminal, sĂ©lectionnez lâicĂŽne de liste dĂ©roulante.
-
Dans le menu dĂ©roulant, cliquez sur le nom de lâinterprĂ©teur de commandes que vous souhaitez utiliser.
Installation dâun nouvel interprĂ©teur de commandes
Si vous souhaitez utiliser un interprĂ©teur de commandes qui nâest pas dĂ©jĂ installĂ© dans lâimage de base ou la configuration du conteneur de dĂ©veloppement dâun codespace, vous pouvez installer un nouvel interprĂ©teur de commandes.
Si vous utilisez lâimage conteneur de dĂ©veloppement par dĂ©faut, recherchez les instructions dâinstallation pour Ubuntu Linux. Si vous souhaitez juste utiliser un autre interprĂ©teur de commandes pour une session, vous pouvez utiliser la ligne de commande pour installer lâinterprĂ©teur de commandes dans le codespace dans lequel vous travaillez. Toutefois, vous risquez de perdre les programmes que vous avez installĂ©s si vous regĂ©nĂ©rez le conteneur dans le codespace. Pour plus dâinformations, consultez « PrĂ©sentation approfondie de GitHub Codespaces ».
Une option plus robuste pour installer de nouveaux interprĂ©teurs de commandes consiste Ă inclure les commandes dâinstallation dans un dĂ©pĂŽt dotfiles ou en tant que commande de cycle de vie, par exemple postCreateCommand
dans un fichier devcontainer.json
. Utilisez un dépÎt dotfiles pour installer un interpréteur de commandes que vous souhaitez utiliser dans tous vos propres codespaces, et un fichier devcontainer.json
pour un interprĂ©teur de commandes que les contributeurs Ă un dĂ©pĂŽt spĂ©cifique doivent avoir installĂ©. Pour plus dâinformations, consultez « Personnalisation de GitHub Codespaces pour votre compte » et « PrĂ©sentation des conteneurs de dĂ©veloppement ».
Ajout dâun profil de terminal VS Code pour un nouvel interprĂ©teur de commandes
VS Code dĂ©tecte automatiquement la plupart des interprĂ©teurs de commandes standard et les ajoute en tant que profil de terminal pour vous permettre dâouvrir facilement de nouvelles fenĂȘtres de terminal Ă lâaide de lâinterprĂ©teur de commandes que vous avez installĂ©.
Si lâinterprĂ©teur de commandes que vous installez nâest pas dĂ©tectĂ© automatiquement, vous pouvez ajouter un nouveau profil de terminal Ă vos paramĂštres utilisateur. Ce paramĂštre dĂ©pend de votre systĂšme dâexploitation, donc vous devez utiliser linux
pour le client web VS Code et votre systĂšme dâexploitation local pour lâapplication de bureau.
-
Pour ouvrir la Visual Studio Code Command Palette, appuyez sur Commande+Maj+P (Mac) ou Ctrl+Maj+P (Windows).
-
Commencez à taper « paramÚtres utilisateur », puis cliquez sur Préférences : Ouvrir les paramÚtres utilisateur (JSON) .
-
Dans le fichier
settings.json
, Ă lâintĂ©rieur de lâobjet JSON, ajoutez une nouvelle propriĂ©tĂ© comme suit. RemplacezOPERATING-SYSTEM
par le systĂšme dâexploitation appropriĂ© (par exemplelinux
,windows
ouosx
) etSHELL
par lâinterprĂ©teur de commandes que vous avez installĂ©.JSON "terminal.integrated.profiles.OPERATING-SYSTEM": { "SHELL": { "path": "SHELL" } }
"terminal.integrated.profiles.OPERATING-SYSTEM": { "SHELL": { "path": "SHELL" } }
Par exemple :
"terminal.integrated.profiles.linux": { "csh": { "path": "csh" } }
-
Enregistrez le fichier .
Vous pouvez utiliser la Synchronisation des paramĂštres pour partager ces paramĂštres entre tous les codespaces que vous ouvrez dans le client web VS Code et lâapplication de bureau. Si vous travaillez dans le client web, la Synchronisation des paramĂštres est dĂ©sactivĂ©e par dĂ©faut et vous devez lâactiver pour pousser (push) les modifications vers vos paramĂštres ou tirer (pull) de nouvelles modifications que vous avez apportĂ©es ailleurs. Pour plus dâinformations, consultez « Personnalisation de GitHub Codespaces pour votre compte ».
DĂ©finition de lâinterprĂ©teur de commandes par dĂ©faut dans VS Code
Vous pouvez dĂ©finir un profil de terminal par dĂ©faut pour choisir lâinterprĂ©teur de commandes par dĂ©faut utilisĂ© pour toutes les nouvelles fenĂȘtres de terminal que vous ouvrez dans VS Code. Le profil de terminal par dĂ©faut dĂ©pend de votre systĂšme dâexploitation, donc vous pouvez dĂ©finir un profil par dĂ©faut pour Linux si vous utilisez le client web VS Code, ou pour votre systĂšme dâexploitation local si vous utilisez lâapplication de bureau.
Remarque
Quel que soit votre profil par défaut, les espaces de code ouverts dans le client web s'ouvrent toujours avec une session bash
en cours d'exécution.
-
Pour ouvrir la Visual Studio Code Command Palette, appuyez sur Commande+Maj+P (Mac) ou Ctrl+Maj+P (Windows).
-
Commencez à taper « paramÚtres utilisateur », puis cliquez sur Préférences : Ouvrir les paramÚtres utilisateur (JSON) .
-
Dans lâobjet JSON, pour dĂ©finir lâinterprĂ©teur de commandes par dĂ©faut pour le systĂšme dâexploitation appropriĂ©, ajoutez des lignes ou modifiez des lignes existantes comme suit.
"terminal.integrated.defaultProfile.OPERATING-SYSTEM": "SHELL"
Par exemple :
JSON { "terminal.integrated.defaultProfile.osx": "zsh", "terminal.integrated.defaultProfile.linux": "bash", "terminal.integrated.defaultProfile.windows": "PowerShell" }
{ "terminal.integrated.defaultProfile.osx": "zsh", "terminal.integrated.defaultProfile.linux": "bash", "terminal.integrated.defaultProfile.windows": "PowerShell" }
-
Enregistrez le fichier
settings.json
.
Vous pouvez utiliser la Synchronisation des paramĂštres pour partager ces paramĂštres entre tous les codespaces que vous ouvrez dans le client web VS Code et lâapplication de bureau. Si vous travaillez dans le client web, la Synchronisation des paramĂštres est dĂ©sactivĂ©e par dĂ©faut et vous devez lâactiver pour pousser (push) les modifications vers vos paramĂštres ou tirer (pull) de nouvelles modifications que vous avez apportĂ©es ailleurs. Pour plus dâinformations, consultez « Personnalisation de GitHub Codespaces pour votre compte ».
DĂ©finition de lâinterprĂ©teur de commandes par dĂ©faut sur SSH
Lorsque vous vous connectez Ă un codespace Ă partir de la ligne de commande via SSH, vous vous connectez Ă une session bash
dans le codespace par défaut.
Si vous avez activĂ© un dĂ©pĂŽt dotfiles pour GitHub Codespaces, vous pouvez changer lâinterprĂ©teur de commandes par dĂ©faut auquel vous vous connectez en ajoutant une commande Ă un script dâinstallation, comme install.sh
dans vos dotfiles. Pour plus dâinformations, consultez « Utilisation de GitHub Codespaces avec lâinterface CLI de GitHub » et « Personnalisation de GitHub Codespaces pour votre compte ». Par exemple, la commande suivante remplace lâinterprĂ©teur de commandes par dĂ©faut par zsh
.
sudo chsh "$(id -un)" --shell "/usr/bin/zsh"
sudo chsh "$(id -un)" --shell "/usr/bin/zsh"
Si vous souhaitez utiliser un interprĂ©teur de commandes par dĂ©faut qui nâest pas installĂ© dans votre codespace par dĂ©faut, ou vĂ©rifier que vous avez la derniĂšre version de lâinterprĂ©teur de commandes, vous pouvez commencer par installer lâinterprĂ©teur de commandes.
sudo apt-get update -y sudo apt-get install -y csh sudo chsh "$(id -un)" --shell "/usr/bin/csh"
sudo apt-get update -y
sudo apt-get install -y csh
sudo chsh "$(id -un)" --shell "/usr/bin/csh"
Remarque
Si vous créez un codespace (par exemple avec gh codespace create
), vous devez attendre suffisamment de temps pour vous assurer que le script a terminĂ© son exĂ©cution avant de vous connecter au codespace via SSH. Si lâexĂ©cution du script nâest pas terminĂ©e, vous vous connecterez Ă une session bash
par défaut.
Lorsque vous ĂȘtes connectĂ© au codespace, dans la plupart des interprĂ©teurs de commandes, vous pouvez utiliser la commande readlink /proc/$$/exe
pour vĂ©rifier que lâinterprĂ©teur de commandes appropriĂ© est en cours dâexĂ©cution.
Configuration de votre interpréteur de commandes
Avec la plupart des interprĂ©teurs de commandes, vous avez la possibilitĂ© dâutiliser un fichier de configuration, tel que .bashrc
, pour configurer lâinterprĂ©teur de commandes avec vos paramĂštres prĂ©fĂ©rĂ©s. Ces paramĂštres peuvent inclure des Ă©lĂ©ments tels que des alias et des variables dâenvironnement.
Par dĂ©faut, les codespaces contiennent une configuration prĂ©dĂ©finie pour les interprĂ©teurs de commandes prĂ©installĂ©s. Par exemple, le rĂ©pertoire de base dâun codespace contient les fichiers .bashrc
et .zshrc
. Vous pouvez changer le contenu de ces fichiers, puis utiliser une commande telle que source ~/.bashrc
pour mettre Ă jour la configuration de votre interprĂ©teur de commandes. Toutefois, vous perdrez toute modification apportĂ©e Ă ces fichiers si vous reconstruisez le conteneur dans un codespace. Pour plus dâinformations, consultez « PrĂ©sentation approfondie de GitHub Codespaces ».
En rĂšgle gĂ©nĂ©rale, vous devez utiliser un dĂ©pĂŽt dotfiles pour configurer les interprĂ©teurs de commandes avec vos paramĂštres prĂ©fĂ©rĂ©s. La configuration de vos dotfiles sâapplique Ă tous les codespaces que vous crĂ©ez et persiste aprĂšs les reconstructions du conteneur. Pour plus dâinformations, consultez « Personnalisation de GitHub Codespaces pour votre compte ».
RĂ©solution des problĂšmes de lâinterprĂ©teur de commandes fish
LâinterprĂ©teur de commandes fish
inclut une interface de configuration web. Vous pouvez utiliser la commande fish_config
pour dĂ©marrer un serveur web local et lancer cette interface, puis effectuer des opĂ©rations comme changer lâinvite de terminal ou afficher vos variables dâenvironnement.
Vous pouvez utiliser lâinterface web de fish
dans un codespace. Toutefois, les paramĂštres de couleur dans le terminal intĂ©grĂ© de VS Code dĂ©pendent du thĂšme VS Code choisi, et vous ne pouvez pas remplacer ces paramĂštres en dĂ©finissant un nouveau thĂšme dans lâinterface fish_config
.
Lorsque fish
dĂ©marre le serveur local, le lien par dĂ©faut que fournit GitHub Codespaces au port transfĂ©rĂ© ne fonctionne pas. Par exemple, si vous cliquez sur Ouvrir dans le navigateur dans le message contextuel, vous arrivez sur une page dâerreur.
Pour accĂ©der Ă lâinterface web de fish_config
:
-
Dans un terminal exécutant une session
fish
, entrezfish_config
. -
Dans la sortie du terminal, utilisez Commande+clic ou Ctrl+clic pour ouvrir le lien dans le fichier HTML
web_config
.$ fish_config Web config started at file:///tmp/web_config60rc9tr3.html Hit ENTER to stop.
-
Dans le fichier
web_config
, utilisez Commande+clic ou Ctrl+clic pour ouvrir le lien dans le port transféré.<body> <p><a href="http://localhost:8000/1b9411c2469e392b96df5e5b28da485b/">Start the Fish Web config</a></p> </body>