Skip to main content

Command Palette

Search for a command to run...

Utiliser "Oh my posh" sur le Terminal Windows

Oh My Posh fournit une expĂ©rience d’invite de commandes entiĂšrement personnalisĂ©e qui fournit des invites et des codes de couleurs d’état Git.

Published
‱3 min read
Utiliser "Oh my posh" sur le Terminal Windows

Installer "Oh My Posh" via Winget

Pour personnaliser votre invite PowerShell, vous pouvez installer Oh My Posh en utilisant WinGet. Entrez la commande :

winget install JanDeDobbeleer.OhMyPosh

Ajouter les modules PowerShell posh-git & oh-my-posh :

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

Ajouter la police Nerd

Oh My Posh a Ă©tĂ© conçu pour utiliser les polices Nerd. Les polices Nerd sont des polices populaires qui sont corrigĂ©es pour inclure des icĂŽnes. Nous recommandons Meslo LGM NF, mais toute police Nerd doit ĂȘtre compatible avec les thĂšmes standard. Pour voir les icĂŽnes affichĂ©es dans Oh My Posh, installez une police Nerd et configurez votre terminal pour l'utiliser.

Oh My Posh a une CLI pour vous aider à sélectionner et installer une police Nerd

Pour se faire, ouvrez un Terminal Windows en tant qu'administrateur et utilisez la commande suivante :

oh-my-posh font install

Puis séléctionnez la police Meslo :

Une fois l'installation terminée, vous devriez obtenir ce message :

Maintenant, depuis le Terminal Windows, utilisez la combinaison CTRL + SHIT + , et spécifiez l'usage de la nouvelle police en ajoutant cette ligne dans le fichier JSON des paramÚtres :

{
    "profiles":
    {
        "defaults":
        {
            "font":
            {
                "face": "MesloLGM Nerd Font"
            }
        }
    }
}

Ajouter un thĂšme

Oh My Posh est livrĂ© avec de nombreux thĂšmes inclus prĂȘts Ă  l'emploi. Vous pouvez trouver la liste complĂšte des thĂšmes sur Github.

N'hésitez pas à parcourir la documentation pour trouver votre thÚme : https://ohmyposh.dev/docs/themes

Si vous utilisez PowerShell, vous pouvez afficher tous les thĂšmes disponibles Ă  l'aide de l'applet de commande PowerShell suivante :

Get-PoshThemes

Une fois votre thÚme identifié ajouter le JSON associé dans le répertoire associé à la variable d'environnement suivante :

$env:POSH_THEMES_PATH

Dans mon cas; voici le résultat:

C:\Users\Ryzen\AppData\Local\Programs\oh-my-posh\themes

Pour plus de facilité, j'ai télécharger le repository GitHub puis j'ai copier / coller les JSON associés aux thÚmes dans ce répertoire:

Maintenant il ne reste plus qu'Ă  appliquer un des thĂšmes avec cette commande:

oh-my-posh init pwsh --config 'C:\Users\Ryzen\AppData\Local\Programs\oh-my-posh\themes\jandedobbeleer.omp.json' | Invoke-Expression

Et voilà, le thÚme est appliqué:

Pour qu'il se charge à chaque fois avec mon profil il suffit de modifier le fichier associé:

notepad $PROFILE

Coller et enregistrer dans le fichier la ligne suivante:

oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\thecyberden.omp.json" | Invoke-Expression

Ajouter des icĂŽnes de fichier ou dossier manquantes

Terminal-icons est un module PowerShell qui permet d’ajouter des icĂŽnes de fichier et dossier susceptibles d’ĂȘtre manquantes lors de l’affichage de fichiers ou dossiers dans le Terminal Windows, en recherchant leur icĂŽne appropriĂ©e en fonction de leur nom ou extension. Le module tente d’utiliser des icĂŽnes pour les fichiers/dossiers connus, mais revient Ă  une icĂŽne de fichier ou dossier gĂ©nĂ©rique si aucune icĂŽne n’est trouvĂ©e.

Install-Module -Name Terminal-Icons -Repository PSGallery

Visual Studio Code

AprÚs avoir configurer votre Terminal Windows, vous pouvez aussi l'utiliser via le Terminal VS Code. De mon cÎté, j'ai dû reconfigurer la police du Terminal VS Code pour éviter ce désagrément :

Dans les "Settings" de VS Code il m'a fallu modifier la valeur de :
Terminal > Integrated: Font Family

Et y spécifier la valeur suivante:

MesloLGM Nerd Font

Et voilĂ :

Mise Ă  jour

Pour mettre Ă  jour Oh My Posh, rien de plus simple qu'une ligne de commande :

winget upgrade JanDeDobbeleer.OhMyPosh -s winget

Liens utiles

More from this blog

A

Antoine LOIZEAU | MVP đŸ„‡ Senior Cloud Architect ☁ Expert DevSecOps 🚀

52 posts

Ayant eu de multiples expériences dans le monde du conseil, j'ai pu acquérir une expertise dans la conception et l'automatisation de solutions Cloud Native.