jemoji 0.8.1 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +5 -5
  2. data/lib/jemoji.rb +22 -15
  3. metadata +28 -42
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: d9931173bc3eefa61e1f4f23a2fc9f137a36dab5
4
- data.tar.gz: 3c25ddabf9b3853e2fb74051574d356030117fa8
2
+ SHA256:
3
+ metadata.gz: 24704dfbb73a5c5a1c8e8170dd1a6120e804072eff0e03c339d370a25b70253d
4
+ data.tar.gz: 81d5cd34591b3034c186c95847f0df4acaa1d7f12df6678c1e93095613d76e63
5
5
  SHA512:
6
- metadata.gz: cb2399c607acaa860cd82224e6e852b3bb26c83b6cfa25cb23a5629b00d16b3ba0a44a1374fbd92b148e4e38e5a11f8948e9555727919231a1c542cf0f79313b
7
- data.tar.gz: 2067935dc078efb6123e44a650f1a6e7336bcd3195dcf58a795f718890898163048a83fac7632f11873250ca78e8506b6ca571f00242be16ce681cb2baf43482
6
+ metadata.gz: 7d434105b349e1069bd77cc539c3174583e320c176075c168e2ab48038245c70077d47328bc740ee57383247329b4462fe49943e36b72a9889fdfbdb90f52df9
7
+ data.tar.gz: b330960627e9c6f3370120a47ec51e952f7e8489f2492642edc5d4adabc0937d152589b05b42151cb63b9767cf267809645f00204bbec975e0bfba67d59638cf
data/lib/jemoji.rb CHANGED
@@ -1,6 +1,8 @@
1
- require 'jekyll'
2
- require 'gemoji'
3
- require 'html/pipeline'
1
+ # frozen_string_literal: true
2
+
3
+ require "jekyll"
4
+ require "gemoji"
5
+ require "html/pipeline"
4
6
 
5
7
  module Jekyll
6
8
  class Emoji
@@ -11,15 +13,12 @@ module Jekyll
11
13
  class << self
12
14
  def emojify(doc)
13
15
  return unless doc.output =~ HTML::Pipeline::EmojiFilter.emoji_pattern
14
- src = emoji_src(doc.site.config)
15
- if doc.output.include? BODY_START_TAG
16
- parsed_doc = Nokogiri::HTML::Document.parse(doc.output)
17
- body = parsed_doc.at_css('body')
18
- body.children = filter_with_emoji(src).call(body.inner_html)[:output].to_s
19
- doc.output = parsed_doc.to_html
20
- else
21
- doc.output = filter_with_emoji(src).call(doc.output)[:output].to_s
22
- end
16
+ doc.output = if doc.output.include? BODY_START_TAG
17
+ replace_document_body(doc)
18
+ else
19
+ src = emoji_src(doc.site.config)
20
+ filter_with_emoji(src).call(doc.output)[:output].to_s
21
+ end
23
22
  end
24
23
 
25
24
  # Public: Create or fetch the filter for the given {{src}} asset root.
@@ -29,8 +28,8 @@ module Jekyll
29
28
  # Returns an HTML::Pipeline instance for the given asset root.
30
29
  def filter_with_emoji(src)
31
30
  filters[src] ||= HTML::Pipeline.new([
32
- HTML::Pipeline::EmojiFilter
33
- ], { :asset_root => src, img_attrs: { align: nil } })
31
+ HTML::Pipeline::EmojiFilter,
32
+ ], { :asset_root => src, :img_attrs => { :align => nil } })
34
33
  end
35
34
 
36
35
  # Public: Filters hash where the key is the asset root source.
@@ -78,10 +77,18 @@ module Jekyll
78
77
  "#{GITHUB_DOT_COM_ASSET_HOST_URL}#{ASSET_PATH}"
79
78
  end
80
79
  end
80
+
81
+ def replace_document_body(doc)
82
+ src = emoji_src(doc.site.config)
83
+ parsed_doc = Nokogiri::HTML::Document.parse(doc.output)
84
+ body = parsed_doc.at_css("body")
85
+ body.children = filter_with_emoji(src).call(body.inner_html)[:output].to_s
86
+ parsed_doc.to_html
87
+ end
81
88
  end
82
89
  end
83
90
  end
84
91
 
