reveal-ck 3.1.0 → 3.2.0
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.
- checksums.yaml +4 -4
- data/lib/html/pipeline/reveal_ck_emoji_filter.rb +17 -0
- data/lib/reveal-ck/builders/create_slides_html.rb +6 -18
- data/lib/reveal-ck/builders/reveal_js_files.rb +1 -1
- data/lib/reveal-ck/config.rb +2 -1
- data/lib/reveal-ck/version.rb +1 -1
- data/spec/lib/html/pipeline/reveal_ck_emoji_filter_spec.rb +28 -0
- data/spec/lib/reveal-ck/builders/create_slides_html_spec.rb +25 -0
- data/spec/lib/reveal-ck/builders/index_html_spec.rb +2 -3
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: df93270d9e2bdca17cee3ef0509379fe78153fcb
|
4
|
+
data.tar.gz: c624080d7150241aabf1b8361e8fc54ed7eab878
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c8940445840714a2086d192b98d69f237ec6ac98abbf6f4ad0b00b39c5e332b0f8d032cffbf1124266409381cccf78758790ad82e3f9766cd397583f64f24caf
|
7
|
+
data.tar.gz: b44c7be1a5174701e08f793aea6a0710196910642097a17a1499186c8d0590a7d3aa23ed4e441fc130e7da8803b789f827dcc1eed5ffd246e00a3d5ebf59e410
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module HTML
|
2
|
+
class Pipeline
|
3
|
+
# This class is very similar EmojiFilter. It removes the inline
|
4
|
+
# width/height attributes so that reveal-ck supplied CSS takes effect.
|
5
|
+
class RevealCKEmojiFilter < EmojiFilter
|
6
|
+
def emoji_image_filter(text)
|
7
|
+
return text unless text.include?(':')
|
8
|
+
|
9
|
+
text.gsub(emoji_pattern) do
|
10
|
+
name = Regexp.last_match[1]
|
11
|
+
result = "<img class='emoji' title=':#{name}:' alt=':#{name}:' "
|
12
|
+
result + "src='#{emoji_url(name)}' align='absmiddle' />"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'html/pipeline'
|
2
|
+
require 'html/pipeline/reveal_ck_emoji_filter'
|
2
3
|
|
3
4
|
module RevealCK
|
4
5
|
module Builders
|
@@ -35,6 +36,7 @@ module RevealCK
|
|
35
36
|
end
|
36
37
|
|
37
38
|
def apply_filters_to(html)
|
39
|
+
load_dependencies(config.requires)
|
38
40
|
filters = get_classes_from_array(config.filters)
|
39
41
|
pipeline = HTML::Pipeline.new(filters)
|
40
42
|
filtered_html_string = FilteredHtmlString.new(html: html,
|
@@ -43,6 +45,10 @@ module RevealCK
|
|
43
45
|
filtered_html_string.render
|
44
46
|
end
|
45
47
|
|
48
|
+
def load_dependencies(array_of_includes)
|
49
|
+
array_of_includes.each { |name| require name }
|
50
|
+
end
|
51
|
+
|
46
52
|
def get_classes_from_array(array_of_names)
|
47
53
|
array_of_names.map do |name|
|
48
54
|
name.split('::').reduce(Object) { |a, e| a.const_get(e) }
|
@@ -51,21 +57,3 @@ module RevealCK
|
|
51
57
|
end
|
52
58
|
end
|
53
59
|
end
|
54
|
-
|
55
|
-
module HTML
|
56
|
-
class Pipeline
|
57
|
-
# This class is very similar EmojiFilter. It removes the inline
|
58
|
-
# width/height attributes so that reveal-ck supplied CSS takes effect.
|
59
|
-
class RevealCKEmojiFilter < EmojiFilter
|
60
|
-
def emoji_image_filter(text)
|
61
|
-
return text unless text.include?(':')
|
62
|
-
|
63
|
-
text.gsub(emoji_pattern) do
|
64
|
-
name = Regexp.last_match[1]
|
65
|
-
result = "<img class='emoji' title=':#{name}:' alt=':#{name}:'"
|
66
|
-
result + "src='#{emoji_url(name)}' align='absmiddle' />"
|
67
|
-
end
|
68
|
-
end
|
69
|
-
end
|
70
|
-
end
|
71
|
-
end
|
data/lib/reveal-ck/config.rb
CHANGED
@@ -50,7 +50,8 @@ module RevealCK
|
|
50
50
|
'HTML::Pipeline::MentionFilter',
|
51
51
|
'HTML::Pipeline::AutolinkFilter'],
|
52
52
|
'asset_root' => 'https://assets-cdn.github.com/images/icons/',
|
53
|
-
'base_url' => 'https://github.com'
|
53
|
+
'base_url' => 'https://github.com',
|
54
|
+
'requires' => []
|
54
55
|
}
|
55
56
|
end
|
56
57
|
end
|
data/lib/reveal-ck/version.rb
CHANGED
@@ -0,0 +1,28 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
module HTML
|
4
|
+
class Pipeline
|
5
|
+
describe RevealCKEmojiFilter do
|
6
|
+
let :emoji_filter do
|
7
|
+
doc = nil
|
8
|
+
context = {
|
9
|
+
asset_root: 'asset_root'
|
10
|
+
}
|
11
|
+
RevealCKEmojiFilter.new doc, context
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'works with defined emoji' do
|
15
|
+
expected = "I <img class='emoji' title=':heart:' "
|
16
|
+
expected += "alt=':heart:' src='asset_root/emoji/unicode/2764.png' "
|
17
|
+
expected += "align='absmiddle' /> emoji"
|
18
|
+
result = emoji_filter.emoji_image_filter('I :heart: emoji')
|
19
|
+
expect(result).to eq(expected)
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'leaves undefined emoji alone' do
|
23
|
+
result = emoji_filter.emoji_image_filter('I :dont_know: emoji')
|
24
|
+
expect(result).to eq('I :dont_know: emoji')
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -54,6 +54,31 @@ module RevealCK
|
|
54
54
|
end
|
55
55
|
end
|
56
56
|
end
|
57
|
+
|
58
|
+
it 'requires the entries in config.filters' do
|
59
|
+
Dir.mktmpdir do |dir|
|
60
|
+
Dir.chdir(dir) do
|
61
|
+
slides_file_initial = 'slides-initial.md'
|
62
|
+
File.open(slides_file_initial, 'w') do |file|
|
63
|
+
file.puts('# Slides')
|
64
|
+
end
|
65
|
+
|
66
|
+
config = Config.new
|
67
|
+
config.requires = %w(json time)
|
68
|
+
application = Rake::Application.new
|
69
|
+
slides_html =
|
70
|
+
CreateSlidesHtml.new(slides_file: slides_file_initial,
|
71
|
+
output_dir: dir,
|
72
|
+
config: config,
|
73
|
+
application: application)
|
74
|
+
|
75
|
+
slides_html.prepare
|
76
|
+
expect(slides_html).to receive(:require).with('json')
|
77
|
+
expect(slides_html).to receive(:require).with('time')
|
78
|
+
application['create_slides_html'].invoke
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
57
82
|
end
|
58
83
|
end
|
59
84
|
end
|
@@ -1,10 +1,9 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
module RevealCK
|
4
|
-
VERSION = '1.0'
|
5
|
-
|
6
4
|
module Builders
|
7
5
|
describe IndexHtml do
|
6
|
+
let(:version) { RevealCK::VERSION }
|
8
7
|
let :index_html_erb do
|
9
8
|
RevealCK.template_path('index.html',
|
10
9
|
'index.html.erb')
|
@@ -46,7 +45,7 @@ module RevealCK
|
|
46
45
|
|
47
46
|
it 'prints the program name and version in the generator tag' do
|
48
47
|
expect(rendered_content)
|
49
|
-
.to include(
|
48
|
+
.to include(%(<meta name="generator" content="reveal-ck #{version}">))
|
50
49
|
end
|
51
50
|
|
52
51
|
it 'supports replacing the configured title' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: reveal-ck
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jed Northridge
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-05-
|
11
|
+
date: 2015-05-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: docile
|
@@ -472,6 +472,7 @@ files:
|
|
472
472
|
- files/reveal.js/test/test-pdf.js
|
473
473
|
- files/reveal.js/test/test.html
|
474
474
|
- files/reveal.js/test/test.js
|
475
|
+
- lib/html/pipeline/reveal_ck_emoji_filter.rb
|
475
476
|
- lib/reveal-ck.rb
|
476
477
|
- lib/reveal-ck/builders.rb
|
477
478
|
- lib/reveal-ck/builders/copy_files_task.rb
|
@@ -539,6 +540,7 @@ files:
|
|
539
540
|
- spec/data/templates/processor/basic.slim
|
540
541
|
- spec/examples/programmatic_slides_spec.rb
|
541
542
|
- spec/examples/slide_output_spec.rb
|
543
|
+
- spec/lib/html/pipeline/reveal_ck_emoji_filter_spec.rb
|
542
544
|
- spec/lib/reveal-ck/builders/copy_files_task_spec.rb
|
543
545
|
- spec/lib/reveal-ck/builders/create_index_html_spec.rb
|
544
546
|
- spec/lib/reveal-ck/builders/create_slides_html_spec.rb
|
@@ -618,6 +620,7 @@ test_files:
|
|
618
620
|
- spec/data/templates/processor/basic.slim
|
619
621
|
- spec/examples/programmatic_slides_spec.rb
|
620
622
|
- spec/examples/slide_output_spec.rb
|
623
|
+
- spec/lib/html/pipeline/reveal_ck_emoji_filter_spec.rb
|
621
624
|
- spec/lib/reveal-ck/builders/copy_files_task_spec.rb
|
622
625
|
- spec/lib/reveal-ck/builders/create_index_html_spec.rb
|
623
626
|
- spec/lib/reveal-ck/builders/create_slides_html_spec.rb
|