asciidoctor 0.1.4 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of asciidoctor might be problematic. Click here for more details.

Files changed (101) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.adoc +209 -25
  3. data/{LICENSE → LICENSE.adoc} +4 -3
  4. data/README.adoc +392 -395
  5. data/Rakefile +94 -137
  6. data/benchmark/benchmark.rb +127 -0
  7. data/benchmark/sample-data/mdbasics.adoc +334 -0
  8. data/bin/asciidoctor +5 -8
  9. data/bin/asciidoctor-safe +4 -8
  10. data/compat/asciidoc.conf +78 -11
  11. data/compat/font-awesome-3-compat.css +397 -0
  12. data/data/stylesheets/asciidoctor-default.css +399 -0
  13. data/data/stylesheets/coderay-asciidoctor.css +89 -0
  14. data/features/open_block.feature +92 -0
  15. data/features/pass_block.feature +66 -0
  16. data/features/step_definitions.rb +42 -0
  17. data/features/text_formatting.feature +55 -0
  18. data/features/xref.feature +116 -0
  19. data/lib/asciidoctor.rb +1155 -605
  20. data/lib/asciidoctor/abstract_block.rb +157 -71
  21. data/lib/asciidoctor/abstract_node.rb +150 -93
  22. data/lib/asciidoctor/attribute_list.rb +85 -90
  23. data/lib/asciidoctor/block.rb +51 -24
  24. data/lib/asciidoctor/callouts.rb +4 -7
  25. data/lib/asciidoctor/cli.rb +3 -0
  26. data/lib/asciidoctor/cli/invoker.rb +86 -76
  27. data/lib/asciidoctor/cli/options.rb +111 -61
  28. data/lib/asciidoctor/converter.rb +232 -0
  29. data/lib/asciidoctor/converter/base.rb +58 -0
  30. data/lib/asciidoctor/converter/composite.rb +66 -0
  31. data/lib/asciidoctor/converter/docbook45.rb +94 -0
  32. data/lib/asciidoctor/converter/docbook5.rb +684 -0
  33. data/lib/asciidoctor/converter/factory.rb +225 -0
  34. data/lib/asciidoctor/converter/html5.rb +1081 -0
  35. data/lib/asciidoctor/converter/template.rb +296 -0
  36. data/lib/asciidoctor/core_ext.rb +7 -0
  37. data/lib/asciidoctor/core_ext/object/nil_or_empty.rb +23 -0
  38. data/lib/asciidoctor/core_ext/string/chr.rb +6 -0
  39. data/lib/asciidoctor/core_ext/symbol/length.rb +6 -0
  40. data/lib/asciidoctor/document.rb +590 -304
  41. data/lib/asciidoctor/extensions.rb +1100 -308
  42. data/lib/asciidoctor/helpers.rb +109 -46
  43. data/lib/asciidoctor/inline.rb +16 -9
  44. data/lib/asciidoctor/list.rb +23 -15
  45. data/lib/asciidoctor/opal_ext.rb +4 -0
  46. data/lib/asciidoctor/opal_ext/comparable.rb +38 -0
  47. data/lib/asciidoctor/opal_ext/dir.rb +13 -0
  48. data/lib/asciidoctor/opal_ext/error.rb +2 -0
  49. data/lib/asciidoctor/opal_ext/file.rb +125 -0
  50. data/lib/asciidoctor/{lexer.rb → parser.rb} +646 -455
  51. data/lib/asciidoctor/path_resolver.rb +141 -77
  52. data/lib/asciidoctor/reader.rb +257 -187
  53. data/lib/asciidoctor/section.rb +12 -16
  54. data/lib/asciidoctor/stylesheets.rb +91 -0
  55. data/lib/asciidoctor/substitutors.rb +1548 -0
  56. data/lib/asciidoctor/table.rb +73 -57
  57. data/lib/asciidoctor/timings.rb +39 -0
  58. data/lib/asciidoctor/version.rb +1 -1
  59. data/man/asciidoctor.1 +22 -14
  60. data/man/asciidoctor.adoc +18 -10
  61. data/test/attributes_test.rb +314 -14
  62. data/test/blocks_test.rb +763 -118
  63. data/test/converter_test.rb +352 -0
  64. data/test/document_test.rb +518 -199
  65. data/test/extensions_test.rb +273 -103
  66. data/test/fixtures/asciidoc_index.txt +27 -13
  67. data/test/fixtures/basic-docinfo.xml +1 -1
  68. data/test/fixtures/chapter-a.adoc +3 -0
  69. data/test/fixtures/custom-backends/erb/html5/block_paragraph.html.erb +6 -0
  70. data/test/fixtures/docinfo.xml +1 -1
  71. data/test/fixtures/include-file.asciidoc +2 -0
  72. data/test/fixtures/master.adoc +5 -0
  73. data/test/invoker_test.rb +173 -61
  74. data/test/links_test.rb +97 -21
  75. data/test/lists_test.rb +181 -22
  76. data/test/options_test.rb +86 -2
  77. data/test/paragraphs_test.rb +47 -5
  78. data/test/{lexer_test.rb → parser_test.rb} +128 -57
  79. data/test/paths_test.rb +36 -1
  80. data/test/preamble_test.rb +25 -17
  81. data/test/reader_test.rb +404 -249
  82. data/test/sections_test.rb +623 -58
  83. data/test/substitutions_test.rb +609 -132
  84. data/test/tables_test.rb +198 -24
  85. data/test/test_helper.rb +101 -31
  86. data/test/text_test.rb +88 -31
  87. metadata +160 -64
  88. data/Gemfile +0 -12
  89. data/Guardfile +0 -18
  90. data/asciidoctor.gemspec +0 -143
  91. data/lib/asciidoctor/backends/_stylesheets.rb +0 -466
  92. data/lib/asciidoctor/backends/base_template.rb +0 -114
  93. data/lib/asciidoctor/backends/docbook45.rb +0 -774
  94. data/lib/asciidoctor/backends/docbook5.rb +0 -103
  95. data/lib/asciidoctor/backends/html5.rb +0 -1214
  96. data/lib/asciidoctor/renderer.rb +0 -259
  97. data/lib/asciidoctor/substituters.rb +0 -1083
  98. data/test/fixtures/asciidoc.txt +0 -105
  99. data/test/fixtures/ascshort.txt +0 -32
  100. data/test/fixtures/list_elements.asciidoc +0 -10
  101. data/test/renderer_test.rb +0 -162
