lib/rouge/lexers/html.rb in rouge-0.0.13 vs lib/rouge/lexers/html.rb in rouge-0.0.14

- old
+ new

@@ -46,12 +46,30 @@ rule %r(/?\s*>)m, 'Name.Tag', :pop! end state :attr do # TODO: are backslash escapes valid here? - rule /".*?"/, 'Literal.String', :pop! - rule /'.*?'/, 'Literal.String', :pop! + rule /"/ do + token 'Literal.String' + pop!; push :dq + end + + rule /'/ do + token 'Literal.String' + pop!; push :sq + end + rule /[^\s>]+/, 'Literal.String', :pop! + end + + state :dq do + rule /"/, 'Literal.String', :pop! + rule /[^"]+/, 'Literal.String' + end + + state :sq do + rule /'/, 'Literal.String', :pop! + rule /[^']+/, 'Literal.String' end state :script_content do rule %r(<\s*/\s*script\s*>)m, 'Name.Tag', :pop! rule %r(.*?(?=<\s*/\s*script\s*>))m do