brandish 0.1.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.
Files changed (85) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/.rspec +3 -0
  4. data/.rubocop.yml +41 -0
  5. data/.travis.yml +5 -0
  6. data/.yardopts +1 -0
  7. data/CODE_OF_CONDUCT.md +74 -0
  8. data/Gemfile +10 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +41 -0
  11. data/Rakefile +9 -0
  12. data/bin/brandish +16 -0
  13. data/brandish.gemspec +39 -0
  14. data/defaults/templates/html.liquid +39 -0
  15. data/lib/brandish.rb +51 -0
  16. data/lib/brandish/application.rb +163 -0
  17. data/lib/brandish/application/bench_command.rb +96 -0
  18. data/lib/brandish/application/build_command.rb +73 -0
  19. data/lib/brandish/application/initialize_command.rb +83 -0
  20. data/lib/brandish/application/serve_command.rb +150 -0
  21. data/lib/brandish/configure.rb +196 -0
  22. data/lib/brandish/configure/dsl.rb +135 -0
  23. data/lib/brandish/configure/dsl/form.rb +136 -0
  24. data/lib/brandish/configure/form.rb +32 -0
  25. data/lib/brandish/errors.rb +65 -0
  26. data/lib/brandish/execute.rb +26 -0
  27. data/lib/brandish/markup.rb +10 -0
  28. data/lib/brandish/markup/redcarpet.rb +14 -0
  29. data/lib/brandish/markup/redcarpet/format.rb +127 -0
  30. data/lib/brandish/markup/redcarpet/html.rb +95 -0
  31. data/lib/brandish/parser.rb +26 -0
  32. data/lib/brandish/parser/main.rb +237 -0
  33. data/lib/brandish/parser/node.rb +89 -0
  34. data/lib/brandish/parser/node/block.rb +98 -0
  35. data/lib/brandish/parser/node/command.rb +102 -0
  36. data/lib/brandish/parser/node/pair.rb +42 -0
  37. data/lib/brandish/parser/node/root.rb +83 -0
  38. data/lib/brandish/parser/node/string.rb +18 -0
  39. data/lib/brandish/parser/node/text.rb +114 -0
  40. data/lib/brandish/path_set.rb +163 -0
  41. data/lib/brandish/processor.rb +47 -0
  42. data/lib/brandish/processor/base.rb +144 -0
  43. data/lib/brandish/processor/block.rb +47 -0
  44. data/lib/brandish/processor/command.rb +47 -0
  45. data/lib/brandish/processor/context.rb +169 -0
  46. data/lib/brandish/processor/descend.rb +32 -0
  47. data/lib/brandish/processor/inline.rb +49 -0
  48. data/lib/brandish/processor/name_filter.rb +67 -0
  49. data/lib/brandish/processor/pair_filter.rb +96 -0
  50. data/lib/brandish/processors.rb +26 -0
  51. data/lib/brandish/processors/all.rb +19 -0
  52. data/lib/brandish/processors/all/comment.rb +29 -0
  53. data/lib/brandish/processors/all/embed.rb +56 -0
  54. data/lib/brandish/processors/all/if.rb +109 -0
  55. data/lib/brandish/processors/all/import.rb +95 -0
  56. data/lib/brandish/processors/all/literal.rb +42 -0
  57. data/lib/brandish/processors/all/verify.rb +47 -0
  58. data/lib/brandish/processors/common.rb +20 -0
  59. data/lib/brandish/processors/common/asset.rb +118 -0
  60. data/lib/brandish/processors/common/asset/paths.rb +93 -0
  61. data/lib/brandish/processors/common/group.rb +67 -0
  62. data/lib/brandish/processors/common/header.rb +86 -0
  63. data/lib/brandish/processors/common/markup.rb +127 -0
  64. data/lib/brandish/processors/common/output.rb +73 -0
  65. data/lib/brandish/processors/html.rb +18 -0
  66. data/lib/brandish/processors/html/group.rb +33 -0
  67. data/lib/brandish/processors/html/header.rb +46 -0
  68. data/lib/brandish/processors/html/markup.rb +131 -0
  69. data/lib/brandish/processors/html/output.rb +62 -0
  70. data/lib/brandish/processors/html/output/document.rb +127 -0
  71. data/lib/brandish/processors/html/script.rb +64 -0
  72. data/lib/brandish/processors/html/script/babel.rb +48 -0
  73. data/lib/brandish/processors/html/script/coffee.rb +47 -0
  74. data/lib/brandish/processors/html/script/vanilla.rb +45 -0
  75. data/lib/brandish/processors/html/style.rb +82 -0
  76. data/lib/brandish/processors/html/style/highlight.rb +89 -0
  77. data/lib/brandish/processors/html/style/sass.rb +64 -0
  78. data/lib/brandish/processors/html/style/vanilla.rb +71 -0
  79. data/lib/brandish/processors/latex.rb +15 -0
  80. data/lib/brandish/processors/latex/markup.rb +47 -0
  81. data/lib/brandish/scanner.rb +64 -0
  82. data/lib/brandish/version.rb +9 -0
  83. data/templates/initialize/Gemfile.tt +14 -0
  84. data/templates/initialize/brandish.config.rb.tt +49 -0
  85. metadata +296 -0
