redcarpet-render-hiki 0.0.1 → 0.0.2

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: 4af88aa7ed69dfb1e234b79ff7c4f37c8e3d74f2
4
- data.tar.gz: 90f80198092148792dcbb2e6b6de28725b5b3273
3
+ metadata.gz: 519bd68e8ab79b21e805f0e9d2ee48a83a13ffed
4
+ data.tar.gz: 4b59e8c60cf9a4716caaea45ec364747dde05c70
5
5
  SHA512:
6
- metadata.gz: 990a8d1111c01078d63df96e1c224f325a285f5f1b705ef5008e26e1aa8520265fedef27cbf33dfba3d9035f7c1583a8cbb12000bd0c594b5b7ff32a5010394b
7
- data.tar.gz: b8079b3eaf2e919e960f83275f7406f28ebdc6915b21dd25ce34b0103d73cf53041a605722a6cc5c7f9682cfe608a3834fe7b5835fe8e96e99d7f7ff72827c27
6
+ metadata.gz: 19f0e524e2e05160a7efbd405ae0101d3ec3c6ccad2c1d4a9b95dfc999a0b93f9a871511459b2b31233a035b58dd8aaaa1f4363d47213b20cf63f68fcd3120ba
7
+ data.tar.gz: 190ec8b756be18cf89def17e8a8fb6a75d997417a13ad143450936eb2526e7d00f2cdfb089292a7fe3802014709f7fd9b7354f6e182ca66a115629109f107370
@@ -3,13 +3,64 @@ require "redcarpet/render/hiki/version"
3
3
  module Redcarpet
4
4
  module Render
5
5
  class Hiki < Base