@@ -1,5 +1,8 @@
1
1
  # encoding: UTF-8
2
- require 'test_helper'
2
+ unless defined? ASCIIDOCTOR_PROJECT_DIR
3
+ $: << File.dirname(__FILE__); $:.uniq!
4
+ require 'test_helper'
5
+ end
3
6
 
4
7
  context "Text" do
5
8
  test "proper encoding to handle utf8 characters in document using html backend" do
@@ -14,14 +17,14 @@ context "Text" do
14
17
  assert_xpath '//a', output, 1
15
18
  end
16
19
 
17
- test "proper encoding to handle utf8 characters in document using docbook backend" do
18
- output = example_document(:encoding, :attributes => {'backend' => 'docbook'}).render
20
+ test "proper encoding to handle utf8 characters in document using docbook45 backend" do
21
+ output = example_document(:encoding, :attributes => {'backend' => 'docbook45', 'xmlns' => ''}).render
19
22
  assert_xpath '//xmlns:simpara', output, 4
20
23
  assert_xpath '//xmlns:ulink', output, 1
21
24
  end
22
25
 
23
- test "proper encoding to handle utf8 characters in embedded document using docbook backend" do
24
- output = example_document(:encoding, :header_footer => false, :attributes => {'backend' => 'docbook'}).render
26
+ test "proper encoding to handle utf8 characters in embedded document using docbook45 backend" do
27
+ output = example_document(:encoding, :header_footer => false, :attributes => {'backend' => 'docbook45'}).render
25
28
  assert_xpath '//simpara', output, 4
26
29
  assert_xpath '//ulink', output, 1
27
30
  end
@@ -33,7 +36,7 @@ context "Text" do
33
36
  input.concat(File.readlines(sample_doc_path(:encoding)))
34
37
  doc = empty_document
35
38
  reader = Asciidoctor::PreprocessorReader.new doc, input
36
- block = Asciidoctor::Lexer.next_block(reader, doc)
39
+ block = Asciidoctor::Parser.next_block(reader, doc)
37
40
  assert_xpath '//pre', block.render.gsub(/^\s*\n/, ''), 1
38
41
  end
39
42
 
@@ -43,7 +46,7 @@ include::fixtures/encoding.asciidoc[tags=romé]
43
46
  EOS
44
47
  doc = empty_safe_document :base_dir => File.expand_path(File.dirname(__FILE__))
45
48
  reader = Asciidoctor::PreprocessorReader.new doc, input