@@ -0,0 +1,15 @@
1
+ # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
4
+ require "brandish/processors/latex/markup"
5
+
6
+ module Brandish
7
+ module Processors
8
+ # Processors for generating LaTeX output. This implements the {Common}
9
+ # processors.
10
+ #
11
+ # @note This does not currently implement the Common processors.
12
+ module Latex
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,47 @@
1
+ # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
4
+ module Brandish
5
+ module Processors
6
+ module Latex
7
+ # Markup support for the Latex format. For more information, and
8
+ # available options, see the {Processors::Common::Markup} processor.
9
+ #
10
+ # This markup processor provides the following engines:
11
+ #
12
+ # - `:kramdown` - A Markdown formatter. More information on this
13
+ # markup format can be found at <https://github.com/gettalong/kramdown>.
14
+ # Available options are: `:template`, `:auto_ids` (not recommended),
15
+ # `:auto_id_stripping` (not recommended), `:auto_id_prefix` (not
16
+ # recommended), `:parse_block_html`, `:parse_span_html`,
17
+ # `:html_to_native`, `:link_defs`, `:footnote_nr`, `:enable_coderay`,
18
+ # `:coderay_wrap`, `:coderay_line_numbers`,
19
+ # `:coderay_line_number_start`, `:coderay_tab_width`,
20
+ # `:coderay_bold_every`, `:coderay_css`, `:coderay_default_lang`,
21
+ # `:entity_output`, `:toc_levels` (not recommended), `:line_width`,
22
+ # `:latex_headers` (does nothing), `:smart_quotes`,
23
+ # `:remove_block_html_tags`, `:remove_span_html_tags`,
24
+ # `:header_offset`, `:hard_wrap`, `:syntax_highlighter`,
25
+ # `:syntax_highlighter_opts`, `:math_engine`, `:math_engine_opts`,
26
+ # `:footnote_backlink`, and `:gfm_quirks`. Requires the kramdown
27
+ # gem.
28
+ # - `:redcloth` - A Textile formatter. More information on this
29
+ # markup format can be found at <https://github.com/jgarber/redcloth>.
30
+ # Available options are: `:filter_html`, `:sanitize_html`,
31
+ # `:filter_styles`, `:filter_classes`, `:filter_ids`,
32
+ # `:hard_breaks` (deprecated, default), `:lite_mode`,
33
+ # and `:no_span_caps`.
34
+ # - `:escape` - Escapes the content to prevent conflict with the
35
+ # resulting format.
36
+ # @note
37
+ # This class provides the `latex:markup` processor.
38
+ class Markup < Processors::Common::Markup
39
+ register %i(latex markup) => self
40
+
41
+ engine(:kramdown, {}, :initialize_kramdown, :markup_kramdown)
42
+ engine(:redcloth, [], :initialize_redcloth, :markup_redcloth)
43
+ engine(:escape, nil, nil, :markup_escape)
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,64 @@
1
+ # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
4
+ require "strscan"
5
+ require "yoga"
6
+
7
+ module Brandish
8
+ # Scans the file for tokens. This is by default done incrementally, as it's
9
+ # requested by the parser or whatever consumer wants to use it. This is done
10
+ # to make sure that work that doesn't need to be done isn't.
11
+ class Scanner
12
+ include Yoga::Scanner
13
+
14
+ # The default options for the scanner.
15
+ #
16
+ # @return [{::Symbol => ::Object}]
17
+ DEFAULT_OPTIONS = { tags: %i(< >).freeze }.freeze
18
+
19
+ # Initialize the scanner with the given source and file. If no file
20
+ # is given, it defaults to `<anon>`.
21
+ def initialize(*args, **options)
22
+ super(*args)
23
+ @options = DEFAULT_OPTIONS.merge(options)
24
+ end
25
+
26
+ private
27
+
28
+ def scan
29
+ scan_escape ||
30
+ scan_operators ||
31
+ scan_numerics ||
32
+ scan_whitespace ||
33
+ scan_normal ||
34
+ fail(ScanError) # unreachable
35
+ end
36
+
37
+ def scan_escape
38
+ match(/\\./, :ESCAPE)
39
+ end
40
+
41
+ def scan_operators
42
+ operators.find { |(o, n)| (t = match(o, n)) && (return t) }
43
+ end
44
+
45
+ def scan_numerics
46
+ match(/0[xX][0-9a-fA-F]/, :NUMERIC) || match(/[-+]?\d+(\.\d+)?/, :NUMERIC)
47
+ end
48
+
49
+ def scan_whitespace
50
+ match_line(:LINE) || match(/[ \v\t\f]+/, :SPACE)
51
+ end
52
+
53
+ def scan_normal
54
+ match(/[^\d\s\\#{Regexp.escape(operators.keys.join)}]+/, :TEXT)
55
+ end
56
+
57
+ OPERATORS = { "=" => :"=", '"' => :'"', "/" => :"/" }.freeze
58
+
59
+ def operators
60
+ @_operators ||=
61
+ OPERATORS.merge(@options.fetch(:tags).map(&:to_s).zip([:<, :>]).to_h)
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,9 @@
1
+ # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
4
+ module Brandish
5
+ # The running version of Brandish.
6
+ #
7
+ # @return [::String]
8
+ VERSION = "0.1.1"
9
+ end
@@ -0,0 +1,14 @@
1
+ # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
4
+ source "https://rubygems.org"
5
+
6
+ # For edge:
7
+ # gem "brandish", github: "medcat/brandish", branch: "master"
8
+ # For the latest version:
9
+ # gem "brandish"
10
+ # For the running version:
11
+ gem "brandish", "<%= approx %>"
12
+
13
+ # Markdown support.
14
+ gem "redcarpet"
@@ -0,0 +1,49 @@
1
+ # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
4
+ Brandish.configure do |config|
5
+ # Sets the root of the brandish documents and output. This is a path to
6
+ # where the documents are located. This is its default value.
7
+ config.root = "."
8
+
9
+ # Sets the brackets to be used for Brandish documents. By default, they are
10
+ # the less than and greater than signs, but could be anything, as long as
11
+ # they are two distinct symbols.
12
+ # config[:tags] = %i([ ])
13
+
14
+ # A "form". This is a form of output. Multiple forms are allowed, with
15
+ # the same formats for each also allowed.
16
+ config.form :html, <%= :"#{options[:name]}_html".inspect %> do |form|
17
+ # `.use` adds a processor to the compilation chain for the document.
18
+ # Each processor updates the AST, changing something about it. The
19
+ # `all:literal` processor provides the `<literal>` block tag for Brandish.
20
+ # All processors are scoped by a format; if no format is provided, the
21
+ # format for the form is assumed by default.
22
+ form.use :literal
23
+ # The `all:if` processor provides the `<if>` and `<unless>` block tags for
24
+ # Brandish. It can conditionally include a portion of the text if a
25
+ # set of conditions are met.
26
+ # form.use :if, embed: true # if it should use embeded conditions.
27
+ # You should only use this if you trust the
28
+ # source.
29
+ form.use :if
30
+ # `markup` allows the raw text in a document to be parsed as a given
31
+ # markup.
32
+ form.use :markup, engine: :redcarpet
33
+ # This performs error checking of the document, to make sure that no tags
34
+ # in the documents are left over.
35
+ form.use "all:verify"
36
+ # `output` outputs the document in the given format. This should always
37
+ # be last.
38
+ form.use :output
39
+ end
40
+
41
+ # The latex output of the brandish document.
42
+ # config.form :latex, <%= :"#{options[:name]}_latex".inspect %> do |form|
43
+ # form.use "all:literal"
44
+ # form.use :markup, engine: :kramdown
45
+ # form.use :header
46
+ # form.use "all:verify"
47
+ # form.use :output
48
+ # end
49
+ end
metadata ADDED
@@ -0,0 +1,296 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: brandish
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
5
+ platform: ruby
6
+ authors:
7
+ - Jeremy Rodi
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-03-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: hanami-helpers
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.5'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.5'
27
+ - !ruby/object:Gem::Dependency
28
+ name: thor
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0.19'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '0.19'
41
+ - !ruby/object:Gem::Dependency
42
+ name: commander
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '4.4'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '4.4'
55
+ - !ruby/object:Gem::Dependency
56
+ name: listen
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: sass
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '3.4'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '3.4'
83
+ - !ruby/object:Gem::Dependency
84
+ name: yoga
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '0.4'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '0.4'
97
+ - !ruby/object:Gem::Dependency
98
+ name: liquid
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '4.0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '4.0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: bundler
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '1.13'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '1.13'
125
+ - !ruby/object:Gem::Dependency
126
+ name: rake
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '10.0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '10.0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rspec
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '3.0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '3.0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: simplecov
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '0.13'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '0.13'
167
+ - !ruby/object:Gem::Dependency
168
+ name: rubocop
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '0.47'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '0.47'
181
+ description: A markup language for compiling to different formats.
182
+ email:
183
+ - me@medcat.me
184
+ executables:
185
+ - brandish
186
+ extensions: []
187
+ extra_rdoc_files: []
188
+ files:
189
+ - ".gitignore"
190
+ - ".rspec"
191
+ - ".rubocop.yml"
192
+ - ".travis.yml"
193
+ - ".yardopts"
194
+ - CODE_OF_CONDUCT.md
195
+ - Gemfile
196
+ - LICENSE.txt
197
+ - README.md
198
+ - Rakefile
199
+ - bin/brandish
200
+ - brandish.gemspec
201
+ - defaults/templates/html.liquid
202
+ - lib/brandish.rb
203
+ - lib/brandish/application.rb
204
+ - lib/brandish/application/bench_command.rb
205
+ - lib/brandish/application/build_command.rb
206
+ - lib/brandish/application/initialize_command.rb
207
+ - lib/brandish/application/serve_command.rb
208
+ - lib/brandish/configure.rb
209
+ - lib/brandish/configure/dsl.rb
210
+ - lib/brandish/configure/dsl/form.rb
211
+ - lib/brandish/configure/form.rb
212
+ - lib/brandish/errors.rb
213
+ - lib/brandish/execute.rb
214
+ - lib/brandish/markup.rb
215
+ - lib/brandish/markup/redcarpet.rb
216
+ - lib/brandish/markup/redcarpet/format.rb
217
+ - lib/brandish/markup/redcarpet/html.rb
218
+ - lib/brandish/parser.rb
219
+ - lib/brandish/parser/main.rb
220
+ - lib/brandish/parser/node.rb
221
+ - lib/brandish/parser/node/block.rb
222
+ - lib/brandish/parser/node/command.rb
223
+ - lib/brandish/parser/node/pair.rb
224
+ - lib/brandish/parser/node/root.rb
225
+ - lib/brandish/parser/node/string.rb
226
+ - lib/brandish/parser/node/text.rb
227
+ - lib/brandish/path_set.rb
228
+ - lib/brandish/processor.rb
229
+ - lib/brandish/processor/base.rb
230
+ - lib/brandish/processor/block.rb
231
+ - lib/brandish/processor/command.rb
232
+ - lib/brandish/processor/context.rb
233
+ - lib/brandish/processor/descend.rb
234
+ - lib/brandish/processor/inline.rb
235
+ - lib/brandish/processor/name_filter.rb
236
+ - lib/brandish/processor/pair_filter.rb
237
+ - lib/brandish/processors.rb
238
+ - lib/brandish/processors/all.rb
239
+ - lib/brandish/processors/all/comment.rb
240
+ - lib/brandish/processors/all/embed.rb
241
+ - lib/brandish/processors/all/if.rb
242
+ - lib/brandish/processors/all/import.rb
243
+ - lib/brandish/processors/all/literal.rb
244
+ - lib/brandish/processors/all/verify.rb
245
+ - lib/brandish/processors/common.rb
246
+ - lib/brandish/processors/common/asset.rb
247
+ - lib/brandish/processors/common/asset/paths.rb
248
+ - lib/brandish/processors/common/group.rb
249
+ - lib/brandish/processors/common/header.rb
250
+ - lib/brandish/processors/common/markup.rb
251
+ - lib/brandish/processors/common/output.rb
252
+ - lib/brandish/processors/html.rb
253
+ - lib/brandish/processors/html/group.rb
254
+ - lib/brandish/processors/html/header.rb
255
+ - lib/brandish/processors/html/markup.rb
256
+ - lib/brandish/processors/html/output.rb
257
+ - lib/brandish/processors/html/output/document.rb
258
+ - lib/brandish/processors/html/script.rb
259
+ - lib/brandish/processors/html/script/babel.rb
260
+ - lib/brandish/processors/html/script/coffee.rb
261
+ - lib/brandish/processors/html/script/vanilla.rb
262
+ - lib/brandish/processors/html/style.rb
263
+ - lib/brandish/processors/html/style/highlight.rb
264
+ - lib/brandish/processors/html/style/sass.rb
265
+ - lib/brandish/processors/html/style/vanilla.rb
266
+ - lib/brandish/processors/latex.rb
267
+ - lib/brandish/processors/latex/markup.rb
268
+ - lib/brandish/scanner.rb
269
+ - lib/brandish/version.rb
270
+ - templates/initialize/Gemfile.tt
271
+ - templates/initialize/brandish.config.rb.tt
272
+ homepage: https://github.com/medcat/brandish
273
+ licenses:
274
+ - MIT
275
+ metadata: {}
276
+ post_install_message:
277
+ rdoc_options: []
278
+ require_paths:
279
+ - lib
280
+ required_ruby_version: !ruby/object:Gem::Requirement
281
+ requirements:
282
+ - - ">="
283
+ - !ruby/object:Gem::Version
284
+ version: '0'
285
+ required_rubygems_version: !ruby/object:Gem::Requirement
286
+ requirements:
287
+ - - ">="
288
+ - !ruby/object:Gem::Version
289
+ version: '0'
290
+ requirements: []
291
+ rubyforge_project:
292
+ rubygems_version: 2.6.8
293
+ signing_key:
294
+ specification_version: 4
295
+ summary: A markup language for compiling to different formats.
296
+ test_files: []