curldown 2.0.0 → 2.1.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 +4 -4
  2. data/lib/curldown.rb +10 -8
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8ac6237f445424ea2890467651d8562fb7ceb4fb539e0d4617623c5c74c709d6
4
- data.tar.gz: 7c7eb51380d773a0554227823c92b5fdb7d2ded8cece4b7a064a6e8f460c7c19
3
+ metadata.gz: 5ea9b6021f6c175cfcc850480ff92f96980dc1286c745ef25fe9a5a011670abb
4
+ data.tar.gz: f9e98da7a5337a801288dcafdcb5286d19673cf3777a464605130f5740a78354
5
5
  SHA512:
6
- metadata.gz: c8a020822385969123c0c260be7cc2af3d7c2187826070111c73fecdfa73c97d9e13230875f32d701641d1b5a63961530eb3bb09fb9213a3954b30885e725d0f
7
- data.tar.gz: 65b99e433ee55ea84bf6d251c509ae7a6f05c4c55ea39397be7bf519f5923d98af1ef59b847af03cb739389ebe6fdf292a75fb7cdcbb8bfc8df1215c6cf8e7e7
6
+ metadata.gz: 5e3534e2a6ef8e7e35943ae47130b8863ba05289500e0bdd9a76dfbfd67e2ea8efbe67907a66f89bd7d280680fd947a4f074efc024c8ba489a15eec97eaa00d8
7
+ data.tar.gz: 43a93ba4c4f92c96b9d23111649bd2f53f78e165ca9a27e260ad8bf3bb2f48a7bebf80184bbac480a26525da1d94a6c945671d119e271fcb3ceb66249aeca161
data/lib/curldown.rb CHANGED
@@ -25,8 +25,11 @@ module Curldown
25
25
  response
26
26
  end
27
27
  class Render
28
- attr_accessor :user, :repo, :url, :github, :bitbucket, :raw, :html
28
+ attr_accessor :user, :repo, :url, :github, :bitbucket, :raw, :html, :lexers
29
29
  def initialize(user: false, repo: false, url: false, github: false, bitbucket: false)
30
+ @lexers = []
31
+ Pygments.lexers.each{|k,v| @lexers << v[:aliases] }
32
+ @lexers.flatten!
30
33
  if url
31
34
  @raw = get(url, json: false)
32
35
  else
@@ -46,15 +49,11 @@ module Curldown
46
49
  @html= md.render(@raw)
47
50
  end
48
51
  def highlight!
49
- lexers = []
50
- Pygments.lexers.each do |k,v|
51
- lexers << v[:aliases]
52
- end
53
- lexers.flatten!
54
52
  doc = Nokogiri::HTML(@html)
55
53
  doc.css("pre").each do |pre|
56
- if lexers.include?(pre.children[0].attributes['class'].value)
57
- lang = pre.children[0].attributes['class'].value
54
+ attrs = pre.children[0].attributes['class']
55
+ if attrs
56
+ lang = validate_lexer(attrs.value)
58
57
  else
59
58
  lang = "sh"
60
59
  end
@@ -65,6 +64,9 @@ module Curldown
65
64
  end
66
65
  @html = doc.css("body").children.to_html
67
66
  end
67
+ def validate_lexer(string)
68
+ @lexers.include?(string) ? string : "sh"
69
+ end
68
70
 
69
71
  end
70
72
  class GitHub
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: curldown
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ian Kent
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-01-12 00:00:00.000000000 Z
11
+ date: 2021-03-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: curb