Sha256: 45a24032dde1e0e1f5a2e773c6199bce77594e20d2addebaccc4cec33d8ba4a0

Contents?: true

Size: 954 Bytes

Versions: 14

Compression:

Stored size: 954 Bytes

Contents

# frozen_string_literal: true

require 'stepmod/utils/converters/synonym'

module Stepmod
  module Utils
    module Converters
      class Term < ReverseAdoc::Converters::Base
        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_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)
          "=== #{term_def}\n\n#{converted_alt}"
        end
      end

      ReverseAdoc::Converters.register :term, Term.new
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
stepmod-utils-0.3.5 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.3.4 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.3.2 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.3.1 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.3.0 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.2.7 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.2.6 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.2.5 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.2.4 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.2.3 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.2.0 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.1.8 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.1.7 lib/stepmod/utils/converters/term.rb
stepmod-utils-0.1.6 lib/stepmod/utils/converters/term.rb