summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKornelius Kalnbach <murphy@rubychan.de>2013-11-20 15:54:41 +0100
committerKornelius Kalnbach <murphy@rubychan.de>2013-11-20 15:54:41 +0100
commitbc4854fa426a39c2bd51b2fd1cfa0322a5a9a412 (patch)
tree9b0bea1fd5487cbbbf916759d9807e49d1af9cd3
parent94ced6235d43c21e035c39c9da9c94d987447eef (diff)
downloadcoderay-bc4854fa426a39c2bd51b2fd1cfa0322a5a9a412.tar.gz
don't escape " in HTML
-rw-r--r--lib/coderay/encoders/html.rb3
-rwxr-xr-xtest/functional/basic.rb4
-rwxr-xr-xtest/functional/examples.rb8
-rw-r--r--test/functional/for_redcloth.rb4
-rw-r--r--test/unit/html.rb4
5 files changed, 11 insertions, 12 deletions
diff --git a/lib/coderay/encoders/html.rb b/lib/coderay/encoders/html.rb
index c21b19d..7e83eb8 100644
--- a/lib/coderay/encoders/html.rb
+++ b/lib/coderay/encoders/html.rb
@@ -129,7 +129,6 @@ module Encoders
def self.make_html_escape_hash
{
'&' => '&amp;',
- '"' => '&quot;',
'>' => '&gt;',
'<' => '&lt;',
"\t" => ' ' * DEFAULT_OPTIONS[:tab_width],
@@ -140,7 +139,7 @@ module Encoders
end
HTML_ESCAPE = make_html_escape_hash
- HTML_ESCAPE_PATTERN = /[\t"&><\0-\x8\xB-\x1F]/
+ HTML_ESCAPE_PATTERN = /[\t&><\0-\x8\xB-\x1F]/
TOKEN_KIND_TO_INFO = Hash.new do |h, kind|
h[kind] = kind.to_s.gsub(/_/, ' ').gsub(/\b\w/) { $&.capitalize }
diff --git a/test/functional/basic.rb b/test/functional/basic.rb
index 752d4ba..917b5ff 100755
--- a/test/functional/basic.rb
+++ b/test/functional/basic.rb
@@ -46,8 +46,8 @@ class BasicTest < Test::Unit::TestCase
end
end
- RUBY_TEST_HTML = 'puts <span class="string"><span class="delimiter">&quot;</span>' +
- '<span class="content">Hello, World!</span><span class="delimiter">&quot;</span></span>'
+ RUBY_TEST_HTML = 'puts <span class="string"><span class="delimiter">"</span>' +
+ '<span class="content">Hello, World!</span><span class="delimiter">"</span></span>'
def test_simple_highlight
assert_nothing_raised do
assert_equal RUBY_TEST_HTML, CodeRay.scan(RUBY_TEST_CODE, :ruby).html
diff --git a/test/functional/examples.rb b/test/functional/examples.rb
index 985ef87..8da4fc7 100755
--- a/test/functional/examples.rb
+++ b/test/functional/examples.rb
@@ -10,7 +10,7 @@ class ExamplesTest < Test::Unit::TestCase
div = CodeRay.scan('puts "Hello, world!"', :ruby).div
assert_equal <<-DIV, div
<div class="CodeRay">
- <div class="code"><pre>puts <span style="background-color:hsla(0,100%,50%,0.05)"><span style="color:#710">&quot;</span><span style="color:#D20">Hello, world!</span><span style="color:#710">&quot;</span></span></pre></div>
+ <div class="code"><pre>puts <span style="background-color:hsla(0,100%,50%,0.05)"><span style="color:#710">"</span><span style="color:#D20">Hello, world!</span><span style="color:#710">"</span></span></pre></div>
</div>
DIV
@@ -40,7 +40,7 @@ end
<table class="CodeRay"><tr>
<td class="line-numbers"><pre><a href="#n1" name="n1">1</a>
</pre></td>
- <td class="code"><pre>puts <span class="string"><span class="delimiter">&quot;</span><span class="content">Hello, world!</span><span class="delimiter">&quot;</span></span></pre></td>
+ <td class="code"><pre>puts <span class="string"><span class="delimiter">"</span><span class="content">Hello, world!</span><span class="delimiter">"</span></span></pre></td>
</tr></table>
</body>
@@ -92,7 +92,7 @@ Token Types (7):
div = tokens.div(:css => :class)
assert_equal <<-DIV, div
<div class="CodeRay">
- <div class="code"><pre>{ <span class="key"><span class="delimiter">&quot;</span><span class="content">just</span><span class="delimiter">&quot;</span></span>: <span class="string"><span class="delimiter">&quot;</span><span class="content">an</span><span class="delimiter">&quot;</span></span>, <span class="key"><span class="delimiter">&quot;</span><span class="content">example</span><span class="delimiter">&quot;</span></span>: <span class="integer">42</span> }</pre></div>
+ <div class="code"><pre>{ <span class="key"><span class="delimiter">"</span><span class="content">just</span><span class="delimiter">"</span></span>: <span class="string"><span class="delimiter">"</span><span class="content">an</span><span class="delimiter">"</span></span>, <span class="key"><span class="delimiter">"</span><span class="content">example</span><span class="delimiter">"</span></span>: <span class="integer">42</span> }</pre></div>
</div>
DIV
@@ -121,7 +121,7 @@ Token Types (7):
div = ruby_highlighter.encode('puts "Hello, world!"')
assert_equal <<-DIV, div
<div class="CodeRay">
- <div class="code"><pre>puts <span style="background-color:hsla(0,100%,50%,0.05)"><span style="color:#710">&quot;</span><span style="color:#D20">Hello, world!</span><span style="color:#710">&quot;</span></span></pre></div>
+ <div class="code"><pre>puts <span style="background-color:hsla(0,100%,50%,0.05)"><span style="color:#710">"</span><span style="color:#D20">Hello, world!</span><span style="color:#710">"</span></span></pre></div>
</div>
DIV
end
diff --git a/test/functional/for_redcloth.rb b/test/functional/for_redcloth.rb
index 9fd244e..eebf19c 100644
--- a/test/functional/for_redcloth.rb
+++ b/test/functional/for_redcloth.rb
@@ -16,11 +16,11 @@ class BasicTest < Test::Unit::TestCase
def test_for_redcloth
require 'coderay/for_redcloth'
- assert_equal "<p><span lang=\"ruby\" class=\"CodeRay\">puts <span style=\"background-color:hsla(0,100%,50%,0.05)\"><span style=\"color:#710\">&quot;</span><span style=\"color:#D20\">Hello, World!</span><span style=\"color:#710\">&quot;</span></span></span></p>",
+ assert_equal "<p><span lang=\"ruby\" class=\"CodeRay\">puts <span style=\"background-color:hsla(0,100%,50%,0.05)\"><span style=\"color:#710\">\"</span><span style=\"color:#D20\">Hello, World!</span><span style=\"color:#710\">\"</span></span></span></p>",
RedCloth.new('@[ruby]puts "Hello, World!"@').to_html
assert_equal <<-BLOCKCODE.chomp,
<div lang="ruby" class="CodeRay">
- <div class="code"><pre>puts <span style="background-color:hsla(0,100%,50%,0.05)"><span style="color:#710">&quot;</span><span style="color:#D20">Hello, World!</span><span style="color:#710">&quot;</span></span></pre></div>
+ <div class="code"><pre>puts <span style="background-color:hsla(0,100%,50%,0.05)"><span style="color:#710">"</span><span style="color:#D20">Hello, World!</span><span style="color:#710">"</span></span></pre></div>
</div>
BLOCKCODE
RedCloth.new('bc[ruby]. puts "Hello, World!"').to_html
diff --git a/test/unit/html.rb b/test/unit/html.rb
index 0072635..750b6c9 100644
--- a/test/unit/html.rb
+++ b/test/unit/html.rb
@@ -60,7 +60,7 @@ public class Test {
* used to test the
*/</span>
<span class=\"directive\">public</span> <span class=\"type\">class</span> <span class=\"class\">Test</span> {
- <span class=\"directive\">public</span> <span class=\"directive\">static</span> <span class=\"directive\">final</span> <span class=\"predefined-type\">String</span> MESSAGE = <span class=\"string\"><span class=\"delimiter\">&quot;</span><span class=\"content\">My message To the world</span><span class=\"delimiter\">&quot;</span></span>;
+ <span class=\"directive\">public</span> <span class=\"directive\">static</span> <span class=\"directive\">final</span> <span class=\"predefined-type\">String</span> MESSAGE = <span class=\"string\"><span class=\"delimiter\">\"</span><span class=\"content\">My message To the world</span><span class=\"delimiter\">\"</span></span>;
<span class=\"directive\">static</span> <span class=\"type\">void</span> main() {
<span class=\"comment\">/*
@@ -80,7 +80,7 @@ public class Test {
<span class=\"comment\"> * used to test the</span>
<span class=\"comment\"> */</span>
<span class=\"directive\">public</span> <span class=\"type\">class</span> <span class=\"class\">Test</span> {
- <span class=\"directive\">public</span> <span class=\"directive\">static</span> <span class=\"directive\">final</span> <span class=\"predefined-type\">String</span> MESSAGE = <span class=\"string\"><span class=\"delimiter\">&quot;</span><span class=\"content\">My message To the world</span><span class=\"delimiter\">&quot;</span></span>;
+ <span class=\"directive\">public</span> <span class=\"directive\">static</span> <span class=\"directive\">final</span> <span class=\"predefined-type\">String</span> MESSAGE = <span class=\"string\"><span class=\"delimiter\">\"</span><span class=\"content\">My message To the world</span><span class=\"delimiter\">\"</span></span>;
<span class=\"directive\">static</span> <span class=\"type\">void</span> main() {
<span class=\"comment\">/*</span>