Comment utiliser PowerShell avec Visual Studio Code ?
Sommaire
I. Présentation
Dans ce tutoriel, nous allons apprendre à utiliser Visual Studio Code (VSCode) pour créer des scripts PowerShell. L'intégration de PowerShell dans VSCode est relativement simple, alors nous allons profiter de cet article pour voir quelques astuces !
Compatible avec Windows, macOS et Linux, Visual Studio Code est devenu en quelques années une application incontournable pour éditer du code. Il est entièrement gratuit, open source et prend en charge de nombreux langages, dont PowerShell. Il présente aussi l'avantage de prendre en charge Git comme système de versioning.
À la différence de l'éditeur PowerShell ISE, VSCode prend en charge à la fois Windows PowerShell et PowerShell. Bien que PowerShell ISE soit toujours utile et pratique dans certains cas (éditer un script rapidement sur un serveur, par exemple), VSCode est l'éditeur à préférer pour votre poste de travail.
Pour en savoir plus sur Visual Studio Code, consultez le site officiel :
Visual Studio Code ne doit pas être confondu avec Visual Studio qui est une suite de développement beaucoup plus lourde (IDE) et qui s'adresse directement aux développeurs d'applications. Bien que l'on puisse utiliser Visual Studio pour écrire du code PowerShell, il est préférable d'utiliser VSCode.
Pour cette démonstration, une machine sous Windows 11 22H2 sur laquelle Windows PowerShell 5.1 et PowerShell 7 sont installés sera utilisée.
II. Installer Visual Studio Code
Commencez par installer Visual Studio Code sur votre machine, si ce n'est pas déjà fait. Il est accessible sur le site officiel. Pour Windows, vous avez le choix entre l'installation au niveau de la machine pour tous les utilisateurs ou uniquement dans votre profil.
L'installation s'effectue en quelques clics...
Au premier lancement, un assistant de bienvenu est là pour vous guider dans vos premiers pas avec Visual Studio Code, notamment pour définir un thème. Vous avez aussi la possibilité de synchroniser VSCode avec votre compte Microsoft pour retrouver les mêmes paramètres entre vos différents appareils. Par ailleurs, la synchronisation GitHub permettra de synchroniser vos scripts avec votre dépôt.
Voilà, l'installation est effectuée, que fait-on ensuite ?
III. Ajouter l'extension PowerShell à VSCode
Par défaut, Visual Studio Code peut éditer des fichiers textes, mais il n'est pas prêt à vous accompagner pour éditer du code PowerShell. Il faut savoir que VSCode s'appuie sur un système d'extension : chaque extension va venir ajouter des fonctionnalités à Visual Studio Code.
Cliquez sur l'icône des extensions sur la gauche (1), recherchez "powershell" (2) et cliquez sur l'extension "PowerShell" proposée par Microsoft (3).
Remarque : si vous souhaitez un environnement complet avec PowerShell et d'autres extensions qui pourront être utile (intégration GitHub, support du YAML, support du Markdown, un color picker, etc...), vous pouvez regarder la collection d'extensions "PowerShell Extension Pack" proposée par Justin Grote. Elle regroupe 32 extensions. Vous pouvez aussi parcourir la liste d'extensions de cette collection : ceci pourra vous donner des idées !
Cliquez sur le bouton "Install" et patientez pendant quelques secondes. Visual Studio Code ajoute l'extension PowerShell à votre machine.
Remarque : vous pouvez également installer l'extension en saisissant la commande "ext install powershell" après avoir utilisé le raccourci CTRL + P.
Les extensions sont installées dans le profil de l'utilisateur. Voici le répertoire utilisé sur chaque système :
- Windows : %USERPROFILE%\.vscode\extensions.
- macOS : ~/.vscode/extensions.
- Linux : ~/.vscode/extensions.
A partir du moment où l'extension est installé, VSCode est prêt à éditer du code PowerShell !
IV. Utiliser PowerShell avec VSCode
A. Configurer VSCode pour PowerShell
Avant de créer un script, nous allons modifier deux options dans les paramètres de VSCode afin de :
- Définir PowerShell en tant que langage par défaut
- Activer l'utilisation de la touche TAB pour l'autocomplétion (ce qui plaira d'autant plus à ceux habitués à PowerShell ISE)
Pour accéder à la zone de saisie des commandes, utilisez le raccourci "F1" ou "CTRL + SHIFT + P". C'est un bon moyen d'exécuter des actions dans VSCode sans parcourir les menus.
Ici, recherchez "User settings" afin de cliquer sur "Preferences: Open User Settings". Vos préférences sont personnelles et enregistrées dans votre session.
Une fois sur la page des paramètres, recherchez "files.default" et modifiez le paramètre "Files: Default Language" de manière à indiquer la valeur "powershell". Comme ceci :
Quand c'est fait, recherchez le second paramètre via le mot clé "editor.tab" et basculez sur "on" le paramètre nommé "Editor: Tab Completion". Il est à noter que VSCode bénéficie d'IntelliSense (comme PowerShell ISE) qui est une bonne aide quand on code.
Il y a beaucoup d'autres paramètres disponibles et qui pourront vous permettre de personnaliser votre environnement. Nous allons nous satisfaire de ces deux options pour débuter.
B. Créer un premier script PowerShell
Dans Visual Studio Code, il y a plusieurs façons de créer un nouveau fichier. Tout simplement, vous pouvez cliquer sur le menu "File" puis "New File", mais le plus rapide c'est d'utiliser le raccourci "CTRL + N" afin de créer un nouveau fichier au format PowerShell (puisque c'est le langage par défaut définit dans les paramètres).
- Retrouvez tous nos tutoriels PowerShell
Un nouveau fichier s'ouvre dans un onglet dédié. Sans rentrer dans le détail, voici quelques informations sur l'organisation de l'interface de VSCode :
1 - Zone où vous rédigez votre script PowerShell (ou dans un autre langage), c'est l'éditeur de code tout simplement.
2 - Zone où se situe le terminal. C'est là que vous pouvez visualiser le résultat de votre script, ou saisir directement des commandes.
3 - Zone avec des boutons d'action. Le premier bouton sert à exécuter tout le script, le second bouton sert à exécuter la sélection, tandis que le troisième bouton permet de diviser l'éditeur de code en deux zones et ainsi avoir deux scripts côte à côte.
4 - Zone de l'Explorer, où vous pouvez afficher le contenu d'un répertoire de votre PC (un répertoire où vous stockez vos scripts, par exemple). Ce répertoire sera associé à un workspace qui aura sa propre configuration. Vous pouvez créer plusieurs workspaces (voir la documentation officielle à ce sujet).
Il ne vous reste plus qu'à coder ! Pensez à enregistrer votre script.
Note : à partir du moment où le dossier avec vos scripts est enregistré en tant que workspace (File > Save workspace as), vous pouvez bénéficier du formatage automatique du code (indentation) grâce au raccourci suivant : Shift + Alt + F. Ceci va mettre en forme votre code en un clin d'oeil !
C. Le mode ISE dans VSCode
Pour les personnes habituées à PowerShell ISE, sachez que Visual Studio Code intègre un mode nommé tout bonnement "Mode ISE".
Pour l'activer, il suffit d'appeler l'invite de commande VSCode via F1 et de saisir "ISE Mode" afin de cliquer sur "PowerShell: Enable ISE Mode". Pour le désactiver, il suffit de répéter l'opération pour sélectionner "PowerShell: Disable ISE Mode".
Voici un aperçu :
D. Basculer entre PowerShell et Windows PowerShell
Visual Studio Code peut utiliser Windows PowerShell et PowerShell, contrairement à PowerShell ISE qui sait seulement utiliser Windows PowerShell. Comment basculer d'une version de PowerShell à l'autre dans VSCode ?
Vous devez cliquer sur le bouton "{}" en bas à droite afin de cliquer sur "Show PowerShell Session Menu".
Dans le menu qui apparaît, choisissez "Windows PowerShell" ou "PowerShell", en fonction de la version que vous souhaitez utiliser.
Vous pouvez ouvrir plusieurs Terminal PowerShell en même temps et choisir la version que vous souhaitez. Ainsi, vous pouvez passer de l'un à l'autre facilement en cliquant dessus dans la liste !
V. Conclusion
En suivant ce tutoriel, vous serez en mesure d'utiliser Visual Studio Code en tant qu'éditeur de code pour PowerShell ! Il y a beaucoup d'autres fonctionnalités à explorer, car VSCode est une application riche et personnalisable ! Si vous avez des questions ou des idées de tutoriels, n'hésitez pas à laisser un commentaire sur cet article.
En attendant la suite, pour aller plus loin, vous pouvez consulter la documentation VSCode :
Tu as pu tester l’intégration avec Github Copilot for powershell ? C’est une AI qui génère le code (comme code whisperer de aws).