aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu/v0/xml.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sisu/v0/xml.rb')
-rw-r--r--lib/sisu/v0/xml.rb24
1 files changed, 11 insertions, 13 deletions
diff --git a/lib/sisu/v0/xml.rb b/lib/sisu/v0/xml.rb
index 9a88c09c..23125e05 100644
--- a/lib/sisu/v0/xml.rb
+++ b/lib/sisu/v0/xml.rb
@@ -57,9 +57,9 @@
=end
module SiSU_XML_SAX
require "#{SiSU_lib}/defaults"
- require "#{SiSU_lib}/param"
- include SiSU_Param
include SiSU_Viz
+ require "#{SiSU_lib}/particulars"
+ include SiSU_Particulars
require "#{SiSU_lib}/sysenv"
include SiSU_Env
require "#{SiSU_lib}/dal"
@@ -74,11 +74,11 @@ module SiSU_XML_SAX
class Source
def initialize(opt)
@opt=opt
+ @particulars=SiSU_Particulars::Combined_singleton.instance.get_all(opt)
end
def read
begin
- @md=SiSU_Param::Parameters.new(@opt).get
- @env=SiSU_Env::Info_env.new(@opt.fns)
+ @env,@md,@dal_array=@particulars.env,@particulars.md,@particulars.dal_array
path=@env.path.output_tell
loc=@env.url.output_tell
tool=if @opt.cmd =~/[MV]/; "#{@env.program.web_browser} #{loc}/#{@md.fnb}/#{@md.fn[:sax]}\n\t#{@env.program.xml_viewer} #{path}/#{@md.fnb}/#{@md.fn[:sax]}"
@@ -87,8 +87,7 @@ module SiSU_XML_SAX
end
SiSU_Screen::Ansi.new(@opt.cmd,'invert','XML SAX',tool).colorize unless @opt.cmd =~/q/
SiSU_Screen::Ansi.new(@opt.cmd,@opt.fns,"#{@env.path.output_tell}/#{@md.fnb}/#{@md.fn[:sax]}").flow if @opt.cmd =~/[MV]/
- @dal_array=SiSU_DAL::Source.new(@opt).get # dal file drawn here
- SiSU_XML_SAX::Source::Songsheet.new(@dal_array,@md,@env).songsheet
+ SiSU_XML_SAX::Source::Songsheet.new(@particulars).songsheet
rescue; SiSU_Errors::Info_error.new($!,$@,@opt.cmd,@opt.fns).error
ensure
#file closed in songsheet
@@ -96,12 +95,12 @@ module SiSU_XML_SAX
end
private
class Songsheet
- def initialize(data,md,dir)
- @data,@md,@env=data,md,dir
+ def initialize(particulars)
+ @env,@md,@dal_array,@particulars=particulars.env,particulars.md,particulars.dal_array,particulars
end
def songsheet
begin
- SiSU_XML_SAX::Source::Scroll.new(@data,@md).songsheet
+ SiSU_XML_SAX::Source::Scroll.new(@particulars).songsheet
SiSU_XML_SAX::Source::Tidy.new(@md,@env).xml if @md.cmd =~/[vVM]/ # test wellformedness, comment out when not in use
SiSU_Rexml::Rexml.new(@md,@md.fn[:sax]).xml if @md.cmd =~/M/ # test rexml parsing, comment out when not in use #debug
rescue; SiSU_Errors::Info_error.new($!,$@,@md.cmd,@md.fns).error
@@ -115,19 +114,18 @@ module SiSU_XML_SAX
include SiSU_text_utils
@@dp,@@env=nil,nil
@@xml={ :body=>[],:open=>[],:close=>[],:head=>[] }
- def initialize(data='',md=nil)
- @data,@md=data,md
+ def initialize(particulars)
+ @env,@md,@dal_array=particulars.env,particulars.md,particulars.dal_array
@vz=SiSU_Env::Get_init.instance.skin
@dp=@@dp ||=SiSU_Env::Info_env.new.digest.pattern
@regx=/^(?:(?:<:p[bn]>\s*)?\d~(?:(\S+))?\s+)?(.+?)\s*<~(\d+);(?:\w|[0-6]:)\d+;\w\d+><#@dp:#@dp>$/
@tab="\t"
- @env=SiSU_Env::Info_env.new(@md.fns) if @md
@trans=SiSU_XML_munge::Trans.new(@md)
@sys=SiSU_Env::System_call.new
end
def songsheet
pre
- @data=markup(@data)
+ @data=markup(@dal_array)
post
publish
end