Exécuter un script dans votre terminal n’est souvent pas synonyme d’interface utilisateur ergonomique et sexy. Vous allez me dire que ce n’est pas forcément un problème, car ce n’est pas le but. On veut un script qui fasse une chose, qui le fasse bien, et qui retourne sur la sortie standard pour pouvoir être tubé vers une autre commande. Parfois, on a quand même besoin de développer des scripts qui demandent plusieurs entrées utilisateur sur la ligne de commandes. Alors si on peut le faire facilement de manière interactive et ergonomique (avec des listes à choix multiples, champs texte, mot de passe, etc.) et qu’en plus on peut mettre tout ça en forme de jolie manière, ce serait quand même fort sympathique.
Il existe bien des bibliothèques qui permettent de le faire, mais pas en Bash nativement, nécessitant de développer en Python, C, etc. Pour de simples tâches, on préférera écrire de simples scripts shell. Dans cet article, nous allons découvrir Gum, un utilitaire en ligne de commandes utilisable depuis vos scripts shell pour leur ajouter interactivité et style.
1. Introduction
Gum est un utilitaire en ligne de commandes écrit en Go, qui fait partie de la famille de bibliothèques et d’applications développées par Charm [1]. À utiliser dans vos scripts pour agrémenter votre terminal. Parmi les applications du projet Charm on trouve Glow, pour visualiser des documents au format Markdown dans votre terminal ; VHS pour enregistrer au format image et vidéo l’exécution de votre shell ; ou encore Soft Serve, pour auto-héberger votre propre serveur Git distant, accessible via SSH en ligne de commandes.
Toutes ces applications utilisent la librairie Go de bas...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première