html-pipeline-linuxfr 0.14.16 → 0.14.17

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 796b1191f5eef6a2771d0470018eb22958bec34d
4
- data.tar.gz: fdc36f6f11c0ef21c566d52cbe419a674d5835ac
3
+ metadata.gz: 91758200c32929a358224d57f9b4c9a605828592
4
+ data.tar.gz: e1bb9b7188af2ea0a82fbe87541370784187de92
5
5
  SHA512:
6
- metadata.gz: 5eb14d20231b8976a27338e7ba89f14f9130e58ac2ee1142f058eab638b5957bb8c97c20340c5a0ac491870487cb9e021cfbba514d561696e8403e42fde0a445
7
- data.tar.gz: f539d030879ca2102f69613043b907b5d3cc3ae8edd23ca541206245454ca5a6113fff41202833a95308cd366fd8f691634bed2c49564d3ab194ad0829b1437e
6
+ metadata.gz: 800cd8164579dde57468761e943477199902941ba962bb5e1d5082c5c0835823c0099bde1ffeeaae876c4fec3edc368090d95d0c5d9697727f9b3b812cf40294
7
+ data.tar.gz: 0b5b66aa3ebe6cf96e84c6393c74f68c7b0b6ef3523866743dd12cd7dc6348f23fb2bf9736b3834a85f8e24315c856444661433dfca92a55c44033a9e938b883
@@ -11,15 +11,18 @@ module HTML
11
11
  def initialize(text, context = nil, result = nil)
12
12
  super text, context, result
13
13
  @text = @text.gsub "\r", ''
14
+ @inline = {}
14
15
  @codemap = {}
15
16
  end
16
17
 
17
18
  def call
18
- extract_code!
19
+ extract_fenced_code!
20
+ extract_indented_code!
19
21
  @text.gsub!(/^\$\$([^$]+)\$\$\s*$/) do
20
22
  "\n\n```mathjax\n\\displaystyle{#{$1.gsub "\\", "\\\\\\\\"}}\n```\n\n"
21
23
  end
22
- extract_code!
24
+ extract_fenced_code!
25
+ extract_inline_code!
23
26
  @text.gsub!(/\$([^$\n]+)\$/) do
24
27
  "`{mathjax} #{$1}`"
25
28
  end
@@ -27,8 +30,24 @@ module HTML
27
30
  @text
28
31
  end
29
32
 
33
+ def extract_inline_code!
34
+ @text.gsub!(/`(.*)`/) do
35
+ id = Digest::SHA1.hexdigest($1)
36
+ @inline[id] = $1
37
+ id
38
+ end
39
+ end
40
+
41
+ def extract_indented_code!
42
+ @text.gsub!(/(\A|^\r?\n)(((\t|\s{4}).*)+)\r?(\n$|\Z)/) do
43
+ id = Digest::SHA1.hexdigest($2)
44
+ @codemap[id] = { :code => $2 }
45
+ "\n#{id}"
46
+ end
47
+ end
48
+
30
49
  # Code taken from gollum (http://github.com/github/gollum)
31
- def extract_code!
50
+ def extract_fenced_code!
32
51
  @text.gsub!(/^``` ?(.*?)\r?\n(.+?)\r?\n```\r?$/m) do
33
52
  id = Digest::SHA1.hexdigest($2)
34
53
  @codemap[id] = { :lang => $1, :code => $2 }
@@ -37,8 +56,11 @@ module HTML
37
56
  end
38
57
 
39
58
  def reinsert_code!
59
+ @inline.each do |id, code|
60
+ @text.gsub!(id) { "`#{code}`" }
61
+ end
40
62
  @codemap.each do |id, spec|
41
- @text.gsub!(id, "```#{spec[:lang]}\n#{spec[:code]}\n```")
63
+ @text.gsub!(id) { "```#{spec[:lang]}\n#{spec[:code]}\n```" }
42
64
  end
43
65
  end
44
66
  end
@@ -26,7 +26,7 @@ module HTML
26
26
  end
27
27
 
28
28
  def highlight_with_timeout_handling(lexer, text)
29
- lexer.highlight(text, options: { nowrap: true })
29
+ lexer.highlight(text, options: { nowrap: true, startinline: true })
30
30
  rescue Timeout::Error
31
31
  nil
32
32
  end
@@ -1,5 +1,5 @@
1
1
  module HTML
2
2
  class Pipeline
3
- VERSION = "0.14.16"
3
+ VERSION = "0.14.17"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: html-pipeline-linuxfr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.16
4
+ version: 0.14.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Tomayko
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-03-12 00:00:00.000000000 Z
13
+ date: 2014-03-21 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: nokogiri