6
+ # Block-level calls
7
+ def block_code(code, language)
8
+ "<<<#{$/}#{code}>>>#{$/*2}"
9
+ end
10
+
11
+ def block_quote(quote)
12
+ quote.chomp.lines.map {|line| %(""#{line}) }.join + $/
13
+ end
14
+
15
+ def header(text, header_level)
16
+ # FIXME escape !
17
+ "#{?!*header_level}#{text}#{$/*2}"
18
+ end
19
+
20
+ def hrule
21
+ '-' * 4 + $/ * 2
22
+ end
23
+
24
+ def list(contents, list_type)
25
+ l = list_type == :unordered ? '*' : '#'
26
+ contents.lines.map {|line|
27
+ "#{l}#{line}"
28
+ }.join
29
+ end
30
+
31
+ def list_item(text, list_type)
32
+ # FIXME mixed list type
33
+ text
34
+ end
35
+
36
+ def paragraph(text)
37
+ text + $/ * 2
38
+ end
39
+
40
+ # Span-level calls
41
+ def double_emphasis(text)
42
+ # FIXME escape '
43
+ "'''#{text}'''"
44
+ end
45
+
46
+ def emphasis(text)
47
+ # FIXME escape '
48
+ "''#{text}''"
49
+ end
50
+
51
+ def image(link, title, alt_text)
52
+ # FIXME I don't care about title
53
+ "[[#{alt_text}|#{link}]]"
54
+ end
55
+
6
56
  def link(link, title, content)
7
57
  # FIXME I don't care about title
8
58
  "[[#{content}|#{link}]]"
9
59
  end
10
60
 
11
- def paragraph(text)
12
- text + $/
61
+ def strikethrough(text)
62
+ # FIXME escape =
63
+ "==#{text}=="
13
64
  end
14
65
  end
15
66
  end
@@ -4,7 +4,7 @@ module Redcarpet
4
4
  class Base; end
5
5
 
6
6
  class Hiki < Base
7
- VERSION = "0.0.1"
7
+ VERSION = "0.0.2"
8
8
  end
9
9
  end
10
10
  end
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
20
20
 
21
21
  spec.add_runtime_dependency "redcarpet"
22
22
 
23
- spec.add_development_dependency "bundler", "~> 1.5"
23
+ spec.add_development_dependency "bundler", "~> 1.8.5"
24
24
  spec.add_development_dependency "pry"
25
25
  spec.add_development_dependency "pry-doc"
26
26
  spec.add_development_dependency "rake"
@@ -5,13 +5,91 @@ require 'redcarpet/render/hiki'
5
5
  class TestRecarpetRenderHiki < Test::Unit::TestCase
6
6
  def test_render_markdown_as_hiki
7
7
  renderer = Redcarpet::Render::Hiki
8
- rc_markdown = Redcarpet::Markdown.new(renderer.new)
8
+ rc_markdown = Redcarpet::Markdown.new(renderer.new, fenced_code_blocks: true, strikethrough: true)
9
9
 
10
10
  markdown = <<MARKDOWN
11
11
  [redcarpet-render-hiki](https://github.com/hanachin/redcarpet-render-hiki)で、
12
12
  Markdownをhiki記法に変換したい。
13
13
  なぜなら、Markdownで書かれた記事をhikiに変換できるとるびまの編集の手間が減って、
14
14
  世界がちょっと幸せになりそうだからだ。
15
+
16
+ 任意のURLへのリンク
17
+
18
+ ![クローバー](http://jp.rubyist.net/theme/clover/clover_h1.png)
19
+
20
+ 整形済みテキスト
21
+
22
+ ```
23
+
24
+
25
+
26
+
27
+ ```
28
+ ```ruby
29
+ puts :helloworld
30
+ ```
31
+ ~~~
32
+
33
+
34
+
35
+
36
+ ~~~
37
+ ~~~rb
38
+ puts :helloworld
39
+ ~~~
40
+
41
+ 文字の修飾
42
+
43
+ _emphasized_ and *emphasized* and __strong emphasis__ and **strong emphasis**
44
+
45
+ ~~だるいだるい~~
46
+
47
+ 見出し
48
+
49
+ # 見出し1
50
+ ## 見出し2
51
+ ### 見出し3
52
+ #### 見出し4
53
+ ##### 見出し5
54
+
55
+ 水平線
56
+
57
+ - - - - -
58
+
59
+ 順番なし
60
+
61
+ - アイテム1
62
+ - アイテム1.1
63
+ - アイテム1.2
64
+ - アイテム1.2.1
65
+ - アイテム1.2.2
66
+ - アイテム1.2.3
67
+ - アイテム1.3
68
+ - アイテム1.4
69
+ - アイテム2
70
+
71
+ 順番あり
72
+
73
+ 1. その1
74
+ 2. その2
75
+ 1. その2.1
76
+ 2. その2.2
77
+ 3. その2.3
78
+ 2. その3
79
+ 1. その3.1
80
+ 1. その3.1.1
81
+ 2. その3.1.2
82
+
83
+ 引用
84
+
85
+ > これは引用です。
86
+ > さらに引用します。
87
+ > 続けて引用します。
88
+ > 引用が連続する場合、
89
+ > このように一つの引用として
90
+ > 展開されます。
91
+
92
+ おわり
15
93
  MARKDOWN
16
94
 
17
95
  hiki = <<HIKI
@@ -19,8 +97,92 @@ MARKDOWN
19
97
  Markdownをhiki記法に変換したい。
20
98
  なぜなら、Markdownで書かれた記事をhikiに変換できるとるびまの編集の手間が減って、
21
99
  世界がちょっと幸せになりそうだからだ。
100
+
101
+ 任意のURLへのリンク
102
+
103
+ [[クローバー|http://jp.rubyist.net/theme/clover/clover_h1.png]]
104
+
105
+ 整形済みテキスト
106
+
107
+ <<<
108
+
109
+
110
+
111
+
112
+ >>>
113
+
114
+ <<<
115
+ puts :helloworld
116
+ >>>
117
+
118
+ <<<
119
+
120
+
121
+
122
+
123
+ >>>
124
+
125
+ <<<
126
+ puts :helloworld
127
+ >>>
128
+
129
+ 文字の修飾
130
+
131
+ ''emphasized'' and ''emphasized'' and '''strong emphasis''' and '''strong emphasis'''
132
+
133
+ ==だるいだるい==
134
+
135
+ 見出し
136
+
137
+ !見出し1
138
+
139
+ !!見出し2
140
+
141
+ !!!見出し3
142
+
143
+ !!!!見出し4
144
+
145
+ !!!!!見出し5
146
+
147
+ 水平線
148
+
149
+ ----
150
+
151
+ 順番なし
152
+
153
+ *アイテム1
154
+ **アイテム1.1
155
+ **アイテム1.2
156
+ ***アイテム1.2.1
157
+ ***アイテム1.2.2
158
+ ***アイテム1.2.3
159
+ **アイテム1.3
160
+ **アイテム1.4
161
+ *アイテム2
162
+ 順番あり
163
+
164
+ #その1
165
+ #その2
166
+ ##その2.1
167
+ ##その2.2
168
+ ##その2.3
169
+ #その3
170
+ ##その3.1
171
+ ###その3.1.1
172
+ ###その3.1.2
173
+ 引用
174
+
175
+ ""これは引用です。
176
+ ""さらに引用します。
177
+ ""続けて引用します。
178
+ ""引用が連続する場合、
179
+ ""このように一つの引用として
180
+ ""展開されます。
181
+
182
+ おわり
183
+
22
184
  HIKI
23
185
 
24
- assert_equal(rc_markdown.render(markdown), hiki)
186
+ assert_equal(hiki, rc_markdown.render(markdown))
25
187
  end
26
188
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redcarpet-render-hiki
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Seiei Higa
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.5'
33
+ version: 1.8.5
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.5'
40
+ version: 1.8.5
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: pry
43
43
  requirement: !ruby/object:Gem::Requirement