lib/rouge/lexers/html.rb in rouge-0.0.6 vs lib/rouge/lexers/html.rb in rouge-0.0.7
- old
+ new
@@ -1,11 +1,17 @@
module Rouge
module Lexers
class HTML < RegexLexer
tag 'html'
- extensions 'htm', 'html'
+ filenames '*.htm', '*.html', '*.xhtml', '*.xslt'
+ mimetypes 'text/html', 'application/xhtml+xml'
+ def self.analyze_text(text)
+ return 1 if text.doctype?(/\bhtml\b/i)
+ return 1 if text =~ /<\s*html\b/
+ end
+
state :root do
rule /[^<&]+/m, 'Text'
rule /&\S*?;/, 'Name.Entity'
rule /<!\[CDATA\[.*?\]\]>/m, 'Comment.Preproc'
rule /<!--/, 'Comment', :comment
@@ -48,17 +54,17 @@
end
state :script_content do
rule %r(<\s*/\s*script\s*>)m, 'Name.Tag', :pop!
rule %r(.*?(?=<\s*/\s*script\s*>))m do
- delegate JavascriptLexer
+ delegate Javascript
end
end
state :style_content do
rule %r(<\s*/\s*style\s*>)m, 'Name.Tag', :pop!
rule %r(.*(?=<\s*/\s*style\s*>))m do
- delegate CSSLexer
+ delegate CSS
end
end
end
end
end