Getting the list of available languages

192 Views Asked by At

How can I get the list of available languages (the short symbol to be passed when calling a method that represents the language) for CodeRay syntax highlighter?

I tried

require "coderay"
CodeRay::Scanners.constants

but that doesn't seem to give the information. (Even if I were able to get the constants that correspond to the languages, I still need another step to get the symbols that correspond to them.)


A related question is, I can do something like:

CodeRay::Scanners::Ruby # => CodeRay::Scanners::Ruby

but CodeRay::Scanners.constants doesn't include that. Why is that?

1

There are 1 best solutions below

2
On BEST ANSWER

Method you are looking for is:

CodeRay::Scanners.list
#=> [:c, :clojure, :cpp, :css, :debug, :delphi, :diff, :erb, :go, :groovy,
#    :haml, :html, :java, :java_script, :json, :lua, :php, :python, :raydebug,
#    :ruby, :sass, :scanner, :sql, :taskpaper, :text, :xml, :yaml]