85
- Jekyll::Hooks.register [:pages, :documents], :post_render do |doc|
92
+ Jekyll::Hooks.register %i[pages documents], :post_render do |doc|
86
93
  Jekyll::Emoji.emojify(doc) if Jekyll::Emoji.emojiable?(doc)
87
94
  end
metadata CHANGED
@@ -1,65 +1,65 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jemoji
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitHub, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-09-21 00:00:00.000000000 Z
11
+ date: 2017-12-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: jekyll
14
+ name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '4.0'
17
20
  - - ">="
18
21
  - !ruby/object:Gem::Version
19
- version: '3.0'
22
+ version: 4.2.9
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '4.0'
24
30
  - - ">="
25
31
  - !ruby/object:Gem::Version
26
- version: '3.0'
32
+ version: 4.2.9
27
33
  - !ruby/object:Gem::Dependency
28
- name: html-pipeline
34
+ name: gemoji
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: '2.2'
39
+ version: '3.0'
34
40
  type: :runtime
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: '2.2'
46
+ version: '3.0'
41
47
  - !ruby/object:Gem::Dependency
42
- name: activesupport
48
+ name: html-pipeline
43
49
  requirement: !ruby/object:Gem::Requirement
44
50
  requirements:
45
51
  - - "~>"
46
52
  - !ruby/object:Gem::Version
47
- version: '4.0'
48
- - - ">="
49
- - !ruby/object:Gem::Version
50
- version: 4.2.9
53
+ version: '2.2'
51
54
  type: :runtime
52
55
  prerelease: false
53
56
  version_requirements: !ruby/object:Gem::Requirement
54
57
  requirements:
55
58
  - - "~>"
56
59
  - !ruby/object:Gem::Version
57
- version: '4.0'
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- version: 4.2.9
60
+ version: '2.2'
61
61
  - !ruby/object:Gem::Dependency
62
- name: gemoji
62
+ name: jekyll
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - "~>"
@@ -73,47 +73,33 @@ dependencies:
73
73
  - !ruby/object:Gem::Version
74
74
  version: '3.0'
75
75
  - !ruby/object:Gem::Dependency
76
- name: rake
77
- requirement: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - ">="
80
- - !ruby/object:Gem::Version
81
- version: '0'
82
- type: :development
83
- prerelease: false
84
- version_requirements: !ruby/object:Gem::Requirement
85
- requirements:
86
- - - ">="
87
- - !ruby/object:Gem::Version
88
- version: '0'
89
- - !ruby/object:Gem::Dependency
90
- name: rdoc
76
+ name: rspec
91
77
  requirement: !ruby/object:Gem::Requirement
92
78
  requirements:
93
- - - ">="
79
+ - - "~>"
94
80
  - !ruby/object:Gem::Version
95
- version: '0'
81
+ version: '3.0'
96
82
  type: :development
97
83
  prerelease: false
98
84
  version_requirements: !ruby/object:Gem::Requirement
99
85
  requirements:
100
- - - ">="
86
+ - - "~>"
101
87
  - !ruby/object:Gem::Version
102
- version: '0'
88
+ version: '3.0'
103
89
  - !ruby/object:Gem::Dependency
104
- name: rspec
90
+ name: rubocop
105
91
  requirement: !ruby/object:Gem::Requirement
106
92
  requirements:
107
93
  - - "~>"
108
94
  - !ruby/object:Gem::Version
109
- version: '3.0'
95
+ version: '0.51'
110
96
  type: :development
111
97
  prerelease: false
112
98
  version_requirements: !ruby/object:Gem::Requirement
113
99
  requirements:
114
100
  - - "~>"
115
101
  - !ruby/object:Gem::Version
116
- version: '3.0'
102
+ version: '0.51'
117
103
  description:
118
104
  email: support@github.com
119
105
  executables: []
@@ -133,7 +119,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
133
119
  requirements:
134
120
  - - ">="
135
121
  - !ruby/object:Gem::Version
136
- version: '0'
122
+ version: '2.1'
137
123
  required_rubygems_version: !ruby/object:Gem::Requirement
138
124
  requirements:
139
125
  - - ">="
@@ -141,7 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
141
127
  version: '0'
142
128
  requirements: []
143
129
  rubyforge_project:
144
- rubygems_version: 2.6.13
130
+ rubygems_version: 2.7.1
145
131
  signing_key:
146
132
  specification_version: 4
147
133
  summary: GitHub-flavored emoji plugin for Jekyll