aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu/v6/xml_odf_odt.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sisu/v6/xml_odf_odt.rb')
-rw-r--r--lib/sisu/v6/xml_odf_odt.rb20
1 files changed, 14 insertions, 6 deletions
diff --git a/lib/sisu/v6/xml_odf_odt.rb b/lib/sisu/v6/xml_odf_odt.rb
index bf9d8df8..0457ad7d 100644
--- a/lib/sisu/v6/xml_odf_odt.rb
+++ b/lib/sisu/v6/xml_odf_odt.rb
@@ -73,8 +73,12 @@ module SiSU_XML_ODF_ODT
require_relative 'txt_shared' # txt_shared.rb
@@alt_id_count,@@alt_id_count,@@tablehead,@@number_of_cols=0,0,0,0
class Source
- require 'zlib'
- require 'find'
+ begin
+ require 'zlib'
+ require 'find'
+ rescue LoadError
+ SiSU_Utils::CodeMarker.new(__LINE__,__FILE__,:fuchsia).error('zlib or find NOT FOUND (LoadError)')
+ end
def initialize(opt)
@opt=opt
@particulars=SiSU_Particulars::CombinedSingleton.instance.get_all(opt)
@@ -117,6 +121,7 @@ module SiSU_XML_ODF_ODT
@@fns=nil
def initialize(particulars)
@md,@env,@ao_array=particulars.md,particulars.env,particulars.ao_array
+ @make=SiSU_Env::ProcessingSettings.new(@md)
@vz=SiSU_Viz::Defaults.new
@tab="\t"
@brace_url=SiSU_Viz::Defaults.new.url_decoration
@@ -552,10 +557,10 @@ module SiSU_XML_ODF_ODT
end
p_num={ display: '', set_ref: '' }
if dob.is !~/(^#{Rx[:meta]}|#{Mx[:br_eof]}|#{Mx[:br_endnotes]})/
- if @env.odt_ocn?
+ if @make.build.odt_ocn?
if defined? dob.ocn \
and dob.ocn.is_a?(Fixnum)
- p_num=SiSU_XML_ODF_ODT_Format::ParagraphNumber.new(dob.ocn).set_bookmark_and_display
+ p_num=SiSU_XML_ODF_ODT_Format::ParagraphNumber.new(@make,dob.ocn).set_bookmark_and_display
end
end
end
@@ -678,7 +683,7 @@ module SiSU_XML_ODF_ODT
and (dob.obj =~/~metadata/ or dob =~/#{Mx[:lv_o]}1:meta#{Mx[:lv_x]}\s*Document Information/) #fix Mx[:lv_o]
if dob.is !~/(^#{Rx[:meta]}|#{Mx[:br_eof]}|#{Mx[:br_endnotes]})/ #check
if defined? dob.ocn and dob.ocn =~/\d+/
- @p_num=SiSU_XML_ODF_ODT_Format::ParagraphNumber.new(dob.ocn)
+ @p_num=SiSU_XML_ODF_ODT_Format::ParagraphNumber.new(@make,dob.ocn)
end
if dob.is ==:heading \
|| dob.is ==:para \
@@ -805,7 +810,8 @@ WOK
od.close
opendoc=@md.file.base_filename.odt #watch where output by language
FileUtils::mkdir_p(@md.file.output_path.odt.dir) unless FileTest.directory?(@md.file.output_path.odt.dir)
- if FileTest.directory?(@env.processing_path.odt)
+ if FileTest.directory?(@env.processing_path.odt) \
+ and SiSU_Env::SystemCall.new.zip
pwd=Dir.pwd
Dir.chdir(@env.processing_path.odt)
system("
@@ -813,6 +819,8 @@ WOK
")
FileUtils::mv(opendoc, @md.file.place_file.odt.dir)
Dir.chdir(pwd)
+ else
+ SiSU_Utils::CodeMarker.new(__LINE__,__FILE__,:fuchsia).mark('*EXITED odf* zip program not found') unless SiSU_Env::SystemCall.new.zip
end
end
end