jam_script_highlighter 0.0.1 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Gemfile.lock
CHANGED
@@ -4,16 +4,14 @@ module JamScriptHighlighter
|
|
4
4
|
def render string, opts={}
|
5
5
|
@html = ''
|
6
6
|
@section_type = 'chords'
|
7
|
-
|
8
|
-
@processing_metadata = true
|
9
7
|
@processing_section = false
|
10
8
|
|
11
9
|
js = JamScriptHighlighter.highlight(string)
|
12
10
|
js.each do |line|
|
13
11
|
render_line line
|
14
12
|
end
|
13
|
+
|
15
14
|
@html += "</div>\n" if @processing_section
|
16
|
-
@html += "</div>\n" unless @processing_metadata
|
17
15
|
@html
|
18
16
|
end
|
19
17
|
|
@@ -23,25 +21,43 @@ module JamScriptHighlighter
|
|
23
21
|
@html += case line_details[:type]
|
24
22
|
when :control
|
25
23
|
ret = ''
|
26
|
-
if @processing_section
|
27
|
-
|
28
|
-
@processing_section = false
|
29
|
-
end
|
24
|
+
ret += "</div>\n\n" and @processing_section = false if @processing_section
|
25
|
+
|
30
26
|
ret += line.to_html
|
31
27
|
@section_type = line.text.downcase
|
32
28
|
ret += "<div class=\"#{@section_type}\">"
|
29
|
+
|
30
|
+
@processing_section = true
|
31
|
+
|
33
32
|
ret
|
34
33
|
when :section
|
35
34
|
ret = ''
|
36
|
-
ret += "</div>\n\n" if @processing_section
|
35
|
+
ret += "</div>\n\n" and @processing_section = false if @processing_section
|
37
36
|
|
38
37
|
ret += line.to_html
|
39
38
|
ret += "<div class=\"#{@section_type}\">"
|
40
39
|
|
41
|
-
@processing_metadata = false
|
42
40
|
@processing_section = true
|
43
41
|
|
44
42
|
ret
|
43
|
+
when :structure
|
44
|
+
@section_type = 'structure'
|
45
|
+
ret = ''
|
46
|
+
ret += "</div>\n\n" and @processing_section = false if @processing_section
|
47
|
+
|
48
|
+
ret += "<div class=\"group\">"
|
49
|
+
ret += line.to_html
|
50
|
+
|
51
|
+
@processing_section = true
|
52
|
+
|
53
|
+
ret
|
54
|
+
when :other
|
55
|
+
case @section_type
|
56
|
+
when 'chords'
|
57
|
+
"<p class=\"#{@section_type}\">#{line.to_html.strip}</p>"
|
58
|
+
else
|
59
|
+
line.to_html
|
60
|
+
end
|
45
61
|
else
|
46
62
|
line.to_html
|
47
63
|
end + "\n"
|
data/readme.md
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
JamScript Highligher
|
2
2
|
--------------------
|
3
3
|
|
4
|
-
[](
|
4
|
+
[](http://travis-ci.org/adamphillips/JamScriptHighlighter)
|
5
|
+
[](https://codeclimate.com/github/adamphillips/JamScriptHighlighter)
|
5
6
|
|
6
7
|
SyntaxHighlighter for [JamScript](https://github.com/adamphillips/JamScript)
|
7
8
|
|
@@ -7,7 +7,7 @@ describe JamScriptHighlighter::Html do
|
|
7
7
|
@jam = ''
|
8
8
|
end
|
9
9
|
|
10
|
-
describe 'containing
|
10
|
+
describe 'containing a title' do
|
11
11
|
before do
|
12
12
|
@jam += "Some jam\n"
|
13
13
|
end
|
@@ -21,8 +21,8 @@ describe JamScriptHighlighter::Html do
|
|
21
21
|
@jam += "by Some one\n"
|
22
22
|
end
|
23
23
|
|
24
|
-
it 'should wrap the metadata in a metadata
|
25
|
-
htmlr(@jam).must_match %r{<h2>by Some one</h2>}
|
24
|
+
it 'should wrap the metadata in a metadata h2' do
|
25
|
+
htmlr(@jam).must_match %r{<h2 class="metadata">by Some one</h2>}
|
26
26
|
end
|
27
27
|
|
28
28
|
describe 'containing a section' do
|
@@ -39,8 +39,40 @@ describe JamScriptHighlighter::Html do
|
|
39
39
|
@jam += "C F | G\n"
|
40
40
|
end
|
41
41
|
|
42
|
-
it 'should wrap the
|
43
|
-
htmlr(@jam).must_match %r{<div class="chords"
|
42
|
+
it 'should wrap the whole thing in a group div' do
|
43
|
+
htmlr(@jam).must_match %r{<div class="group">\n<p class="chords">C F | G</p>\n</div>}
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'should wrap the chords in a containing p' do
|
47
|
+
htmlr(@jam).must_match %r{<p class="chords">C F | G</p>}
|
48
|
+
end
|
49
|
+
|
50
|
+
it 'should not include an uneccessary closing div' do
|
51
|
+
htmlr(@jam).wont_match %r{</div>\n</div>}
|
52
|
+
end
|
53
|
+
|
54
|
+
describe 'with a note' do
|
55
|
+
before do
|
56
|
+
@jam += "! Something important\n"
|
57
|
+
end
|
58
|
+
|
59
|
+
it 'should wrap the note in a p' do
|
60
|
+
htmlr(@jam).must_match %r{<p class="note">Something important</p>}
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
describe 'with a variation' do
|
65
|
+
before do
|
66
|
+
@jam += "- A variation\nC | Am G\n"
|
67
|
+
end
|
68
|
+
|
69
|
+
it 'should wrap the variation in an h4' do
|
70
|
+
htmlr(@jam).must_match %r{<h4 class="variation">A variation</h4>}
|
71
|
+
end
|
72
|
+
|
73
|
+
it 'should wrap the chords in a p' do
|
74
|
+
htmlr(@jam).must_match %r{<div class="group">\n(.*)<p class="chords">C | Am G</p>\n(.*)</div>\n}
|
75
|
+
end
|
44
76
|
end
|
45
77
|
|
46
78
|
describe 'containing a structure' do
|
@@ -53,7 +85,7 @@ describe JamScriptHighlighter::Html do
|
|
53
85
|
end
|
54
86
|
|
55
87
|
it 'should wrap the structure in a structure div' do
|
56
|
-
htmlr(@jam).must_match %r{<div class="structure">\
|
88
|
+
htmlr(@jam).must_match %r{<div class="structure">\nVerse, Chorus\n</div>}
|
57
89
|
end
|
58
90
|
end
|
59
91
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jam_script_highlighter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-03-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: pdfkit
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,15 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
25
30
|
- !ruby/object:Gem::Dependency
|
26
31
|
name: minitest
|
27
|
-
requirement:
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
28
33
|
none: false
|
29
34
|
requirements:
|
30
35
|
- - ! '>='
|
@@ -32,10 +37,15 @@ dependencies:
|
|
32
37
|
version: '0'
|
33
38
|
type: :development
|
34
39
|
prerelease: false
|
35
|
-
version_requirements:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
36
46
|
- !ruby/object:Gem::Dependency
|
37
47
|
name: turn
|
38
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
39
49
|
none: false
|
40
50
|
requirements:
|
41
51
|
- - ! '>='
|
@@ -43,10 +53,15 @@ dependencies:
|
|
43
53
|
version: '0'
|
44
54
|
type: :development
|
45
55
|
prerelease: false
|
46
|
-
version_requirements:
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
47
62
|
- !ruby/object:Gem::Dependency
|
48
63
|
name: debugger
|
49
|
-
requirement:
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
50
65
|
none: false
|
51
66
|
requirements:
|
52
67
|
- - ! '>='
|
@@ -54,10 +69,15 @@ dependencies:
|
|
54
69
|
version: '0'
|
55
70
|
type: :development
|
56
71
|
prerelease: false
|
57
|
-
version_requirements:
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
58
78
|
- !ruby/object:Gem::Dependency
|
59
79
|
name: guard-minitest
|
60
|
-
requirement:
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
61
81
|
none: false
|
62
82
|
requirements:
|
63
83
|
- - ! '>='
|
@@ -65,10 +85,15 @@ dependencies:
|
|
65
85
|
version: '0'
|
66
86
|
type: :development
|
67
87
|
prerelease: false
|
68
|
-
version_requirements:
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
69
94
|
- !ruby/object:Gem::Dependency
|
70
95
|
name: rb-fsevent
|
71
|
-
requirement:
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
72
97
|
none: false
|
73
98
|
requirements:
|
74
99
|
- - ~>
|
@@ -76,10 +101,15 @@ dependencies:
|
|
76
101
|
version: 0.9.1
|
77
102
|
type: :development
|
78
103
|
prerelease: false
|
79
|
-
version_requirements:
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ~>
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: 0.9.1
|
80
110
|
- !ruby/object:Gem::Dependency
|
81
111
|
name: hirb
|
82
|
-
requirement:
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
83
113
|
none: false
|
84
114
|
requirements:
|
85
115
|
- - ! '>='
|
@@ -87,10 +117,15 @@ dependencies:
|
|
87
117
|
version: '0'
|
88
118
|
type: :development
|
89
119
|
prerelease: false
|
90
|
-
version_requirements:
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ! '>='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '0'
|
91
126
|
- !ruby/object:Gem::Dependency
|
92
127
|
name: wirble
|
93
|
-
requirement:
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
94
129
|
none: false
|
95
130
|
requirements:
|
96
131
|
- - ! '>='
|
@@ -98,7 +133,12 @@ dependencies:
|
|
98
133
|
version: '0'
|
99
134
|
type: :development
|
100
135
|
prerelease: false
|
101
|
-
version_requirements:
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ! '>='
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: '0'
|
102
142
|
description: Simple JamScript highlighter
|
103
143
|
email: ''
|
104
144
|
executables:
|
@@ -154,7 +194,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
154
194
|
version: '0'
|
155
195
|
segments:
|
156
196
|
- 0
|
157
|
-
hash: -
|
197
|
+
hash: -1515281723704577190
|
158
198
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
159
199
|
none: false
|
160
200
|
requirements:
|
@@ -163,11 +203,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
163
203
|
version: '0'
|
164
204
|
segments:
|
165
205
|
- 0
|
166
|
-
hash: -
|
206
|
+
hash: -1515281723704577190
|
167
207
|
requirements: []
|
168
208
|
rubyforge_project:
|
169
|
-
rubygems_version: 1.8.
|
209
|
+
rubygems_version: 1.8.25
|
170
210
|
signing_key:
|
171
211
|
specification_version: 3
|
172
|
-
summary: jam_script_highlighter-0.0.
|
212
|
+
summary: jam_script_highlighter-0.0.3
|
173
213
|
test_files: []
|