class Rouge::CLI
Public Class Methods
class_from_arg(arg)
click to toggle source
# File lib/rouge/cli.rb, line 89 def self.class_from_arg(arg) case arg when 'version', '--version', '-v' Version when 'help' Help when 'highlight', 'hi' Highlight when 'style' Style when 'list' List when 'guess' Guess end end
doc() { |%|usage: rougify [command] [args...]|| ... }
click to toggle source
# File lib/rouge/cli.rb, line 37 def self.doc return enum_for(:doc) unless block_given? yield %|usage: rougify [command] [args...]| yield %|| yield %|where <command> is one of:| yield %| highlight #{Highlight.desc}| yield %| help #{Help.desc}| yield %| style #{Style.desc}| yield %| list #{List.desc}| yield %| guess #{Guess.desc}| yield %| version #{Version.desc}| yield %|| yield %|See `rougify help <command>` for more info.| end
error!(msg, status=1)
click to toggle source
# File lib/rouge/cli.rb, line 81 def self.error!(msg, status=1) raise Error.new(msg, status) end
new(options={})
click to toggle source
# File lib/rouge/cli.rb, line 78 def initialize(options={}) end
parse(argv=ARGV)
click to toggle source
# File lib/rouge/cli.rb, line 61 def self.parse(argv=ARGV) argv = normalize_syntax(argv) mode = argv.shift klass = class_from_arg(mode) return klass.parse(argv) if klass case mode when '-h', '--help', 'help', '-help', nil Help.parse(argv) else argv.unshift(mode) if mode Highlight.parse(argv) end end
Private Class Methods
normalize_syntax(argv)
click to toggle source
# File lib/rouge/cli.rb, line 415 def self.normalize_syntax(argv) out = [] argv.each do |arg| case arg when /^(--\w+)=(.*)$/ out << $1 << $2 when /^(-\w)(.+)$/ out << $1 << $2 else out << arg end end out end
Public Instance Methods
error!(*a)
click to toggle source
# File lib/rouge/cli.rb, line 85 def error!(*a) self.class.error!(*a) end