Method: Metanorma::Compile#sourcecode_export

Defined in:
lib/metanorma/compile.rb

#sourcecode_export(xml, dirname) ⇒ Object



159
160
161
162
163
164
165
166
167
168
# File 'lib/metanorma/compile.rb', line 159

def sourcecode_export(xml, dirname)
  xml.at("//sourcecode | //xmlns:sourcecode") or return
  FileUtils.mkdir_p "#{dirname}/sourcecode"
  xml.xpath("//sourcecode | //xmlns:sourcecode").each_with_index do |s, i|
    filename = s["filename"] || sprintf("sourcecode-%04d.txt", i)
    File.open("#{dirname}/sourcecode/#{filename}", "w:UTF-8") do |f|
      f.write clean_sourcecode(s.dup) 
    end
  end
end