unix - Comment utiliser (n) curses en Ruby?

Translate

Je voudrais créer une barre de progression pour indiquer l'état d'un travail par lots dansRuby.

J'en ai lututoriels/bibliothèquessur l'utilisation(n) malédictions, dont aucun n'a été particulièrement utile pour expliquer comment créer un"Animé"barre de progression dans le terminal ou en utilisant des malédictions avecRuby.

Je suis déjà conscient de l'utilisation d'un thread séparé pour surveiller la progression d'un travail donné, je ne sais pas comment procéder pour dessiner une barre de progression.


Mettre à jour

Barre de progressionla classe était incroyablement simple, a parfaitement résolu mon problème.

This question and all comments follow the "Attribution Required."

Toutes les réponses

Translate

Vous pourrez peut-être obtenir des idées de mise en œuvre duBibliothèque Ruby / ProgressBar, qui génère des barres de progression du texte. Je suis tombé dessus il y a quelques mois, mais je ne m'en suis pas servi.

La source
tig
Translate

Réponse très tardive et désolé pour l'auto-promotion, mais j'ai créébibliothèquepour montrer la progression dans le terminal.

La source
Translate

Personnellement, je pense que les malédictions sont excessives dans ce cas. Bien que la bibliothèque curses soit agréable (et je l'utilise souvent moi-même), c'est un PITA à réapprendre chaque fois que je n'en ai pas eu besoin depuis 12 mois, ce qui doit être le signe d'une mauvaise conception d'interface.

Si pour une raison quelconque tu ne peux pas continuerla barre de progression suggérée par lib Joeyrouler le vôtre et le publier sous une licence assez gratuite pour des félicitations instantanées :)

La source
Translate

Sous Windows, les malédictions fonctionnent immédiatement, ncurses non, et pour une barre de progression, les malédictions devraient être suffisantes. Alors, utilisez des malédictions au lieu de ncurses.

En outre, les curses et ncurses sont des wrappers ultra-minces autour de la bibliothèque c - cela signifie que vous n'avez pas vraiment besoin de didacticiels spécifiques à Ruby.

Cependant, sur lesite pour le PickAxevous pouvez télécharger tous les exemples de code du livre. Le fichier "ex1423.rb" contient une démo de malédictions qui joue Pong - qui devrait vous donner beaucoup de matériel pour vous aider.

La source