Listr2
Create beautiful CLI interfaces via easy and logical-to-implement task lists that feel alive and interactive.
Site officiel : https://listr2.kilic.dev/
Journaux liées à cette note :
Journal du samedi 02 novembre 2024 à 12:20
Je cherche un équivalent de Listr2 en Golang, mais pour le moment je n'ai rien trouvé 😟.
Je viens de poster ce message sur le Subreddit Golang : I'm looking for an equivalent of listr2: beautiful CLI interfaces via easy and logical to implement task lists that feel lively and interactive
Subject: I'm looking for an equivalent of listr2: beautiful CLI interfaces via easy and logical to implement task lists that feel lively and interactive
Hi,
Do you know a Golang equivalent of the Javascript listr2 library?
My goal is to create a cli tool with the same rendering as demonstrated in the screencast on https://listr2.kilic.dev
Listr2:
Create beautiful CLI interfaces via easy and logical-to-implement task lists that feel alive and interactive.
Best regards,
Stéphane
Je souhaite afficher une barre de progression d'importation dans le script import-to-es-database.js
du projet sklein-pkm-engine.
Je souhaite afficher deux lignes :
- Première ligne : barre de progression d'importation ;
- Seconde ligne : action en cours de traitement.
Je viens d'étudier les librairies blessed, ora et cli-progress et je pense que cli-progress est celle qui conviendra de mieux pour atteindre mon objectif.
Par contre, cli-progress ne semble pas supporter la présence d'un retour à la ligne dans le paramètre format
:
const bar = new cliProgress.SingleBar({
format: "Progress | {bar} | {percentage}% || {value}/{total} items\nProcessing: {currentAction}",
barCompleteChar: "\u2588",
barIncompleteChar: "\u2591",
hideCursor: true,
clearOnComplete: false,
linewrap: false
});
Finalement, non satisfait de cli-progress, je suis parti vers la #library listr2 (https://github.com/listr2/listr2).
Voici le résultat :
Voici le code source de ma mise en œuvre de Listr2 : https://github.com/stephane-klein/sklein-pkm-engine/blob/9bca16344dca075c595ceebb82b91bbbd3a267ff/import-to-es-database.js#L49.
J'ai trouvé la librairie très agréable à utiliser.