summaryrefslogtreecommitdiff
path: root/sample
diff options
context:
space:
mode:
authormurphy <murphy@rubychan.de>2008-01-07 14:42:47 +0000
committermurphy <murphy@rubychan.de>2008-01-07 14:42:47 +0000
commite127b7d57b06554e708752bbbc2a85e833633c26 (patch)
treeccd44c344594ccacdcd95a1e1dfc35488cb2c58d /sample
parentbbbbc70a0b2efcd03bbcaf4e08ac139e7969e608 (diff)
downloadcoderay-e127b7d57b06554e708752bbbc2a85e833633c26.tar.gz
Lib:
- Encoder: removed a warning - Encoders::HTML: don't shadow outer variable - Plugin: move require_plugin into class namespace - Ruby Scanner: - "alias" keyword recognition - better regexp/division distinction - recognize ~, !, !=, and !~ as method names (partly Ruby 1.9 only) - reordered states for speed Tests: - updated coderay-suite to use gem instead of require_gem - general improvements (more colors!, new parameter: new, new syntax lang.test for only and new) - fixed ruby suite - adjusted a lot of Ruby tests (alias uses methods now) - new tests: ruby/operators, ruby/regexp Samples: - fixed/updated ('bout time) Rake tasks: - updated to use new rubygems API
Diffstat (limited to 'sample')
-rw-r--r--sample/css.expected6
-rw-r--r--sample/div.expected6
-rw-r--r--sample/highlight.expected12
-rw-r--r--sample/html.expected40
-rw-r--r--sample/html2.expected16
-rw-r--r--sample/html_list.expected8
-rw-r--r--sample/load_encoder.rb6
-rw-r--r--sample/load_scanner.rb6
-rw-r--r--sample/more.expected2
-rw-r--r--sample/scanner.expected2
-rw-r--r--sample/suite.rb1
11 files changed, 58 insertions, 47 deletions
diff --git a/sample/css.expected b/sample/css.expected
index 92441e0..bda52ff 100644
--- a/sample/css.expected
+++ b/sample/css.expected
@@ -27,12 +27,14 @@ ol.CodeRay li { white-space: pre }
.CodeRay .code pre { overflow: auto }
+.CodeRay .debug { color:white ! important; background:blue ! important; }
+
.CodeRay .af { color:#00C }
.CodeRay .an { color:#007 }
.CodeRay .av { color:#700 }
.CodeRay .aw { color:#C00 }
.CodeRay .bi { color:#509; font-weight:bold }
-.CodeRay .c { color:#888 }
+.CodeRay .c { color:#666; }
.CodeRay .ch { color:#04D }
.CodeRay .ch .k { color:#04D }
@@ -68,7 +70,7 @@ ol.CodeRay li { white-space: pre }
.CodeRay .la { color:#970; font-weight:bold }
.CodeRay .lv { color:#963 }
.CodeRay .oc { color:#40E; font-weight:bold }
-.CodeRay .on { color:#000; font-weight:bold }
+.CodeRay .of { color:#000; font-weight:bold }
.CodeRay .op { }
.CodeRay .pc { color:#038; font-weight:bold }
.CodeRay .pd { color:#369; font-weight:bold }
diff --git a/sample/div.expected b/sample/div.expected
index ec9676d..ef5ff90 100644
--- a/sample/div.expected
+++ b/sample/div.expected
@@ -2,14 +2,14 @@
<div class="code"><pre><span style="color:#080; font-weight:bold">for</span> a <span style="color:#080; font-weight:bold">in</span> <span style="color:#00D; font-weight:bold">0</span>..<span style="color:#00D; font-weight:bold">255</span>
a = a.chr
<span style="color:#080; font-weight:bold">begin</span>
- x = eval(<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">?</span><span style="color:#04D">\\</span><span style="background-color:#fff0f0"><span style="color:#710">#{</span>a<span style="color:#710">}</span></span><span style="color:#710">&quot;</span></span>)
+ x = eval(<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">?</span><span style="color:#04D">\\</span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>a<span style="font-weight: bold; color: #888">}</span></span><span style="color:#710">&quot;</span></span>)
<span style="color:#080; font-weight:bold">if</span> x == a[<span style="color:#00D; font-weight:bold">0</span>]
<span style="color:#080; font-weight:bold">next</span>
<span style="color:#080; font-weight:bold">else</span>
- print <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="background-color:#fff0f0"><span style="color:#710">#{</span>a<span style="color:#710">}</span></span><span style="color:#D20">: </span><span style="background-color:#fff0f0"><span style="color:#710">#{</span>x<span style="color:#710">}</span></span><span style="color:#710">&quot;</span></span>
+ print <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>a<span style="font-weight: bold; color: #888">}</span></span><span style="color:#D20">: </span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>x<span style="font-weight: bold; color: #888">}</span></span><span style="color:#710">&quot;</span></span>
<span style="color:#080; font-weight:bold">end</span>
<span style="color:#080; font-weight:bold">rescue</span> <span style="color:#036; font-weight:bold">SyntaxError</span> =&gt; boom
- print <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="background-color:#fff0f0"><span style="color:#710">#{</span>a<span style="color:#710">}</span></span><span style="color:#D20">: error</span><span style="color:#710">&quot;</span></span>
+ print <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>a<span style="font-weight: bold; color: #888">}</span></span><span style="color:#D20">: error</span><span style="color:#710">&quot;</span></span>
<span style="color:#080; font-weight:bold">end</span>
puts
<span style="color:#080; font-weight:bold">end</span>
diff --git a/sample/highlight.expected b/sample/highlight.expected
index 7b50566..07956ad 100644
--- a/sample/highlight.expected
+++ b/sample/highlight.expected
@@ -33,12 +33,14 @@ ol.CodeRay li { white-space: pre }
.CodeRay .code pre { overflow: auto }
+.CodeRay .debug { color:white ! important; background:blue ! important; }
+
.CodeRay .af { color:#00C }
.CodeRay .an { color:#007 }
.CodeRay .av { color:#700 }
.CodeRay .aw { color:#C00 }
.CodeRay .bi { color:#509; font-weight:bold }
-.CodeRay .c { color:#888 }
+.CodeRay .c { color:#666; }
.CodeRay .ch { color:#04D }
.CodeRay .ch .k { color:#04D }
@@ -67,14 +69,14 @@ ol.CodeRay li { white-space: pre }
.CodeRay .il { background: #eee }
.CodeRay .il .il { background: #ddd }
.CodeRay .il .il .il { background: #ccc }
-.CodeRay .il .dl { font-weight: bold ! important; color: #888 ! important }
+.CodeRay .il .idl { font-weight: bold; color: #888 }
.CodeRay .in { color:#B2B; font-weight:bold }
.CodeRay .iv { color:#33B }
.CodeRay .la { color:#970; font-weight:bold }
.CodeRay .lv { color:#963 }
.CodeRay .oc { color:#40E; font-weight:bold }
-.CodeRay .on { color:#000; font-weight:bold }
+.CodeRay .of { color:#000; font-weight:bold }
.CodeRay .op { }
.CodeRay .pc { color:#038; font-weight:bold }
.CodeRay .pd { color:#369; font-weight:bold }
@@ -136,9 +138,9 @@ ol.CodeRay li { white-space: pre }
</tt>puts <span style="background-color:#fff0f0"><span style="color:#710">&lt;&lt;HTML</span></span><span style="background-color:#fff0f0"><span style="color:#D20"><tt>
</tt>&lt;html&gt;<tt>
</tt>&lt;head&gt;<tt>
-</tt></span><span style="background-color:#fff0f0"><span style="color:#710">#{</span>output.stylesheet <span style="color:#038; font-weight:bold">true</span><span style="color:#710">}</span></span><span style="color:#D20"><tt>
+</tt></span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>output.stylesheet <span style="color:#038; font-weight:bold">true</span><span style="font-weight: bold; color: #888">}</span></span><span style="color:#D20"><tt>
</tt>&lt;body&gt;<tt>
-</tt></span><span style="background-color:#fff0f0"><span style="color:#710">#{</span>output<span style="color:#710">}</span></span><span style="color:#D20"><tt>
+</tt></span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>output<span style="font-weight: bold; color: #888">}</span></span><span style="color:#D20"><tt>
</tt>&lt;/body&gt;<tt>
</tt>&lt;/html&gt;</span><span style="color:#710"><tt>
</tt>HTML</span></span><tt>
diff --git a/sample/html.expected b/sample/html.expected
index 1e29612..4e4c99a 100644
--- a/sample/html.expected
+++ b/sample/html.expected
@@ -34,12 +34,14 @@ ol.CodeRay li { white-space: pre }
.CodeRay .code pre { overflow: auto }
+.CodeRay .debug { color:white ! important; background:blue ! important; }
+
.CodeRay .af { color:#00C }
.CodeRay .an { color:#007 }
.CodeRay .av { color:#700 }
.CodeRay .aw { color:#C00 }
.CodeRay .bi { color:#509; font-weight:bold }
-.CodeRay .c { color:#888 }
+.CodeRay .c { color:#666; }
.CodeRay .ch { color:#04D }
.CodeRay .ch .k { color:#04D }
@@ -68,14 +70,14 @@ ol.CodeRay li { white-space: pre }
.CodeRay .il { background: #eee }
.CodeRay .il .il { background: #ddd }
.CodeRay .il .il .il { background: #ccc }
-.CodeRay .il .dl { font-weight: bold ! important; color: #888 ! important }
+.CodeRay .il .idl { font-weight: bold; color: #888 }
.CodeRay .in { color:#B2B; font-weight:bold }
.CodeRay .iv { color:#33B }
.CodeRay .la { color:#970; font-weight:bold }
.CodeRay .lv { color:#963 }
.CodeRay .oc { color:#40E; font-weight:bold }
-.CodeRay .on { color:#000; font-weight:bold }
+.CodeRay .of { color:#000; font-weight:bold }
.CodeRay .op { }
.CodeRay .pc { color:#038; font-weight:bold }
.CodeRay .pd { color:#369; font-weight:bold }
@@ -537,9 +539,9 @@ ol.CodeRay li { white-space: pre }
</tt> add(<span class="co">RESERVED_WORDS</span>, <span class="sy">:reserved</span>).<tt>
</tt> add(<span class="co">PREDEFINED_CONSTANTS</span>, <span class="sy">:pre_constant</span>)<tt>
</tt><tt>
-</tt> <span class="co">METHOD_NAME</span> = <span class="rx"><span class="dl">/</span><span class="k"> </span><span class="il"><span class="dl">#{</span><span class="co">IDENT</span><span class="dl">}</span></span><span class="k"> [?!]? </span><span class="dl">/</span><span class="mod">xo</span></span><tt>
+</tt> <span class="co">METHOD_NAME</span> = <span class="rx"><span class="dl">/</span><span class="k"> </span><span class="il"><span class="idl">#{</span><span class="co">IDENT</span><span class="idl">}</span></span><span class="k"> [?!]? </span><span class="dl">/</span><span class="mod">xo</span></span><tt>
</tt> <span class="co">METHOD_NAME_EX</span> = <span class="rx"><span class="dl">/</span><span class="k"><tt>
-</tt> </span><span class="il"><span class="dl">#{</span><span class="co">METHOD_NAME</span><span class="dl">}</span></span><span class="k"> # common methods: split, foo=, empty?, gsub!<tt>
+</tt> </span><span class="il"><span class="idl">#{</span><span class="co">METHOD_NAME</span><span class="idl">}</span></span><span class="k"> # common methods: split, foo=, empty?, gsub!<tt>
</tt> | </span><span class="ch">\*</span><span class="ch">\*</span><span class="k">? # multiplication and power<tt>
</tt> | [-+~]@? # plus, minus<tt>
</tt> | [</span><span class="ch">\/</span><span class="k">%&amp;|^`] # division, modulo or format strings, &amp;and, |or, ^xor, `system`<tt>
@@ -548,11 +550,11 @@ ol.CodeRay li { white-space: pre }
</tt> | &lt;&lt; | &gt;&gt; # append or shift left, shift right<tt>
</tt> | ===? # simple equality and case equality<tt>
</tt> </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
-</tt> <span class="co">GLOBAL_VARIABLE</span> = <span class="rx"><span class="dl">/</span><span class="k"> </span><span class="ch">\$</span><span class="k"> (?: </span><span class="il"><span class="dl">#{</span><span class="co">IDENT</span><span class="dl">}</span></span><span class="k"> | </span><span class="ch">\d</span><span class="k">+ | [~&amp;+`'=</span><span class="ch">\/</span><span class="k">,;_.&lt;&gt;!@0$?*&quot;:F</span><span class="ch">\\</span><span class="k">] | -[a-zA-Z_0-9] ) </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
+</tt> <span class="co">GLOBAL_VARIABLE</span> = <span class="rx"><span class="dl">/</span><span class="k"> </span><span class="ch">\$</span><span class="k"> (?: </span><span class="il"><span class="idl">#{</span><span class="co">IDENT</span><span class="idl">}</span></span><span class="k"> | </span><span class="ch">\d</span><span class="k">+ | [~&amp;+`'=</span><span class="ch">\/</span><span class="k">,;_.&lt;&gt;!@0$?*&quot;:F</span><span class="ch">\\</span><span class="k">] | -[a-zA-Z_0-9] ) </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
</tt><tt>
</tt> <span class="co">DOUBLEQ</span> = <span class="rx"><span class="dl">/</span><span class="k"> &quot; [^&quot;</span><span class="ch">\#</span><span class="ch">\\</span><span class="k">]* (?: (?: </span><span class="ch">\#</span><span class="ch">\{</span><span class="k">.*?</span><span class="ch">\}</span><span class="k"> | </span><span class="ch">\#</span><span class="k">(?:$&quot;)? | </span><span class="ch">\\</span><span class="k">. ) [^&quot;</span><span class="ch">\#</span><span class="ch">\\</span><span class="k">]* )* &quot;? </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
</tt> <span class="co">SINGLEQ</span> = <span class="rx"><span class="dl">/</span><span class="k"> ' [^'</span><span class="ch">\\</span><span class="k">]* (?: </span><span class="ch">\\</span><span class="k">. [^'</span><span class="ch">\\</span><span class="k">]* )* '? </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
-</tt> <span class="co">STRING</span> = <span class="rx"><span class="dl">/</span><span class="k"> </span><span class="il"><span class="dl">#{</span><span class="co">SINGLEQ</span><span class="dl">}</span></span><span class="k"> | </span><span class="il"><span class="dl">#{</span><span class="co">DOUBLEQ</span><span class="dl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
+</tt> <span class="co">STRING</span> = <span class="rx"><span class="dl">/</span><span class="k"> </span><span class="il"><span class="idl">#{</span><span class="co">SINGLEQ</span><span class="idl">}</span></span><span class="k"> | </span><span class="il"><span class="idl">#{</span><span class="co">DOUBLEQ</span><span class="idl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
</tt> <span class="co">SHELL</span> = <span class="rx"><span class="dl">/</span><span class="k"> ` [^`</span><span class="ch">\#</span><span class="ch">\\</span><span class="k">]* (?: (?: </span><span class="ch">\#</span><span class="ch">\{</span><span class="k">.*?</span><span class="ch">\}</span><span class="k"> | </span><span class="ch">\#</span><span class="k">(?:$`)? | </span><span class="ch">\\</span><span class="k">. ) [^`</span><span class="ch">\#</span><span class="ch">\\</span><span class="k">]* )* `? </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
</tt> <span class="co">REGEXP</span> = <span class="rx"><span class="dl">/</span><span class="k"> </span><span class="ch">\/</span><span class="k"> [^</span><span class="ch">\/</span><span class="ch">\#</span><span class="ch">\\</span><span class="k">]* (?: (?: </span><span class="ch">\#</span><span class="ch">\{</span><span class="k">.*?</span><span class="ch">\}</span><span class="k"> | </span><span class="ch">\#</span><span class="k">(?:$</span><span class="ch">\/</span><span class="k">)? | </span><span class="ch">\\</span><span class="k">. ) [^</span><span class="ch">\/</span><span class="ch">\#</span><span class="ch">\\</span><span class="k">]* )* </span><span class="ch">\/</span><span class="k">? </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
</tt> <tt>
@@ -561,9 +563,9 @@ ol.CodeRay li { white-space: pre }
</tt> <span class="co">HEXADECIMAL</span> = <span class="rx"><span class="dl">/</span><span class="k">0x[0-9A-Fa-f]+(?:_[0-9A-Fa-f]+)*</span><span class="dl">/</span></span><tt>
</tt> <span class="co">BINARY</span> = <span class="rx"><span class="dl">/</span><span class="k">0b[01]+(?:_[01]+)*</span><span class="dl">/</span></span><tt>
</tt><tt>
-</tt> <span class="co">EXPONENT</span> = <span class="rx"><span class="dl">/</span><span class="k"> [eE] [+-]? </span><span class="il"><span class="dl">#{</span><span class="co">DECIMAL</span><span class="dl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
-</tt> <span class="co">FLOAT</span> = <span class="rx"><span class="dl">/</span><span class="k"> </span><span class="il"><span class="dl">#{</span><span class="co">DECIMAL</span><span class="dl">}</span></span><span class="k"> (?: </span><span class="il"><span class="dl">#{</span><span class="co">EXPONENT</span><span class="dl">}</span></span><span class="k"> | </span><span class="ch">\.</span><span class="k"> </span><span class="il"><span class="dl">#{</span><span class="co">DECIMAL</span><span class="dl">}</span></span><span class="k"> </span><span class="il"><span class="dl">#{</span><span class="co">EXPONENT</span><span class="dl">}</span></span><span class="k">? ) </span><span class="dl">/</span></span><tt>
-</tt> <span class="co">INTEGER</span> = <span class="rx"><span class="dl">/</span><span class="il"><span class="dl">#{</span><span class="co">OCTAL</span><span class="dl">}</span></span><span class="k">|</span><span class="il"><span class="dl">#{</span><span class="co">HEXADECIMAL</span><span class="dl">}</span></span><span class="k">|</span><span class="il"><span class="dl">#{</span><span class="co">BINARY</span><span class="dl">}</span></span><span class="k">|</span><span class="il"><span class="dl">#{</span><span class="co">DECIMAL</span><span class="dl">}</span></span><span class="dl">/</span></span><tt>
+</tt> <span class="co">EXPONENT</span> = <span class="rx"><span class="dl">/</span><span class="k"> [eE] [+-]? </span><span class="il"><span class="idl">#{</span><span class="co">DECIMAL</span><span class="idl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span><tt>
+</tt> <span class="co">FLOAT</span> = <span class="rx"><span class="dl">/</span><span class="k"> </span><span class="il"><span class="idl">#{</span><span class="co">DECIMAL</span><span class="idl">}</span></span><span class="k"> (?: </span><span class="il"><span class="idl">#{</span><span class="co">EXPONENT</span><span class="idl">}</span></span><span class="k"> | </span><span class="ch">\.</span><span class="k"> </span><span class="il"><span class="idl">#{</span><span class="co">DECIMAL</span><span class="idl">}</span></span><span class="k"> </span><span class="il"><span class="idl">#{</span><span class="co">EXPONENT</span><span class="idl">}</span></span><span class="k">? ) </span><span class="dl">/</span></span><tt>
+</tt> <span class="co">INTEGER</span> = <span class="rx"><span class="dl">/</span><span class="il"><span class="idl">#{</span><span class="co">OCTAL</span><span class="idl">}</span></span><span class="k">|</span><span class="il"><span class="idl">#{</span><span class="co">HEXADECIMAL</span><span class="idl">}</span></span><span class="k">|</span><span class="il"><span class="idl">#{</span><span class="co">BINARY</span><span class="idl">}</span></span><span class="k">|</span><span class="il"><span class="idl">#{</span><span class="co">DECIMAL</span><span class="idl">}</span></span><span class="dl">/</span></span><tt>
</tt> <tt>
</tt> <span class="r">def</span> <span class="fu">reset</span><tt>
</tt> <span class="r">super</span><tt>
@@ -579,7 +581,7 @@ ol.CodeRay li { white-space: pre }
</tt> <span class="iv">@regexp_allowed</span> = <span class="sy">:set</span> <span class="r">if</span> <span class="iv">@regexp_allowed</span> <span class="r">or</span> <span class="iv">@scanner</span>.matched.index(<span class="i">?\n</span>) <span class="c"># delayed flag setting</span><tt>
</tt><tt>
</tt> <span class="r">elsif</span> <span class="iv">@state</span> == <span class="sy">:def_expected</span><tt>
-</tt> <span class="r">if</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k"> (?: (?:</span><span class="il"><span class="dl">#{</span><span class="co">IDENT</span><span class="dl">}</span></span><span class="k">(?:</span><span class="ch">\.</span><span class="k">|::))* | (?:@@?|$)? </span><span class="il"><span class="dl">#{</span><span class="co">IDENT</span><span class="dl">}</span></span><span class="k">(?:</span><span class="ch">\.</span><span class="k">|::) ) </span><span class="il"><span class="dl">#{</span><span class="co">METHOD_NAME_EX</span><span class="dl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
+</tt> <span class="r">if</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k"> (?: (?:</span><span class="il"><span class="idl">#{</span><span class="co">IDENT</span><span class="idl">}</span></span><span class="k">(?:</span><span class="ch">\.</span><span class="k">|::))* | (?:@@?|$)? </span><span class="il"><span class="idl">#{</span><span class="co">IDENT</span><span class="idl">}</span></span><span class="k">(?:</span><span class="ch">\.</span><span class="k">|::) ) </span><span class="il"><span class="idl">#{</span><span class="co">METHOD_NAME_EX</span><span class="idl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
</tt> kind = <span class="sy">:method</span><tt>
</tt> <span class="iv">@state</span> = <span class="sy">:initial</span><tt>
</tt> <span class="r">else</span><tt>
@@ -592,7 +594,7 @@ ol.CodeRay li { white-space: pre }
</tt> <span class="r">if</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k">&lt;&lt;</span><span class="dl">/</span></span>)<tt>
</tt> kind = <span class="sy">:operator</span><tt>
</tt> <span class="r">else</span><tt>
-</tt> <span class="r">if</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k"> (?: </span><span class="il"><span class="dl">#{</span><span class="co">IDENT</span><span class="dl">}</span></span><span class="k"> (?:</span><span class="ch">\.</span><span class="k">|::))* </span><span class="il"><span class="dl">#{</span><span class="co">IDENT</span><span class="dl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
+</tt> <span class="r">if</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k"> (?: </span><span class="il"><span class="idl">#{</span><span class="co">IDENT</span><span class="idl">}</span></span><span class="k"> (?:</span><span class="ch">\.</span><span class="k">|::))* </span><span class="il"><span class="idl">#{</span><span class="co">IDENT</span><span class="idl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
</tt> kind = <span class="sy">:method</span><tt>
</tt> <span class="r">else</span><tt>
</tt> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k">.</span><span class="dl">/</span></span>)<tt>
@@ -605,9 +607,9 @@ ol.CodeRay li { white-space: pre }
</tt> <span class="c"># IDENTIFIERS, KEYWORDS</span><tt>
</tt> <span class="r">if</span> <span class="iv">@scanner</span>.scan(<span class="co">GLOBAL_VARIABLE</span>)<tt>
</tt> kind = <span class="sy">:global_variable</span><tt>
-</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k"> @@ </span><span class="il"><span class="dl">#{</span><span class="co">IDENT</span><span class="dl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
+</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k"> @@ </span><span class="il"><span class="idl">#{</span><span class="co">IDENT</span><span class="idl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
</tt> kind = <span class="sy">:class_variable</span><tt>
-</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k"> @ </span><span class="il"><span class="dl">#{</span><span class="co">IDENT</span><span class="dl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
+</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k"> @ </span><span class="il"><span class="idl">#{</span><span class="co">IDENT</span><span class="idl">}</span></span><span class="k"> </span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
</tt> kind = <span class="sy">:instance_variable</span><tt>
</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k"> __END__</span><span class="ch">\n</span><span class="k"> ( (?!</span><span class="ch">\#</span><span class="k">CODE</span><span class="ch">\#</span><span class="k">) .* )? | </span><span class="ch">\#</span><span class="k">[^</span><span class="ch">\n</span><span class="k">]* | =begin(?=</span><span class="ch">\s</span><span class="k">).*? </span><span class="ch">\n</span><span class="k">=end(?=</span><span class="ch">\s</span><span class="k">|</span><span class="ch">\z</span><span class="k">)(?:[^</span><span class="ch">\n</span><span class="k">]*)? </span><span class="dl">/</span><span class="mod">x</span></span>)<tt>
</tt> kind = <span class="sy">:comment</span><tt>
@@ -635,7 +637,7 @@ ol.CodeRay li { white-space: pre }
</tt> <span class="iv">@scanner</span>.scan(<span class="co">REGEXP</span>)<tt>
</tt> kind = <span class="sy">:regexp</span><tt>
</tt> <span class="c">## %strings</span><tt>
-</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k">:(?:</span><span class="il"><span class="dl">#{</span><span class="co">GLOBAL_VARIABLE</span><span class="dl">}</span></span><span class="k">|</span><span class="il"><span class="dl">#{</span><span class="co">METHOD_NAME_EX</span><span class="dl">}</span></span><span class="k">|</span><span class="il"><span class="dl">#{</span><span class="co">STRING</span><span class="dl">}</span></span><span class="k">)</span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
+</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k">:(?:</span><span class="il"><span class="idl">#{</span><span class="co">GLOBAL_VARIABLE</span><span class="idl">}</span></span><span class="k">|</span><span class="il"><span class="idl">#{</span><span class="co">METHOD_NAME_EX</span><span class="idl">}</span></span><span class="k">|</span><span class="il"><span class="idl">#{</span><span class="co">STRING</span><span class="idl">}</span></span><span class="k">)</span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
</tt> kind = <span class="sy">:global_variable</span><tt>
</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k"><tt>
</tt> </span><span class="ch">\?</span><span class="k"> (?:<tt>
@@ -653,7 +655,7 @@ ol.CodeRay li { white-space: pre }
</tt> kind = <span class="sy">:float</span><tt>
</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="co">INTEGER</span>)<tt>
</tt> kind = <span class="sy">:integer</span><tt>
-</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k">:(?:</span><span class="il"><span class="dl">#{</span><span class="co">GLOBAL_VARIABLE</span><span class="dl">}</span></span><span class="k">|</span><span class="il"><span class="dl">#{</span><span class="co">METHOD_NAME_EX</span><span class="dl">}</span></span><span class="k">|</span><span class="il"><span class="dl">#{</span><span class="co">STRING</span><span class="dl">}</span></span><span class="k">)</span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
+</tt> <span class="r">elsif</span> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k">:(?:</span><span class="il"><span class="idl">#{</span><span class="co">GLOBAL_VARIABLE</span><span class="idl">}</span></span><span class="k">|</span><span class="il"><span class="idl">#{</span><span class="co">METHOD_NAME_EX</span><span class="idl">}</span></span><span class="k">|</span><span class="il"><span class="idl">#{</span><span class="co">STRING</span><span class="idl">}</span></span><span class="k">)</span><span class="dl">/</span><span class="mod">ox</span></span>)<tt>
</tt> kind = <span class="sy">:global_variable</span><tt>
</tt> <span class="r">else</span><tt>
</tt> <span class="iv">@scanner</span>.scan(<span class="rx"><span class="dl">/</span><span class="k">.</span><span class="dl">/</span><span class="mod">m</span></span>)<tt>
@@ -757,7 +759,7 @@ ol.CodeRay li { white-space: pre }
</tt> <span class="r">when</span> <span class="s"><span class="dl">'</span><span class="k">xhtml</span><span class="dl">'</span></span><tt>
</tt> <span class="iv">@HTML_BR</span> = <span class="s"><span class="dl">&quot;</span><span class="k">&lt;br /&gt;</span><span class="ch">\n</span><span class="dl">&quot;</span></span><tt>
</tt> <span class="r">else</span><tt>
-</tt> raise <span class="s"><span class="dl">&quot;</span><span class="k">Unknown HTML level: </span><span class="il"><span class="dl">#{</span>level<span class="dl">}</span></span><span class="dl">&quot;</span></span><tt>
+</tt> raise <span class="s"><span class="dl">&quot;</span><span class="k">Unknown HTML level: </span><span class="il"><span class="idl">#{</span>level<span class="idl">}</span></span><span class="dl">&quot;</span></span><tt>
</tt> <span class="r">end</span><tt>
</tt> <span class="r">end</span><tt>
</tt><tt>
@@ -777,14 +779,14 @@ ol.CodeRay li { white-space: pre }
</tt> <span class="r">def</span> <span class="fu">to_html</span> token<tt>
</tt> css_class = <span class="co">ClassOfKind</span>[token.kind]<tt>
</tt> <span class="r">if</span> <span class="r">defined?</span> ::<span class="co">DEBUG</span> <span class="r">and</span> <span class="r">not</span> <span class="co">ClassOfKind</span>.has_key? token.kind<tt>
-</tt> warn <span class="s"><span class="dl">&quot;</span><span class="k">no token class found for :</span><span class="il"><span class="dl">#{</span>token.kind<span class="dl">}</span></span><span class="dl">&quot;</span></span><tt>
+</tt> warn <span class="s"><span class="dl">&quot;</span><span class="k">no token class found for :</span><span class="il"><span class="idl">#{</span>token.kind<span class="idl">}</span></span><span class="dl">&quot;</span></span><tt>
</tt> <span class="r">end</span><tt>
</tt> <tt>
</tt> text = text_to_html token.text<tt>
</tt> <span class="r">if</span> css_class == <span class="sy">:NO_HIGHLIGHT</span><tt>
</tt> text<tt>
</tt> <span class="r">else</span><tt>
-</tt> <span class="s"><span class="dl">&quot;</span><span class="k">&lt;span class=</span><span class="ch">\&quot;</span><span class="il"><span class="dl">#{</span>css_class<span class="dl">}</span></span><span class="ch">\&quot;</span><span class="k">&gt;</span><span class="il"><span class="dl">#{</span>text<span class="dl">}</span></span><span class="k">&lt;/span&gt;</span><span class="dl">&quot;</span></span><tt>
+</tt> <span class="s"><span class="dl">&quot;</span><span class="k">&lt;span class=</span><span class="ch">\&quot;</span><span class="il"><span class="idl">#{</span>css_class<span class="idl">}</span></span><span class="ch">\&quot;</span><span class="k">&gt;</span><span class="il"><span class="idl">#{</span>text<span class="idl">}</span></span><span class="k">&lt;/span&gt;</span><span class="dl">&quot;</span></span><tt>
</tt> <span class="r">end</span><tt>
</tt> <span class="r">end</span><tt>
</tt> <tt>
diff --git a/sample/html2.expected b/sample/html2.expected
index ead61b2..e276d3e 100644
--- a/sample/html2.expected
+++ b/sample/html2.expected
@@ -34,12 +34,14 @@ ol.CodeRay li { white-space: pre }
.CodeRay .code pre { overflow: auto }
+.CodeRay .debug { color:white ! important; background:blue ! important; }
+
.CodeRay .af { color:#00C }
.CodeRay .an { color:#007 }
.CodeRay .av { color:#700 }
.CodeRay .aw { color:#C00 }
.CodeRay .bi { color:#509; font-weight:bold }
-.CodeRay .c { color:#888 }
+.CodeRay .c { color:#666; }
.CodeRay .ch { color:#04D }
.CodeRay .ch .k { color:#04D }
@@ -68,14 +70,14 @@ ol.CodeRay li { white-space: pre }
.CodeRay .il { background: #eee }
.CodeRay .il .il { background: #ddd }
.CodeRay .il .il .il { background: #ccc }
-.CodeRay .il .dl { font-weight: bold ! important; color: #888 ! important }
+.CodeRay .il .idl { font-weight: bold; color: #888 }
.CodeRay .in { color:#B2B; font-weight:bold }
.CodeRay .iv { color:#33B }
.CodeRay .la { color:#970; font-weight:bold }
.CodeRay .lv { color:#963 }
.CodeRay .oc { color:#40E; font-weight:bold }
-.CodeRay .on { color:#000; font-weight:bold }
+.CodeRay .of { color:#000; font-weight:bold }
.CodeRay .op { }
.CodeRay .pc { color:#038; font-weight:bold }
.CodeRay .pd { color:#369; font-weight:bold }
@@ -129,10 +131,10 @@ ol.CodeRay li { white-space: pre }
</tt></pre></td>
<td class="code"><pre ondblclick="with (this.style) { overflow = (overflow == 'auto' || overflow == '') ? 'visible' : 'auto' }">require <span style="background-color:#fff0f0"><span style="color:#710">'</span><span style="color:#D20">coderay</span><span style="color:#710">'</span></span><tt>
</tt><tt>
-</tt><span style="color:#888"># scan this file</span><tt>
+</tt><span style="color:#666;"># scan this file</span><tt>
</tt>tokens = <span style="color:#036; font-weight:bold">CodeRay</span>.scan(<span style="color:#036; font-weight:bold">File</span>.read(<span style="color:#d70; font-weight:bold">$0</span>) * <span style="color:#00D; font-weight:bold">1</span>, <span style="color:#A60">:ruby</span>)<tt>
</tt><tt>
-</tt><span style="color:#888"># output it with two styles of line numbers</span><tt>
+</tt><span style="color:#666;"># output it with two styles of line numbers</span><tt>
</tt>out = tokens.div(<span style="color:#A60">:line_numbers</span> =&gt; <span style="color:#A60">:table</span>)<tt>
</tt>out &lt;&lt; <span style="background-color:#fff0f0"><span style="color:#710">'</span><span style="color:#D20">&lt;hr /&gt;</span><span style="color:#710">'</span></span><tt>
</tt>out &lt;&lt; tokens.div(<span style="color:#A60">:line_numbers</span> =&gt; <span style="color:#A60">:inline</span>, <span style="color:#A60">:line_number_start</span> =&gt; <span style="color:#00D; font-weight:bold">8</span>)<tt>
@@ -143,10 +145,10 @@ ol.CodeRay li { white-space: pre }
<hr /><div class="CodeRay">
<div class="code"><pre><span class="no"> 8</span> require <span style="background-color:#fff0f0"><span style="color:#710">'</span><span style="color:#D20">coderay</span><span style="color:#710">'</span></span>
<span class="no"> 9</span>
-<span class="no"><strong>10</strong></span> <span style="color:#888"># scan this file</span>
+<span class="no"><strong>10</strong></span> <span style="color:#666;"># scan this file</span>
<span class="no">11</span> tokens = <span style="color:#036; font-weight:bold">CodeRay</span>.scan(<span style="color:#036; font-weight:bold">File</span>.read(<span style="color:#d70; font-weight:bold">$0</span>) * <span style="color:#00D; font-weight:bold">1</span>, <span style="color:#A60">:ruby</span>)
<span class="no">12</span>
-<span class="no">13</span> <span style="color:#888"># output it with two styles of line numbers</span>
+<span class="no">13</span> <span style="color:#666;"># output it with two styles of line numbers</span>
<span class="no">14</span> out = tokens.div(<span style="color:#A60">:line_numbers</span> =&gt; <span style="color:#A60">:table</span>)
<span class="no">15</span> out &lt;&lt; <span style="background-color:#fff0f0"><span style="color:#710">'</span><span style="color:#D20">&lt;hr /&gt;</span><span style="color:#710">'</span></span>
<span class="no">16</span> out &lt;&lt; tokens.div(<span style="color:#A60">:line_numbers</span> =&gt; <span style="color:#A60">:inline</span>, <span style="color:#A60">:line_number_start</span> =&gt; <span style="color:#00D; font-weight:bold">8</span>)
diff --git a/sample/html_list.expected b/sample/html_list.expected
index aec2cf5..9065842 100644
--- a/sample/html_list.expected
+++ b/sample/html_list.expected
@@ -34,12 +34,14 @@ ol.CodeRay li { white-space: pre }
.CodeRay .code pre { overflow: auto }
+.CodeRay .debug { color:white ! important; background:blue ! important; }
+
.CodeRay .af { color:#00C }
.CodeRay .an { color:#007 }
.CodeRay .av { color:#700 }
.CodeRay .aw { color:#C00 }
.CodeRay .bi { color:#509; font-weight:bold }
-.CodeRay .c { color:#888 }
+.CodeRay .c { color:#666; }
.CodeRay .ch { color:#04D }
.CodeRay .ch .k { color:#04D }
@@ -68,14 +70,14 @@ ol.CodeRay li { white-space: pre }
.CodeRay .il { background: #eee }
.CodeRay .il .il { background: #ddd }
.CodeRay .il .il .il { background: #ccc }
-.CodeRay .il .dl { font-weight: bold ! important; color: #888 ! important }
+.CodeRay .il .idl { font-weight: bold; color: #888 }
.CodeRay .in { color:#B2B; font-weight:bold }
.CodeRay .iv { color:#33B }
.CodeRay .la { color:#970; font-weight:bold }
.CodeRay .lv { color:#963 }
.CodeRay .oc { color:#40E; font-weight:bold }
-.CodeRay .on { color:#000; font-weight:bold }
+.CodeRay .of { color:#000; font-weight:bold }
.CodeRay .op { }
.CodeRay .pc { color:#038; font-weight:bold }
.CodeRay .pd { color:#369; font-weight:bold }
diff --git a/sample/load_encoder.rb b/sample/load_encoder.rb
index 39d310d..9594bfa 100644
--- a/sample/load_encoder.rb
+++ b/sample/load_encoder.rb
@@ -11,14 +11,14 @@ print 'Now it is loaded: '
p yaml_encoder
puts 'See?'
-tokens_encoder = require_plugin 'CodeRay::Encoders/tokens'
+tokens_encoder = CodeRay.require_plugin 'CodeRay::Encoders/tokens'
print 'Require is also possible: '
p tokens_encoder
puts 'See?'
puts 'Now load some mapped encoders: stats and plain.'
-require_plugin 'CodeRay::Encoders/stats'
-require_plugin 'CodeRay::Encoders/plain'
+CodeRay.require_plugin 'CodeRay::Encoders/stats'
+CodeRay.require_plugin 'CodeRay::Encoders/plain'
puts 'Require all Encoders:'
CodeRay::Encoders.load_all
diff --git a/sample/load_scanner.rb b/sample/load_scanner.rb
index 5e503f0..23be8a2 100644
--- a/sample/load_scanner.rb
+++ b/sample/load_scanner.rb
@@ -11,14 +11,14 @@ print 'Now it is loaded: '
p ruby_scanner
puts 'See?'
-c_scanner = require_plugin 'CodeRay::Scanners/c'
+c_scanner = CodeRay.require_plugin 'CodeRay::Scanners/c'
print 'Require is also possible: '
p c_scanner
puts 'See?'
puts 'Now load some mapped scanners: cpp and plain.'
-require_plugin 'CodeRay::Scanners/cpp'
-require_plugin 'CodeRay::Scanners/plain'
+CodeRay.require_plugin 'CodeRay::Scanners/cpp'
+CodeRay.require_plugin 'CodeRay::Scanners/plain'
puts 'Require all Scanners:'
CodeRay::Scanners.load_all
diff --git a/sample/more.expected b/sample/more.expected
index aa26e61..72632d3 100644
--- a/sample/more.expected
+++ b/sample/more.expected
@@ -1,2 +1,2 @@
-Input: 4983B, Output: 22546B
+Input: 4983B, Output: 22625B
Take a look with your browser.
diff --git a/sample/scanner.expected b/sample/scanner.expected
index d35a06d..5015168 100644
--- a/sample/scanner.expected
+++ b/sample/scanner.expected
@@ -13,4 +13,4 @@ false
2
> has a string?
-"ruby_code" (ident), "(" (operator), ":can" (symbol), "," (operator), " " (space), "BE" (constant), "," (operator), " " (space), "%r[" (delimiter), "q" (content), "[" (nesting_delimiter), "ui" (content), "]" (nesting_delimiter), "te " (content), "#{" (delimiter), " " (space), "/" (delimiter), "comple" (content), "/" (delimiter), "x" (modifier), " " (space), "}" (delimiter), "," (content), "]" (delimiter), " " (space), "=" (operator), ">" (operator), " " (space), "$-s" (global_variable), "," (operator), " " (space), "&" (operator), "?\xee" (integer), ")" (operator)
+"ruby_code" (ident), "(" (operator), ":can" (symbol), "," (operator), " " (space), "BE" (constant), "," (operator), " " (space), "%r[" (delimiter), "q" (content), "[" (nesting_delimiter), "ui" (content), "]" (nesting_delimiter), "te " (content), "#{" (inline_delimiter), " " (space), "/" (delimiter), "comple" (content), "/" (delimiter), "x" (modifier), " " (space), "}" (inline_delimiter), "," (content), "]" (delimiter), " " (space), "=" (operator), ">" (operator), " " (space), "$-s" (global_variable), "," (operator), " " (space), "&" (operator), "?\xee" (integer), ")" (operator)
diff --git a/sample/suite.rb b/sample/suite.rb
index 0313ddc..c586697 100644
--- a/sample/suite.rb
+++ b/sample/suite.rb
@@ -23,6 +23,7 @@ class CodeRaySuite < TestCase
def test_ALL
dir do
for input in Dir["*.rb"] - %w(server.rb stream.rb suite.rb)
+ next if input[/^load_/]
puts "[ testing #{input}... ]"
name = File.basename(input, ".rb")
output = name + '.expected'