Personnaliser votre terminal avec les thèmes et plugins Oh My Zsh

Votre terminal n’a pas besoin de ressembler à une relique des années 1980. Si vous passez des heures chaque jour en ligne de commande mais utilisez encore l’invite par défaut sans retour visuel, vous passez à côté de gains de productivité significatifs. Les bons thèmes et plugins Oh My Zsh peuvent transformer votre terminal d’une interface texte basique en un environnement de développement puissant et visuellement informatif.
Ce guide couvre tout ce dont vous avez besoin pour personnaliser votre configuration de terminal : changer les thèmes via la configuration .zshrc
, installer des thèmes modernes comme Powerlevel10k, et activer les plugins essentiels pour les flux de travail de développement web. Vous apprendrez des techniques pratiques qui économisent les frappes de touches et fournissent un retour visuel instantané sur votre statut Git, la structure des répertoires et l’historique des commandes.
Points clés à retenir
- Changez les thèmes Oh My Zsh en modifiant la variable
ZSH_THEME
dans.zshrc
- Powerlevel10k offre le meilleur équilibre entre fonctionnalités et performances
- Les plugins essentiels incluent git, zsh-autosuggestions et zsh-syntax-highlighting
- Installez les plugins communautaires en clonant vers
~/.oh-my-zsh/custom/plugins/
- Surveillez le temps de démarrage et supprimez les plugins inutilisés pour des performances optimales
- Résolvez les problèmes d’affichage en installant les polices appropriées et en vérifiant l’encodage du terminal
Comment changer les thèmes Oh My Zsh via .zshrc
Processus d’installation rapide des thèmes
Changer votre thème Oh My Zsh nécessite de modifier une seule ligne dans votre fichier de configuration. Ouvrez votre fichier .zshrc
:
nano ~/.zshrc
Trouvez la variable ZSH_THEME
et remplacez la valeur actuelle :
ZSH_THEME="robbyrussell" # Thème par défaut
ZSH_THEME="agnoster" # Changer vers agnoster
Après avoir sauvegardé le fichier, rechargez votre configuration :
source ~/.zshrc
# ou
exec zsh
La commande exec zsh
redémarre complètement votre session shell, ce qui est plus fiable lors du passage entre des thèmes avec différentes dépendances.
Prévisualiser les thèmes disponibles
Avant de vous engager sur un thème, explorez vos options. Oh My Zsh inclut plus de 100 thèmes intégrés situés dans ~/.oh-my-zsh/themes/
. Listez-les avec :
ls ~/.oh-my-zsh/themes/
Pour un aperçu visuel, de nombreux thèmes incluent des captures d’écran dans le wiki Oh My Zsh. Vous pouvez également tester temporairement les thèmes en changeant la valeur ZSH_THEME
et en rechargeant votre shell sans modifier définitivement votre configuration.
Meilleurs thèmes Oh My Zsh pour la productivité des développeurs
Powerlevel10k - Le champion de la performance
Powerlevel10k se distingue comme le thème le plus riche en fonctionnalités et le plus performant disponible. Ce n’est pas techniquement un thème Oh My Zsh mais fonctionne parfaitement avec le framework.
Installez Powerlevel10k :
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
Mettez à jour votre .zshrc
:
ZSH_THEME="powerlevel10k/powerlevel10k"
Redémarrez votre terminal pour lancer l’assistant de configuration. Powerlevel10k fournit :
- Invite instantanée : S’affiche immédiatement pendant que les plugins se chargent en arrière-plan
- Intégration Git : Affiche la branche, le statut et les indicateurs d’avance/retard
- Performance : 10 à 100 fois plus rapide que les autres thèmes riches en fonctionnalités
- Personnalisation : Options de configuration étendues sans pénalités de performance
Thèmes Agnoster et Powerline
Le thème Agnoster a popularisé l’esthétique powerline avec ses séparateurs en flèche distinctifs et ses indicateurs de statut Git. Cependant, il nécessite des polices spécifiques pour s’afficher correctement.
Installez les polices Powerline :
git clone https://github.com/powerline/fonts.git --depth=1
cd fonts
./install.sh
cd ..
rm -rf fonts
Configurez votre terminal pour utiliser une police Powerline comme “Meslo LG S for Powerline” ou “Source Code Pro for Powerline”. Sans les polices appropriées, vous verrez des points d’interrogation ou des boîtes au lieu de flèches.
Définissez le thème :
ZSH_THEME="agnoster"
Agnoster affiche votre nom d’utilisateur, nom d’hôte, chemin du répertoire et statut Git dans des segments visuellement distincts. Il est idéal pour les développeurs qui travaillent sur plusieurs machines ou ont besoin d’une séparation visuelle claire entre différents types d’informations.
Thèmes minimalistes pour la vitesse
Si vous priorisez la vitesse de démarrage du terminal plutôt que les fonctionnalités visuelles, les thèmes minimalistes offrent les meilleures performances :
Eastwood : Affiche uniquement le répertoire et la branche Git
ZSH_THEME="eastwood"
Simple : Affiche le répertoire avec la branche Git entre parenthèses
ZSH_THEME="simple"
Minimal : Complètement dépouillé, sans couleurs ni intégration Git
ZSH_THEME="minimal"
Ces thèmes se chargent instantanément et consomment des ressources minimales, les rendant parfaits pour les machines plus anciennes ou lors du travail via des connexions SSH lentes.
Plugins Oh My Zsh essentiels pour le développement web
Plugins de productivité de base
Le plugin git
est pré-installé et fournit des dizaines d’alias qui réduisent drastiquement la frappe. Au lieu de git status
, utilisez gst
. Remplacez git add --all
par gaa
. Le plugin inclut des raccourcis pour chaque opération Git courante.
Activez les plugins essentiels dans votre .zshrc
:
plugins=(
git
zsh-autosuggestions
zsh-syntax-highlighting
)
zsh-autosuggestions fournit une complétion de commande intelligente basée sur votre historique. Pendant que vous tapez, il suggère des commandes en texte gris. Appuyez sur la flèche droite pour accepter les suggestions.
Installez-le :
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
zsh-syntax-highlighting colore vos commandes pendant que vous tapez, facilitant la détection des fautes de frappe et la compréhension de la structure des commandes.
Installez-le :
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
Plugins spécifiques aux développeurs
Pour le développement Node.js, activez les plugins node
et npm
:
plugins=(git node npm zsh-autosuggestions zsh-syntax-highlighting)
Le plugin node
fournit des informations de version et des alias utiles, tandis que npm
ajoute des raccourcis pour les tâches courantes de gestion de paquets.
Si vous travaillez avec Docker, ajoutez les plugins docker
et docker-compose
pour la complétion de commandes et les alias :
plugins=(git docker docker-compose zsh-autosuggestions zsh-syntax-highlighting)
Pour les utilisateurs de VS Code, le plugin vscode
ajoute la commande code
et les raccourcis de projet :
plugins=(git vscode zsh-autosuggestions zsh-syntax-highlighting)
Gestion des fichiers et répertoires
Plusieurs plugins rationalisent les opérations sur les fichiers :
copydir : Copie le chemin du répertoire actuel vers le presse-papiers
copydir # Copie le chemin actuel
cd /some/other/location
cd $(pbpaste) # Navigue en arrière en utilisant le presse-papiers (macOS)
copyfile : Copie le contenu du fichier vers le presse-papiers
copyfile package.json # Copie le contenu du fichier
dirhistory : Navigue dans l’historique des répertoires avec des raccourcis clavier
Alt+Gauche
: Répertoire précédentAlt+Droite
: Répertoire suivantAlt+Haut
: Répertoire parent
Ajoutez-les à votre tableau de plugins :
plugins=(git copydir copyfile dirhistory zsh-autosuggestions zsh-syntax-highlighting)
Installation et gestion des plugins Oh My Zsh
Méthodes d’installation des plugins
Les plugins Oh My Zsh se divisent en deux catégories : intégrés et développés par la communauté. Les plugins intégrés sont situés dans ~/.oh-my-zsh/plugins/
et doivent seulement être ajoutés à votre tableau de plugins.
Les plugins communautaires nécessitent une installation manuelle. Clonez-les vers le répertoire de plugins personnalisés :
git clone https://github.com/plugin-author/plugin-name ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/plugin-name
Puis ajoutez le nom du plugin à votre .zshrc
:
plugins=(git plugin-name)
Configuration et mises à jour des plugins
Maintenez vos plugins à jour en exécutant périodiquement :
cd ~/.oh-my-zsh/custom/plugins/plugin-name
git pull
Pour les plugins intégrés, utilisez le mécanisme de mise à jour d’Oh My Zsh :
omz update
Surveillez les temps de chargement des plugins si votre shell devient lent :
time zsh -i -c exit
Si le temps de démarrage dépasse 1-2 secondes, considérez supprimer les plugins inutilisés ou passer à des alternatives plus légères.
Optimisation des performances pour Oh My Zsh
Optimisation du temps de démarrage
Oh My Zsh peut devenir lent avec trop de plugins. Profilez votre temps de démarrage :
time zsh -i -c exit
Identifiez les plugins lents en les désactivant temporairement et en mesurant la différence. Les coupables de performance courants incluent :
- Les plugins qui font des requêtes réseau
- Les thèmes avec une vérification complexe du statut Git
- Les plugins avec des scripts d’initialisation lourds
Considérez le chargement paresseux pour les plugins que vous n’utilisez pas immédiatement :
# Charger NVM seulement quand nécessaire
export NVM_LAZY_LOAD=true
Gestion de la mémoire et des ressources
Certains plugins entrent en conflit entre eux ou dupliquent des fonctionnalités. Évitez les plugins redondants :
- N’utilisez pas à la fois
zsh-autosuggestions
etzsh-autocomplete
- Supprimez les plugins obsolètes comme
zsh-reload
(utilisezexec zsh
à la place) - Désactivez les plugins pour les outils que vous n’utilisez pas
Surveillez l’utilisation des ressources avec :
ps aux | grep zsh
Personnalisation avancée d’Oh My Zsh
Création de thème personnalisé
Créez un thème personnalisé en copiant un thème existant :
cp ~/.oh-my-zsh/themes/robbyrussell.zsh-theme ~/.oh-my-zsh/custom/themes/mytheme.zsh-theme
Modifiez le fichier de thème pour personnaliser les couleurs, la mise en page et l’affichage des informations. Structure de base du thème :
PROMPT='%{$fg[cyan]%}%n%{$reset_color%}:%{$fg[green]%}%c%{$reset_color%}$(git_prompt_info) %# '
ZSH_THEME_GIT_PROMPT_PREFIX=" git:(%{$fg[red]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})"
Définissez votre thème personnalisé :
ZSH_THEME="mytheme"
Bases du développement de plugins
Créez un plugin simple en créant un répertoire dans ~/.oh-my-zsh/custom/plugins/
:
mkdir ~/.oh-my-zsh/custom/plugins/myutils
Créez le fichier du plugin :
# ~/.oh-my-zsh/custom/plugins/myutils/myutils.plugin.zsh
function mkcd() {
mkdir -p "$1" && cd "$1"
}
alias ll='ls -la'
alias ..='cd ..'
alias ...='cd ../..'
Activez votre plugin :
plugins=(git myutils)
Résolution des problèmes courants d’Oh My Zsh
Problèmes de police et d’affichage
Si vous voyez des points d’interrogation, des boîtes ou des caractères cassés :
- Installez les polices Powerline : De nombreux thèmes nécessitent des polices spéciales
- Configurez la police du terminal : Définissez votre terminal pour utiliser une police compatible Powerline
- Vérifiez l’encodage du terminal : Assurez-vous que l’encodage UTF-8 est activé
Pour les utilisateurs d’iTerm2 :
- Allez dans Préférences → Profils → Texte
- Définissez la police sur “Meslo LG S for Powerline” ou similaire
- Activez “Use built-in Powerline glyphs”
Conflits de plugins et erreurs
Problèmes courants et solutions :
Plugin ne se charge pas : Vérifiez que le nom du plugin correspond exactement au nom du répertoire
Démarrage lent : Désactivez les plugins un par un pour identifier le coupable
Commande non trouvée : Assurez-vous que les dépendances du plugin sont installées (par exemple, bat
pour le plugin zsh-bat)
Alias Git ne fonctionnent pas : Vérifiez que le plugin git
est activé et chargé avant les autres plugins liés à Git
Pour réinitialiser votre configuration :
cp ~/.zshrc ~/.zshrc.backup
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
Conclusion
Votre terminal est maintenant un environnement de développement puissant et visuellement informatif. La combinaison d’un thème approprié et de plugins soigneusement sélectionnés vous fera économiser d’innombrables frappes de touches et fournira un retour instantané sur votre contexte de développement. Commencez avec les plugins essentiels comme git, zsh-autosuggestions et zsh-syntax-highlighting, puis ajoutez progressivement des outils spécifiques aux développeurs selon les besoins de votre flux de travail. N’oubliez pas de surveiller les performances et de supprimer les plugins inutilisés pour maintenir des temps de démarrage optimaux.
FAQ
Installez les polices Powerline et configurez votre terminal pour utiliser une police compatible comme Meslo LG S for Powerline. Les caractères cassés sont généralement des symboles spéciaux qui nécessitent un support de police spécifique.
Non, vous ne pouvez utiliser qu'un seul thème à la fois. La variable ZSH_THEME accepte un seul nom de thème. Cependant, vous pouvez rapidement basculer entre les thèmes en changeant cette variable et en rechargeant votre shell.
Les plugins qui font des requêtes réseau, les vérificateurs de statut Git complexes et les gestionnaires de versions de langages comme nvm tendent à impacter le temps de démarrage. Utilisez la commande time pour mesurer le démarrage de votre shell et désactivez les plugins individuellement pour identifier les goulots d'étranglement de performance.
Naviguez vers chaque répertoire de plugin dans ~/.oh-my-zsh/custom/plugins/ et exécutez git pull. Les plugins intégrés se mettent à jour automatiquement quand vous exécutez omz update, mais les plugins personnalisés nécessitent des mises à jour manuelles.
Vérifiez si le plugin est obsolète ou si sa syntaxe a changé. De nombreux plugins plus anciens ont été remplacés par des alternatives plus récentes. Consultez la documentation du plugin et considérez passer à des alternatives activement maintenues si les problèmes persistent.