Tutoriel : Configurer Powerline sur le Terminal Windows

Powerline fournit une expérience d’invite de commandes personnalisée qui fournit des invites et des codes de couleurs d’état Git.

Powerline pour PowerShell dans le Terminal Windows

Dans ce tutoriel, vous allez découvrir comment :

  • Configurer Powerline dans PowerShell
  • Configurer Powerline dans Ubuntu/WSL
  • Ajouter des glyphes Powerline manquants

Prérequis

Installer une police Powerline

Powerline utilise des glyphes pour donner un style à l’invite. Si votre police n’inclut pas les glyphes Powerline, vous pouvez voir différents caractères de remplacement Unicode « ▯ » dans votre invite. Bien que Cascadia Mono n’inclue pas les glyphes de Powerline, vous pouvez installer Cascadia Code PL ou Cascadia Mono PL, dont les glyphes sont inclus. Ces polices peuvent être installées à partir de la page de versions de Cascadia Code sur GitHub.

Configurer Powerline dans PowerShell

Conditions préalables pour PowerShell

Si vous ne l’avez pas déjà fait, installez Git pour Windows.

À l’aide de PowerShell, installez Posh-Git et Oh-My-Posh :

Install-Module posh-git -Scope CurrentUser
Install-Module oh-my-posh -Scope CurrentUser

Conseil

Il se peut que vous deviez installer NuGet si vous ne l’avez pas déjà fait. Si tel est le cas, votre ligne de commande PowerShell vous demande si vous souhaitez installer NuGet. Sélectionnez [Y] Oui. Vous devrez peut-être également confirmer que vous installez des modules à partir de PSGallery, un « dépôt non approuvé ». Sélectionnez [Y] Oui.

Posh-Git ajoute les informations d’état Git à votre invite, ainsi que la saisie semi-automatique par tabulation pour les nom des commandes, paramètres, branches et remotes Git. Oh-My-Posh fournit des fonctionnalités de thème pour votre invite PowerShell.

Si vous utilisez PowerShell Core, installez PSReadline :

Install-Module -Name PSReadLine -Scope CurrentUser -Force -SkipPublisherCheck

PSReadline vous permet de personnaliser l’environnement d’édition de ligne de commande dans PowerShell.

Personnaliser votre invite PowerShell

Ouvrez votre profil PowerShell avec notepad $PROFILE ou l’éditeur de texte de votre choix. Il ne s’agit pas de votre profil Terminal Windows. Votre profil PowerShell est un script qui s’exécute chaque fois que PowerShell démarre. En savoir plus sur les profils PowerShell.

Dans votre profil PowerShell, ajoutez le code suivant à la fin du fichier :

Import-Module posh-git
Import-Module oh-my-posh
Set-Theme Paradox

À présent, chaque nouvelle instance commence par importer Posh-Git et Oh-My-Posh, puis définit le thème Paradox à partir de Oh-My-Posh. Oh-My-Posh est fourni avec plusieurs thèmes intégrés.

Définir Cascadia Code PL en tant que fontFace dans les paramètres

Pour définir la police Cascadia Code PL à utiliser avec Powerline (après le téléchargement, la décompression et l’installation sur votre système), vous devez ouvrir vos paramètres de profil dans le fichier settings.json en sélectionnant Paramètres (Ctrl+,) dans le menu déroulant de Terminal Windows.

Une fois votre fichier settings.json ouvert, recherchez le profil Windows PowerShell et ajoutez "fontFace": "Cascadia Code PL" pour désigner Cascadia Code PL comme police. Vous obtiendrez ainsi ces glyphes Cascadia Code Powerline. Vous devez noter le changement dans votre terminal dès que vous sélectionnez Enregistrer dans votre éditeur.

Votre fichier settings.json de profil Windows PowerShell doit maintenant ressembler à ceci :

{
    // Make changes here to the powershell.exe profile.
    "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
    "name": "Windows PowerShell",
    "commandline": "powershell.exe",
    "fontFace": "Cascadia Code PL",
    "hidden": false
},

Configurer Powerline dans WSL Ubuntu

Conditions préalables pour WSL Ubuntu

Ubuntu propose plusieurs options d’installation de Powerline. Ce didacticiel va vous permettre d’utiliser Go et Powerline-Go :

sudo apt install golang-go
go get -u github.com/justjanne/powerline-go

Personnaliser votre invite Ubuntu

Ouvrez votre fichier ~/.bashrc avec nano ~/.bashrc ou l’éditeur de texte de votre choix. Il s’agit d’un script bash qui s’exécute chaque fois que bash démarre. Ajoutez ce qui suit, bien qu’il soit possible que GOPATH existe déjà :

GOPATH=$HOME/go
function _update_ps1() {
    PS1="$($GOPATH/bin/powerline-go -error $?)"
}
if [ "$TERM" != "linux" ] && [ -f "$GOPATH/bin/powerline-go" ]; then
    PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND"
fi

Ressources supplémentaires