lib/rouge/lexers/groovy.rb in rouge-1.11.0 vs lib/rouge/lexers/groovy.rb in rouge-1.11.1
- old
+ new
@@ -55,13 +55,17 @@
rule /@\w[\w\d.]*/, Name::Decorator
rule /(class|interface|trait)\b/, Keyword::Declaration, :class
rule /package\b/, Keyword::Namespace, :import
rule /import\b/, Keyword::Namespace, :import
- rule /"(\\\\|\\"|[^"])*"/, Str::Double
- rule /'(\\\\|\\'|[^'])*'/, Str::Single
- rule %r(\$/((?!/\$).)*/\$), Str
- rule %r(/(\\\\|\\"|[^/])*/), Str
+ # TODO: highlight backslash escapes
+ rule /""".*?"""/m, Str::Double
+ rule /'''.*?'''/m, Str::Single
+
+ rule /"(\\.|\\\n|.)*?"/, Str::Double
+ rule /'(\\.|\\\n|.)*?'/, Str::Single
+ rule %r(\$/(\$.|.)*?/\$)m, Str
+ rule %r(/(\\.|\\\n|.)*?/), Str
rule /'\\.'|'[^\\]'|'\\u[0-9a-f]{4}'/, Str::Char
rule /(\.)([a-zA-Z_][a-zA-Z0-9_]*)/ do
groups Operator, Name::Attribute
end