diff options
author | Kornelius Kalnbach <murphy@rubychan.de> | 2013-06-09 19:31:10 +0200 |
---|---|---|
committer | Kornelius Kalnbach <murphy@rubychan.de> | 2013-06-09 19:31:10 +0200 |
commit | 5bea8e3041de85266c3596627224ced102f195e0 (patch) | |
tree | 1e5bfbb8fdbb9cb7f8c9031d924dad57bd74d360 | |
parent | 8563acc7e29e3d5bf5281aedbc0b7088abe44877 (diff) | |
download | coderay-5bea8e3041de85266c3596627224ced102f195e0.tar.gz |
don't nest :string recursively in :sass_inline
-rw-r--r-- | lib/coderay/scanners/sass.rb | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/coderay/scanners/sass.rb b/lib/coderay/scanners/sass.rb index 17514c0..0eb2caa 100644 --- a/lib/coderay/scanners/sass.rb +++ b/lib/coderay/scanners/sass.rb @@ -139,7 +139,14 @@ module Scanners encoder.begin_group :string string_delimiter = match encoder.text_token match, :delimiter - states.push :string + if states.include? :sass_inline + content = scan_until(/(?=#{string_delimiter}|\}|\z)/) + encoder.text_token content, :content unless content.empty? + encoder.text_token string_delimiter, :delimiter if scan(/#{string_delimiter}/) + encoder.end_group :string + else + states.push :string + end elsif match = scan(/#{SASS_FUNCTION}/o) encoder.text_token match, :predefined |