coderay 1.0.0.788.pre → 1.0.0.798.pre
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +0 -1
- data/bin/coderay +1 -1
- data/lib/coderay/duo.rb +1 -1
- data/lib/coderay/encoders/_map.rb +8 -7
- data/lib/coderay/encoders/div.rb +9 -8
- data/lib/coderay/encoders/html.rb +1 -1
- data/lib/coderay/encoders/html/output.rb +1 -1
- data/lib/coderay/encoders/json.rb +1 -1
- data/lib/coderay/encoders/page.rb +2 -2
- data/lib/coderay/encoders/span.rb +10 -9
- data/lib/coderay/helpers/file_type.rb +7 -4
- data/lib/coderay/helpers/plugin.rb +1 -1
- data/lib/coderay/scanners/php.rb +1 -1
- data/lib/coderay/scanners/ruby.rb +2 -2
- data/lib/coderay/styles/alpha.rb +6 -6
- data/test/functional/basic.rb +2 -2
- data/test/functional/examples.rb +2 -2
- metadata +3 -5
- data/FOLDERS +0 -49
data/Rakefile
CHANGED
data/bin/coderay
CHANGED
@@ -30,7 +30,7 @@ usage:
|
|
30
30
|
defaults:
|
31
31
|
language detect from input file name or shebang; fall back to plain text
|
32
32
|
input STDIN
|
33
|
-
format detect from output file name or use terminal; fall back to HTML
|
33
|
+
format detect from output file name or use terminal; fall back to HTML
|
34
34
|
output STDOUT
|
35
35
|
|
36
36
|
common:
|
data/lib/coderay/duo.rb
CHANGED
@@ -21,7 +21,7 @@ module CodeRay
|
|
21
21
|
# Create a new Duo, holding a lang and a format to highlight code.
|
22
22
|
#
|
23
23
|
# simple:
|
24
|
-
# CodeRay::Duo[:ruby, :
|
24
|
+
# CodeRay::Duo[:ruby, :html].highlight 'bla 42'
|
25
25
|
#
|
26
26
|
# with options:
|
27
27
|
# CodeRay::Duo[:ruby, :html, :hint => :debug].highlight '????::??'
|
@@ -2,15 +2,16 @@ module CodeRay
|
|
2
2
|
module Encoders
|
3
3
|
|
4
4
|
map \
|
5
|
-
:loc
|
6
|
-
:
|
7
|
-
:
|
8
|
-
:
|
9
|
-
:plaintext => :text,
|
5
|
+
:loc => :lines_of_code,
|
6
|
+
:html => :page,
|
7
|
+
:plain => :text,
|
8
|
+
:plaintext => :text,
|
10
9
|
:remove_comments => :comment_filter,
|
11
|
-
:stats
|
10
|
+
:stats => :statistic,
|
11
|
+
:term => :terminal,
|
12
|
+
:tty => :terminal
|
12
13
|
|
13
|
-
# No default because Tokens#nonsense
|
14
|
+
# No default because Tokens#nonsense should raise NoMethodError.
|
14
15
|
|
15
16
|
end
|
16
17
|
end
|
data/lib/coderay/encoders/div.rb
CHANGED
@@ -1,22 +1,23 @@
|
|
1
1
|
module CodeRay
|
2
2
|
module Encoders
|
3
|
-
|
3
|
+
|
4
4
|
load :html
|
5
5
|
|
6
6
|
# Wraps HTML output into a DIV element, using inline styles by default.
|
7
7
|
#
|
8
8
|
# See Encoders::HTML for available options.
|
9
9
|
class Div < HTML
|
10
|
-
|
10
|
+
|
11
11
|
FILE_EXTENSION = 'div.html'
|
12
|
-
|
12
|
+
|
13
13
|
register_for :div
|
14
|
-
|
14
|
+
|
15
15
|
DEFAULT_OPTIONS = HTML::DEFAULT_OPTIONS.merge \
|
16
|
-
:css
|
17
|
-
:wrap
|
18
|
-
|
16
|
+
:css => :style,
|
17
|
+
:wrap => :div,
|
18
|
+
:line_numbers => false
|
19
|
+
|
19
20
|
end
|
20
|
-
|
21
|
+
|
21
22
|
end
|
22
23
|
end
|
@@ -126,7 +126,7 @@ module Encoders
|
|
126
126
|
TABLE = Template.new <<-TABLE
|
127
127
|
<table class="CodeRay"><tr>
|
128
128
|
<td class="line_numbers" title="double click to toggle" ondblclick="with (this.firstChild.style) { display = (display == '') ? 'none' : '' }"><pre><%LINE_NUMBERS%></pre></td>
|
129
|
-
<td class="code"><pre
|
129
|
+
<td class="code"><pre><%CONTENT%></pre></td>
|
130
130
|
</tr></table>
|
131
131
|
TABLE
|
132
132
|
|
@@ -1,22 +1,23 @@
|
|
1
1
|
module CodeRay
|
2
2
|
module Encoders
|
3
|
-
|
3
|
+
|
4
4
|
load :html
|
5
|
-
|
5
|
+
|
6
6
|
# Wraps HTML output into a SPAN element, using inline styles by default.
|
7
7
|
#
|
8
8
|
# See Encoders::HTML for available options.
|
9
9
|
class Span < HTML
|
10
|
-
|
10
|
+
|
11
11
|
FILE_EXTENSION = 'span.html'
|
12
|
-
|
12
|
+
|
13
13
|
register_for :span
|
14
|
-
|
14
|
+
|
15
15
|
DEFAULT_OPTIONS = HTML::DEFAULT_OPTIONS.merge \
|
16
|
-
:css
|
17
|
-
:wrap
|
18
|
-
|
16
|
+
:css => :style,
|
17
|
+
:wrap => :span,
|
18
|
+
:line_numbers => false
|
19
|
+
|
19
20
|
end
|
20
|
-
|
21
|
+
|
21
22
|
end
|
22
23
|
end
|
@@ -88,8 +88,8 @@ module CodeRay
|
|
88
88
|
'groovy' => :groovy,
|
89
89
|
'gvy' => :groovy,
|
90
90
|
'h' => :c,
|
91
|
-
'htm' => :
|
92
|
-
'html' => :
|
91
|
+
'htm' => :page,
|
92
|
+
'html' => :page,
|
93
93
|
'html.erb' => :rhtml,
|
94
94
|
'java' => :java,
|
95
95
|
'js' => :java_script,
|
@@ -101,6 +101,7 @@ module CodeRay
|
|
101
101
|
'php3' => :php,
|
102
102
|
'php4' => :php,
|
103
103
|
'php5' => :php,
|
104
|
+
'prawn' => :ruby,
|
104
105
|
'py' => :python,
|
105
106
|
'py3' => :python,
|
106
107
|
'pyw' => :python,
|
@@ -111,11 +112,12 @@ module CodeRay
|
|
111
112
|
'rhtml' => :rhtml,
|
112
113
|
'rjs' => :ruby,
|
113
114
|
'rpdf' => :ruby,
|
115
|
+
'ru' => :ruby,
|
114
116
|
'rxml' => :ruby,
|
115
117
|
'sch' => :scheme,
|
116
118
|
'sql' => :sql,
|
117
119
|
'ss' => :scheme,
|
118
|
-
'xhtml' => :
|
120
|
+
'xhtml' => :page,
|
119
121
|
'xml' => :xml,
|
120
122
|
'yaml' => :yaml,
|
121
123
|
'yml' => :yaml,
|
@@ -127,9 +129,10 @@ module CodeRay
|
|
127
129
|
TypeFromShebang = /\b(?:ruby|perl|python|sh)\b/
|
128
130
|
|
129
131
|
TypeFromName = {
|
130
|
-
'Capfile'
|
132
|
+
'Capfile' => :ruby,
|
131
133
|
'Rakefile' => :ruby,
|
132
134
|
'Rantfile' => :ruby,
|
135
|
+
'Gemfile' => :ruby,
|
133
136
|
}
|
134
137
|
|
135
138
|
end
|
@@ -271,7 +271,7 @@ module CodeRay
|
|
271
271
|
|
272
272
|
def aliases
|
273
273
|
plugin_host.load_plugin_map
|
274
|
-
plugin_host.plugin_hash.inject [] do |aliases, (key,
|
274
|
+
plugin_host.plugin_hash.inject [] do |aliases, (key, _)|
|
275
275
|
aliases << key if plugin_host[key] == self
|
276
276
|
aliases
|
277
277
|
end
|
data/lib/coderay/scanners/php.rb
CHANGED
@@ -354,7 +354,7 @@ module Scanners
|
|
354
354
|
|
355
355
|
elsif match = scan(/<<<(?:(#{RE::IDENTIFIER})|"(#{RE::IDENTIFIER})"|'(#{RE::IDENTIFIER})')/o)
|
356
356
|
encoder.begin_group :string
|
357
|
-
warn 'heredoc in heredoc?' if heredoc_delimiter
|
357
|
+
# warn 'heredoc in heredoc?' if heredoc_delimiter
|
358
358
|
heredoc_delimiter = Regexp.escape(self[1] || self[2] || self[3])
|
359
359
|
encoder.text_token match, :delimiter
|
360
360
|
states.push self[3] ? :sqstring : :dqstring
|
@@ -381,10 +381,10 @@ module Scanners
|
|
381
381
|
end
|
382
382
|
else
|
383
383
|
case esc = getch
|
384
|
-
when state.delim, '\\'
|
385
|
-
encoder.text_token match + esc, :char
|
386
384
|
when nil
|
387
385
|
encoder.text_token match, :content
|
386
|
+
when state.delim, '\\'
|
387
|
+
encoder.text_token match + esc, :char
|
388
388
|
else
|
389
389
|
encoder.text_token match + esc, :content
|
390
390
|
end
|
data/lib/coderay/styles/alpha.rb
CHANGED
@@ -135,18 +135,18 @@ table.CodeRay td { padding: 2px 4px; vertical-align: top; }
|
|
135
135
|
.v { color:#037 }
|
136
136
|
.xt { color:#444 }
|
137
137
|
|
138
|
-
.ins { background: hsla(120,100%,50%,0.
|
139
|
-
.del { background: hsla(0,100%,50%,0.
|
140
|
-
.chg { color: #
|
138
|
+
.ins { background: hsla(120,100%,50%,0.1) }
|
139
|
+
.del { background: hsla(0,100%,50%,0.1) }
|
140
|
+
.chg { color: #bbf; background: #007; }
|
141
141
|
.head { color: #f8f; background: #505 }
|
142
142
|
.head .filename { color: white; }
|
143
143
|
|
144
144
|
.del .eye { background-color: hsla(0,100%,50%,0.2); border: 1px solid hsla(0,100%,45%,0.5); margin: -1px; border-bottom: none; border-top-left-radius: 5px; border-top-right-radius: 5px; }
|
145
145
|
.ins .eye { background-color: hsla(120,100%,50%,0.2); border: 1px solid hsla(120,100%,25%,0.5); margin: -1px; border-top: none; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; }
|
146
146
|
|
147
|
-
.ins .ins { color: #
|
148
|
-
.del .del { color: #
|
149
|
-
.chg .chg { color: #
|
147
|
+
.ins .ins { color: #0c0; background:transparent; font-weight:bold }
|
148
|
+
.del .del { color: #c00; background:transparent; font-weight:bold }
|
149
|
+
.chg .chg { color: #88f }
|
150
150
|
.head .head { color: #f4f }
|
151
151
|
TOKENS
|
152
152
|
|
data/test/functional/basic.rb
CHANGED
@@ -64,7 +64,7 @@ class BasicTest < Test::Unit::TestCase
|
|
64
64
|
end
|
65
65
|
|
66
66
|
def test_highlight
|
67
|
-
assert_match '<
|
67
|
+
assert_match '<pre>test</pre>', CodeRay.highlight('test', :python)
|
68
68
|
end
|
69
69
|
|
70
70
|
def test_highlight_file
|
@@ -173,7 +173,7 @@ more code # and another comment, in-line.
|
|
173
173
|
|
174
174
|
def test_encoder_file_extension
|
175
175
|
assert_nothing_raised do
|
176
|
-
assert_equal 'html', CodeRay::Encoders::
|
176
|
+
assert_equal 'html', CodeRay::Encoders::Page::FILE_EXTENSION
|
177
177
|
assert_equal 'cocoa', Milk::FILE_EXTENSION
|
178
178
|
assert_equal 'cocoa', Milk.new.file_extension
|
179
179
|
assert_equal 'honeybee', HoneyBee::FILE_EXTENSION
|
data/test/functional/examples.rb
CHANGED
@@ -24,7 +24,7 @@ end
|
|
24
24
|
<a href="#n2" name="n2">2</a>
|
25
25
|
<a href="#n3" name="n3">3</a>
|
26
26
|
</pre></td>
|
27
|
-
<td class="code"><pre
|
27
|
+
<td class="code"><pre><span style="color:#00D">5</span>.times <span style="color:#080;font-weight:bold">do</span>
|
28
28
|
puts <span style="background-color:hsla(0,100%,50%,0.08)"><span style="color:#710">'</span><span style="color:#D20">Hello, world!</span><span style="color:#710">'</span></span>
|
29
29
|
<span style="color:#080;font-weight:bold">end</span></pre></td>
|
30
30
|
</tr></table>
|
@@ -38,7 +38,7 @@ end
|
|
38
38
|
<table class="CodeRay"><tr>
|
39
39
|
<td class="line_numbers" title="double click to toggle" ondblclick="with (this.firstChild.style) { display = (display == '') ? 'none' : '' }"><pre>
|
40
40
|
</pre></td>
|
41
|
-
<td class="code"><pre
|
41
|
+
<td class="code"><pre>puts <span class="s"><span class="dl">"</span><span class="k">Hello, world!</span><span class="dl">"</span></span></pre></td>
|
42
42
|
</tr></table>
|
43
43
|
|
44
44
|
</body>
|
metadata
CHANGED
@@ -2,15 +2,15 @@
|
|
2
2
|
name: coderay
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease: 10
|
5
|
-
version: 1.0.0.
|
5
|
+
version: 1.0.0.798.pre
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
|
-
-
|
8
|
+
- Kornelius Kalnbach
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-
|
13
|
+
date: 2011-07-08 00:00:00 Z
|
14
14
|
dependencies: []
|
15
15
|
|
16
16
|
description: Fast and easy syntax highlighting for selected languages, written in Ruby. Comes with RedCloth integration and LOC counter.
|
@@ -22,7 +22,6 @@ extensions: []
|
|
22
22
|
|
23
23
|
extra_rdoc_files:
|
24
24
|
- README.rdoc
|
25
|
-
- FOLDERS
|
26
25
|
files:
|
27
26
|
- lib/coderay/duo.rb
|
28
27
|
- lib/coderay/encoder.rb
|
@@ -96,7 +95,6 @@ files:
|
|
96
95
|
- test/functional/for_redcloth.rb
|
97
96
|
- test/functional/suite.rb
|
98
97
|
- bin/coderay
|
99
|
-
- FOLDERS
|
100
98
|
homepage: http://coderay.rubychan.de
|
101
99
|
licenses: []
|
102
100
|
|
data/FOLDERS
DELETED
@@ -1,49 +0,0 @@
|
|
1
|
-
= CodeRay - folder structure
|
2
|
-
|
3
|
-
== bench - Benchmarking system
|
4
|
-
|
5
|
-
All benchmarking stuff goes here.
|
6
|
-
|
7
|
-
Test inputs are stored in files named <code>example.<lang></code>.
|
8
|
-
Test outputs go to <code>bench/test.<encoder-default-file-extension></code>.
|
9
|
-
|
10
|
-
Run <code>bench/bench.rb</code> to get a usage description.
|
11
|
-
|
12
|
-
Run <code>rake bench</code> to perform an example benchmark.
|
13
|
-
|
14
|
-
|
15
|
-
== bin - Scripts
|
16
|
-
|
17
|
-
Executional files for CodeRay.
|
18
|
-
|
19
|
-
coderay:: The CodeRay executable.
|
20
|
-
coderay_stylesheet:: Prints the default stylesheet.
|
21
|
-
|
22
|
-
== demo - Demos and functional tests
|
23
|
-
|
24
|
-
Demonstrational scripts to show of CodeRay's features.
|
25
|
-
|
26
|
-
Run them as functional tests with <code>rake test:demos</code>.
|
27
|
-
|
28
|
-
|
29
|
-
== etc - Lots of stuff
|
30
|
-
|
31
|
-
Some addidtional files for CodeRay, mainly graphics and Vim scripts.
|
32
|
-
|
33
|
-
|
34
|
-
== lib - CodeRay library code
|
35
|
-
|
36
|
-
This is the base directory for the CodeRay library.
|
37
|
-
|
38
|
-
|
39
|
-
== rake_helpers - Rake helper libraries
|
40
|
-
|
41
|
-
Some files to enhance Rake, including the Autumnal Rdoc template and some scripts.
|
42
|
-
|
43
|
-
|
44
|
-
== test - Tests
|
45
|
-
|
46
|
-
In the subfolder scanners/ are the scanners tests.
|
47
|
-
Each language has its own subfolder and sub-suite.
|
48
|
-
|
49
|
-
Run with <code>rake test</code>.
|