markdown-highlight-extended-filter 1.0.0 → 1.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7dfc3f9e711fe9a402d79542c5d48653ea8fdc66
4
- data.tar.gz: 2939f157d44ef9b3d8f14adf5f67f05c41d778c2
3
+ metadata.gz: 37014d563b618e84739abc540414494a42cc2733
4
+ data.tar.gz: 76593026f18aa8d40546425c37bb958796fc0cc7
5
5
  SHA512:
6
- metadata.gz: 1878404d04e588fe1e8dcf451aa5965cf804d4ee7748dd06e8c207f0501c72c2595ed6c62d06502d723fc4b42ed6820ae2ad17736ad86b257df129618c8c0916
7
- data.tar.gz: 5c40dc8591e79150656c6c9745b72ff03e26521c6d48ada68e79bd44eb332cc3c28ae503f7cdcab8c1506741185c951fc502d3f1c11753f338e34177f4b1ce99
6
+ metadata.gz: b047ee7c8c010edf13b66e276ee9662377635e770599dc6c1e5b484ebf8fb424eb173de3749cdde49c2493d1eb670a65b2f98aadda23cbf98c4eaad1d017d4f6
7
+ data.tar.gz: 9f15397b350afd7cef9c2ab60e167c1cc16d02bc33bb6127fa1f3bfc2dc4f52817b5ac0ad16ee7ef4e0fa16f34677b48ac67ba3f72123034444dcd1aa68ff59c
data/.gitignore CHANGED
@@ -12,3 +12,4 @@
12
12
  *.o
13
13
  *.a
14
14
  mkmf.log
15
+ .DS_Store
@@ -1,6 +1,5 @@
1
1
  require "html/pipeline"
2
- require "pygments.rb"
3
- require "linguist"
2
+ require "rouge"
4
3
 
5
4
  # Stolen from https://github.com/imathis/octopress/blob/master/plugins/backtick_code_block.rb
6
5
  # (MIT License)
@@ -45,15 +44,18 @@ class MarkdownHighlightExtendedFilter < HTML::Pipeline::TextFilter
45
44
  end
46
45
 
47
46
  def highlight_code(code, lang)
48
- if lexer = lexer_for(lang)
49
- lexer.highlight(code, :options => { :cssclass => "highlight highlight-#{lang}" })
47
+ if lexer = lexer_for(lang, code)
48
+ # XXX: Rouge wrapper `<pre css_class><code>` is different from
49
+ # what pygments generates `<div css_class><pre>`.
50
+ # To keep compatibility, we don't use Rouge's warp, and wrap it manually.
51
+ html = Rouge::Formatters::HTML.format(lexer.lex(code), :wrap => false)
52
+ %Q{<div class="highlight highlight-#{lexer.tag}"><pre>#{html}\n</pre></div>}
50
53
  else
51
54
  "<pre>#{code}</pre>"
52
55
  end
53
56
  end
54
57
 
55
- # https://github.com/jch/html-pipeline/blob/master/lib/html/pipeline/syntax_highlight_filter.rb#L38
56
- def lexer_for(lang)
57
- (Linguist::Language[lang] && Linguist::Language[lang].lexer) || Pygments::Lexer[lang]
58
+ def lexer_for(lang, code)
59
+ Rouge::Lexer.find(lang)
58
60
  end
59
61
  end
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "markdown-highlight-extended-filter"
7
- spec.version = "1.0.0"
7
+ spec.version = "1.1.0"
8
8
  spec.authors = ["Yu-Cheng Chuang"]
9
9
  spec.email = ["ducksteven@gmail.com"]
10
10
  spec.summary = %q{HTML::Pipeline filter for Octopress-flavored syntax highlighting}
@@ -18,8 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.require_paths = ["lib"]
19
19
 
20
20
  spec.add_dependency "html-pipeline"
21
- spec.add_dependency "pygments.rb"
22
- spec.add_dependency "github-linguist"
21
+ spec.add_dependency "rouge"
23
22
 
24
23
  spec.add_development_dependency "bundler", "~> 1.7"
25
24
  spec.add_development_dependency "rake", "~> 10.0"
@@ -119,7 +119,7 @@ TEXT
119
119
 
120
120
  it "renders correctly" do
121
121
  expect(rendered).to eq <<-HTML
122
- <figure class='code'><figcaption><span></span></figcaption><div class="highlight highlight-html"><pre><span class="nt">&lt;input</span> <span class="na">name=</span><span class="s">&quot;test&quot;</span> <span class="na">value=</span><span class="s">&quot;hello&quot;</span> <span class="nt">/&gt;</span>
122
+ <figure class='code'><figcaption><span></span></figcaption><div class="highlight highlight-html"><pre><span class="nt">&lt;input</span> <span class="na">name=</span><span class="s">"test"</span> <span class="na">value=</span><span class="s">"hello"</span> <span class="nt">/&gt;</span>
123
123
  </pre></div></figure>
124
124
  HTML
125
125
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: markdown-highlight-extended-filter
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yu-Cheng Chuang
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-14 00:00:00.000000000 Z
11
+ date: 2015-02-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: html-pipeline
@@ -25,21 +25,7 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: pygments.rb
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: github-linguist
28
+ name: rouge
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
31
  - - ">="