lib/lapidarius/cli.rb in lapidarius-1.1.1 vs lib/lapidarius/cli.rb in lapidarius-1.1.2
- old
+ new
@@ -1,6 +1,7 @@
require "optparse"
+require "lapidarius/version"
require "lapidarius/cutter"
require "lapidarius/renderer"
module Lapidarius
class CLI
@@ -13,13 +14,15 @@
@recursive = nil
end
def call(cmd_klass = Command)
parser.parse!(@args)
- fail NoGemError, "please specify the name of an installed gem!" unless @gem
+ fail NoGemError, "please specify the name of a gem: '-g gem_name'" unless @gem
gem = cutter(cmd_klass).call
renderer(gem).call(@io)
+ rescue Gem::NotInstalledError => e
+ @io.puts e.message.sub("specified", @gem)
end
private def parser
OptionParser.new do |opts|
opts.banner = "Usage: ./bin/lapidarius --gem=sinatra --recursive"
@@ -30,9 +33,14 @@
opts.on("-r", "--recursive", "Print dependencies recursively") do |recursive|
@recursive = recursive
end
+ opts.on("-v", "--version", "Print library version") do
+ @io.puts VERSION
+ exit
+ end
+
opts.on("-h", "--help", "Prints this help") do
@io.puts opts
exit
end
end