Examples
Installation:
>gem install highline
In Code -> Include — > require “highline/import”
Basic usage:
ask(“Company? “) { |q| q.default = “none” }
Validation:
ask("Age? ", Integer) { |q| q.in = 0..105 } ask("Name? (last, first) ") { |q| q.validate = /\A\w+, ?\w+\Z/ }
Type conversion for answers:
ask("Birthday? ", Date) ask("Interests? (comma sep list) ", lambda { |str| str.split(/,\s*/) })
Reading passwords:
ask("Enter your password: ") { |q| q.echo = false } ask("Enter your password: ") { |q| q.echo = "x" }
ERb based output (with HighLine‘s ANSI color tools):
say("This should be <%= color('bold', BOLD) %>!")
Menus:
choose do |menu| menu.prompt = "Please choose your favorite programming language? " menu.choice(:ruby) { say("Good choice!") } menu.choices(:python, :perl) { say("Not from around here, are you?") } end Reference --> http://highline.rubyforge.org/doc/
It would be helpful to mention that you must require highline like this:
require “highline/import”
(not very self-explanatory, and not mentioned in the docs.)