8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
# File 'lib/metanorma/mirror/output/html_renderers/mark_renderers.rb', line 8
def self.register(registry)
registry.register_mark_handler("emphasis", ->(inner, _mark) {
HtmlRenderers.wrap(:em, inner)
})
registry.register_mark_handler("strong", ->(inner, _mark) {
HtmlRenderers.wrap(:strong, inner)
})
registry.register_mark_handler("subscript", ->(inner, _mark) {
HtmlRenderers.wrap(:sub, inner)
})
registry.register_mark_handler("superscript", ->(inner, _mark) {
HtmlRenderers.wrap(:sup, inner)
})
registry.register_mark_handler("code", ->(inner, _mark) {
HtmlRenderers.wrap(:code, inner)
})
registry.register_mark_handler("underline", ->(inner, _mark) {
HtmlRenderers.wrap(:u, inner)
})
registry.register_mark_handler("strike", ->(inner, _mark) {
HtmlRenderers.wrap(:s, inner)
})
registry.register_mark_handler("smallcap", ->(inner, _mark) {
HtmlRenderers.wrap(:span, inner, style: "font-variant: small-caps")
})
registry.register_mark_handler("link", ->(inner, mark) {
HtmlRenderers.wrap(:a, inner, href: mark.attrs["href"] || "#")
})
registry.register_mark_handler("xref", ->(inner, mark) {
HtmlRenderers.wrap(:a, inner, href: "##{mark.attrs['target'] || ''}")
})
registry.register_mark_handler("eref", ->(inner, mark) {
HtmlRenderers.wrap(:a, inner, class: "eref", cite: mark.attrs["citeas"] || "")
})
registry.register_mark_handler("footnote", ->(inner, _mark) {
HtmlRenderers.wrap(:sup, inner, class: "footnote-inline")
})
registry.register_mark_handler("stem", ->(inner, _mark) {
HtmlRenderers.wrap(:span, inner, class: "stem")
})
registry.register_mark_handler("concept", ->(inner, _mark) {
HtmlRenderers.wrap(:span, inner, class: "concept")
})
registry.register_mark_handler("bcp14", ->(inner, _mark) {
HtmlRenderers.wrap(:span, inner, class: "bcp14")
})
registry.register_mark_handler("span", ->(inner, mark) {
cls = mark.attrs["class_attr"]
attrs = cls ? { class: cls } : {}
HtmlRenderers.wrap(:span, inner, **attrs)
})
end
|