Module: Coradoc::Input::Html::Converters
- Defined in:
- 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/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/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/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: PositionalFormatting
Classes: A, Aside, Audio, Base, Blockquote, Br, Bypass, Code, Div, Dl, Em, Figure, H, Head, Hr, Img, Li, Mark, Markup, Math, MediaBase, Ol, P, PassThrough, Pre, Q, Skip, Strong, Sub, Sup, Table, Td, Text, Tr, Video
Class Method Summary
collapse
Class Method Details
.default_converter(tag_name) ⇒ Object
.ensure_converters_loaded ⇒ Object
56
57
58
59
60
61
62
63
64
65
66
|
# File 'lib/coradoc/html/input/converters.rb', line 56
def self.ensure_converters_loaded
return if @converters_loaded
@converters_loaded = true
[
Base, Markup, A, Aside, Audio, Blockquote, Br, Bypass, Code, Div, Dl,
Skip, Em, Figure, H, Head, Hr, Img, Li, Mark, Math, Ol, P,
PassThrough, Pre, Q, Strong, Sup, Sub, Table, Td, Text, Tr, Video
].each { |converter| _ = converter }
end
|
.lookup(tag_name) ⇒ Object
68
69
70
71
|
# File 'lib/coradoc/html/input/converters.rb', line 68
def self.lookup(tag_name)
ensure_converters_loaded
@converters[tag_name.to_sym] || default_converter(tag_name)
end
|
.process_coradoc(node, state) ⇒ Object
73
74
75
76
77
78
79
80
81
82
83
84
|
# File 'lib/coradoc/html/input/converters.rb', line 73
def self.process_coradoc(node, state)
node = node.to_a if node.is_a? Nokogiri::XML::NodeSet
return node.map { |i| process_coradoc(i, state) } if node.is_a? Array
plugins = state[:plugin_instances] || {}
process = proc { lookup(node.name).to_coradoc(node, state) }
plugins.each do |i|
prev_process = process
process = proc { i.html_tree_run_hooks(node, state, &prev_process) }
end
process.call(node, state)
end
|
.register(tag_name, converter) ⇒ Object
48
49
50
|
# File 'lib/coradoc/html/input/converters.rb', line 48
def self.register(tag_name, converter)
@converters[tag_name.to_sym] = converter
end
|
.unregister(tag_name) ⇒ Object
52
53
54
|
# File 'lib/coradoc/html/input/converters.rb', line 52
def self.unregister(tag_name)
@converters.delete(tag_name.to_sym)
end
|