class Stepmod::Utils::Converters::Term
Public Instance Methods
convert(node, state = {})
click to toggle source
# File lib/stepmod/utils/converters/term.rb, line 9 def convert(node, state = {}) first_child = node.children.find do |child| child.name == "text" && !child.text.to_s.strip.empty? end unless first_child && node.text.split(";").length == 2 && defined?(Stepmod::Utils::Converters::Synonym) return "=== #{treat_acronym(treat_children(node, state).strip)}" end term_def, alt = node.text.split(";") alt_xml = Nokogiri::XML::Text.new(alt, Nokogiri::XML::Document.new) converted_alt = Stepmod::Utils::Converters::Synonym.new.convert(alt_xml) "=== #{treat_acronym(term_def)}\n\n#{converted_alt}" end
Private Instance Methods
treat_acronym(term_def)
click to toggle source
# File lib/stepmod/utils/converters/term.rb, line 27 def treat_acronym(term_def) return term_def if term_def !~ /.+\(.+?\)$/ _, term_text, term_acronym = term_def.match(/(.+?)(\(.+\))$/).to_a "#{term_text}\nalt:[#{term_acronym.gsub(/\(|\)/, '')}]" end