Sparkr is a port of spark for Ruby.
It lets you create ASCII sparklines for your Ruby CLIs: ▁▂▃▅▇
Add this line to your application's Gemfile:
And then execute:
Or install it yourself as:
$ gem install sparkr
After installation, just run
sparkr and pass it a list of numbers, like
you would with spark. The output is what
you would expect:
$ sparkr 0 30 55 80 33 150
It is also possible to pipe data into
$ echo 9 13 5 17 1 | sparkr
The real reason for this port:
Sparkr.sparkline([0, 30, 55, 80, 33, 150]) # => "▁▂▃▅▂▇"
Let's say you have your list of open and closed issues.
require 'sparkr' open_issue_count = 3 closed_issue_count = 13 list = [open_issue_count, closed_issue_count] puts "Issues: " + Sparkr.sparkline(list) # => "Issues: ▁█"
But now you want to format the sparkline so that the open issues are red and the closed ones are green (to quickly see how you are doing).
Let's further suppose you use a gem that adds a
#color method to
for ANSI coloring, like
require 'sparkr' require 'term/ansicolor' class String include Term::ANSIColor end open_issue_count = 3 closed_issue_count = 13 list = [open_issue_count, closed_issue_count] sparkline = Sparkr.sparkline(list) do |tick, count, index| if index == 0 tick.color(:red) else tick.color(:green) end end puts "Issues: " + sparkline # => "Issues: ▁█" (colored, trust me)
To see how this looks live and in full colour, take a look at Inch.
- Fork it ( http://github.com/rrrene/sparkr/fork )
- Create your feature branch (
git checkout -b my-new-feature)
- Commit your changes (
git commit -am 'Add some feature')
- Push to the branch (
git push origin my-new-feature)
- Create new Pull Request
René Föhring (@rrrene)
Sparkr would not exist without Zach Holman's spark.
Sparkr is released under the MIT License. See the LICENSE.txt file for further details.