biblioteca colorazione terminale meglio rubino
-
08-10-2019 - |
Domanda
Ci sono un sacco di librerie da colorare: colorato, termine-ANSIColor. Ma c'è qualche che può fare questo:
puts "#{'hello'.red} world!".bold
E world!
deve essere in grassetto.
Per chiarire, io voglio arrivare a questo:
"\e[1m\e[31mhello\e[0m\e[1m world!\e[0m"
o meglio anche questo (appena più corta):
"\e[1;31mhello\e[0;1m world!\e[0m"
al posto di questo:
"\e[1m\e[31mhello\e[0m world!\e[0m"
Soluzione
Come non c'è nessuno, ho scritto il mio, con il blackjack e prostitute Smart One - smart_colored
gem install smart_colored
ed eseguire
require 'smart_colored/extend'
# without extend you'll need to use 'string'.colored.red
puts "#{'hello'.red} world!".bold
Altri suggerimenti
Il lib si chiama Highline
Ha un metodo di color
: say("This should be <%= color('bold', BOLD) %>!")
Il che può essere facilmente utilizzato per implementare String#bold
.
Nel caso in cui si utilizza highline ho fatto una gemma che si estende i colori e fornisce aiutanti come ad esempio:
say_bold 'this is bold text'
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow