#!/usr/bin/ruby -w # Generate a histogram of character frequencies. require "io/console" count = {} max_freq = 0 ARGF.each_char{|c| if count[c] count[c] += 1 max_freq = [max_freq, count[c]].max else count[c] = 1 end } return if max_freq == 0 WIDTH = [IO.console.winsize[1] - 17, 1].max count.keys.sort.each{|c| print "#{c.dump[1..-2]}\t#{count[c]}\t", "#" * (count[c] * WIDTH / max_freq), "\n" }