Chris@0: module CodeRay Chris@0: class Tokens Chris@0: ClassOfKind = Hash.new do |h, k| Chris@0: h[k] = k.to_s Chris@0: end Chris@0: ClassOfKind.update with = { Chris@0: :annotation => 'at', Chris@0: :attribute_name => 'an', Chris@0: :attribute_name_fat => 'af', Chris@0: :attribute_value => 'av', Chris@0: :attribute_value_fat => 'aw', Chris@0: :bin => 'bi', Chris@0: :char => 'ch', Chris@0: :class => 'cl', Chris@0: :class_variable => 'cv', Chris@0: :color => 'cr', Chris@0: :comment => 'c', Chris@0: :complex => 'cm', Chris@0: :constant => 'co', Chris@0: :content => 'k', Chris@0: :decorator => 'de', Chris@0: :definition => 'df', Chris@0: :delimiter => 'dl', Chris@0: :directive => 'di', Chris@0: :doc => 'do', Chris@0: :doctype => 'dt', Chris@0: :doc_string => 'ds', Chris@0: :entity => 'en', Chris@0: :error => 'er', Chris@0: :escape => 'e', Chris@0: :exception => 'ex', Chris@0: :float => 'fl', Chris@0: :function => 'fu', Chris@0: :global_variable => 'gv', Chris@0: :hex => 'hx', Chris@0: :imaginary => 'cm', Chris@0: :important => 'im', Chris@0: :include => 'ic', Chris@0: :inline => 'il', Chris@0: :inline_delimiter => 'idl', Chris@0: :instance_variable => 'iv', Chris@0: :integer => 'i', Chris@0: :interpreted => 'in', Chris@0: :keyword => 'kw', Chris@0: :key => 'ke', Chris@0: :label => 'la', Chris@0: :local_variable => 'lv', Chris@0: :modifier => 'mod', Chris@0: :oct => 'oc', Chris@0: :operator_fat => 'of', Chris@0: :pre_constant => 'pc', Chris@0: :pre_type => 'pt', Chris@0: :predefined => 'pd', Chris@0: :preprocessor => 'pp', Chris@0: :pseudo_class => 'ps', Chris@0: :regexp => 'rx', Chris@0: :reserved => 'r', Chris@0: :shell => 'sh', Chris@0: :string => 's', Chris@0: :symbol => 'sy', Chris@0: :tag => 'ta', Chris@0: :tag_fat => 'tf', Chris@0: :tag_special => 'ts', Chris@0: :type => 'ty', Chris@0: :variable => 'v', Chris@0: :value => 'vl', Chris@0: :xml_text => 'xt', Chris@0: Chris@0: :insert => 'ins', Chris@0: :delete => 'del', Chris@0: :change => 'chg', Chris@0: :head => 'head', Chris@0: Chris@0: :ident => :NO_HIGHLIGHT, # 'id' Chris@0: #:operator => 'op', Chris@0: :operator => :NO_HIGHLIGHT, # 'op' Chris@0: :space => :NO_HIGHLIGHT, # 'sp' Chris@0: :plain => :NO_HIGHLIGHT, Chris@0: } Chris@0: ClassOfKind[:method] = ClassOfKind[:function] Chris@0: ClassOfKind[:open] = ClassOfKind[:close] = ClassOfKind[:delimiter] Chris@0: ClassOfKind[:nesting_delimiter] = ClassOfKind[:delimiter] Chris@0: ClassOfKind[:escape] = ClassOfKind[:delimiter] Chris@0: #ClassOfKind.default = ClassOfKind[:error] or raise 'no class found for :error!' Chris@0: end Chris@0: end