Sha256: 6900747dd920f885ba2204bf7a1a9e31b34865d661549a9338a9365bbcf12713
Contents?: true
Size: 1.75 KB
Versions: 15
Compression:
Stored size: 1.75 KB
Contents
module IsoDoc module M3d # A {Converter} implementation that generates CSAND output, and a document # schema encapsulation of the document for validation class WordConvert < IsoDoc::WordConvert def annex_name(annex, name, div) div.h1 **{ class: "Annex" } do |t| t << "#{get_anchors[annex['id']][:label]} " t << "<b>#{name.text}</b>" end end def annex_name_lbl(clause, num) obl = l10n("(#{@inform_annex_lbl})") obl = l10n("(#{@norm_annex_lbl})") if clause["obligation"] == "normative" l10n("<b>#{@annex_lbl} #{num}</b> #{obl}") end def pre_parse(node, out) out.pre node.text # content.gsub(/</, "<").gsub(/>/, ">") end def term_defs_boilerplate(div, source, term, preface) if source.empty? && term.nil? div << @no_terms_boilerplate else div << term_defs_boilerplate_cont(source, term) end end def i18n_init(lang, script) super @annex_lbl = "Appendix" end def error_parse(node, out) # catch elements not defined in ISO case node.name when "pre" pre_parse(node, out) when "keyword" out.span node.text, **{ class: "keyword" } else super end end def fileloc(loc) File.join(File.dirname(__FILE__), loc) end def cleanup(docxml) super term_cleanup(docxml) end def term_cleanup(docxml) docxml.xpath("//p[@class = 'Terms']").each do |d| h2 = d.at("./preceding-sibling::*[@class = 'TermNum'][1]") h2.add_child(" ") h2.add_child(d.remove) end docxml end end end end
Version data entries
15 entries across 15 versions & 2 rubygems