46
- block = Asciidoctor::Lexer.next_block(reader, doc)
49
+ block = Asciidoctor::Parser.next_block(reader, doc)
47
50
  output = block.render
48
51
  assert_css '.paragraph', output, 1
49
52
  end
@@ -57,12 +60,23 @@ include::fixtures/encoding.asciidoc[tags=romé]
57
60
  assert_xpath "//br", render_string("Well this is +\njust fine and dandy, isn't it?"), 1
58
61
  end
59
62
 
60
- test "single- and double-quoted text" do
61
- rendered = render_string("``Where?,'' she said, flipping through her copy of `The New Yorker.'")
63
+ test 'single- and double-quoted text' do
64
+ rendered = render_embedded_string(%q(``Where?,'' she said, flipping through her copy of `The New Yorker.'), :attributes => {'compat-mode' => ''})
65
+ assert_match(/&#8220;Where\?,&#8221;/, rendered)
66
+ assert_match(/&#8216;The New Yorker.&#8217;/, rendered)
67
+
68
+ rendered = render_embedded_string(%q("`Where?,`" she said, flipping through her copy of '`The New Yorker.`'))
62
69
  assert_match(/&#8220;Where\?,&#8221;/, rendered)
63
70
  assert_match(/&#8216;The New Yorker.&#8217;/, rendered)
64
71
  end
65
72
 
73
+ test 'multiple double-quoted text on a single line' do
74
+ assert_equal '&#8220;Our business is constantly changing&#8221; or &#8220;We need faster time to market.&#8221;',
75
+ render_embedded_string(%q(``Our business is constantly changing'' or ``We need faster time to market.''), :doctype => :inline, :attributes => {'compat-mode' => ''})
76
+ assert_equal '&#8220;Our business is constantly changing&#8221; or &#8220;We need faster time to market.&#8221;',
77
+ render_embedded_string(%q("`Our business is constantly changing`" or "`We need faster time to market.`"), :doctype => :inline)
78
+ end
79
+
66
80
  test 'horizontal rule' do
67
81
  input = <<-EOS
68
82
  This line is separated by a horizontal rule...
@@ -168,83 +182,126 @@ This line is separated something that is not a horizontal rule...
168
182
  end
169
183
  end
170
184
 
171
- test "emphasized text" do
172
- assert_xpath "//em", render_string("An 'emphatic' no")
185
+ test "emphasized text using underscore characters" do
186
+ assert_xpath "//em", render_string("An _emphatic_ no")
173
187
  end
174
188
 
175
- test "emphasized text with single quote" do
176
- assert_xpath "//em[text()=\"Johnny#{[8217].pack('U*')}s\"]", render_string("It's 'Johnny's' phone")
189
+ test 'emphasized text with single quote using apostrophe characters' do
190
+ rsquo = [8217].pack 'U*'
191
+ assert_xpath %(//em[text()="Johnny#{rsquo}s"]), render_string(%q(It's 'Johnny's' phone), :attributes => {'compat-mode' => ''})
192
+ assert_xpath %(//p[text()="It#{rsquo}s 'Johnny#{rsquo}s' phone"]), render_string(%q(It's 'Johnny's' phone))
177
193
  end
178
194
 
179
- test "emphasized text with escaped single quote" do
180
- assert_xpath "//em[text()=\"Johnny's\"]", render_string("It's 'Johnny\\'s' phone")
195
+ test 'emphasized text with escaped single quote using apostrophe characters' do
196
+ assert_xpath %(//em[text()="Johnny's"]), render_string(%q(It's 'Johnny\\'s' phone), :attributes => {'compat-mode' => ''})
197
+ assert_xpath %(//p[text()="It's 'Johnny's' phone"]), render_string(%q(It\\'s 'Johnny\\'s' phone))
181
198
  end
182
199
 
183
200
  test "escaped single quote is restored as single quote" do
184
201
  assert_xpath "//p[contains(text(), \"Let's do it!\")]", render_string("Let\\'s do it!")
185
202
  end
186
203
 
204
+ test 'unescape escaped single quote emphasis in compat mode only' do
205
+ assert_xpath %(//p[text()="A 'single quoted string' example"]), render_embedded_string(%(A \\'single quoted string' example), :attributes => {'compat-mode' => ''})
206
+ assert_xpath %(//p[text()="'single quoted string'"]), render_embedded_string(%(\\'single quoted string'), :attributes => {'compat-mode' => ''})
207
+
208
+ assert_xpath %(//p[text()="A \\'single quoted string' example"]), render_embedded_string(%(A \\'single quoted string' example))
209
+ assert_xpath %(//p[text()="\\'single quoted string'"]), render_embedded_string(%(\\'single quoted string'))
210
+ end
211
+
187
212
  test "emphasized text at end of line" do
188
- assert_xpath "//em", render_string("This library is 'awesome'")
213
+ assert_xpath "//em", render_string("This library is _awesome_")
189
214
  end
190
215
 
191
216
  test "emphasized text at beginning of line" do
192
- assert_xpath "//em", render_string("'drop' it")
217
+ assert_xpath "//em", render_string("_drop_ it")
193
218
  end
194
219
 
195
220
  test "emphasized text across line" do
196
- assert_xpath "//em", render_string("'check it'")
221
+ assert_xpath "//em", render_string("_check it_")
197
222
  end
198
223
 
199
224
  test "unquoted text" do
200
- assert_no_match(/#/, render_string("An #unquoted# word"))
225
+ refute_match(/#/, render_string("An #unquoted# word"))
201
226
  end
202
227
 
203
- test "backtick-escaped text followed by single-quoted text" do
204
- assert_match(/<code>foo<\/code>/, render_string(%Q(run `foo` 'dog')))
228
+ test 'backticks and straight quotes in text' do
229
+ backslash = '\\'
230
+ assert_equal %q(run <code>foo</code> <em>dog</em>), render_embedded_string(%q(run `foo` 'dog'), :doctype => :inline, :attributes => {'compat-mode' => ''})
231
+ assert_equal %q(run <code>foo</code> 'dog'), render_embedded_string(%q(run `foo` 'dog'), :doctype => :inline)
232
+ assert_equal %q(run `foo` 'dog'), render_embedded_string(%(run #{backslash}`foo` 'dog'), :doctype => :inline)
233
+ assert_equal %q(run &#8216;foo` 'dog&#8217;), render_embedded_string(%q(run '`foo` 'dog`'), :doctype => :inline)
234
+ assert_equal %q(run '`foo` 'dog`'), render_embedded_string(%(run #{backslash}'`foo` 'dog#{backslash}`'), :doctype => :inline)
235
+ end
236
+
237
+ test 'plus characters inside single plus passthrough' do
238
+ assert_xpath '//p[text()="+"]', render_embedded_string('+++')
239
+ assert_xpath '//p[text()="+="]', render_embedded_string('++=+')
240
+ end
241
+
242
+ test 'plus passthrough escapes entity reference' do
243
+ assert_match(/&amp;#44;/, render_embedded_string('+&#44;+'))
244
+ assert_match(/one&amp;#44;two/, render_embedded_string('one++&#44;++two'))
205
245
  end
206
246
 
207
247
  context "basic styling" do
208
248
  setup do
209
- @rendered = render_string("A *BOLD* word. An _italic_ word. A +mono+ word. ^superscript!^ and some ~subscript~.")
249
+ @rendered = render_string("A *BOLD* word. An _italic_ word. A `mono` word. ^superscript!^ and some ~subscript~.")
210
250
  end
211
251
 
212
252
  test "strong" do
213
- assert_xpath "//strong", @rendered
253
+ assert_xpath "//strong", @rendered, 1
214
254
  end
215
255
 
216
256
  test "italic" do
217
- assert_xpath "//em", @rendered
257
+ assert_xpath "//em", @rendered, 1
218
258
  end
219
259
 
220
260
  test "monospaced" do
221
- assert_xpath "//code", @rendered
261
+ assert_xpath "//code", @rendered, 1
222
262
  end
223
263
 
224
264
  test "superscript" do
225
- assert_xpath "//sup", @rendered
265
+ assert_xpath "//sup", @rendered, 1
226
266
  end
227
267
 
228
268
  test "subscript" do
229
- assert_xpath "//sub", @rendered
269
+ assert_xpath "//sub", @rendered, 1
230
270
  end
231
271
 
232
- test "backticks" do
233
- assert_xpath "//code", render_string("This is `totally cool`.")
272
+ test "passthrough" do
273
+ assert_xpath "//code", render_string("This is +passed through+."), 0
274
+ assert_xpath "//code", render_string("This is +passed through and monospaced+.", :attributes => {'compat-mode' => ''}), 1
234
275
  end
235
276
 
236
277
  test "nested styles" do
237
- rendered = render_string("Winning *big _time_* in the +city *boyeeee*+.")
278
+ rendered = render_string("Winning *big _time_* in the +city *boyeeee*+.", :attributes => {'compat-mode' => ''})
279
+
280
+ assert_xpath "//strong/em", rendered
281
+ assert_xpath "//code/strong", rendered
282
+
283
+ rendered = render_string("Winning *big _time_* in the `city *boyeeee*`.")
238
284
 
239
285
  assert_xpath "//strong/em", rendered
240
286
  assert_xpath "//code/strong", rendered
241
287
  end
242
288
 
243
289
  test "unconstrained quotes" do
244
- rendered_chars = render_string("**B**__I__++M++")
290
+ rendered_chars = render_string("**B**__I__++M++", :attributes => {'compat-mode' => ''})
291
+ assert_xpath "//strong", rendered_chars
292
+ assert_xpath "//em", rendered_chars
293
+ assert_xpath "//code", rendered_chars
294
+
295
+ rendered_chars = render_string("**B**__I__``M``")
245
296
  assert_xpath "//strong", rendered_chars
246
297
  assert_xpath "//em", rendered_chars
247
298
  assert_xpath "//code", rendered_chars
248
299
  end
249
300
  end
301
+
302
+ test 'should format Asian characters as words' do
303
+ assert_xpath '//strong', (render_embedded_string 'bold *要* bold')
304
+ assert_xpath '//strong', (render_embedded_string 'bold *素* bold')
305
+ assert_xpath '//strong', (render_embedded_string 'bold *要素* bold')
306
+ end
250
307
  end
metadata CHANGED
@@ -1,196 +1,287 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: asciidoctor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Allen
8
+ - Sarah White
8
9
  - Ryan Waldron
9
- - Jeremy McAnally
10
10
  - Jason Porter
11
11
  - Nick Hengeveld
12
+ - Jeremy McAnally
12
13
  autorequire:
13
14
  bindir: bin
14
15
  cert_chain: []
15
- date: 2013-09-05 00:00:00.000000000 Z
16
+ date: 2014-08-12 00:00:00.000000000 Z
16
17
  dependencies:
17
18
  - !ruby/object:Gem::Dependency
18
19
  name: coderay
19
20
  requirement: !ruby/object:Gem::Requirement
20
21
  requirements:
21
- - - '>='
22
+ - - "~>"
22
23
  - !ruby/object:Gem::Version
23
- version: '0'
24
+ version: 1.1.0
24
25
  type: :development
25
26
  prerelease: false
26
27
  version_requirements: !ruby/object:Gem::Requirement
27
28
  requirements:
28
- - - '>='
29
+ - - "~>"
29
30
  - !ruby/object:Gem::Version
30
- version: '0'
31
+ version: 1.1.0
32
+ - !ruby/object:Gem::Dependency
33
+ name: cucumber
34
+ requirement: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - "~>"
37
+ - !ruby/object:Gem::Version
38
+ version: 1.3.1
39
+ type: :development
40
+ prerelease: false
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ requirements:
43
+ - - "~>"
44
+ - !ruby/object:Gem::Version
45
+ version: 1.3.1
31
46
  - !ruby/object:Gem::Dependency
32
47
  name: erubis
33
48
  requirement: !ruby/object:Gem::Requirement
34
49
  requirements:
35
- - - '>='
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: 2.7.0
53
+ type: :development
54
+ prerelease: false
55
+ version_requirements: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - "~>"
58
+ - !ruby/object:Gem::Version
59
+ version: 2.7.0
60
+ - !ruby/object:Gem::Dependency
61
+ name: haml
62
+ requirement: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - "~>"
36
65
  - !ruby/object:Gem::Version
37
- version: '0'
66
+ version: 4.0.0
38
67
  type: :development
39
68
  prerelease: false
40
69
  version_requirements: !ruby/object:Gem::Requirement
41
70
  requirements:
42
- - - '>='
71
+ - - "~>"
43
72
  - !ruby/object:Gem::Version
44
- version: '0'
73
+ version: 4.0.0
45
74
  - !ruby/object:Gem::Dependency
46
75
  name: nokogiri
47
76
  requirement: !ruby/object:Gem::Requirement
48
77
  requirements:
49
- - - ~>
78
+ - - "~>"
50
79
  - !ruby/object:Gem::Version
51
80
  version: 1.5.10
52
81
  type: :development
53
82
  prerelease: false
54
83
  version_requirements: !ruby/object:Gem::Requirement
55
84
  requirements:
56
- - - ~>
85
+ - - "~>"
57
86
  - !ruby/object:Gem::Version
58
87
  version: 1.5.10
59
88
  - !ruby/object:Gem::Dependency
60
89
  name: rake
61
90
  requirement: !ruby/object:Gem::Requirement
62
91
  requirements:
63
- - - '>='
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: 10.0.0
95
+ type: :development
96
+ prerelease: false
97
+ version_requirements: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: 10.0.0
102
+ - !ruby/object:Gem::Dependency
103
+ name: rspec-expectations
104
+ requirement: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: 2.14.0
109
+ type: :development
110
+ prerelease: false
111
+ version_requirements: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - "~>"
114
+ - !ruby/object:Gem::Version
115
+ version: 2.14.0
116
+ - !ruby/object:Gem::Dependency
117
+ name: slim
118
+ requirement: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - "~>"
64
121
  - !ruby/object:Gem::Version
65
- version: '0'
122
+ version: 2.0.0
66
123
  type: :development
67
124
  prerelease: false
68
125
  version_requirements: !ruby/object:Gem::Requirement
69
126
  requirements:
70
- - - '>='
127
+ - - "~>"
71
128
  - !ruby/object:Gem::Version
72
- version: '0'
129
+ version: 2.0.0
73
130
  - !ruby/object:Gem::Dependency
74
- name: rdoc
131
+ name: thread_safe
75
132
  requirement: !ruby/object:Gem::Requirement
76
133
  requirements:
77
- - - ~>
134
+ - - "~>"
78
135
  - !ruby/object:Gem::Version
79
- version: '3.12'
136
+ version: 0.1.3
80
137
  type: :development
81
138
  prerelease: false
82
139
  version_requirements: !ruby/object:Gem::Requirement
83
140
  requirements:
84
- - - ~>
141
+ - - "~>"
85
142
  - !ruby/object:Gem::Version
86
- version: '3.12'
143
+ version: 0.1.3
87
144
  - !ruby/object:Gem::Dependency
88
145
  name: tilt
89
146
  requirement: !ruby/object:Gem::Requirement
90
147
  requirements:
91
- - - '>='
148
+ - - "~>"
92
149
  - !ruby/object:Gem::Version
93
- version: '0'
150
+ version: 2.0.0
94
151
  type: :development
95
152
  prerelease: false
96
153
  version_requirements: !ruby/object:Gem::Requirement
97
154
  requirements:
98
- - - '>='
155
+ - - "~>"
99
156
  - !ruby/object:Gem::Version
100
- version: '0'
157
+ version: 2.0.0
101
158
  - !ruby/object:Gem::Dependency
102
- name: slim
159
+ name: yard
103
160
  requirement: !ruby/object:Gem::Requirement
104
161
  requirements:
105
- - - '>='
162
+ - - "~>"
106
163
  - !ruby/object:Gem::Version
107
- version: '0'
164
+ version: 0.8.7
108
165
  type: :development
109
166
  prerelease: false
110
167
  version_requirements: !ruby/object:Gem::Requirement
111
168
  requirements:
112
- - - '>='
169
+ - - "~>"
113
170
  - !ruby/object:Gem::Version
114
- version: '0'
171
+ version: 0.8.7
115
172
  - !ruby/object:Gem::Dependency
116
- name: haml
173
+ name: yard-tomdoc
117
174
  requirement: !ruby/object:Gem::Requirement
118
175
  requirements:
119
- - - '>='
176
+ - - "~>"
120
177
  - !ruby/object:Gem::Version
121
- version: '0'
178
+ version: 0.7.0
122
179
  type: :development
123
180
  prerelease: false
124
181
  version_requirements: !ruby/object:Gem::Requirement
125
182
  requirements:
126
- - - '>='
183
+ - - "~>"
184
+ - !ruby/object:Gem::Version
185
+ version: 0.7.0
186
+ - !ruby/object:Gem::Dependency
187
+ name: minitest
188
+ requirement: !ruby/object:Gem::Requirement
189
+ requirements:
190
+ - - "~>"
127
191
  - !ruby/object:Gem::Version
128
- version: '0'
192
+ version: 5.3.0
193
+ type: :development
194
+ prerelease: false
195
+ version_requirements: !ruby/object:Gem::Requirement
196
+ requirements:
197
+ - - "~>"
198
+ - !ruby/object:Gem::Version
199
+ version: 5.3.0
129
200
  description: |
130
- A fast, open source text processor and publishing toolchain, written in Ruby, for transforming AsciiDoc markup into HTML 5, DocBook 4.5, DocBook 5.0 and custom outupt formats.
201
+ A fast, open source text processor and publishing toolchain, written in Ruby, for converting AsciiDoc content to HTML5, DocBook 5 (or 4.5) and other formats.
131
202
  email:
132
203
  - dan.j.allen@gmail.com
133
- - rew@erebor.com
134
204
  executables:
135
205
  - asciidoctor
136
206
  - asciidoctor-safe
137
207
  extensions: []
138
208
  extra_rdoc_files:
139
- - LICENSE
140
- - CHANGELOG.adoc
209
+ - LICENSE.adoc
141
210
  files:
142
211
  - CHANGELOG.adoc
143
- - Gemfile
144
- - Guardfile
145
- - LICENSE
212
+ - LICENSE.adoc
146
213
  - README.adoc
147
214
  - Rakefile
148
- - asciidoctor.gemspec
215
+ - benchmark/benchmark.rb
216
+ - benchmark/sample-data/mdbasics.adoc
149
217
  - bin/asciidoctor
150
218
  - bin/asciidoctor-safe
151
219
  - compat/asciidoc.conf
220
+ - compat/font-awesome-3-compat.css
221
+ - data/stylesheets/asciidoctor-default.css
222
+ - data/stylesheets/coderay-asciidoctor.css
223
+ - features/open_block.feature
224
+ - features/pass_block.feature
225
+ - features/step_definitions.rb
226
+ - features/text_formatting.feature
227
+ - features/xref.feature
152
228
  - lib/asciidoctor.rb
153
229
  - lib/asciidoctor/abstract_block.rb
154
230
  - lib/asciidoctor/abstract_node.rb
155
231
  - lib/asciidoctor/attribute_list.rb
156
- - lib/asciidoctor/backends/_stylesheets.rb
157
- - lib/asciidoctor/backends/base_template.rb
158
- - lib/asciidoctor/backends/docbook45.rb
159
- - lib/asciidoctor/backends/docbook5.rb
160
- - lib/asciidoctor/backends/html5.rb
161
232
  - lib/asciidoctor/block.rb
162
233
  - lib/asciidoctor/callouts.rb
234
+ - lib/asciidoctor/cli.rb
163
235
  - lib/asciidoctor/cli/invoker.rb
164
236
  - lib/asciidoctor/cli/options.rb
237
+ - lib/asciidoctor/converter.rb
238
+ - lib/asciidoctor/converter/base.rb
239
+ - lib/asciidoctor/converter/composite.rb
240
+ - lib/asciidoctor/converter/docbook45.rb
241
+ - lib/asciidoctor/converter/docbook5.rb
242
+ - lib/asciidoctor/converter/factory.rb
243
+ - lib/asciidoctor/converter/html5.rb
244
+ - lib/asciidoctor/converter/template.rb
245
+ - lib/asciidoctor/core_ext.rb
246
+ - lib/asciidoctor/core_ext/object/nil_or_empty.rb
247
+ - lib/asciidoctor/core_ext/string/chr.rb
248
+ - lib/asciidoctor/core_ext/symbol/length.rb
165
249
  - lib/asciidoctor/debug.rb
166
250
  - lib/asciidoctor/document.rb
167
251
  - lib/asciidoctor/extensions.rb
168
252
  - lib/asciidoctor/helpers.rb
169
253
  - lib/asciidoctor/inline.rb
170
- - lib/asciidoctor/lexer.rb
171
254
  - lib/asciidoctor/list.rb
255
+ - lib/asciidoctor/opal_ext.rb
256
+ - lib/asciidoctor/opal_ext/comparable.rb
257
+ - lib/asciidoctor/opal_ext/dir.rb
258
+ - lib/asciidoctor/opal_ext/error.rb
259
+ - lib/asciidoctor/opal_ext/file.rb
260
+ - lib/asciidoctor/parser.rb
172
261
  - lib/asciidoctor/path_resolver.rb
173
262
  - lib/asciidoctor/reader.rb
174
- - lib/asciidoctor/renderer.rb
175
263
  - lib/asciidoctor/section.rb
176
- - lib/asciidoctor/substituters.rb
264
+ - lib/asciidoctor/stylesheets.rb
265
+ - lib/asciidoctor/substitutors.rb
177
266
  - lib/asciidoctor/table.rb
267
+ - lib/asciidoctor/timings.rb
178
268
  - lib/asciidoctor/version.rb
179
269
  - man/asciidoctor.1
180
270
  - man/asciidoctor.adoc
181
271
  - test/attributes_test.rb
182
272
  - test/blocks_test.rb
273
+ - test/converter_test.rb
183
274
  - test/document_test.rb
184
275
  - test/extensions_test.rb
185
- - test/fixtures/asciidoc.txt
186
276
  - test/fixtures/asciidoc_index.txt
187
- - test/fixtures/ascshort.txt
188
277
  - test/fixtures/basic-docinfo-footer.html
189
278
  - test/fixtures/basic-docinfo-footer.xml
190
279
  - test/fixtures/basic-docinfo.html
191
280
  - test/fixtures/basic-docinfo.xml
192
281
  - test/fixtures/basic.asciidoc
282
+ - test/fixtures/chapter-a.adoc
193
283
  - test/fixtures/child-include.adoc
284
+ - test/fixtures/custom-backends/erb/html5/block_paragraph.html.erb
194
285
  - test/fixtures/custom-backends/haml/docbook45/block_paragraph.xml.haml
195
286
  - test/fixtures/custom-backends/haml/html5-tweaks/block_paragraph.html.haml
196
287
  - test/fixtures/custom-backends/haml/html5/block_paragraph.html.haml
@@ -206,22 +297,21 @@ files:
206
297
  - test/fixtures/encoding.asciidoc
207
298
  - test/fixtures/grandchild-include.adoc
208
299
  - test/fixtures/include-file.asciidoc
209
- - test/fixtures/list_elements.asciidoc
300
+ - test/fixtures/master.adoc
210
301
  - test/fixtures/parent-include-restricted.adoc
211
302
  - test/fixtures/parent-include.adoc
212
303
  - test/fixtures/sample.asciidoc
213
304
  - test/fixtures/stylesheets/custom.css
214
305
  - test/fixtures/tip.gif
215
306
  - test/invoker_test.rb
216
- - test/lexer_test.rb
217
307
  - test/links_test.rb
218
308
  - test/lists_test.rb
219
309
  - test/options_test.rb
220
310
  - test/paragraphs_test.rb
311
+ - test/parser_test.rb
221
312
  - test/paths_test.rb
222
313
  - test/preamble_test.rb
223
314
  - test/reader_test.rb
224
- - test/renderer_test.rb
225
315
  - test/sections_test.rb
226
316
  - test/substitutions_test.rb
227
317
  - test/tables_test.rb
@@ -233,42 +323,48 @@ licenses:
233
323
  metadata: {}
234
324
  post_install_message:
235
325
  rdoc_options:
236
- - --charset=UTF-8
326
+ - "--charset=UTF-8"
237
327
  require_paths:
238
328
  - lib
239
329
  required_ruby_version: !ruby/object:Gem::Requirement
240
330
  requirements:
241
- - - '>='
331
+ - - ">="
242
332
  - !ruby/object:Gem::Version
243
333
  version: '0'
244
334
  required_rubygems_version: !ruby/object:Gem::Requirement
245
335
  requirements:
246
- - - '>='
336
+ - - ">="
247
337
  - !ruby/object:Gem::Version
248
338
  version: '0'
249
339
  requirements: []
250
340
  rubyforge_project: asciidoctor
251
- rubygems_version: 2.0.3
341
+ rubygems_version: 2.2.2
252
342
  signing_key:
253
- specification_version: 2
343
+ specification_version: 4
254
344
  summary: An implementation of the AsciiDoc text processor and publishing toolchain
255
345
  in Ruby
256
346
  test_files:
347
+ - features/open_block.feature
348
+ - features/pass_block.feature
349
+ - features/step_definitions.rb
350
+ - features/text_formatting.feature
351
+ - features/xref.feature
257
352
  - test/attributes_test.rb
258
353
  - test/blocks_test.rb
354
+ - test/converter_test.rb
259
355
  - test/document_test.rb
260
356
  - test/extensions_test.rb
261
357
  - test/invoker_test.rb
262
- - test/lexer_test.rb
263
358
  - test/links_test.rb
264
359
  - test/lists_test.rb
265
360
  - test/options_test.rb
266
361
  - test/paragraphs_test.rb
362
+ - test/parser_test.rb
267
363
  - test/paths_test.rb
268
364
  - test/preamble_test.rb
269
365
  - test/reader_test.rb
270
- - test/renderer_test.rb
271
366
  - test/sections_test.rb
272
367
  - test/substitutions_test.rb
273
368
  - test/tables_test.rb
274
369
  - test/text_test.rb
370
+ has_rdoc: true