diff --git a/lib/sdoc/postprocessor.rb b/lib/sdoc/postprocessor.rb index 2cdae5eb..25a97ace 100644 --- a/lib/sdoc/postprocessor.rb +++ b/lib/sdoc/postprocessor.rb @@ -130,7 +130,7 @@ def guess_code_language(code) else "yaml" end - when /^ *<[%a-z]/i + when /^ *<[%a-z]|%>$|<\/\w+>$/i "erb" # also highlights HTML else "ruby" diff --git a/spec/postprocessor_spec.rb b/spec/postprocessor_spec.rb index 16f295d4..ae2ea09e 100644 --- a/spec/postprocessor_spec.rb +++ b/spec/postprocessor_spec.rb @@ -400,6 +400,10 @@ <%= 1 + 1 %> ERB + _(SDoc::Postprocessor.guess_code_language(<<~ERB)).must_equal "erb" + 1 + 1 = <%= 1 + 1 %> + ERB + _(SDoc::Postprocessor.guess_code_language(<<~ERB)).must_equal "erb" <% x = 1 + 1 %> ERB @@ -413,6 +417,10 @@ _(SDoc::Postprocessor.guess_code_language(<<~HTML)).must_equal "erb"
1 + 1 = 2
HTML + + _(SDoc::Postprocessor.guess_code_language(<<~HTML)).must_equal "erb" + 1 + 1 = 2 + HTML end it "guesses erb for HTML that includes ERB" do @@ -432,6 +440,11 @@ Object.new # => #