Module: RuVim::Lang::Html

Defined in:
lib/ruvim/lang/html.rb

Constant Summary collapse

TAG_RE =
/<\/?[\w\-]+/
TAG_CLOSE_RE =
/\/?>/
ATTR_NAME_RE =
/\b[\w\-]+(?==)/
STRING_DOUBLE_RE =
/"(?:[^"\\]|\\.)*"/
STRING_SINGLE_RE =
/'(?:[^'\\]|\\.)*'/
COMMENT_RE =
/<!--.*?-->/
DOCTYPE_RE =
/<!DOCTYPE\b[^>]*/i
ENTITY_RE =
/&\w+;|&#\d+;|&#x[\da-fA-F]+;/

Class Method Summary collapse

Class Method Details

.color_columns(text) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/ruvim/lang/html.rb', line 17

def color_columns(text)
  cols = {}
  Highlighter.apply_regex(cols, text, TAG_RE, Highlighter::KEYWORD_COLOR)
  Highlighter.apply_regex(cols, text, TAG_CLOSE_RE, Highlighter::KEYWORD_COLOR)
  Highlighter.apply_regex(cols, text, DOCTYPE_RE, "\e[35m")
  Highlighter.apply_regex(cols, text, ATTR_NAME_RE, Highlighter::VARIABLE_COLOR)
  Highlighter.apply_regex(cols, text, STRING_DOUBLE_RE, Highlighter::STRING_COLOR)
  Highlighter.apply_regex(cols, text, STRING_SINGLE_RE, Highlighter::STRING_COLOR)
  Highlighter.apply_regex(cols, text, ENTITY_RE, Highlighter::CONSTANT_COLOR)
  Highlighter.apply_regex(cols, text, COMMENT_RE, Highlighter::COMMENT_COLOR, override: true)
  cols
end