Page d'accueil » comment » Qu'est-ce que ZSH et pourquoi devriez-vous l'utiliser au lieu de Bash?

    Qu'est-ce que ZSH et pourquoi devriez-vous l'utiliser au lieu de Bash?

    ZSH, également appelé shell Z, est une version étendue de Bourne Shell (sh), avec de nombreuses nouvelles fonctionnalités et un support pour les plugins et les thèmes. Comme il est basé sur le même shell que Bash, ZSH possède plusieurs des mêmes fonctionnalités, et le basculement est un jeu d'enfant..

    Alors pourquoi l'utiliser?

    ZSH a trop de fonctionnalités pour être énumérées ici, quelques améliorations mineures à Bash, mais voici quelques unes des plus importantes:

    • Cd automatique: Il suffit de taper le nom du répertoire
    • Expansion du chemin récursif: Par exemple, “/ u / lo / b” devient “/ usr / local / bin”
    • Correction orthographique et achèvement approximatif: Si vous faites une petite erreur en tapant un nom de répertoire, ZSH le corrigera pour vous
    • Support de plugin et de thème: ZSH inclut de nombreux frameworks de plugin

    La prise en charge des plugins et des thèmes est probablement la fonctionnalité la plus cool de ZSH et nous allons nous concentrer sur ici.

    Installation de ZSH

    Si vous êtes sur macOS et que Homebrew est installé (ce que vous devriez faire), vous pouvez installer ZSH en une seule commande:

    brasser installer zsh

    Pour les utilisateurs de macOS également, vous devriez probablement utiliser iTerm au lieu du terminal natif, car il supporte beaucoup mieux les couleurs (plus de nombreuses autres fonctionnalités)..

    Si vous êtes sous Linux, les commandes peuvent varier en fonction de la distribution, mais il devrait s'agir d'un paquet par défaut dans votre gestionnaire de paquets. Vous pouvez consulter ce guide si vous rencontrez des difficultés.

    Si vous utilisez Windows, vous n’avez peut-être même pas Bash en premier lieu. Vous pouvez suivre ce guide pour configurer et activer ZSH..

    Installer Oh-My-Zsh

    Oh-My-Zsh est le framework de plug-in le plus populaire pour ZSH. Il contient également de nombreux plug-ins et thèmes intégrés. Il existe également quelques autres frameworks de plugins, y compris Antigen, qui est un gestionnaire de paquets complet pour ZSH, mais Oh-My-Zsh possède de nombreux plugins intégrés et fait bien son travail..

    Oh-My-Zsh a un script d'installation simple que vous pouvez exécuter:

    sh -c "$ (curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

    A partir de là, vous pouvez activer et désactiver les plugins en les ajoutant à votre fichier .zshrc, situé dans votre répertoire ~..

    Vous pouvez obtenir une liste complète des plugins sur le référentiel Oh-My-Zsh.

    Des thèmes

    Il y a beaucoup de thèmes à aborder, mais powerlevel9k est de loin le plus cool. Il ajoute une boîte d’informations alignée à droite, une intégration avec l’historique des commandes et de git, une personnalisation incroyable, et résume le tout dans une interface fluide basée sur le plugin powerline pour vim..

    Vous voudrez utiliser iTerm sur macOS ou sur tout terminal couleur 24 bits pour tirer le meilleur parti de powerlevel9k (ou de tout thème ZSH, en réalité)..

    Pour configurer powerlevel9k (si vous avez installé Oh-My-Zsh), il suffit de cloner le référentiel dans le dossier de thèmes personnalisés .oh-my-zsh:

    git clone https://github.com/bhilburn/powerlevel9k.git ~ / .oh-my-zsh / custom / themes / powerlevel9k

    Ensuite, vous devez l'activer dans .zshrc:

    ZSH_THEME = "powerlevel9k / powerlevel9k"

    Après cela, source votre .zshrc, et vous devriez voir les changements appliqués.

    Si vous le souhaitez, vous pouvez personnaliser l'invite par défaut en définissant POWERLEVEL9K_LEFT_PROMPT_ELEMENTS dans votre fichier .zshrc. Voici le mien, avec une invite minimale:

    POWERLEVEL9K_LEFT_PROMPT_ELEMENTS = (nom de la vcs rbenv) POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS = (charge de l’état de l’appareil en arrière-plan)

    Vous pouvez trouver la documentation complète de powerlevel9k sur le dépôt.