rb_markdown 0.2.0 → 0.2.1

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
  SHA256:
3
- metadata.gz: 17dbdf585f1866132db4a59586f1a718f533282c2abe3112feda769d53797d9e
4
- data.tar.gz: b54373ccbb44e35b8d5daa3ba3e2f10d52082b49c9088998374898dab68d4810
3
+ metadata.gz: b23d467ec89c1d6a8c9377d16bd353f9fcdaad0c6beb0a7d7c30aacc29f7574c
4
+ data.tar.gz: 1edde1cca765cc2c2299fa5bcae7f8965e68d1e5d951e002cc5064bed4385793
5
5
  SHA512:
6
- metadata.gz: dc1ccf31f89b17cb52b357e701c9fed65271d672aeb3812df83e85553af981e4e87f11a286fcbbd2ebf84309076ce9663543a257626a40ae54df607adfd0f73a
7
- data.tar.gz: d673b082a8133b9dfbf691a6b272dce752855d9c230953c79f2e12b1b5b377a51ba6a24c5b8de9d974a572420ab8e9d626afc68c02be56a979ab4026f64daae3
6
+ metadata.gz: 2bef5c749ececd6d406ee0667a4e187e508c3abfb41bd264196682392cafe36989484d3398ca47572e773eb1fe89aca5d22606b969a1ae6b79cf619234d55ab5
7
+ data.tar.gz: c07be792abbd5e60d451eff06ab1ba26a8cf303956bb2daa4643908b5611d1417d9d1b5759d39150e9565a409cdc500e711e66de8883a052be03e891a970154c
@@ -9,7 +9,7 @@ module Markdown
9
9
  lexer ||= Rouge::Lexers::PlainText.new
10
10
 
11
11
  formatter = Rouge::Formatters::Terminal256.new(Rouge::Themes::Monokai.new)
12
- formatter.format(lexer.lex(content))
12
+ formatter.format(lexer.lex(content)).gsub("\033[4m", "")
13
13
  end
14
14
  end
15
15
  end
@@ -13,7 +13,7 @@ module Markdown
13
13
  end
14
14
 
15
15
  def convert(string)
16
- string.bold.underline
16
+ string.bold.underline.yellow
17
17
  end
18
18
  end
19
19
  end
@@ -13,7 +13,7 @@ module Markdown
13
13
  end
14
14
 
15
15
  def convert(string)
16
- string.bold.italic
16
+ string.italic.yellow
17
17
  end
18
18
  end
19
19
  end
@@ -13,7 +13,7 @@ module Markdown
13
13
  end
14
14
 
15
15
  def convert(string)
16
- string.bold
16
+ string.bold.yellow
17
17
  end
18
18
  end
19
19
  end
@@ -10,25 +10,46 @@ module Markdown
10
10
  class LineProcessor
11
11
  def initialize(inline_processor)
12
12
  @inline_processor = inline_processor
13
- @line_tags = [
13
+ @heading_tags = [
14
14
  HeadingThreeTag.new,
15
15
  HeadingTwoTag.new,
16
16
  HeadingOneTag.new,
17
+ ]
18
+ @line_tags = @heading_tags + [
17
19
  UnorderedListTag.new,
18
20
  OrderedListTag.new,
19
21
  ]
20
22
  end
21
23
 
22
24
  def process(string)
23
- string.each_line(chomp: true).map do |line|
25
+ lines = string.each_line(chomp: true).to_a
26
+ result = []
27
+ skip_next_blank = false
28
+
29
+ lines.each do |line|
30
+ if skip_next_blank && line.strip.empty?
31
+ skip_next_blank = false
32
+ next
33
+ end
34
+ skip_next_blank = false
35
+
24
36
  tag = @line_tags.find { |t| t.match?(line) }
25
37
 
26
- if tag
38
+ processed = if tag
27
39
  @inline_processor.process(tag.process(line))
28
40
  else
29
41
  @inline_processor.process(line)
30
42
  end
31
- end.join("\n")
43
+
44
+ result << processed
45
+
46
+ if tag && @heading_tags.include?(tag)
47
+ result << ""
48
+ skip_next_blank = true
49
+ end
50
+ end
51
+
52
+ result.join("\n")
32
53
  end
33
54
  end
34
55
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rb_markdown
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aurélien Delogu