class Rouge::CLI::List

Public Class Methods

desc() click to toggle source
# File lib/rouge/cli.rb, line 348
def self.desc
  "list available lexers"
end
doc() { |%|usage: rouge list|| ... } click to toggle source
# File lib/rouge/cli.rb, line 352
def self.doc
  return enum_for(:doc) unless block_given?

  yield %|usage: rouge list|
  yield %||
  yield %|print a list of all available lexers with their descriptions.|
end
parse(argv) click to toggle source
# File lib/rouge/cli.rb, line 360
def self.parse(argv)
  new
end

Public Instance Methods

run() click to toggle source
# File lib/rouge/cli.rb, line 364
def run
  puts "== Available Lexers =="

  Lexer.all.sort_by(&:tag).each do |lexer|
    desc = String.new("#{lexer.desc}")
    if lexer.aliases.any?
      desc << " [aliases: #{lexer.aliases.join(',')}]"
    end
    puts "%s: %s" % [lexer.tag, desc]

    lexer.option_docs.keys.sort.each do |option|
      puts "  ?#{option}= #{lexer.option_docs[option]}"
    end

    puts
  end
end