Module: Coradoc::Input::Html

Extended by:
Html::FormatDetection
Defined in:
lib/coradoc/html/input.rb,
lib/coradoc/html/input/config.rb,
lib/coradoc/html/input/errors.rb,
lib/coradoc/html/input/plugin.rb,
lib/coradoc/html/input/cleaner.rb,
lib/coradoc/html/input/converters.rb,
lib/coradoc/html/input/converters/a.rb,
lib/coradoc/html/input/converters/h.rb,
lib/coradoc/html/input/converters/p.rb,
lib/coradoc/html/input/converters/q.rb,
lib/coradoc/html/input/converters/br.rb,
lib/coradoc/html/input/converters/dl.rb,
lib/coradoc/html/input/converters/em.rb,
lib/coradoc/html/input/converters/hr.rb,
lib/coradoc/html/input/converters/li.rb,
lib/coradoc/html/input/converters/ol.rb,
lib/coradoc/html/input/converters/td.rb,
lib/coradoc/html/input/converters/tr.rb,
lib/coradoc/html/input/postprocessor.rb,
lib/coradoc/html/input/converters/div.rb,
lib/coradoc/html/input/converters/img.rb,
lib/coradoc/html/input/converters/pre.rb,
lib/coradoc/html/input/converters/sub.rb,
lib/coradoc/html/input/converters/sup.rb,
lib/coradoc/html/input/html_converter.rb,
lib/coradoc/html/input/converters/base.rb,
lib/coradoc/html/input/converters/code.rb,
lib/coradoc/html/input/converters/drop.rb,
lib/coradoc/html/input/converters/head.rb,
lib/coradoc/html/input/converters/mark.rb,
lib/coradoc/html/input/converters/math.rb,
lib/coradoc/html/input/converters/text.rb,
lib/coradoc/html/input/plugins/plateau.rb,
lib/coradoc/html/input/converters/aside.rb,
lib/coradoc/html/input/converters/audio.rb,
lib/coradoc/html/input/converters/table.rb,
lib/coradoc/html/input/converters/video.rb,
lib/coradoc/html/input/converters/bypass.rb,
lib/coradoc/html/input/converters/figure.rb,
lib/coradoc/html/input/converters/markup.rb,
lib/coradoc/html/input/converters/strong.rb,
lib/coradoc/html/input/converters/blockquote.rb,
lib/coradoc/html/input/converters/media_base.rb,
lib/coradoc/html/input/converters/pass_through.rb,
lib/coradoc/html/input/converters/positional_formatting.rb

Defined Under Namespace

Modules: Converters, Errors Classes: Cleaner, Config, HtmlConverter, Plugin, Postprocessor

Class Method Summary collapse

Methods included from Html::FormatDetection

html_extension?

Class Method Details

.clean_output(result, options = {}) ⇒ Object



59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/coradoc/html/input.rb', line 59

def self.clean_output(result, options = {})
  config.with(options) do
    plugin_instances = HtmlConverter.prepare_plugin_instances(options)

    result = HtmlConverter.track_time('Cleaning up the result') do
      cleaner.tidy(result)
    end

    plugin_instances.each do |plugin|
      plugin.output_string = result
      HtmlConverter.track_time("Postprocessing output string with #{plugin.name} plugin") do
        plugin.postprocess_output_string
      end
      result = plugin.output_string
    end

    result
  end
end

.cleanerObject



33
34
35
# File 'lib/coradoc/html/input.rb', line 33

def self.cleaner
  @cleaner ||= Cleaner.new
end

.config {|@config| ... } ⇒ Object

Yields:



27
28
29
30
31
# File 'lib/coradoc/html/input.rb', line 27

def self.config
  @config ||= Config.new
  yield @config if block_given?
  @config
end

.convert(input, options = {}) ⇒ Object



19
20
21
# File 'lib/coradoc/html/input.rb', line 19

def self.convert(input, options = {})
  HtmlConverter.to_core_model(input, options)
end

.processor_execute(input, options = {}) ⇒ Object



47
48
49
# File 'lib/coradoc/html/input.rb', line 47

def self.processor_execute(input, options = {})
  to_coradoc(input, options)
end

.processor_idObject



37
38
39
# File 'lib/coradoc/html/input.rb', line 37

def self.processor_id
  :html
end

.processor_match?(filename) ⇒ Boolean

Returns:

  • (Boolean)


43
44
45
# File 'lib/coradoc/html/input.rb', line 43

def self.processor_match?(filename)
  html_extension?(filename)
end

.processor_postprocess(data, options) ⇒ Object



51
52
53
54
55
56
57
# File 'lib/coradoc/html/input.rb', line 51

def self.processor_postprocess(data, options)
  if options[:output_processor] == :adoc
    data.transform_values { |v| clean_output(v, options) }
  else
    data
  end
end

.to_coradoc(input, options = {}) ⇒ Object



23
24
25
# File 'lib/coradoc/html/input.rb', line 23

def self.to_coradoc(input, options = {})
  HtmlConverter.to_core_model(input, options)
end