diff --git a/lib/hamlit/compiler.rb b/lib/hamlit/compiler.rb index a83914b9..601d3e4d 100644 --- a/lib/hamlit/compiler.rb +++ b/lib/hamlit/compiler.rb @@ -35,7 +35,7 @@ module Hamlit when :script compile_script(node) when :silent_script - [:multi] + compile_silent_script(node) when :tag compile_tag(node) when :haml_comment @@ -65,6 +65,10 @@ module Hamlit [:static, node.value[:text]] end + def compile_silent_script(node) + [:code, node.value[:text]] + end + def compile_script(node) if node.value[:preserve] [:dynamic, %Q[Haml::Helpers.find_and_preserve(#{node.value[:text]}, %w(textarea pre code))]] diff --git a/test/engine_test.rb b/test/engine_test.rb index 11dab2ee..cc204ad7 100644 --- a/test/engine_test.rb +++ b/test/engine_test.rb @@ -1561,7 +1561,7 @@ HAML render("%div{:foo => {:baz => 'bang'}}")) end - def test_arbitrary_attribute_hash_merging; skip # silent script + def test_arbitrary_attribute_hash_merging assert_equal(%Q{\n}, render(<<-HAML)) - h1 = {:aria => {:foo => :bar}} - h2 = {:baz => :qux} @@ -1755,7 +1755,7 @@ HAML # Ruby Multiline - def test_silent_ruby_multiline; skip # silent script + def test_silent_ruby_multiline assert_equal(<foo