Vrijwel iedere systeembeheerder werkt dagelijks met PowerShell of Windows Terminal. Toch ziet de prompt van de meesten er nog steeds zo uit:
Functioneel? Zeker. Handig? Niet echt. Met Oh My Posh verander je die eenvoudige prompt in een slimme werkbalk die in één oogopslag laat zien in welke map je werkt, welke Git-branch actief is, of je Administrator bent, welke Azure Subscription actief is en nog veel meer. Zo ziet mijn eigen Windows Terminal er momenteel uit:
Wat doet Oh My Posh precies?
Oh My Posh is een prompt-engine die werkt in PowerShell, Windows Terminal, WSL, Azure CLI en vrijwel elke andere shell. Via een JSON-configuratiebestand bepaal je precies welke informatie zichtbaar is en hoe die eruitziet. Dankzij Nerd Fonts verschijnen er herkenbare iconen voor Git, Azure, Kubernetes, Docker en tientallen andere tools.
De informatie die Oh My Posh automatisch oppikt:
- Huidige map en schijf
- Git-branch, status en uncommitted changes
- Administrator-rechten (visuele waarschuwing)
- Azure Subscription en actieve context
- Kubernetes Context en namespace
- Execution time van het vorige commando
- Batterijstatus, tijd, SSH-verbinding en VPN-status
- Taalversies: Node.js, Python, Go, Java, Terraform
Installatie in zes stappen
Installeer Oh My Posh via WinGet
Microsoft adviseert WinGet en dat is ook verreweg de makkelijkste methode. Heb je WinGet nog niet? Lees dan eerst de WinGet-blog.
winget install JanDeDobbeleer.OhMyPosh --source winget
Controleer daarna of de installatie gelukt is en houd Oh My Posh in de toekomst bij via:
oh-my-posh version winget upgrade JanDeDobbeleer.OhMyPosh
Installeer een Nerd Font
Zonder een Nerd Font zie je vreemde blokjes of vraagtekens in plaats van iconen. Oh My Posh kan dit tegenwoordig zelf installeren:
oh-my-posh font install
Kies uit de lijst een font naar smaak. Persoonlijk vind ik Meslo LGM Nerd Font de mooiste combinatie van leesbaarheid en uitstraling - ook de aanbeveling van Jan de Dobbeleer, de ontwikkelaar achter Oh My Posh.
Stel het font in Windows Terminal in
Open Windows Terminal, ga naar Instellingen → Standaardwaarden → Vormgeving en stel de lettertypefamilie in op MesloLGM Nerd Font (of het font dat je gekozen hebt). Vanaf nu verschijnen alle iconen correct in elke shell.
Activeer Oh My Posh in je PowerShell-profiel
Open je PowerShell-profiel in Notepad:
notepad $PROFILE
Bestaat het profiel nog niet? Maak het eerst aan:
New-Item -ItemType File -Path $PROFILE -Force
Voeg vervolgens deze regel toe aan het profiel en sla het op:
oh-my-posh init pwsh | Invoke-Expression
Herstart Windows Terminal. Oh My Posh wordt vanaf nu automatisch geladen bij elke sessie.
Kies een thema
Oh My Posh bevat tientallen ingebouwde thema's. Bekijk alle beschikbare thema's met:
Get-ChildItem "$env:POSH_THEMES_PATH"
Probeer een thema direct live uit (zonder het profiel te wijzigen):
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\jandedobbeleer.omp.json" | Invoke-Expression
Populaire thema's om te proberen: atomic, paradox, catppuccin, clean-detailed en bubbles. Heb je een favoriet gevonden? Vervang dan de activatieregel in je profiel door de versie met --config.
Installeer Terminal-Icons
Voor nóg mooiere mapweergaven: Terminal-Icons voegt herkenbare pictogrammen toe aan bestanden en mappen in je terminal, vergelijkbaar met moderne Linux-shells.
Install-Module Terminal-Icons -Repository PSGallery
Voeg daarna de import toe aan je PowerShell-profiel (notepad $PROFILE):
Import-Module Terminal-Icons
Verschillende omgevingen herkenbaar maken
Hier wordt het pas echt interessant voor systeembeheerders. Je kunt per Windows Terminal-profiel een eigen kleur instellen, zodat je onmiddellijk ziet in welke omgeving je werkt. Zo zie je direct of je op een productieomgeving zit, nog voordat je ook maar één commando typt.
| Omgeving | Kleur | Waarom |
|---|---|---|
| 🖥️ Windows PowerShell | Blauw | Vertrouwde standaardomgeving |
| ☁️ Azure Productie | Rood | Direct duidelijk: gevaarzone |
| 🧪 Azure Test / OTAP | Oranje | Voorzichtigheid geboden |
| 🐧 Linux / WSL | Groen | Herkenbaar Linux-groen |
| 🐳 Docker | Paars | Container-context |
| ⎈️ Kubernetes / AKS | Geel | Cluster-omgeving |
Je stelt deze kleur in via de accentkleur per profiel in Windows Terminal Instellingen. Zo zie je aan de kleur van de titelbalk of het tabblad onmiddellijk in welke context je werkt, zonder de prompt te hoeven lezen.
Mijn persoonlijke setup
Dit is de combinatie die ik zelf gebruik en die ik iedere IT Pro aanraad:
PSReadLine, zoxide en fzf verdienen een eigen blogpost - die combinatie maakt je terminal nóg efficiënter. Meer daarover in een volgende blog.
Extra tips van Scott Hanselman
Scott Hanselman, Microsoft-medewerker en bekende developer-blogger, schrijft al jaren over Oh My Posh en Windows Terminal. Een paar praktische tips uit zijn blogpost die de moeite waard zijn:
PowerShell 7 als standaard shell
Gebruik niet de klassieke "Windows PowerShell" maar PowerShell 7, de moderne .NET-powered variant die ook op Linux en macOS draait. Installeer hem via WinGet en stel hem in als standaardprofiel in Windows Terminal:
winget install Microsoft.PowerShell
Je Oh My Posh-config centraal bewaren
Scott bewaart zijn persoonlijke Oh My Posh JSON-configuratie in OneDrive en laadt die direct vanuit zijn profiel. Zo is zijn prompt op elk apparaat identiek, zonder handmatig kopiëren:
oh-my-posh init pwsh --config "$env:OneDrive\ohmyposh.json" | Invoke-Expression
Oh My Posh ondersteunt ook een URL als config-pad, zodat je je thema vanuit een publieke GitHub Gist kunt laden. Handig als je meerdere machines beheert.
Profiel herladen zonder Terminal te herstarten
Na een wijziging in je $PROFILE hoef je Windows Terminal niet te herstarten. Laad het profiel direct opnieuw met:
. $PROFILE
PSReadLine: voorspellende autocomplete
Scott zweert bij PSReadLine voor slimme autocomplete op basis van je commandogeschiedenis. Voeg dit toe aan je profiel voor een lijst-stijl voorspelling die laat zien welke commando's je eerder hebt gebruikt:
Set-PSReadLineOption -PredictionSource History Set-PSReadLineOption -PredictionViewStyle ListView
CaskaydiaCove NF, niet "Cascadia Code". Een verkeerde spatie of hoofdletter is al genoeg om het mis te laten gaan.
Conclusie
Een terminal hoeft allang niet meer een saai zwart venster met witte tekst te zijn. Met Oh My Posh verander je Windows Terminal in een slimme beheeromgeving die je direct inzicht geeft in de context waarin je werkt. Of je nu PowerShell gebruikt, via WSL op Linux inlogt, Git-repositories beheert of resources in Azure aanstuurt: de juiste informatie staat altijd zichtbaar in je prompt.
En het mooiste? De installatie duurt twintig minuten. De tijdwinst daarna is permanent.
cd, en fzf voor fuzzy zoeken in je commandogeschiedenis.