Class: Metanorma::Gb::Processor
- Inherits:
-
Processor
- Object
- Processor
- Metanorma::Gb::Processor
- Defined in:
- lib/metanorma/gb/processor.rb
Instance Method Summary collapse
- #extract_options(file) ⇒ Object
-
#initialize ⇒ Processor
constructor
A new instance of Processor.
- #input_to_isodoc(file, filename) ⇒ Object
- #output(isodoc_node, outname, format, options = {}) ⇒ Object
- #output_formats ⇒ Object
- #version ⇒ Object
Constructor Details
#initialize ⇒ Processor
Returns a new instance of Processor.
7 8 9 10 11 |
# File 'lib/metanorma/gb/processor.rb', line 7 def initialize @short = :gb @input_format = :asciidoc @asciidoctor_backend = :gb end |
Instance Method Details
#extract_options(file) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/metanorma/gb/processor.rb', line 29 def (file) head = file.sub(/\n\n.*$/m, "\n") /\n:standard-logo-img: (?<standardlogoimg>[^\n]+)\n/ =~ head /\n:standard-class-img: (?<standardclassimg>[^\n]+)\n/ =~ head /\n:standard-issuer-img: (?<standardissuerimg>[^\n]+)\n/ =~ head /\n:title-font: (?<titlefont>[^\n]+)\n/ =~ head = { standardlogoimg: defined?(standardlogoimg) ? standardlogoimg : nil, standardclassimg: defined?(standardclassimg) ? standardclassimg : nil, standardissuerimg: defined?(standardissuerimg) ? standardissuerimg : nil, titlefont: defined?(titlefont) ? titlefont : nil, }.reject { |_, val| val.nil? } super.merge() end |
#input_to_isodoc(file, filename) ⇒ Object
25 26 27 |
# File 'lib/metanorma/gb/processor.rb', line 25 def input_to_isodoc(file, filename) Metanorma::Input::Asciidoc.new.process(file, filename, @asciidoctor_backend) end |
#output(isodoc_node, outname, format, options = {}) ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/metanorma/gb/processor.rb', line 44 def output(isodoc_node, outname, format, ={}) case format when :html IsoDoc::Gb::HtmlConvert.new().convert(outname, isodoc_node) when :compliant_html IsoDoc::Gb::HtmlConvert.new(.merge(compliant: true)).convert(outname, isodoc_node) when :doc IsoDoc::Gb::WordConvert.new().convert(outname, isodoc_node) else super end end |
#output_formats ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/metanorma/gb/processor.rb', line 13 def output_formats super.merge( html: "html", compliant_html: "compliant.html", doc: "doc" ) end |