mark_maker 0.4.0 → 0.5.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 +4 -4
- data/.ruby-version +1 -0
- data/README.md +28 -8
- data/bin/generate_readme.rb +21 -3
- data/lib/mark_maker/generator.rb +126 -1
- data/lib/mark_maker/version.rb +1 -1
- data/lib/mark_maker.rb +3 -0
- data/mark_maker.gemspec +2 -0
- data/test/minitest_helper.rb +1 -1
- data/test/test_mark_maker.rb +179 -0
- metadata +32 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 76f4840b445542d5b47ffbe2c24cbace45b7bee2
|
4
|
+
data.tar.gz: 21963a8d8dbbb87fcdd2fcbf1dc753438dedf243
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6215987f2defe491353b4a2fdb7d67b65836f0d93054f9c7d21e71e4fc9eddc5a94bf7770d9cce31d4916fabcb88c3d1324f8352c4114c831560e9ae901d1a3a
|
7
|
+
data.tar.gz: ed59aa1746b2e05038cccfbc361ba386fa09dcd724ef5d13e4c870c85b79655be9bc19dd0fad1663f24e2cfed3ca52fd10439d2869e903a5389fd94ec39d2441
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.2.1
|
data/README.md
CHANGED
@@ -155,8 +155,8 @@ puts total
|
|
155
155
|
puts header
|
156
156
|
puts separator
|
157
157
|
puts gen.table_row("First", "A", "$3.99")
|
158
|
-
puts gen.table_row("Second", "
|
159
|
-
puts gen.table_row("Third", "
|
158
|
+
puts gen.table_row("Second", "BC", "$14.00")
|
159
|
+
puts gen.table_row("Third", "DEFGH", "$1,034.50")
|
160
160
|
|
161
161
|
Produces this terribly ugly markdown ...
|
162
162
|
|
@@ -164,17 +164,37 @@ Produces this terribly ugly markdown ...
|
|
164
164
|
|Col One|Col Two|Col Three|
|
165
165
|
|-------|-------|---------|
|
166
166
|
|First|A|$3.99|
|
167
|
-
|Second|
|
168
|
-
|Third|
|
167
|
+
|Second|BC|$14.00|
|
168
|
+
|Third|DEFGH|$1,034.50|
|
169
169
|
```
|
170
170
|
|
171
|
+
Or, you can pass all the rows in at once like so ...
|
172
|
+
|
173
|
+
```ruby
|
174
|
+
table_data = [
|
175
|
+
["Col One", "Col Two", "Col Three"],
|
176
|
+
[":-", ":-:", "-:"],
|
177
|
+
["First", "A", "$3.99"],
|
178
|
+
["Second", "BC", "$14.00"],
|
179
|
+
["Third", "DEFGH", "$1,034.50"]
|
180
|
+
]
|
181
|
+
puts gen.table(*table_data)
|
182
|
+
```
|
183
|
+
And get nicely justified markdown like this ...
|
184
|
+
```
|
185
|
+
|Col One|Col Two|Col Three|
|
186
|
+
|:------|:-----:|--------:|
|
187
|
+
|First | A | $3.99|
|
188
|
+
|Second | BC | $14.00|
|
189
|
+
|Third | DEFGH |$1,034.50|
|
190
|
+
```
|
171
191
|
Which gives you this stunning HTML table ...
|
172
192
|
|
173
193
|
|Col One|Col Two|Col Three|
|
174
|
-
|
175
|
-
|First|A
|
176
|
-
|Second|
|
177
|
-
|Third|
|
194
|
+
|:------|:-----:|--------:|
|
195
|
+
|First | A | $3.99|
|
196
|
+
|Second | BC | $14.00|
|
197
|
+
|Third | DEFGH |$1,034.50|
|
178
198
|
|
179
199
|
|
180
200
|
### Block Quotes Example
|
data/bin/generate_readme.rb
CHANGED
@@ -151,8 +151,8 @@ table_code = <<-EOT
|
|
151
151
|
puts header
|
152
152
|
puts separator
|
153
153
|
puts gen.table_row("First", "A", "$3.99")
|
154
|
-
puts gen.table_row("Second", "
|
155
|
-
puts gen.table_row("Third", "
|
154
|
+
puts gen.table_row("Second", "BC", "$14.00")
|
155
|
+
puts gen.table_row("Third", "DEFGH", "$1,034.50")
|
156
156
|
EOT
|
157
157
|
puts gen.code_block(*table_code.split("\n"))
|
158
158
|
puts ""
|
@@ -163,9 +163,27 @@ table_markdown = capture_stdout do
|
|
163
163
|
end
|
164
164
|
puts gen.fenced_code_block(*table_markdown.string.split("\n"))
|
165
165
|
puts ""
|
166
|
+
puts "Or, you can pass all the rows in at once like so ..."
|
167
|
+
puts ""
|
168
|
+
pretty_table_code = <<-EOT
|
169
|
+
table_data = [
|
170
|
+
["Col One", "Col Two", "Col Three"],
|
171
|
+
[":-", ":-:", "-:"],
|
172
|
+
["First", "A", "$3.99"],
|
173
|
+
["Second", "BC", "$14.00"],
|
174
|
+
["Third", "DEFGH", "$1,034.50"]
|
175
|
+
]
|
176
|
+
puts gen.table(*table_data)
|
177
|
+
EOT
|
178
|
+
puts gen.fenced_code_language('ruby', *pretty_table_code.split("\n"))
|
179
|
+
puts "And get nicely justified markdown like this ..."
|
180
|
+
pretty_table_markdown = capture_stdout do
|
181
|
+
eval(pretty_table_code)
|
182
|
+
end
|
183
|
+
puts gen.fenced_code_block(*pretty_table_markdown.string.split("\n"))
|
166
184
|
puts "Which gives you this stunning HTML table ..."
|
167
185
|
puts ""
|
168
|
-
puts eval(
|
186
|
+
puts eval(pretty_table_code)
|
169
187
|
puts ""
|
170
188
|
puts gen.header3("Block Quotes Example")
|
171
189
|
puts ""
|
data/lib/mark_maker/generator.rb
CHANGED
@@ -6,6 +6,42 @@ module MarkMaker
|
|
6
6
|
underscore * content.size
|
7
7
|
end
|
8
8
|
|
9
|
+
def line_for_left
|
10
|
+
end
|
11
|
+
|
12
|
+
def line_for_right
|
13
|
+
end
|
14
|
+
|
15
|
+
def line_for_center
|
16
|
+
end
|
17
|
+
|
18
|
+
# Justification indicators are a bit of a special case, because the way
|
19
|
+
# they actually work is the colon's proximity to the vertical | bars marking
|
20
|
+
# the table cells. This means that the center justification indicator, for
|
21
|
+
# example :-:, must have the colon directly adjacent to the left | and the
|
22
|
+
# right | in order to take effect, like so |:-:|. Any whitespace on either
|
23
|
+
# side will cause the center justification to be ignored and default to
|
24
|
+
# left justification. So the following *will not* work, |:-: | or | :-: |.
|
25
|
+
# In fact the following, | :-:|, will result in right justification. This
|
26
|
+
# means we must fill out justification indicators, not just pad them out
|
27
|
+
# with spaces, in order for justification markers to look good in our
|
28
|
+
# native markdown output (an important consideration in itself) as well
|
29
|
+
# as being honored and generating the intended HTML (both being equally
|
30
|
+
# important in the MarkDown philosophy).
|
31
|
+
|
32
|
+
# detect if the given table cell content is a justification indicator
|
33
|
+
def justification?(cell)
|
34
|
+
cell =~ MarkMaker::RIGHT_JUSTIFY ||
|
35
|
+
cell =~ MarkMaker::LEFT_JUSTIFY ||
|
36
|
+
cell =~ MarkMaker::CENTER_JUSTIFY
|
37
|
+
end
|
38
|
+
|
39
|
+
# Inspect the cell contents and return a justification indicator
|
40
|
+
# as the fill element if the cell is a justification directive.
|
41
|
+
def justified_fill(c, fill)
|
42
|
+
justification?(c) ? '-' : fill
|
43
|
+
end
|
44
|
+
|
9
45
|
def header1(title)
|
10
46
|
"#{title}\n#{line_for('=', title)}"
|
11
47
|
end
|
@@ -85,8 +121,97 @@ module MarkMaker
|
|
85
121
|
content.inject("|") { |a, e| a << e << "|" }
|
86
122
|
end
|
87
123
|
|
124
|
+
# Table will treat the first line of content as the table header. It
|
125
|
+
# will also assess each 'column' and derive the width from the largest
|
126
|
+
# cell value, including the header. Justification can be passed in
|
127
|
+
# optionally.
|
128
|
+
|
129
|
+
def table(*content)
|
130
|
+
columns = content.transpose
|
131
|
+
justified = columns.map { |c| justify(*c) }
|
132
|
+
content = justified.transpose
|
133
|
+
table = []
|
134
|
+
# if content.size >= 1
|
135
|
+
# header, separator = table_header(*content[0])
|
136
|
+
# table << header << separator
|
137
|
+
# end
|
138
|
+
content[0, content.size].each { |c| table << table_row(*c) }
|
139
|
+
table.map { |t| t + "\n" }
|
140
|
+
end
|
141
|
+
|
88
142
|
def block_quote(*content)
|
89
|
-
content.map { |c| "#{BLOCK_QUOTE} #{c}"}
|
143
|
+
content.map { |c| "#{BLOCK_QUOTE} #{c}" }
|
144
|
+
end
|
145
|
+
|
146
|
+
def justify(*content)
|
147
|
+
# check for a justification marker in the second row
|
148
|
+
case content[1]
|
149
|
+
when MarkMaker::RIGHT_JUSTIFY
|
150
|
+
right_justify(' ', *content)
|
151
|
+
when MarkMaker::LEFT_JUSTIFY
|
152
|
+
left_justify(' ', *content)
|
153
|
+
when MarkMaker::CENTER_JUSTIFY
|
154
|
+
center_justify(' ', *content)
|
155
|
+
else
|
156
|
+
# no justification indicator was found, use a default
|
157
|
+
left_justify(' ', *content)
|
158
|
+
end
|
159
|
+
end
|
160
|
+
|
161
|
+
def left_justify(fill, *content)
|
162
|
+
width = column_width(*content)
|
163
|
+
|
164
|
+
content.map { |c| c + justified_fill(c, fill) * (width - c.length) }
|
165
|
+
end
|
166
|
+
|
167
|
+
def right_justify(fill, *content)
|
168
|
+
width = column_width(*content)
|
169
|
+
|
170
|
+
content.map { |c| justified_fill(c, fill) * (width - c.length) + c }
|
171
|
+
end
|
172
|
+
|
173
|
+
def center_justify(fill, *content)
|
174
|
+
width = column_width(*content)
|
175
|
+
|
176
|
+
content.map do |c|
|
177
|
+
if justification?(c)
|
178
|
+
# special case here, as justification must be filled from
|
179
|
+
# the middle out in order to meet the markdown spec requirements
|
180
|
+
# that will trigger proper justification
|
181
|
+
f = []
|
182
|
+
f << c
|
183
|
+
f << 'a' * width
|
184
|
+
fill_justify(justified_fill(c, fill), *f)[0]
|
185
|
+
else
|
186
|
+
left, right = centered_margins(width, c)
|
187
|
+
justified_fill(c, fill) * left + c + justified_fill(c, fill) * right
|
188
|
+
end
|
189
|
+
end
|
190
|
+
end
|
191
|
+
|
192
|
+
def fill_justify(fill, *content)
|
193
|
+
width = column_width(*content)
|
194
|
+
content.map do |c|
|
195
|
+
# split the cell in two and then add the fill character
|
196
|
+
# to the end of the first half of the cell to reach the
|
197
|
+
# justified width
|
198
|
+
c.insert(c.length / 2, fill * (width - c.length))
|
199
|
+
end
|
200
|
+
end
|
201
|
+
|
202
|
+
def column_width(*content)
|
203
|
+
longest = content.reduce { |a, e| a.length > e.length ? a : e }
|
204
|
+
longest.length
|
205
|
+
end
|
206
|
+
|
207
|
+
def centered_margins(width, content)
|
208
|
+
space = width - content.length
|
209
|
+
base_margin = space / 2
|
210
|
+
remainder_margin = width - content.length - base_margin * 2
|
211
|
+
[
|
212
|
+
base_margin,
|
213
|
+
base_margin + remainder_margin
|
214
|
+
]
|
90
215
|
end
|
91
216
|
end
|
92
217
|
end
|
data/lib/mark_maker/version.rb
CHANGED
data/lib/mark_maker.rb
CHANGED
data/mark_maker.gemspec
CHANGED
@@ -23,4 +23,6 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_development_dependency "minitest"
|
24
24
|
spec.add_development_dependency "pry"
|
25
25
|
spec.add_development_dependency "rubocop"
|
26
|
+
spec.add_development_dependency "activesupport"
|
27
|
+
spec.add_development_dependency "simplecov"
|
26
28
|
end
|
data/test/minitest_helper.rb
CHANGED
data/test/test_mark_maker.rb
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
require 'simplecov'
|
2
|
+
SimpleCov.start
|
3
|
+
|
1
4
|
require 'minitest_helper'
|
2
5
|
|
3
6
|
class TestMarkMaker < Minitest::Test
|
@@ -152,5 +155,181 @@ class TestMarkMaker < Minitest::Test
|
|
152
155
|
assert_match(/^> #{Regexp.quote(c)}$/, m)
|
153
156
|
end
|
154
157
|
end
|
158
|
+
|
159
|
+
# This test should always pass. It is here simple to validate the proper
|
160
|
+
# usage of a heredoc as a test method
|
161
|
+
|
162
|
+
def test_heredoc_method
|
163
|
+
desired_output = <<-EOS.strip_heredoc
|
164
|
+
This should contain no intents.
|
165
|
+
|
166
|
+
It should be 3 lines long.
|
167
|
+
EOS
|
168
|
+
test_output = "This should contain no intents.\n\nIt should be 3 lines long.\n"
|
169
|
+
assert_equal(desired_output, test_output, "Output must exactly match.")
|
170
|
+
end
|
171
|
+
|
172
|
+
def test_column_width
|
173
|
+
gen = MarkMaker::Generator.new
|
174
|
+
assert_equal(5, gen.column_width("One", "Two", "12345", "Four"))
|
175
|
+
end
|
176
|
+
|
177
|
+
def test_pretty_table_generation
|
178
|
+
pretty_table = <<-EOS.strip_heredoc
|
179
|
+
|Col One|Col Two|Col Three|
|
180
|
+
|:------|:-----:|--------:|
|
181
|
+
|First | A | $3.99|
|
182
|
+
|Second | BC | $14.00|
|
183
|
+
|Third | DEFGH |$1,034.50|
|
184
|
+
EOS
|
185
|
+
table_data = [
|
186
|
+
["Col One", "Col Two", "Col Three"],
|
187
|
+
[":-", ":-:", "-:"],
|
188
|
+
["First", "A", "$3.99"],
|
189
|
+
["Second", "BC", "$14.00"],
|
190
|
+
["Third", "DEFGH", "$1,034.50"]
|
191
|
+
]
|
192
|
+
gen = MarkMaker::Generator.new
|
193
|
+
markup = gen.table(*table_data)
|
194
|
+
assert_equal(pretty_table, markup.join)
|
195
|
+
end
|
196
|
+
|
197
|
+
def test_left_justify
|
198
|
+
test_justified = ["a ", "bbb ", "cc ", "d d"]
|
199
|
+
gen = MarkMaker::Generator.new
|
200
|
+
justified = gen.left_justify(' ', "a", "bbb", "cc", "d d")
|
201
|
+
assert_equal(test_justified, justified)
|
202
|
+
end
|
203
|
+
|
204
|
+
def test_right_justify
|
205
|
+
test_justified = [" a", "bbb", " cc"]
|
206
|
+
gen = MarkMaker::Generator.new
|
207
|
+
gen_justified = gen.right_justify(' ', "a", "bbb", "cc")
|
208
|
+
assert_equal(test_justified, gen_justified)
|
209
|
+
end
|
210
|
+
|
211
|
+
def test_center_justify
|
212
|
+
test_justified = [" a ", "bbbbb", " ccc ", " dd ", "e ee "]
|
213
|
+
gen = MarkMaker::Generator.new
|
214
|
+
gen_justified = gen.center_justify(' ', "a", "bbbbb", "ccc", "dd", "e ee")
|
215
|
+
assert_equal(test_justified, gen_justified)
|
216
|
+
end
|
217
|
+
|
218
|
+
def test_column_width
|
219
|
+
gen = MarkMaker::Generator.new
|
220
|
+
width = gen.column_width("a", "bbb", "ccccc", "dd")
|
221
|
+
assert_equal(5, width)
|
222
|
+
end
|
223
|
+
|
224
|
+
def test_centered_margins
|
225
|
+
gen = MarkMaker::Generator.new
|
226
|
+
left, right = gen.centered_margins(5, "cc")
|
227
|
+
assert_equal(1, left)
|
228
|
+
assert_equal(2, right)
|
229
|
+
end
|
230
|
+
|
231
|
+
def test_justify_detection
|
232
|
+
gen = MarkMaker::Generator.new
|
233
|
+
|
234
|
+
assert(gen.justification?(":-"))
|
235
|
+
assert(gen.justification?(":-:"))
|
236
|
+
assert(gen.justification?("-:"))
|
237
|
+
assert(gen.justification?(":------"))
|
238
|
+
assert(gen.justification?(":------:"))
|
239
|
+
assert(gen.justification?(":-:"))
|
240
|
+
assert(gen.justification?("------:"))
|
241
|
+
refute(gen.justification?("stuff"))
|
242
|
+
refute(gen.justification?("stuff:it"))
|
243
|
+
refute(gen.justification?(":bad news"))
|
244
|
+
refute(gen.justification?("bad news:"))
|
245
|
+
refute(gen.justification?("---"))
|
246
|
+
refute(gen.justification?("-"))
|
247
|
+
end
|
248
|
+
|
249
|
+
def test_left_justification_indicators
|
250
|
+
assert_match(MarkMaker::LEFT_JUSTIFY, ":-")
|
251
|
+
assert_match(MarkMaker::LEFT_JUSTIFY, ":---------")
|
252
|
+
refute_match(MarkMaker::LEFT_JUSTIFY, "-")
|
253
|
+
refute_match(MarkMaker::LEFT_JUSTIFY, "-:")
|
254
|
+
refute_match(MarkMaker::LEFT_JUSTIFY, ":--:")
|
255
|
+
refute_match(MarkMaker::LEFT_JUSTIFY, "-----")
|
256
|
+
refute_match(MarkMaker::LEFT_JUSTIFY, "")
|
257
|
+
refute_match(MarkMaker::LEFT_JUSTIFY, ":")
|
258
|
+
refute_match(MarkMaker::LEFT_JUSTIFY, "::")
|
259
|
+
end
|
260
|
+
|
261
|
+
def test_right_justification_indicators
|
262
|
+
assert_match(MarkMaker::RIGHT_JUSTIFY, "-:")
|
263
|
+
assert_match(MarkMaker::RIGHT_JUSTIFY, "---------:")
|
264
|
+
refute_match(MarkMaker::RIGHT_JUSTIFY, "-")
|
265
|
+
refute_match(MarkMaker::RIGHT_JUSTIFY, ":---")
|
266
|
+
refute_match(MarkMaker::RIGHT_JUSTIFY, ":--:")
|
267
|
+
refute_match(MarkMaker::RIGHT_JUSTIFY, "-----")
|
268
|
+
refute_match(MarkMaker::RIGHT_JUSTIFY, "")
|
269
|
+
refute_match(MarkMaker::RIGHT_JUSTIFY, ":")
|
270
|
+
refute_match(MarkMaker::RIGHT_JUSTIFY, "::")
|
271
|
+
end
|
272
|
+
|
273
|
+
def test_center_justification_indicators
|
274
|
+
assert_match(MarkMaker::CENTER_JUSTIFY, ":-:")
|
275
|
+
assert_match(MarkMaker::CENTER_JUSTIFY, ":---------:")
|
276
|
+
assert_match(MarkMaker::CENTER_JUSTIFY, "::")
|
277
|
+
refute_match(MarkMaker::CENTER_JUSTIFY, "-")
|
278
|
+
refute_match(MarkMaker::CENTER_JUSTIFY, "-:")
|
279
|
+
refute_match(MarkMaker::CENTER_JUSTIFY, ":--")
|
280
|
+
refute_match(MarkMaker::CENTER_JUSTIFY, "-----")
|
281
|
+
refute_match(MarkMaker::CENTER_JUSTIFY, "")
|
282
|
+
refute_match(MarkMaker::CENTER_JUSTIFY, ":")
|
283
|
+
end
|
284
|
+
|
285
|
+
def test_fill_justify
|
286
|
+
gen = MarkMaker::Generator.new
|
287
|
+
filled = gen.fill_justify('-', 'header', ":-:", "more", "stuff")
|
288
|
+
assert_equal(":----:", filled[1])
|
289
|
+
end
|
290
|
+
|
291
|
+
# def test_determine_justification
|
292
|
+
# justifiers = ["-:", ":-", ":--:", "---:", ":---", "::", "---", "zzz"]
|
293
|
+
# justifiers.each do |j|
|
294
|
+
# case j
|
295
|
+
# when MarkMaker::RIGHT_JUSTIFY
|
296
|
+
# puts "#{j} will be right justified"
|
297
|
+
# when MarkMaker::LEFT_JUSTIFY
|
298
|
+
# puts "#{j} will be left justified"
|
299
|
+
# when MarkMaker::CENTER_JUSTIFY
|
300
|
+
# puts "#{j} will be center justified"
|
301
|
+
# else
|
302
|
+
# puts "#{j} is an invalid justification indicator"
|
303
|
+
# end
|
304
|
+
# end
|
305
|
+
# end
|
306
|
+
|
307
|
+
# def test_right_justify_table_column
|
308
|
+
# right_justified = <<-EOS.strip_heredoc
|
309
|
+
# | Justified|
|
310
|
+
# |----------:|
|
311
|
+
# | a|
|
312
|
+
# |bbbbbbbbbbb|
|
313
|
+
# | ccc|
|
314
|
+
# EOS
|
315
|
+
# gen = MarkMaker::Generator.new
|
316
|
+
# markdown = gen.table("Justified", ?????)
|
317
|
+
# assert_equal(right_justified, markup, "Column content should be right justified.")
|
318
|
+
# end
|
319
|
+
|
320
|
+
|
321
|
+
# def test_pretty_table_justified_generation
|
322
|
+
# pretty_table = <<-EOS.strip_heredoc
|
323
|
+
# |Col One|Col Two|Col Three |Data Sized |
|
324
|
+
# |-------|-------|----------|-------------|
|
325
|
+
# |First | A | $3.99|xxxxxxxxxxxxx|
|
326
|
+
# |Second | BC | $14.00|y |
|
327
|
+
# |Third | DEF | $1,034.50|z |
|
328
|
+
# |Fourth |GHIJKLM|$10,123.45|a |
|
329
|
+
# EOS
|
330
|
+
|
331
|
+
# markup = 'nada'
|
332
|
+
# assert_equal(pretty_table, markup)
|
333
|
+
# end
|
155
334
|
end
|
156
335
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mark_maker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brad Schneider
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-10-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -80,6 +80,34 @@ dependencies:
|
|
80
80
|
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: activesupport
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: simplecov
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
83
111
|
description: Programatically generate markdown documents.
|
84
112
|
email:
|
85
113
|
- brad.schneider@me.com
|
@@ -90,6 +118,7 @@ extra_rdoc_files: []
|
|
90
118
|
files:
|
91
119
|
- ".gitignore"
|
92
120
|
- ".rubocop.yml"
|
121
|
+
- ".ruby-version"
|
93
122
|
- ".travis.yml"
|
94
123
|
- CHANGELOG.md
|
95
124
|
- Gemfile
|
@@ -123,7 +152,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
123
152
|
version: '0'
|
124
153
|
requirements: []
|
125
154
|
rubyforge_project:
|
126
|
-
rubygems_version: 2.4.
|
155
|
+
rubygems_version: 2.4.6
|
127
156
|
signing_key:
|
128
157
|
specification_version: 4
|
129
158
|
summary: Markdown generator.
|