aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu/v5
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2014-08-08 00:32:27 -0400
committerRalph Amissah <ralph@amissah.com>2014-08-08 00:32:27 -0400
commit809034240a1be22cc00cb3b4c1df1dd2facdc8f8 (patch)
tree89f9301644b85ff0ff3e0b7c82cca13c5b6389a2 /lib/sisu/v5
parentv5 v6: version & changelog (& rakefile) (diff)
v5: merged v6 libraries
* commandline, --act0 to --act9, rc-config with flag:act[0-9] * configurable command line options increased to 0 - 9 (instead of 0 - 5) * use --act0 to --act9 (previous flags -1 to -5; -0 to -9 now available) * default --act0 * rc config with flag:act0 to flag:act9 (previously roman numerals) * legacy roman numeral configuration works (for now) * use opt.act, code internals (simplify, cleaner; remove opt.cmd & opt.mod) * hub, further changes related to use of opt.act; hub file split
Diffstat (limited to 'lib/sisu/v5')
-rw-r--r--lib/sisu/v5/ao.rb16
-rw-r--r--lib/sisu/v5/ao_composite.rb6
-rw-r--r--lib/sisu/v5/ao_endnotes.rb4
-rw-r--r--lib/sisu/v5/ao_expand_insertions.rb20
-rw-r--r--lib/sisu/v5/cgi.rb6
-rw-r--r--lib/sisu/v5/cgi_pgsql.rb2
-rw-r--r--lib/sisu/v5/cgi_sql_common.rb1
-rw-r--r--lib/sisu/v5/cgi_sqlite.rb2
-rw-r--r--lib/sisu/v5/conf.rb18
-rw-r--r--lib/sisu/v5/db_import.rb8
-rw-r--r--lib/sisu/v5/db_remove.rb2
-rw-r--r--lib/sisu/v5/dbi.rb5
-rw-r--r--lib/sisu/v5/dbi_discrete.rb2
-rw-r--r--lib/sisu/v5/digests.rb2
-rw-r--r--lib/sisu/v5/dp.rb16
-rw-r--r--lib/sisu/v5/dp_identify_markup.rb2
-rw-r--r--lib/sisu/v5/dp_make.rb2
-rw-r--r--lib/sisu/v5/embedded.rb4
-rw-r--r--lib/sisu/v5/harvest.rb4
-rw-r--r--lib/sisu/v5/harvest_authors.rb113
-rw-r--r--lib/sisu/v5/harvest_topics.rb120
-rw-r--r--lib/sisu/v5/html.rb10
-rw-r--r--lib/sisu/v5/html_concordance.rb11
-rw-r--r--lib/sisu/v5/html_scroll.rb2
-rw-r--r--lib/sisu/v5/html_segments.rb2
-rw-r--r--lib/sisu/v5/html_tune.rb2
-rw-r--r--lib/sisu/v5/hub.rb637
-rw-r--r--lib/sisu/v5/hub_actions.rb585
-rw-r--r--lib/sisu/v5/hub_options.rb966
-rw-r--r--lib/sisu/v5/manifest.rb4
-rw-r--r--lib/sisu/v5/manpage.rb4
-rw-r--r--lib/sisu/v5/po4a.rb2
-rw-r--r--lib/sisu/v5/qrcode.rb23
-rw-r--r--lib/sisu/v5/rexml.rb2
-rw-r--r--lib/sisu/v5/se_createsite.rb37
-rw-r--r--lib/sisu/v5/se_db.rb4
-rw-r--r--lib/sisu/v5/se_file_op.rb2
-rw-r--r--lib/sisu/v5/se_filemap.rb4
-rw-r--r--lib/sisu/v5/se_hub_particulars.rb22
-rw-r--r--lib/sisu/v5/se_info_env.rb34
-rw-r--r--lib/sisu/v5/se_processing.rb186
-rw-r--r--lib/sisu/v5/se_programs.rb10
-rw-r--r--lib/sisu/v5/texinfo.rb4
-rw-r--r--lib/sisu/v5/texpdf.rb30
-rw-r--r--lib/sisu/v5/txt_asciidoc.rb2
-rw-r--r--lib/sisu/v5/txt_markdown.rb2
-rw-r--r--lib/sisu/v5/txt_plain.rb4
-rw-r--r--lib/sisu/v5/txt_rst.rb2
-rw-r--r--lib/sisu/v5/txt_textile.rb2
-rw-r--r--lib/sisu/v5/update.rb2
-rw-r--r--lib/sisu/v5/urls.rb910
-rw-r--r--lib/sisu/v5/utils_screen_text_color.rb4
-rw-r--r--lib/sisu/v5/wikispeak.rb2
-rw-r--r--lib/sisu/v5/xhtml.rb4
-rw-r--r--lib/sisu/v5/xhtml_epub2.rb14
-rw-r--r--lib/sisu/v5/xhtml_epub2_concordance.rb6
-rw-r--r--lib/sisu/v5/xhtml_epub2_segments.rb2
-rw-r--r--lib/sisu/v5/xhtml_epub2_tune.rb2
-rw-r--r--lib/sisu/v5/xml_docbook5.rb6
-rw-r--r--lib/sisu/v5/xml_dom.rb4
-rw-r--r--lib/sisu/v5/xml_fictionbook2.rb2
-rw-r--r--lib/sisu/v5/xml_odf_odt.rb6
-rw-r--r--lib/sisu/v5/xml_sax.rb4
-rw-r--r--lib/sisu/v5/xml_scaffold_structure_collapsed.rb2
-rw-r--r--lib/sisu/v5/xml_scaffold_structure_sisu.rb2
-rw-r--r--lib/sisu/v5/zap.rb2
66 files changed, 2271 insertions, 1653 deletions
diff --git a/lib/sisu/v5/ao.rb b/lib/sisu/v5/ao.rb
index d7b418f5..0a494184 100644
--- a/lib/sisu/v5/ao.rb
+++ b/lib/sisu/v5/ao.rb
@@ -124,7 +124,7 @@ module SiSU_AO
: @opt.fns
create_ao
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@@fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selection,@@fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -145,7 +145,7 @@ module SiSU_AO
? read_fnc
: @@ao_array.dup
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selection,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -166,7 +166,7 @@ module SiSU_AO
? read_idx_sst
: @@idx_arr[:sst].dup #check
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selection,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -187,7 +187,7 @@ module SiSU_AO
? read_idx_raw
: @@idx_arr[:tex].dup #check
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selection,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -208,7 +208,7 @@ module SiSU_AO
? read_idx_html
: @@idx_arr[:html].dup
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selection,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -229,7 +229,7 @@ module SiSU_AO
? read_idx_xhtml
: @@idx_arr[:xhtml].dup
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selection,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -250,7 +250,7 @@ module SiSU_AO
? read_map_nametags
: @@map_arr[:nametags].dup
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selection,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -271,7 +271,7 @@ module SiSU_AO
? read_map_ocn_htmlseg
: @@map_arr[:ocn_htmlseg].dup
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selection,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/ao_composite.rb b/lib/sisu/v5/ao_composite.rb
index af194db7..5a183d65 100644
--- a/lib/sisu/v5/ao_composite.rb
+++ b/lib/sisu/v5/ao_composite.rb
@@ -114,7 +114,7 @@ module SiSU_Assemble
end
Dir.chdir(pwd)
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -157,7 +157,7 @@ module SiSU_Assemble
end
tuned_file=tuned_file.flatten.compact
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -253,7 +253,7 @@ module SiSU_Assemble
fns_array=IO.readlines(@opt.fns,'')
insertions?(fns_array)
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/ao_endnotes.rb b/lib/sisu/v5/ao_endnotes.rb
index 5517cd87..e83cdfc3 100644
--- a/lib/sisu/v5/ao_endnotes.rb
+++ b/lib/sisu/v5/ao_endnotes.rb
@@ -76,11 +76,11 @@ module SiSU_AO_Endnotes
endnote_ref=1
data.each do |dob|
# manually numbered endnotes <!e(\d)!> <!e_(\d)!> -->
- if @md.opt.mod.inspect =~/--no-asterisk|--no-annotate/
+ if @md.opt.selections.str =~/--no-asterisk|--no-annotate/
dob.obj=dob.obj.
gsub(/#{Mx[:en_b_o]}\s.+?#{Mx[:en_b_c]}/,'')
end
- if @md.opt.mod.inspect =~/--no-dagger|--no-annotate/
+ if @md.opt.selections.str =~/--no-dagger|--no-annotate/
dob.obj=dob.obj.
gsub(/#{Mx[:en_b_o]}[+]\s.+?#{Mx[:en_b_c]}/,'')
end
diff --git a/lib/sisu/v5/ao_expand_insertions.rb b/lib/sisu/v5/ao_expand_insertions.rb
index dce14ee4..47ac9887 100644
--- a/lib/sisu/v5/ao_expand_insertions.rb
+++ b/lib/sisu/v5/ao_expand_insertions.rb
@@ -66,14 +66,18 @@ module SiSU_AO_Insertions
@md,@data=md,data
end
def output_filetypes_in_cmd(cmd_shortcut,lnk=nil) #make list of file types in shortcut command (as configured), e.g. when sisu -3 is used
- cf_defaults=SiSU_Env::InfoProcessingFlag.new
- cmd_list=case cmd_shortcut.inspect
- when /0/ then cf_defaults.cf_0
- when /1/ then cf_defaults.cf_1
- when /2/ then cf_defaults.cf_2
- when /3/ then cf_defaults.cf_3
- when /4/ then cf_defaults.cf_4
- when /5/ then cf_defaults.cf_5
+ act_defaults=SiSU_Env::InfoProcessingFlag.new
+ cmd_list=case cmd_shortcut.inspect #check on expectation, string v array
+ when /0/ then act_defaults.act_0.str
+ when /1/ then act_defaults.act_1.str
+ when /2/ then act_defaults.act_2.str
+ when /3/ then act_defaults.act_3.str
+ when /4/ then act_defaults.act_4.str
+ when /5/ then act_defaults.act_5.str
+ when /6/ then act_defaults.act_6.str
+ when /7/ then act_defaults.act_7.str
+ when /8/ then act_defaults.act_8.str
+ when /9/ then act_defaults.act_9.str
end
file_type_names={}
file_type_names[:gen],file_type_names[:src]=[],[]
diff --git a/lib/sisu/v5/cgi.rb b/lib/sisu/v5/cgi.rb
index efea863c..201f028b 100644
--- a/lib/sisu/v5/cgi.rb
+++ b/lib/sisu/v5/cgi.rb
@@ -61,7 +61,7 @@
(pgsql sqlite)
=end
-module SiSU_CGI #% database building documents
+module SiSU_CGI #% database building documents
require_relative 'se' # se.rb
require_relative 'cgi_pgsql' # cgi_pgsql.rb
require_relative 'cgi_sqlite' # cgi_sqlite.rb
@@ -71,9 +71,9 @@ module SiSU_CGI
@webserv=@opt.files[0].to_s.strip
end
def read
- if @opt.mod.inspect =~/--db[=-]["']?(?:pg|pg?sql|postgres(?:ql)?)["']+/
+ if @opt.act[:psql][:set]==:on
SiSU_CGI_PgSQL::SearchPgSQL.new(@opt,@webserv).pgsql
- elsif @opt.mod.inspect =~/--db[=-](?:sqlite)/
+ elsif @opt.act[:sqlite][:set]==:on
SiSU_CGI_SQLite::SearchSQLite.new(@opt,@webserv).sqlite
else
puts <<-WOK
diff --git a/lib/sisu/v5/cgi_pgsql.rb b/lib/sisu/v5/cgi_pgsql.rb
index 633e20fc..e5b61cc1 100644
--- a/lib/sisu/v5/cgi_pgsql.rb
+++ b/lib/sisu/v5/cgi_pgsql.rb
@@ -60,7 +60,7 @@
** Description: generates naive cgi search form for search of sisu database (pgsql)
=end
-module SiSU_CGI_PgSQL #% database building documents
+module SiSU_CGI_PgSQL #% database building documents
require_relative 'se' # se.rb
require_relative 'cgi_sql_common' # cgi_sql_common.rb
include SiSU_CGI_SQL
diff --git a/lib/sisu/v5/cgi_sql_common.rb b/lib/sisu/v5/cgi_sql_common.rb
index c760a9db..7fadb68e 100644
--- a/lib/sisu/v5/cgi_sql_common.rb
+++ b/lib/sisu/v5/cgi_sql_common.rb
@@ -64,7 +64,6 @@ module SiSU_CGI_SQL
class CGI_Common
def initialize(webserv,opt,image_src,dir)
@webserv,@opt,@image_src,@env=webserv,opt,image_src,dir
- @cmd=opt.cmd
end
def about
<<-'WOK_SQL'
diff --git a/lib/sisu/v5/cgi_sqlite.rb b/lib/sisu/v5/cgi_sqlite.rb
index 531071c4..4644dbc0 100644
--- a/lib/sisu/v5/cgi_sqlite.rb
+++ b/lib/sisu/v5/cgi_sqlite.rb
@@ -60,7 +60,7 @@
** Description: generates naive cgi search form for search of sisu database (sqlite)
=end
-module SiSU_CGI_SQLite #% database building documents
+module SiSU_CGI_SQLite #% database building documents
require_relative 'se' # se.rb
require_relative 'cgi_sql_common' # cgi_sql_common.rb
include SiSU_CGI_SQL
diff --git a/lib/sisu/v5/conf.rb b/lib/sisu/v5/conf.rb
index 820d0941..b126d320 100644
--- a/lib/sisu/v5/conf.rb
+++ b/lib/sisu/v5/conf.rb
@@ -206,10 +206,10 @@ module SiSU_Initialize
rnc.close
#xsd
schema=SiSU_Env::SystemCall.new(rnc_src,xsd_file)
- schema.relaxng(@opt.cmd)
+ schema.relaxng(@opt.selections.str)
#rng
schema=SiSU_Env::SystemCall.new(rnc_src,rng_file)
- schema.relaxng(@opt.cmd)
+ schema.relaxng(@opt.selections.str)
#rnc
if FileTest.file?(rnc_src)
FileUtils::cp(rnc_src,rnc_file)
@@ -228,10 +228,10 @@ module SiSU_Initialize
rnc.close
#xsd
schema=SiSU_Env::SystemCall.new(rnc_src,xsd_file)
- schema.relaxng(@opt.cmd)
+ schema.relaxng(@opt.selections.str)
#rng
schema=SiSU_Env::SystemCall.new(rnc_src,rng_file)
- schema.relaxng(@opt.cmd)
+ schema.relaxng(@opt.selections.str)
#rnc
if FileTest.file?(rnc_src)
FileUtils::cp(rnc_src,rnc_file)
@@ -250,10 +250,10 @@ module SiSU_Initialize
rnc.close
#xsd
schema=SiSU_Env::SystemCall.new(rnc_src,xsd_file)
- schema.relaxng(@opt.cmd)
+ schema.relaxng(@opt.selections.str)
#rng
schema=SiSU_Env::SystemCall.new(rnc_src,rng_file)
- schema.relaxng(@opt.cmd)
+ schema.relaxng(@opt.selections.str)
#rnc
if FileTest.file?(rnc_src)
FileUtils::cp(rnc_src,rnc_file)
@@ -268,7 +268,7 @@ module SiSU_Initialize
rnc << @rxng.rnc_model_output_sax
rnc.close
schema=SiSU_Env::SystemCall.new(rnc_file,dtd_file)
- schema.relaxng(@opt.cmd)
+ schema.relaxng(@opt.selections.str)
end
def trang_rnc_model_input_dom
rnc_file=@env.processing_path.ao + '/dom.rnc'
@@ -277,7 +277,7 @@ module SiSU_Initialize
rnc << @rxng.rnc_model_output_dom
rnc.close
schema=SiSU_Env::SystemCall.new(rnc_file,dtd_file)
- schema.relaxng(@opt.cmd)
+ schema.relaxng(@opt.selections.str)
end
def trang_rnc_model_input_node
rnc_file=@env.processing_path.ao + '/node.rnc'
@@ -286,7 +286,7 @@ module SiSU_Initialize
rnc << @rxng.rnc_model_input_node
rnc.close
schema=SiSU_Env::SystemCall.new(rnc_file,dtd_file)
- schema.relaxng(@opt.cmd)
+ schema.relaxng(@opt.selections.str)
end
end
end
diff --git a/lib/sisu/v5/db_import.rb b/lib/sisu/v5/db_import.rb
index 791eef43..1f4dca51 100644
--- a/lib/sisu/v5/db_import.rb
+++ b/lib/sisu/v5/db_import.rb
@@ -79,7 +79,7 @@ module SiSU_DbImport
@env=SiSU_Env::InfoEnv.new(@opt.fns)
@dal="#{@env.processing_path.ao}"
@fnb=if @opt.fns.empty? \
- or @opt.cmd.empty?
+ or @opt.selections.str.empty?
''
else
@md=SiSU_Param::Parameters.new(@opt).get
@@ -233,7 +233,7 @@ module SiSU_DbImport
@conn.exec("COMMIT")
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
sqlfn="#{@env.processing_path.sql}/#{@md.fnb}.sql"
@@ -700,7 +700,7 @@ module SiSU_DbImport
end
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -833,7 +833,7 @@ module SiSU_DbImport
t=SiSU_DbTuple::LoadUrls.new(@conn,f,u,@@id_t,@opt,@file_maint)
tuple=t.tuple
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/db_remove.rb b/lib/sisu/v5/db_remove.rb
index cff42409..324dbee4 100644
--- a/lib/sisu/v5/db_remove.rb
+++ b/lib/sisu/v5/db_remove.rb
@@ -178,7 +178,7 @@ module SiSU_DbRemove
|| @opt.act[:verbose_plus][:set]==:on \
|| @opt.act[:maintenance][:set]==:on)
SiSU_Screen::Ansi.new(
- @opt.cmd,
+ @opt.selections.str,
"no such file in database #{@db.psql.db}::#{@opt.fns}"
).puts_grey
end
diff --git a/lib/sisu/v5/dbi.rb b/lib/sisu/v5/dbi.rb
index 75b07372..a7bbd822 100644
--- a/lib/sisu/v5/dbi.rb
+++ b/lib/sisu/v5/dbi.rb
@@ -97,8 +97,7 @@ module SiSU_DBI
end
end
def maintenance_check(opt,file,line)
- p opt.mod
- p opt.cmd
+ p opt.selections.str
p "at #{file} #{line}"
end
def read_psql
@@ -134,7 +133,7 @@ manually create the database: "#{cX.green}#{@db.db}#{cX.off}" if it does not yet
end
SiSU_Screen::Ansi.new(
@opt.act[:color_state][:set],
- "DBI (#{@sql_type}) #{@opt.mod}",
+ "SQL DB #{@sql_type.upcase}",
@opt.fno
).dbi_title unless @opt.act[:quiet][:set]==:on
begin
diff --git a/lib/sisu/v5/dbi_discrete.rb b/lib/sisu/v5/dbi_discrete.rb
index 73976756..79d3f70a 100644
--- a/lib/sisu/v5/dbi_discrete.rb
+++ b/lib/sisu/v5/dbi_discrete.rb
@@ -127,7 +127,7 @@ module SiSU_DBI_Discrete #% database building
begin
SiSU_Screen::Ansi.new(
@opt.act[:color_state][:set],
- 'SQLite',
+ 'SQLite (discrete)',
"[#{@opt.f_pth[:lng_is]}] #{@opt.fno}"
).green_title_hi unless @opt.act[:quiet][:set]==:on
sdb.create_db
diff --git a/lib/sisu/v5/digests.rb b/lib/sisu/v5/digests.rb
index 83f26714..e1d51b1d 100644
--- a/lib/sisu/v5/digests.rb
+++ b/lib/sisu/v5/digests.rb
@@ -111,7 +111,7 @@ module SiSU_DigestView
SiSU_Utils::CodeMarker.new(__LINE__,__FILE__,:fuchsia).error('*EXITED* hash digests will not run without openssl')
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/dp.rb b/lib/sisu/v5/dp.rb
index 0dde14b8..ef61f6b4 100644
--- a/lib/sisu/v5/dp.rb
+++ b/lib/sisu/v5/dp.rb
@@ -103,8 +103,7 @@ module SiSU_Param
def initialize(opt)
@opt=opt
@cX||=SiSU_Screen::Ansi.new(@opt.act[:color_state][:set])
- @cmd,@mod=opt.cmd,opt.mod
- @fns=if @opt.cmd =~/P/ #revisit CHECK
+ @fns=if @opt.act[:psql][:set] == [:on] #revisit CHECK
opt.fns
else opt.fns.gsub(/\.ssm$/,'.ssm.sst')
end
@@ -886,7 +885,7 @@ module SiSU_Param
Dir.chdir(@opt.f_pth[:pth])
begin
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -951,10 +950,10 @@ module SiSU_Param
end
@concord_make=(@wc_words > @env.concord_max) ? false : true
@locale=@sys.locale
- @file_encoding=@sys.file_encoding(fns,@opt.cmd)
+ @file_encoding=@sys.file_encoding(fns,@opt.act)
# programs set here for things that affect output appearance only
@programs[:pdf]=SiSU_Env::SystemCall.new.program_found?('pdflatex')
- if @opt.cmd =~/P/ #if @env.multilingual?
+ if @opt.act[:psql][:set] == [:ok]
m=/((.+?)(?:\~\w\w(?:_\w\w)?)?)\.((?:-|ssm\.)?sst|ssm|ssi)$/ #watch added match for sss
@fnn,@fnb,@fnt=@fns[m,1],@fns[m,2],@fns[m,3]
@flv=@env.document_language_versions_found[:f]
@@ -967,7 +966,7 @@ module SiSU_Param
@papersize=@env.papersize #'A4' #default size #get first from SiSU_Env:: # @env is probably no longer most appropriate name! as default info is more general
@sfx_src=@fns[m,2]
if @fns =~ /(?:-|ssm\.)?sst$/ \
- and not @opt.cmd =~/P/ #watch
+ and not @opt.act[:psql][:set] == [:ok]
@env_out_root=@env.path.output
@dir_out="#{@env.path.output}/#{@fnb}"
@dir_tex=@env.processing_path.tex
@@ -1485,6 +1484,9 @@ module SiSU_Param
Store.new(self,@env).store #% pstore
self
rescue
+ if @opt.act[:harvest][:set]==:on
+ exit
+ end
end
end
private
@@ -1510,7 +1512,7 @@ module SiSU_Param
end
@@md=@md=nil
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/dp_identify_markup.rb b/lib/sisu/v5/dp_identify_markup.rb
index f6884c7d..82e63fd4 100644
--- a/lib/sisu/v5/dp_identify_markup.rb
+++ b/lib/sisu/v5/dp_identify_markup.rb
@@ -51,7 +51,7 @@
* Git
<http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=summary>
- <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v5/param_identify_markup.rb;hb=HEAD>
+ <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v5/dp_identify_markup.rb;hb=HEAD>
* Ralph Amissah
<ralph@amissah.com>
diff --git a/lib/sisu/v5/dp_make.rb b/lib/sisu/v5/dp_make.rb
index 05b5cbdf..bba58847 100644
--- a/lib/sisu/v5/dp_make.rb
+++ b/lib/sisu/v5/dp_make.rb
@@ -51,7 +51,7 @@
* Git
<http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=summary>
- <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v5/param_make.rb;hb=HEAD>
+ <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v5/dp_make.rb;hb=HEAD>
* Ralph Amissah
<ralph@amissah.com>
diff --git a/lib/sisu/v5/embedded.rb b/lib/sisu/v5/embedded.rb
index b46975fd..325d7780 100644
--- a/lib/sisu/v5/embedded.rb
+++ b/lib/sisu/v5/embedded.rb
@@ -83,7 +83,7 @@ module SiSU_Embedded
multimedia
begin
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -103,7 +103,7 @@ module SiSU_Embedded
src_ec=@f.place_file.images.rel + '/' + @md.ec[:image].join(" #{@f.output_path.images.rel}/")
unless @opt.fns =~/\.-sst$/
SiSU_Env::SystemCall.new(src_ec,ldest,'q').rsync('--relative',@opt.base_path)
- #if @md.opt.cmd.inspect =~/R/ #rsync to remote image directory
+ #if @md.opt.selections.str.inspect =~/R/ #rsync to remote image directory
# SiSU_Env::SystemCall.new(src_ec,remote_rel,'q').rsync('--relative')
#end
end
diff --git a/lib/sisu/v5/harvest.rb b/lib/sisu/v5/harvest.rb
index cc12b08e..ddc85055 100644
--- a/lib/sisu/v5/harvest.rb
+++ b/lib/sisu/v5/harvest.rb
@@ -76,7 +76,7 @@ module SiSU_Harvest
end
def read
begin
- harvest_pth="#{@env.path.webserv}/#{@opt.base_stub}"
+ harvest_pth=@env.path.webserv + '/' + @opt.base_stub
FileUtils::mkdir_p(harvest_pth) unless FileTest.directory?(harvest_pth)
cases(@opt,@env)
rescue
@@ -99,7 +99,7 @@ WOK
style.close
end
def cases(opt,env)
- case opt.mod.inspect
+ case opt.selections.str.inspect
when/--harvest/i
css(opt) if @opt.act[:maintenance][:set]==:on
SiSU_HarvestAuthors::Songsheet.new(opt,env).songsheet
diff --git a/lib/sisu/v5/harvest_authors.rb b/lib/sisu/v5/harvest_authors.rb
index 7904ab15..26a0a9e3 100644
--- a/lib/sisu/v5/harvest_authors.rb
+++ b/lib/sisu/v5/harvest_authors.rb
@@ -88,20 +88,36 @@ module SiSU_HarvestAuthors
end
lang_hash_file_array.each_pair do |lang,a|
idx_array[lang] ||= []
- idx_array=SiSU_HarvestAuthors::Harvest.new(@opt,@env,a,filename,name,idx_array,lang).extract_harvest
+ idx_array=SiSU_HarvestAuthors::Harvest.new(
+ @opt,
+ @env,
+ a,
+ filename,
+ name,
+ idx_array,
+ lang
+ ).extract_harvest
end
end
- the_idx=SiSU_HarvestAuthors::Index.new(idx_array,@@the_idx_authors).construct_book_author_index
- SiSU_HarvestAuthors::OutputIndex.new(@opt,the_idx).html_print.html_songsheet
+ the_idx=SiSU_HarvestAuthors::Index.new(
+ idx_array,
+ @@the_idx_authors
+ ).construct_book_author_index
+ SiSU_HarvestAuthors::OutputIndex.new(
+ @opt,
+ the_idx
+ ).html_print.html_songsheet
end
end
class Harvest
def initialize(opt,env,data,filename,name,idx_array,lang)
- @opt,@env,@data,@filename,@name,@idx_array,@lang=opt,env,data,filename,name,idx_array,lang
+ @opt, @env,@data,@filename,@name,@idx_array,@lang=
+ opt,env, data, filename, name, idx_array, lang
end
def extract_harvest
- data,filename,name,idx_array,lang=@data,@filename,@name,@idx_array,@lang
- @title,@subtitle,@fulltitle,@author,@author_format,@date=nil,nil,nil,nil,nil,nil
+ data, filename, name, idx_array, lang =
+ @data,@filename,@name,@idx_array,@lang
+ @title=@subtitle=@fulltitle=@author=@author_format=@date=nil
@authors=[]
rgx={}
rgx[:author]=/^@creator:(?:[ ]+|.+?:author:[ ]+)(.+?)(?:\||\n)/m
@@ -123,7 +139,9 @@ module SiSU_HarvestAuthors
end
break if @title && @subtitle && @author && @date
end
- @fulltitle=@subtitle ? (@title + ' - ' + @subtitle) : @title
+ @fulltitle=@subtitle \
+ ? (@title + ' - ' + @subtitle)
+ : @title
if @title \
and @author_format
creator=SiSU_FormatAuthor::Author.new(@author_format.strip).author_details
@@ -138,7 +156,15 @@ module SiSU_HarvestAuthors
else
"sisu_manifest.#{lang}.html"
end
- idx_array[lang] <<= { filename: filename, file: file, date: @date, title: @fulltitle, author: creator, page: page, lang: lang }
+ idx_array[lang] <<= {
+ filename: filename,
+ file: file,
+ date: @date,
+ title: @fulltitle,
+ author: creator,
+ page: page,
+ lang: lang
+ }
else
#p "missing author field: #{@filename} title: #{@title}; author: #{@author_format}"
end
@@ -164,7 +190,15 @@ module SiSU_HarvestAuthors
if @@the_idx_authors[lang][author].is_a?(NilClass)
@@the_idx_authors[lang][author]={ md: [] }
end
- @@the_idx_authors[lang][author][:md] << { filename: idx[:filename], file: idx[:file], author: idx[:author], title: idx[:title], date: idx[:date], page: idx[:page], lang: idx[:lang] }
+ @@the_idx_authors[lang][author][:md] << {
+ filename: idx[:filename],
+ file: idx[:file],
+ author: idx[:author],
+ title: idx[:title],
+ date: idx[:date],
+ page: idx[:page],
+ lang: idx[:lang]
+ }
end
end
end
@@ -188,18 +222,26 @@ module SiSU_HarvestAuthors
@output[lng] ||={}
harvest_pth,file='',''
if @env.output_dir_structure.by? == :language
- harvest_pth="#{@env.path.webserv}/#{@opt.base_stub}/#{lng}/manifest"
+ harvest_pth=@env.path.webserv + '/' \
+ + @opt.base_stub + '/' \
+ + lng + '/' \
+ + 'manifest'
file="#{harvest_pth}/authors.html"
elsif @env.output_dir_structure.by? == :filetype
- harvest_pth="#{@env.path.webserv}/#{@opt.base_stub}/manifest"
+ harvest_pth=@env.path.webserv + '/' \
+ + @opt.base_stub + '/' \
+ + 'manifest'
file="#{harvest_pth}/authors.#{lng}.html"
elsif @env.output_dir_structure.by? == :filename
- harvest_pth="#{@env.path.webserv}/#{@opt.base_stub}"
+ harvest_pth=@env.path.webserv + '/' \
+ + @opt.base_stub
file="#{harvest_pth}/authors.#{lng}.html"
end
- FileUtils::mkdir_p(harvest_pth) unless FileTest.directory?(harvest_pth)
+ FileUtils::mkdir_p(harvest_pth) \
+ unless FileTest.directory?(harvest_pth)
fileinfo=(@opt.act[:verbose][:set]==:on \
|| @opt.act[:verbose_plus][:set]==:on \
+ || @opt.act[:urls_selected][:set]==:on \
|| @opt.act[:maintenance][:set]==:on) \
? ("file://#{file}") : ''
SiSU_Screen::Ansi.new(
@@ -213,7 +255,8 @@ module SiSU_HarvestAuthors
def html_file_close
@the_idx.keys.each do |lng|
@output[lng][:html].close
- @output[lng][:html_mnt].close if @output[lng][:html_mnt].is_a?(File)
+ @output[lng][:html_mnt].close \
+ if @output[lng][:html_mnt].is_a?(File)
end
end
def html_print
@@ -257,18 +300,22 @@ module SiSU_HarvestAuthors
file="#{harvest_pth}/authors.#{lg}.html"
end
l=ln[lg][:t]
- harvest_languages += %{<a href="#{file}">#{l}</a>&nbsp;&nbsp;&nbsp;}
+ harvest_languages +=
+ %{<a href="#{file}">#{l}</a>&nbsp;&nbsp;&nbsp;}
end
sv=SiSU_Env::InfoVersion.instance.get_version
if @env.output_dir_structure.by? == :language
home_pth='../..'
- output_structure_by='(output organised by language &amp; filetype)'
+ output_structure_by=
+ '(output organised by language &amp; filetype)'
elsif @env.output_dir_structure.by? == :filetype
home_pth='..'
- output_structure_by='(output organised by filetype)'
+ output_structure_by=
+ '(output organised by filetype)'
elsif @env.output_dir_structure.by? == :filename
home_pth='.'
- output_structure_by='(output organised by filename)'
+ output_structure_by=
+ '(output organised by filename)'
else
home_pth='.'
output_structure_by='(output organised by ?)'
@@ -301,8 +348,11 @@ WOK
end
def html_head
@the_idx.keys.each do |lng|
- @output[lng][:html_mnt] << html_head_adjust(lng,'maintenance') if @opt.act[:maintenance][:set]==:on
- @output[lng][:html] << html_head_adjust(lng)
+ @output[lng][:html_mnt] \
+ << html_head_adjust(lng,'maintenance') \
+ if @opt.act[:maintenance][:set]==:on
+ @output[lng][:html] \
+ << html_head_adjust(lng)
end
end
def html_alph
@@ -315,7 +365,8 @@ WOK
end
a=a.join
@the_idx.keys.each do |lng|
- @output[lng][:html_mnt] << a if @opt.act[:maintenance][:set]==:on
+ @output[lng][:html_mnt] << a \
+ if @opt.act[:maintenance][:set]==:on
@output[lng][:html] << a
end
end
@@ -333,12 +384,14 @@ WOK
</html>
WOK
@the_idx.keys.each do |lng|
- @output[lng][:html_mnt] << a if @output[lng][:html_mnt].is_a?(File)
+ @output[lng][:html_mnt] << a \
+ if @output[lng][:html_mnt].is_a?(File)
@output[lng][:html] << a
end
end
def do_html(lng,html)
- @output[lng][:html_mnt] << html if @output[lng][:html_mnt].is_a?(File)
+ @output[lng][:html_mnt] << html \
+ if @output[lng][:html_mnt].is_a?(File)
@output[lng][:html] << html
end
def do_string_name(lng,attrib,string)
@@ -353,9 +406,11 @@ WOK
if @alph.length > 0
@letter=@alph.shift
if @output[lng][:html_mnt].is_a?(File)
- @output[lng][:html_mnt] << %{\n<p class="letter"><a name="#{@letter}"></p>#{@letter}</a><p class="book_index_lev1"><a name="#{@letter.downcase}"></a></p>}
+ @output[lng][:html_mnt] \
+ << %{\n<p class="letter"><a name="#{@letter}"></p>#{@letter}</a><p class="book_index_lev1"><a name="#{@letter.downcase}"></a></p>}
end
- @output[lng][:html] << %{\n<p class="letter"><a name="#{@letter}">#{@letter}</a></p><p class="book_index_lev1"><a name="#{@letter.downcase}"></a></p>}
+ @output[lng][:html] \
+ << %{\n<p class="letter"><a name="#{@letter}">#{@letter}</a></p><p class="book_index_lev1"><a name="#{@letter.downcase}"></a></p>}
else break
end
end
@@ -383,14 +438,18 @@ WOK
"./#{i[:file]}/#{i[:page]}"
else '' #error
end
- work=[ "#{i[:date]} #{i[:title]}", %{<p class="publication">#{i[:date]} <a href="#{manifest_at}">#{i[:title]}</a>, #{i[:author][:authors_s]}</p>} ]
+ work=[
+ "#{i[:date]} #{i[:title]}",
+ %{<p class="publication">#{i[:date]} <a href="#{manifest_at}">#{i[:title]}</a>, #{i[:author][:authors_s]}</p>}
+ ]
works<<=(@output[lng][:html_mnt].is_a?(File)) \
? (work.concat([%{<p class="publication">[<a href="#{i[:file]}.sst">src</a>]&nbsp;&nbsp;#{i[:date]} <a href="file://#{manifest_at}">#{i[:title]}</a>, #{i[:author][:authors_s]} -- [<a href="#{i[:file]}.sst">#{i[:file]}.sst</a>]</p>}]))
: work
end
works.sort_by {|y| y[0]}.each do |z|
@output[lng][:html] << z[1]
- @output[lng][:html_mnt] << z[2] if @output[lng][:html_mnt].is_a?(File)
+ @output[lng][:html_mnt] << z[2] \
+ if @output[lng][:html_mnt].is_a?(File)
end
end
end
diff --git a/lib/sisu/v5/harvest_topics.rb b/lib/sisu/v5/harvest_topics.rb
index cd507f63..62103618 100644
--- a/lib/sisu/v5/harvest_topics.rb
+++ b/lib/sisu/v5/harvest_topics.rb
@@ -90,11 +90,27 @@ module SiSU_HarvestTopics
end
lang_hash_file_array.each_pair do |lang,a|
idx_array[lang] ||=[]
- idx_array=SiSU_HarvestTopics::Harvest.new(@opt,@env,a,filename,name,idx_array,lang).extract_harvest
+ idx_array=SiSU_HarvestTopics::Harvest.new(
+ @opt,
+ @env,
+ a,
+ filename,
+ name,
+ idx_array,
+ lang
+ ).extract_harvest
end
end
- the_hash=SiSU_HarvestTopics::Index.new(@opt,@env,idx_array,@@the_idx_topics).song
- SiSU_HarvestTopics::OutputIndex.new(@opt,the_hash).html_print.html_songsheet
+ the_hash=SiSU_HarvestTopics::Index.new(
+ @opt,
+ @env,
+ idx_array,
+ @@the_idx_topics
+ ).song
+ SiSU_HarvestTopics::OutputIndex.new(
+ @opt,
+ the_hash
+ ).html_print.html_songsheet
end
end
class Mix
@@ -104,11 +120,13 @@ module SiSU_HarvestTopics
end
class Harvest
def initialize(opt,env,data,filename,name,idx_array,lang)
- @opt,@env,@data,@filename,@name,@idx_array,@lang=opt,env,data,filename,name,idx_array,lang
+ @opt, @env,@data,@filename,@name,@idx_array,@lang=
+ opt,env, data, filename, name, idx_array, lang
end
def extract_harvest
- data,filename,name,idx_array,lang=@data,@filename,@name,@idx_array,@lang
- @idx_lst,@title,@subtitle,@fulltitle,@author,@author_format=nil,nil,nil,nil,nil,nil
+ data, filename, name, idx_array, lang=
+ @data,@filename,@name,@idx_array,@lang
+ @idx_lst=@title=@subtitle=@fulltitle=@author=@author_format=nil
rgx={}
rgx[:author]=/^@creator:(?:[ ]+|.+?:author:[ ]+)(.+?)(?:\||\n)/m
rgx[:title]=/^@title:[ ]+(.+)/
@@ -150,10 +168,26 @@ module SiSU_HarvestTopics
idxl=[]
g.each do |i|
i=i.strip
- idxl << { filename: filename, file: file, rough_idx: i, title: @fulltitle, author: creator, page: page, lang: lang }
+ idxl << {
+ filename: filename,
+ file: file,
+ rough_idx: i,
+ title: @fulltitle,
+ author: creator,
+ page: page,
+ lang: lang
+ }
end
idxl
- else { filename: filename, file: file, rough_idx: @idx_list, title: @fulltitle, author: creator, page: page, lang: lang }
+ else {
+ filename: filename,
+ file: file,
+ rough_idx: @idx_list,
+ title: @fulltitle,
+ author: creator,
+ page: page,
+ lang: lang,
+ }
end
else
if (@opt.act[:verbose_plus][:set]==:on \
@@ -167,7 +201,8 @@ module SiSU_HarvestTopics
end
class Index < Mix
def initialize(opt,env,idx_array,the_idx)
- @opt,@env,@idx_array,@the_idx=opt,env,idx_array,the_idx
+ @opt, @env,@idx_array,@the_idx=
+ opt,env, idx_array, the_idx
@@the_idx_topics=@the_idx
end
def song
@@ -195,7 +230,13 @@ module SiSU_HarvestTopics
names += %{<a href="authors.#{lang}.html##{s}">#{n}</a>, }
end
end
- { filename: idx[:filename], file: idx[:file], author: names, title: idx[:title], page: idx[:page] }
+ {
+ filename: idx[:filename],
+ file: idx[:file],
+ author: names,
+ title: idx[:title],
+ page: idx[:page]
+ }
end
def capital_(txt)
txt[0].chr.capitalize + txt[1,txt.length]
@@ -471,18 +512,26 @@ module SiSU_HarvestTopics
@output[lng] ||={}
harvest_pth,file='',''
if @env.output_dir_structure.by? == :language
- harvest_pth="#{@env.path.webserv}/#{@opt.base_stub}/#{lng}/manifest"
- file="#{harvest_pth}/topics.html"
+ harvest_pth=@env.path.webserv + '/' \
+ + @opt.base_stub + '/' \
+ + lng + '/' \
+ + 'manifest'
+ file=harvest_pth + '/' + 'topics.html'
elsif @env.output_dir_structure.by? == :filetype
- harvest_pth="#{@env.path.webserv}/#{@opt.base_stub}/manifest"
- file="#{harvest_pth}/topics.#{lng}.html"
+ harvest_pth=@env.path.webserv + '/' \
+ + @opt.base_stub + '/' \
+ + 'manifest'
+ file=harvest_pth + '/' + 'topics.' + lng + '.html'
elsif @env.output_dir_structure.by? == :filename
- harvest_pth="#{@env.path.webserv}/#{@opt.base_stub}"
- file="#{harvest_pth}/topics.#{lng}.html"
+ harvest_pth=@env.path.webserv + '/' \
+ + @opt.base_stub
+ file=harvest_pth + '/' + 'topics.' + lng + '.html'
end
- FileUtils::mkdir_p(harvest_pth) unless FileTest.directory?(harvest_pth)
+ FileUtils::mkdir_p(harvest_pth) \
+ unless FileTest.directory?(harvest_pth)
fileinfo=(@opt.act[:verbose][:set]==:on \
|| @opt.act[:verbose_plus][:set]==:on \
+ || @opt.act[:urls_selected][:set]==:on \
|| @opt.act[:maintenance][:set]==:on) \
? ("file://#{file}")
: ''
@@ -615,16 +664,17 @@ module SiSU_HarvestTopics
@the_idx.keys.each do |lg|
if @env.output_dir_structure.by? == :language
harvest_pth="../../#{lg}/manifest"
- file="#{harvest_pth}/topics.html"
+ file=harvest_pth + '/' + 'topics.html'
elsif @env.output_dir_structure.by? == :filetype
harvest_pth='.'
- file="#{harvest_pth}/topics.#{lg}.html"
+ file=harvest_pth + '/' + 'topics.' + lg + '.html'
elsif @env.output_dir_structure.by? == :filename
harvest_pth='.'
- file="#{harvest_pth}/topics.#{lg}.html"
+ file=harvest_pth + '/topics.' + lg + '.html'
end
l=ln[lg][:t]
- harvest_languages += %{<a href="#{file}">#{l}</a>&nbsp;&nbsp;&nbsp;}
+ harvest_languages +=
+ %{<a href="#{file}">#{l}</a>&nbsp;&nbsp;&nbsp;}
end
sv=SiSU_Env::InfoVersion.instance.get_version
if @env.output_dir_structure.by? == :language
@@ -668,7 +718,9 @@ WOK
end
def html_head
@the_idx.keys.each do |lng|
- @output[lng][:html_mnt] << html_head_adjust(lng,'maintenance') if @opt.act[:maintenance][:set]==:on
+ @output[lng][:html_mnt] \
+ << html_head_adjust(lng,'maintenance') \
+ if @opt.act[:maintenance][:set]==:on
@output[lng][:html] << html_head_adjust(lng)
end
end
@@ -682,7 +734,8 @@ WOK
end
a=a.join
@the_idx.keys.each do |lng|
- @output[lng][:html_mnt] << a if @opt.act[:maintenance][:set]==:on
+ @output[lng][:html_mnt] << a \
+ if @opt.act[:maintenance][:set]==:on
@output[lng][:html] << a
end
end
@@ -700,7 +753,8 @@ WOK
</html>
WOK
@the_idx.keys.each do |lng|
- @output[lng][:html_mnt] << a if @output[lng][:html_mnt].is_a?(File)
+ @output[lng][:html_mnt] << a \
+ if @output[lng][:html_mnt].is_a?(File)
@output[lng][:html] << a
end
end
@@ -708,12 +762,14 @@ WOK
@output[lng][:html] << html
end
def do_html_maintenance(lng,html)
- @output[lng][:html_mnt] << html if @output[lng][:html_mnt].is_a?(File)
+ @output[lng][:html_mnt] << html \
+ if @output[lng][:html_mnt].is_a?(File)
end
def do_string(lng,attrib,string)
html=%{<p class="#{attrib}">#{string}</p>}
do_html(lng,html)
- do_html_maintenance(lng,html) if @output[lng][:html_mnt].is_a?(File)
+ do_html_maintenance(lng,html) \
+ if @output[lng][:html_mnt].is_a?(File)
end
def do_string_default(lng,attrib,string)
html=%{<p class="#{attrib}">#{string}</p>}
@@ -721,7 +777,8 @@ WOK
end
def do_string_maintenance(lng,attrib,string)
html=%{<p class="#{attrib}">#{string}</p>}
- do_html_maintenance(lng,html) if @output[lng][:html_mnt].is_a?(File)
+ do_html_maintenance(lng,html) \
+ if @output[lng][:html_mnt].is_a?(File)
end
def do_string_name(lng,attrib,string)
f=/^(\S)/.match(string)[1]
@@ -735,9 +792,11 @@ WOK
if @alph.length > 0
@letter=@alph.shift
if @output[lng][:html_mnt].is_a?(File)
- @output[lng][:html_mnt] << %{\n<p class="letter"><a name="#{@letter}">#{@letter}</a></p><p class="book_index_lev1"><a name="#{@letter.downcase}"></a></p>}
+ @output[lng][:html_mnt] \
+ << %{\n<p class="letter"><a name="#{@letter}">#{@letter}</a></p><p class="book_index_lev1"><a name="#{@letter.downcase}"></a></p>}
end
- @output[lng][:html] << %{\n<p class="letter"><a name="#{@letter}">#{@letter}</a></p><p class="book_index_lev1"><a name="#{@letter.downcase}"></a></p>}
+ @output[lng][:html] \
+ << %{\n<p class="letter"><a name="#{@letter}">#{@letter}</a></p><p class="book_index_lev1"><a name="#{@letter.downcase}"></a></p>}
else break
end
end
@@ -745,7 +804,8 @@ WOK
name=string.strip.gsub(/\s+/,'_')
html=%{<p class="#{attrib}"><a name="#{name}">#{string}</a></p>}
do_html(lng,html)
- do_html_maintenance(lng,html) if @output[lng][:html_mnt].is_a?(File)
+ do_html_maintenance(lng,html) \
+ if @output[lng][:html_mnt].is_a?(File)
end
def do_array(lng,lv,array)
lv+=1
diff --git a/lib/sisu/v5/html.rb b/lib/sisu/v5/html.rb
index a613f56f..683eba96 100644
--- a/lib/sisu/v5/html.rb
+++ b/lib/sisu/v5/html.rb
@@ -150,7 +150,7 @@ module SiSU_HTML
SiSU_HTML::Source::Output.new(scroll,@md).scroll
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -163,7 +163,7 @@ module SiSU_HTML
end
end
end
- SiSU_Env::Clear.new(@opt.cmd,@opt.fns,@md).param_instantiate
+ SiSU_Env::Clear.new(@opt.selections.str,@opt.fns,@md).param_instantiate
@@flag,@@scr,@@seg,@@seg_endnotes,@@seg_subtoc,@@seg_ad={},{},{},{},{},{}
@@seg_total,@@tracker,@@loop_count,@@tablehead,@@number_of_cols=0,0,0,0,0
@@seg_name,@@seg_name_html,@@seg_subtoc_array,@@seg_endnotes_array,@@segtocband,@@tablefoot=Array.new(7){[]}
@@ -305,7 +305,7 @@ module SiSU_HTML
@@toc[:seg_mini] << toc[:seg_mini] if toc[:seg_mini]
@@toc[:scr] << toc[:scr] if toc[:scr]
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -729,7 +729,7 @@ WOK
end
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -751,7 +751,7 @@ WOK
end
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/html_concordance.rb b/lib/sisu/v5/html_concordance.rb
index dbaf83cf..c02b8f5c 100644
--- a/lib/sisu/v5/html_concordance.rb
+++ b/lib/sisu/v5/html_concordance.rb
@@ -51,7 +51,7 @@
* Git
<http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=summary>
- <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v5/concordance.rb;hb=HEAD>
+ <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v5/html_concordance.rb;hb=HEAD>
* Ralph Amissah
<ralph@amissah.com>
@@ -118,7 +118,7 @@ module SiSU_Concordance
SiSU_Concordance::Source::Words.new(@particulars).songsheet
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -236,18 +236,19 @@ WOK
@alphlst=SiSU_i18n::Alphabet.new(@md.opt.lng).hash_strings
@rgx_scanlist=%r{#{Mx[:fa_italics_o]}[#{@alphlst[:l]}#{@alphlst[:u]}0-9"\s]{2,12}#{Mx[:fa_italics_c]}|#{Mx[:fa_bold_o]}[#{@alphlst[:l]}#{@alphlst[:u]}0-9"\s]{2,12}#{Mx[:fa_bold_c]}|(?:https?|file)://\S+|<\S+?>|[#{@alphlst[:l]}#{@alphlst[:u]}]+|\w+}mi
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
end
end
def songsheet
begin
- FileUtils::mkdir_p(@file.output_path.html_concordance.dir) unless FileTest.directory?(@file.output_path.html_concordance.dir)
+ FileUtils::mkdir_p(@file.output_path.html_concordance.dir) \
+ unless FileTest.directory?(@file.output_path.html_concordance.dir)
@file_concordance=File.open(@file.place_file.html_concordance.dir,'w')
map_para
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/html_scroll.rb b/lib/sisu/v5/html_scroll.rb
index 01fe2940..4dbc2800 100644
--- a/lib/sisu/v5/html_scroll.rb
+++ b/lib/sisu/v5/html_scroll.rb
@@ -76,7 +76,7 @@ module SiSU_HTML_Scroll
scr[:tails]=SiSU_HTML_Scroll::Scroll.new(@md).tails
scr
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/html_segments.rb b/lib/sisu/v5/html_segments.rb
index 5826163e..f58bae6a 100644
--- a/lib/sisu/v5/html_segments.rb
+++ b/lib/sisu/v5/html_segments.rb
@@ -177,7 +177,7 @@ module SiSU_HTML_Seg
SiSU_HTML_Seg::Seg.new.cleanup # (((( added ))))
#### (((( END )))) ####
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/html_tune.rb b/lib/sisu/v5/html_tune.rb
index 1a2c9dee..3e8c2d68 100644
--- a/lib/sisu/v5/html_tune.rb
+++ b/lib/sisu/v5/html_tune.rb
@@ -150,7 +150,7 @@ module SiSU_HTML_Tune
end
SiSU_HTML_Tune::Tune.new(@data,@md).output
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/hub.rb b/lib/sisu/v5/hub.rb
index 785da84d..fed4ae55 100644
--- a/lib/sisu/v5/hub.rb
+++ b/lib/sisu/v5/hub.rb
@@ -66,6 +66,7 @@ module SiSU
require_relative 'se' # se.rb
include SiSU_Env
include SiSU_Screen
+ require_relative 'hub_actions' # hub_actions.rb
require_relative 'hub_options' # hub_options.rb
require_relative 'dp' # dp.rb
include SiSU_Param
@@ -82,10 +83,12 @@ module SiSU
def initialize(argv,call_path)
begin #% select what to do (set options & start processing (files selected if any))
opt=SiSU_Commandline::Options.new(argv,call_path) # command line selection of what to do, files & operations set
- SiSU::Processing.new(opt).actions # do it
+ SiSU::Processing.new(opt).version_info
+ SiSU::Processing.new(opt).actions_without_files # do it
+ SiSU::Processing.new(opt).actions_on_files # do it
rescue
- cmd=(opt ? opt.cmd : '')
- SiSU_Screen::Ansi.new(cmd,$!,$@).rescue do
+ selection=(opt ? opt.selection : '')
+ SiSU_Screen::Ansi.new(selection,$!,$@).rescue do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -202,81 +205,6 @@ module SiSU
end
end
end
- class Operations
- @@n_do=0
- def initialize(opt='')
- @opt=opt
- @cX=SiSU_Screen::Ansi.new(@opt).cX
- end
- def counter
- @@n_do=0
- end
- def remote_put_base_site_rsync # -CR
- SiSU_Utils::CodeMarker.new(__LINE__,__FILE__).mark(:cyan) \
- if @opt.act[:maintenance][:set] ==:on
- require_relative 'remote' # remote.rb
- SiSU_Remote::Put.new(@opt).rsync_base
- end
- def remote_put_base_site_rsync_match # -CCRZ
- SiSU_Utils::CodeMarker.new(__LINE__,__FILE__).mark(:cyan) \
- if @opt.act[:maintenance][:set] ==:on
- require_relative 'remote' # remote.rb
- SiSU_Remote::Put.new(@opt).rsync_base_sync
- end
- def remote_put_base_site # -Cr
- SiSU_Utils::CodeMarker.new(__LINE__,__FILE__).mark(:cyan) \
- if @opt.act[:maintenance][:set] ==:on
- require_relative 'remote' # remote.rb
- SiSU_Remote::Put.new(@opt).scp_base
- end
- def remote_put_base_site_all # -CCr
- SiSU_Utils::CodeMarker.new(__LINE__,__FILE__).mark(:cyan) \
- if @opt.act[:maintenance][:set] ==:on
- require_relative 'remote' # remote.rb
- SiSU_Remote::Put.new(@opt).scp_base_all
- end
- def cgi # -F
- require_relative 'cgi' # cgi.rb
- SiSU_CGI::SearchSQL.new(@opt).read
- end
- def termsheet # -t
- system("sisu_termsheet #{@opt.cmd} #{@opt.fns}\n")
- @@n_do=@@n_do+1
- SiSU_Screen::Ansi.new(
- @opt.cmd,@@n_do,
- 'Termsheet(s) processed'
- ).term_sheet_title unless @opt.act[:quiet][:set] ==:on
- end
- def webrick # -W
- prt=SiSU_Env::InfoEnv.new(@fns).port.webrick_port
- puts %{#{@cX.blue}<<#{@cX.off}#{@cX.green}Start Webrick web server on port: #{prt}#{@cX.off}#{@cX.blue}>> #{@cX.off*2} }
- require_relative 'webrick'
- SiSU_Webserv::WebrickStart.new
- end
- def not_found
- puts "\n#{@cX.fuchsia}FILE NOT FOUND:#{@cX.off} << #{@opt.fns} >> - requested #{@opt.cmd} processing skipped\n"
- end
- def convert_name_message(fns,type,i,o,rune)
- %{\nIn filename: "#{@cX.fuchsia}#{fns}#{@cX.off}" << #{type} >> #{@cX.fuchsia}is apre 0.36 markup filename.#{@cX.off} #{@cX.brown}Please rename your file.#{@cX.off}\n\tAs of sisu-0.37, SiSU markup files with #{@cX.brown}the extensions #{i} should be re-named #{o}#{@cX.off}\n\tif you have the program called 'rename' installed, the following rune should do the trick:\n\t\t#{rune}\n\talternatively try:\n\t\tsisu --convert --36to37 #{fns}\n\trequested #{@opt.cmd} processing skipped\n}
- end
- def not_recognised
- case @opt.fns
- when /(\.s[123])$/
- type=@opt.fns.gsub(/\S+?(#{$1})/,'\1')
- rune=%q{rename 's/\.s[123]$/\.sst/' *.s{1,2,3}}
- puts convert_name_message(@opt.fns,type,'.s1 .s2 and .s3','.sst',rune)
- when /(\.r[123])$/
- type=@opt.fns.gsub(/\S+?(#{$1})/,'\1')
- rune=%q{rename 's/\.r[123]$/\.ssm/' *.r{1,2,3}}
- puts convert_name_message(@opt.fns,type,'.r1 .r2 and .r3','.sst',rune)
- puts %{\n\tNote also that you will need to change the names of the files called/required\n\twithin the document text to build the composite document\n\t\t.s1 .s2 .s3 should be .sst \n\t\t.si should be .ssi\n\trequested #{@opt.cmd} processing skipped\n}
- when /(\.ssi)$/
- puts "\n#{@cX.fuchsia}component filetype:#{@cX.off} << #{@opt.fns} >> - is not a processed filetype, (it may be used as a component of a .ssm markup file)\n\trequested #{@opt.cmd} processing skipped\n"
- else
- puts "\n#{@cX.fuchsia}FILETYPE NOT RECOGNISED:#{@cX.off} << #{@opt.fns} >> - is not a recognized filetype,\n\trequested #{@opt.cmd} processing skipped\n"
- end
- end
- end
class Processing
begin
require 'fileutils'
@@ -292,7 +220,11 @@ module SiSU
@@env=@env=SiSU_Env::InfoEnv.new
@msg,@msgs='',nil
@tell=lambda {
- SiSU_Screen::Ansi.new(@opt.cmd,@msg,"#{@msgs.inspect if @msgs}")
+ SiSU_Screen::Ansi.new(
+ @opt.selections.str,
+ @msg,
+ "#{@msgs.inspect if @msgs}"
+ )
}
end
def remove_skipped_files_if_any_from_processing_files_array
@@ -307,16 +239,6 @@ module SiSU
@remove_faulty_markup_files_array.join(',')
end
end
- def do_loops
- @remove_faulty_markup_files_array=[]
- if @opt.act[:zap][:set]==:on #% --zap, -Z
- do_loop_files_on_given_option_pre
- end
- do_each_file_loop_options
- remove_skipped_files_if_any_from_processing_files_array
- do_loop_files_on_given_option_post
- print_error_message_if_files_skipped
- end
def do_each_file_loop_options
@opt.files.each_with_index do |fno,i|
@opt.fno=fno
@@ -336,129 +258,18 @@ module SiSU
Dir.chdir(@opt.pth) #watch
end
@env=SiSU_Env::InfoEnv.new(@opt.fns)
- if @opt.act[:ao][:set]==:on #% --ao --dal, -m
- $process_document = :ok
- unless @opt.act[:po4a][:set]==:on # --po4a, -P
- if @opt.fno =~ /\.ssm$/
- require_relative 'ao_composite' # ao_composite.rb #pre-processing
- SiSU_Assemble::Composite.new(@opt).read
- end
- require_relative 'ao' # -m ao.rb
- SiSU_AO::Source.new(@opt).read
- end
- end
- if $process_document == :ok
- if @opt.act[:qrcode][:set]==:on #% --qrcode, -Q
- require_relative 'qrcode' # qrcode.rb
- SiSU_QRcode::Source.new(@opt).read
- end
- if @opt.act[:hash_digests][:set]==:on #% --hash-digests, -N digest tree
- require_relative 'digests' # digests.rb
- SiSU_DigestView::Source.new(@opt).read
- end
- if @opt.act[:txt][:set]==:on #% --txt, -t -a
- require_relative 'txt_plain' # txt_plain.rb
- SiSU_Txt_Plain::Source.new(@opt).read
- end
- if @opt.act[:txt_textile][:set]==:on #% --textile
- require_relative 'txt_textile' # txt_textile.rb
- SiSU_Txt_Textile::Source.new(@opt).read
- end
- if @opt.act[:txt_asciidoc][:set]==:on #% --asciidoc
- require_relative 'txt_asciidoc' # txt_asciidoc.rb
- SiSU_Txt_AsciiDoc::Source.new(@opt).read
- end
- if @opt.act[:txt_markdown][:set]==:on #% --markdown
- require_relative 'txt_markdown' # txt_markdown.rb
- SiSU_Txt_Markdown::Source.new(@opt).read
- end
- if @opt.act[:txt_rst][:set]==:on #% --rst, --rest
- require_relative 'txt_rst' # txt_rst.rb
- SiSU_Txt_rST::Source.new(@opt).read
- end
- if @opt.act[:html][:set]==:on #% --html, -h -H
- require_relative 'html' # html.rb
- SiSU_HTML::Source.new(@opt).read
- else
- if @opt.act[:html_seg][:set]==:on #% --html-seg (-h -H)
- require_relative 'html' # html.rb
- SiSU_HTML::Source.new(@opt).read
- end
- if @opt.act[:html_scroll][:set]==:on #% --html-scroll (-h -H)
- require_relative 'html' # html.rb
- SiSU_HTML::Source.new(@opt).read
- end
- end
- if @opt.act[:concordance][:set]==:on #% --concordance, -w
- require_relative 'html_concordance' # html_concordance.rb
- SiSU_Concordance::Source.new(@opt).read
- end
- if @opt.act[:epub][:set]==:on #% --epub, -e
- require_relative 'xhtml_epub2' # xhtml_epub2.rb
- SiSU_XHTML_EPUB2::Source.new(@opt).read
- end
- if @opt.act[:odt][:set]==:on #% --odt, -o opendocument
- require_relative 'xml_odf_odt' # xml_odf_odt.rb
- SiSU_XML_ODF_ODT::Source.new(@opt).read
- end
- if @opt.act[:xhtml][:set]==:on #% --xhtml, -b xhtml
- require_relative 'xhtml' # xhtml.rb
- SiSU_XHTML::Source.new(@opt).read
- end
- if @opt.act[:xml_scaffold_structure_sisu][:set]==:on #% --xml-scaffold --xml-scaffold-sisu
- require_relative 'xml_scaffold_structure_sisu' # xml_scaffold_structure_sisu.rb
- SiSU_XML_Scaffold_Structure_Sisu::Source.new(@opt).read
- end
- if @opt.act[:xml_scaffold_structure_collapse][:set]==:on #% --xml-scaffold-collapse
- require_relative 'xml_scaffold_structure_collapsed' # xml_scaffold_structure_collapsed.rb
- SiSU_XML_Scaffold_Structure_Collapse::Source.new(@opt).read
- end
- if @opt.act[:xml_docbook_book][:set]==:on #% --xml-docbook
- require_relative 'xml_docbook5' # xml_docbook5.rb
- SiSU_XML_Docbook_Book::Source.new(@opt).read
- end
- if @opt.act[:xml_fictionbook][:set]==:on #% --xml-fictionbook
- require_relative 'xml_fictionbook2' # xml_fictionbook2.rb
- SiSU_XML_Fictionbook::Source.new(@opt).read
- end
- if @opt.act[:xml_sax][:set]==:on #% --xml-sax, -x xml sax type
- require_relative 'xml_sax' # xml_sax.rb
- SiSU_XML_SAX::Source.new(@opt).read
- end
- if @opt.act[:xml_dom][:set]==:on #% --xml-dom, -X xml dom type
- require_relative 'xml_dom' # xml_dom.rb
- SiSU_XML_DOM::Source.new(@opt).read
- end
- if @opt.act[:pdf][:set]==:on \
- or @opt.act[:pdf_p][:set]==:on \
- or @opt.act[:pdf_l][:set]==:on #% --pdf-l --pdf, -p latex/ texpdf
- require_relative 'texpdf' # texpdf.rb
- SiSU_TeX::Source.new(@opt).read
- end
- if @opt.act[:manpage][:set]==:on #% --manpage, -i
- require_relative 'manpage' # manpage.rb
- SiSU_Manpage::Source.new(@opt).read
- end
- if @opt.act[:texinfo][:set]==:on #% --texinfo, -I
- require_relative 'texinfo' # texinfo.rb
- SiSU_TexInfo::Source.new(@opt).read
- end
- if @opt.act[:sqlite_discrete][:set]==:on #% --sqlite, -d DB sqlite
- require_relative 'dbi_discrete' # dbi_discrete.rb
- SiSU_DBI_Discrete::SQL.new(@opt).build
- end
- if @opt.act[:manifest][:set]==:on #% --manifest, -y
- require_relative 'manifest' # manifest.rb
- ((@opt.act[:sisupod][:set]==:on \
- || @opt.act[:share_source][:set]==:on) \
- && @opt.files.length < 2 ) \
- ? nil
- : SiSU_Manifest::Source.new(@opt).read
- end
- else
- @remove_faulty_markup_files_array << fno
- $process_document=:ok
- end
+ actions=SiSU_Hub_Actions::HubActions.new(@opt)
+ actions.outputs.each_file.abstract_objects?
+ actions.outputs.each_file.qrcode?
+ actions.outputs.each_file.hash_digests?
+ actions.outputs.each_file.text?
+ actions.outputs.each_file.html?
+ actions.outputs.each_file.xhtml?
+ actions.outputs.each_file.xml?
+ actions.outputs.each_file.pdf?
+ actions.outputs.each_file.man_or_info?
+ actions.outputs.each_file.sqlite_discrete?
+ actions.outputs.each_file.manifest?
end
end
def do_loop_files_on_given_option_pre
@@ -473,234 +284,27 @@ module SiSU
end
end
def do_loop_files_on_given_option_post
- if @opt.act[:share_source][:set]==:on \
- or @opt.act[:sisupod][:set]==:on \
- or @opt.act[:git][:set]==:on
- begin
- require_relative 'src_shared'
- OptionLoopFiles.new(@opt).loop_files_on_given_option do
- SiSU_Source::SiSUpodSource.new(@opt).read
- end
- if @opt.act[:share_source][:set]==:on
- require_relative 'src_share' # -s src_share.rb
- begin
- ensure
- OptionLoopFiles.new(@opt).loop_files_on_given_option_bundle do
- SiSU_Markup::Source.new(@opt).read
- end
- end
- end
- if @opt.act[:sisupod][:set]==:on #% --sisupod, -S make sisupod
- require_relative 'src_sisupod_make' # -S src_sisupod_make.rb
- begin
- ensure
- OptionLoopFiles.new(@opt).loop_files_on_given_option_bundle do
- SiSU_Doc::Source.new(@opt).sisupod_tar_xz
- end
- end
- end
- if @opt.act[:git][:set]==:on #% --git, -g sisu git
- require_relative 'git' # -g git.rb
- begin
- OptionLoopFiles.new(@opt).loop_files_on_given_option do
- SiSU_Git::Source.new(@opt).read
- end
- ensure
- OptionLoopFiles.new(@opt).loop_files_on_given_option_bundle do
- SiSU_Git::Source.new(@opt).git_commit
- end
- end
- end
- if (@opt.act[:sisupod][:set]==:on \
- || @opt.act[:share_source][:set]==:on) \
- and @opt.act[:manifest][:set]==:on #% --manifest, -y
- require_relative 'manifest' # -y manifest.rb
- begin
- ensure
- OptionLoopFiles.new(@opt).loop_files_on_given_option_bundle do
- SiSU_Manifest::Source.new(@opt).read
- end
- end
- end
- ensure
- path_pod=@env.processing_path.processing_sisupod(@opt).paths
- unless @opt.act[:maintenance][:set]==:on
- FileUtils::rm_rf("#{path_pod[:sisupod]}/*") \
- if FileTest.directory?(path_pod[:sisupod])
- end
- end
- end
- if @opt.act[:po4a][:set]==:on #% --po4a, -P
- require_relative 'po4a'
- begin
- OptionLoopFiles.new(@opt).loop_files_on_given_option do
- SiSU_Po4a::Source.new(@opt).read # -P po4a.rb
- end
- ensure
- end
- end
- if @opt.act[:images][:set]==:on #% --images, -j
- require_relative 'shared_images'
- OptionLoopFiles.new(@opt).loop_files_on_given_option do
- SiSU_Images::Source.new(@opt).read # -j shared_images.rb
- end
- end
- if @opt.cmd =~/T/ #% -T termsheet/standard form
- @opt.files.each do |fns|
- if FileTest.file?(fns)
- @opt.fns=fns
- case @opt.fns
- when /\.(termsheet.rb)$/
- SiSU::Operations.new(@opt).termsheet
- else #print "not processed --> ", fns, "\n"
- end
- else SiSU::Operations.new(@opt).not_found
- end
- end
- SiSU::Operations.new.counter
- end
- if @opt.act[:psql][:set]==:on #% --pg, -D DB postgresql
- require_relative 'dbi'
- OptionLoopFiles.new(@opt).loop_files_on_given_option do
- SiSU_DBI::SQL.new(@opt).connect # -D -d dbi.rb
- end
- end
- if @opt.act[:sqlite][:set]==:on #% --sqlite, -d DB sqlite
- require_relative 'dbi'
- OptionLoopFiles.new(@opt).loop_files_on_given_option do
- SiSU_DBI::SQL.new(@opt).connect # -D -d dbi.rb
- end
- end
- if @opt.act[:manifest][:set]==:on #% --manifest, -y
- require_relative 'manifest'
- OptionLoopFiles.new(@opt).manifest_on_files_translated do
- SiSU_Manifest::Source.new(@opt).read # -y manifest.rb
- end
- end
- if @opt.act[:sitemap][:set]==:on #% --sitemap, -Y
- require_relative 'sitemaps'
- OptionLoopFiles.new(@opt).loop_files_on_given_option do
- SiSU_Sitemaps::Source.new(@opt).read # -Y sitemaps.rb
- end
- end
- if @opt.act[:harvest][:set] !=:on
- if @opt.act[:scp][:set]==:on #% -r copy to remote server
- require_relative 'remote' # -r remote.rb
- OptionLoopFiles.new(@opt).loop_files_on_given_option do
- SiSU_Remote::Put.new(@opt).scp
- end
- end
- if @opt.act[:rsync][:set]==:on #% -R copy to remote server
- require_relative 'remote' # -R remote.rb
- OptionLoopFiles.new(@opt).loop_files_on_given_option do
- SiSU_Remote::Put.new(@opt).rsync
- end
- end
- else
- end
- if @opt.act[:urls_selected][:set]==:on #% --sitemap, -Y
- require_relative 'urls'
- OptionLoopFiles.new(@opt).loop_files_on_given_option do
- SiSU_Urls::Source.new(@opt).read #% -u -v -V -M
- end
- end
+ actions=SiSU_Hub_Actions::HubActions.new(@opt)
+ actions.outputs.loop_files.share_source?
+ actions.outputs.loop_files.run_termsheet?
+ actions.outputs.loop_files.sql?
+ SiSU_Hub_Actions::Operations.new.counter
+ actions.outputs.loop_files.manifest?
+ actions.outputs.loop_files.sitemaps?
+ actions.outputs.loop_files.urls?
end
- def do_initialization
- @cX=SiSU_Screen::Ansi.new(@opt.act[:color_state][:set]).cX
- SiSU_Env::InfoProcessingFlag.new
- if @opt.act[:version_info][:set]==:on #% version information
+ def version_info
+ if @opt.act[:version_info][:set]==:on
SiSU_Env::InfoAbout.new(@opt).sisu_version
- if (@opt.act[:verbose][:set]==:on \
- || @opt.act[:verbose_plus][:set]==:on \
- || @opt.act[:maintenance][:set]==:on)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- ' ' + File.dirname(__FILE__)
- ).grey
- end
- end
- if @opt.act[:ao][:set]==:on \
- or @opt.act[:maintenance][:set]==:on #% --maintenance, -m for -C
- path={}
- path[:css]=@@env.path.output + '/_sisu/css'
- path[:xml]=@@env.path.output + '/_sisu/xml'
- path[:xsd]=path[:xml] + '/xsd'
- path[:xsd]=path[:xml] + '/rnc'
- path[:xsd]=path[:xml] + '/rng'
- re_p3=/(sisupod(?:\.txz)?|\S+?\.ss[mt]\.txz|[^\/]+?\.ssp)$/
- unless @opt.files.join(',') =~ re_p3 #do not mix pods with source markup files in command line
- if @opt.act[:maintenance][:set] ==:on
- $VERBOSE=false #debug $VERBOSE=true
- end
- end
- re_p2=/(sisupod(?:\.zip)?|\S+?\.ss[mt]\.zip)$/
- unless @opt.files.join(',') =~ re_p2 #do not mix pods with source markup files in command line
- if @opt.act[:maintenance][:set] ==:on
- $VERBOSE=false #debug $VERBOSE=true
- end
- end
- end
- if @opt.act[:site_init][:set]==:on #% --init-site, -C initialize/configure
- require_relative 'conf' #% --init-site, -C initialize/configure
- SiSU_Initialize::Source.new(@opt).read
- if @opt.act[:rsync][:set]==:on
- if @opt.mod.inspect =~/--init(?:ialize)?=site/ \
- and @opt.cmd =~/RZ/
- SiSU::Operations.new(@opt).remote_put_base_site_rsync_match
- else SiSU::Operations.new(@opt).remote_put_base_site_rsync
- end
- elsif @opt.act[:scp][:set]==:on
- if @opt.mod.inspect =~/--init(?:ialize)?=site/ \
- and @opt.cmd =~/CCr/
- SiSU::Operations.new(@opt).remote_put_base_site_all
- else SiSU::Operations.new(@opt).remote_put_base_site
- end
- end
- end
- if @opt.act[:sample_search_form][:set]==:on #% --sample-search-form, -F cgi sample search form
- SiSU::Operations.new(@opt).cgi
- end
- if @opt.act[:webrick][:set]==:on #% --webrick, -W webrick
- SiSU::Operations.new(@opt).webrick
- end
- if @opt.act[:ao][:set]==:on
- @retry_count= -1
- begin
- @get_s,@get_p,@get_pl=[],[],[]
- re_s=/(\S+?\.-sst)$/
- re_p3=/((?:https?|file):\/\/\S+?(?:\/\S+?\.ss[mt]\.txz|sisupod(?:\.txz)?|\.ssp))/
- re_pl3=/^(\/\S+?\.ss[mt]\.txz)/
- @opt.files.each do |fns|
- if fns =~re_s
- @get_s << @opt.f_pths[0][:url]
- end
- if fns =~re_p3
- @get_p << re_p3.match(fns)[1] if re_p3
- end
- if fns =~re_pl3
- @get_pl << re_pl3.match(fns)[1] if re_p3
- end
- end
- if @get_s.length > 0 #% remote markup file .sst
- require_relative 'remote' # remote.rb
- SiSU_Remote::Get.new(@opt,@get_s).fns
- SiSU::Operations.new.counter
- end
- if @get_p.length > 0 #% remote sisupod
- require_relative 'remote' # remote.rb
- SiSU_Remote::Get.new(@opt,@get_p).sisupod
- end
- rescue
- SiSU_Errors::Rescued.new($!,$@,@opt,@fns).location do
- __LINE__.to_s + ':' + __FILE__
- end
- @retry_count +=1
- retry unless @retry_count > 1
- ensure
- end
end
end
- def actions
+ def actions_without_files
+ actions=SiSU_Hub_Actions::HubActions.new(@opt)
+ actions.prepare.site?
+ actions.prepare.remote_site?
+ actions.prepare.sql?
+ end
+ def actions_on_files
if @opt.act[:profile][:set]==:on
begin
require 'profile'
@@ -709,150 +313,71 @@ module SiSU
error('profile NOT FOUND (LoadError)')
end
end
- action_on_file_ =if @opt.act[:rsync][:set]==:on \
- && @opt.act[:site_init][:set]==:on
- :false
- elsif @opt.act[:rsync][:set]==:on \
- && @opt.act[:site_init][:set] !=:on
- :true
- elsif ((@opt.act[:psql][:set]==:on \
- or @opt.act[:sqlite][:set]==:on) \
- and @opt.mod.join(';') =~/--(?:createdb|init(?:ialize)?|create(?:all)?|createtables|recreate|drop(?:all))/)
- :false
- else
- (@opt.act[:ao][:set]==:on \
- || @opt.act[:manpage][:set]==:on \
- || @opt.act[:texinfo][:set]==:on \
- || @opt.act[:txt][:set]==:on \
- || @opt.act[:txt_textile][:set]==:on \
- || @opt.act[:txt_asciidoc][:set]==:on \
- || @opt.act[:txt_markdown][:set]==:on \
- || @opt.act[:txt_rst][:set]==:on \
- || @opt.act[:html][:set]==:on \
- || @opt.act[:html_scroll][:set]==:on \
- || @opt.act[:html_seg][:set]==:on \
- || @opt.act[:concordance][:set]==:on \
- || @opt.act[:xhtml][:set]==:on \
- || @opt.act[:epub][:set]==:on \
- || @opt.act[:odt][:set]==:on \
- || @opt.act[:xml_sax][:set]==:on \
- || @opt.act[:xml_dom][:set]==:on \
- || @opt.act[:xml_scaffold_structure_sisu][:set]==:on \
- || @opt.act[:xml_scaffold_structure_collapse][:set]==:on \
- || @opt.act[:xml_docbook_book][:set]==:on \
- || @opt.act[:xml_fictionbook][:set]==:on \
- || @opt.act[:pdf][:set]==:on \
- || @opt.act[:pdf_p][:set]==:on \
- || @opt.act[:pdf_l][:set]==:on \
- || @opt.act[:psql][:set]==:on \
- || @opt.act[:sqlite][:set]==:on \
- || @opt.act[:sqlite_discrete][:set]==:on \
- || @opt.act[:share_source][:set]==:on \
- || @opt.act[:sisupod][:set]==:on \
- || @opt.act[:qrcode][:set]==:on \
- || @opt.act[:hash_digests][:set]==:on \
- || @opt.act[:manifest][:set]==:on \
- || @opt.act[:scp][:set]==:on \
- || @opt.act[:webrick][:set]==:on \
- || @opt.act[:zap][:set]==:on) \
- ? (:true)
- : (:false)
- end
- if @opt.act[:harvest][:set]==:on
- require_relative 'harvest' # harvest.rb
- SiSU_Harvest::Source.new(@opt).read # -h -H html.rb
- elsif @opt.mod.inspect =~/--convert|--to|--from/
- require_relative 'sst_convert_markup' # sst_convert_markup.rb
- elsif action_on_file_ == :false \
- and (@opt.act[:psql][:set]==:on \
- or @opt.act[:sqlite][:set]==:on)
- if @opt.act[:psql][:set]==:on
- require_relative 'dbi'
- SiSU_DBI::SQL.new(@opt).connect
- end
- if @opt.act[:sqlite][:set]==:on
- require_relative 'dbi'
- SiSU_DBI::SQL.new(@opt).connect
+ actions=SiSU_Hub_Actions::HubActions.new(@opt)
+ actions.outputs.each_file.harvest? #check
+ actions.outputs.init?
+ do_loop_files_on_given_option_pre
+ do_each_file_loop_options
+ #remove_skipped_files_if_any_from_processing_files_array # NEEDS WORK
+ do_loop_files_on_given_option_post
+ print_error_message_if_files_skipped
+ actions.outputs.sql? #check location
+ if @opt.f_pths.length > 0
+ if (@opt.act[:verbose][:set]==:on \
+ || @opt.act[:verbose_plus][:set]==:on \
+ || @opt.act[:maintenance][:set]==:on)
+ @msg,@msgs="\tsisu -W [to start ruby web-server on output directory]\n",nil
end
- elsif action_on_file_ == :true \
- or ( #% --->
- @opt.cmd =~/^-/ \
- and @opt.cmd =~/([abCcDdeFGgHhIjikLMmNnoPpQqRrSsTtUuVvWwXxYyZ_0-9])/ \
- and @opt.mod.inspect !~/--(?:sitemaps|query|identify)/ \
- or @opt.mod.inspect =~/--(?:(?:sq)?lite|pg(?:sql)?)/
- )
- do_initialization
- if action_on_file_ == :true \
- and @opt.files.length > 0
- do_loops
- if (@opt.act[:verbose][:set]==:on \
- || @opt.act[:verbose_plus][:set]==:on \
- || @opt.act[:maintenance][:set]==:on)
- @msg,@msgs="\tsisu -W [to start ruby web-server on output directory]\n",nil
- end
- if (@opt.act[:verbose][:set]==:on \
- || @opt.act[:verbose_plus][:set]==:on \
- || @opt.act[:maintenance][:set]==:on \
- || @opt.act[:urls_selected][:set]==:on \
- || @opt.act[:urls_all][:set]==:on)
- @tell.call.print_brown unless @opt.files.join.empty?
- end
- if defined? @@env.processing_path.processing \
- and @@env.user \
- and FileTest.directory?(@@env.processing_path.processing) \
- and @@env.processing_path.processing =~/#{@@env.user}$/ #clean temporary processing directory of content as is located in public area
- if @@env.processing_path.processing_base_tmp =~/^\/tmp\/\S+/
- FileUtils::cd(@@env.processing_path.processing_base_tmp) do
- FileUtils::rm_rf('.') unless @opt.act[:maintenance][:set] ==:on
- end
+ if (@opt.act[:verbose][:set]==:on \
+ || @opt.act[:verbose_plus][:set]==:on \
+ || @opt.act[:maintenance][:set]==:on \
+ || @opt.act[:urls_selected][:set]==:on \
+ || @opt.act[:urls_all][:set]==:on)
+ @tell.call.print_brown unless @opt.files.join.empty?
+ end
+ if defined? @@env.processing_path.processing \
+ and @@env.user \
+ and FileTest.directory?(@@env.processing_path.processing) \
+ and @@env.processing_path.processing =~/#{@@env.user}$/ #clean temporary processing directory of content as is located in public area
+ if @@env.processing_path.processing_base_tmp =~/^\/tmp\/\S+/
+ FileUtils::cd(@@env.processing_path.processing_base_tmp) do
+ FileUtils::rm_rf('.') unless @opt.act[:maintenance][:set] ==:on
end
end
- elsif action_on_file_ == :true \
- and @opt.files.length == 0
- STDERR.puts %{requested action requires valid sisu markup file [filename (.sst .ssm)] or wildcard (that includes a valid filename)}
- if (@opt.act[:verbose_plus][:set]==:on \
- || @opt.act[:maintenance][:set]==:on)
- SiSU_Utils::CodeMarker.new(__LINE__,__FILE__).warn(:fuchsia)
- end
end
- elsif @opt.mod.inspect =~/--query/
- require_relative 'sst_identify_markup' # sst_identify_markup.rb
- puts SiSU_Markup::MarkupHistory.new(@opt).query
- elsif @opt.mod.inspect =~/--identify/
- require_relative 'sst_identify_markup' # sst_identify_markup.rb
- SiSU_Markup::MarkupIdentify.new(@opt).markup_version?
- elsif @opt.mod.inspect =~/--sitemaps/ #% sitemaps
- require_relative 'sitemaps' # sitemaps.rb
- SiSU_Sitemaps::Source.new(@opt).read
- if @opt.act[:rsync][:set]==:on
- require_relative 'remote' # remote.rb
- SiSU_Remote::Put.new(@opt).rsync_sitemaps
+ elsif @opt.f_pths.length == 0
+ STDERR.puts %{requested action requires valid sisu markup file [filename (.sst .ssm)] or wildcard (that includes a valid filename)}
+ if (@opt.act[:verbose_plus][:set]==:on \
+ || @opt.act[:maintenance][:set]==:on)
+ SiSU_Utils::CodeMarker.new(__LINE__,__FILE__).warn(:fuchsia)
end
else #% sisu help refer to man pages
- SiSU_Env::InfoAbout.new(@opt).sisu_version
- SiSU_Env::InfoAbout.new(@opt).sisu_about
+ actions.prepare(@opt).site?
+ unless done==:ok
+ #SiSU_Env::InfoAbout.new(@opt).sisu_about
+ end
end
@opt.files.each do |fns|
if FileTest.file?(fns)
@opt.fns=fns
unless @opt.fns =~ /(?:\.(?:(?:-|ssm\.)?sst|ssm|ssp|sx[sdn]\.xml|termsheet.rb)|\S+?\.ss[mt]\.(?:txz|zip)|sisupod\.(?:txz|zip)?|\S+?\.ssp)$/
- if @opt.cmd.inspect=~/-P/
+ if @opt.selections.str=~/--pg/
elsif @opt.fns=~/\.kdi$/ \
and @opt.mod.inspect =~/--(?:convert(?:-from)?|from)[=-]kdi/
elsif @opt.fns=~/\.sx[sdn]\.xml$/ \
and @opt.mod.inspect =~/--(?:(?:convert(?:-from)?|from)[=-])?(?:xml2sst|sxml)/
elsif @opt.fns=~/\.ssi$/ \
and @opt.mod.inspect =~/--identify/
- else SiSU::Operations.new(@opt).not_recognised
+ else SiSU_Hub_Actions::Operations.new(@opt).not_recognised
end
end
if @opt.fns =~/\.ssm\.sst$/ \
- and @opt.cmd !~/[S_M]/ # rework necessry, revist, the _ flag is a hack, to keep ._sst files
+ and @opt.selections.str !~/[S_M]/ # rework necessary, revist, the _ flag is a hack, to keep ._sst files
@msg,@msgs='temporary file removed',nil
@tell.call.warn unless @opt.act[:quiet][:set]==:on
File.unlink(@opt.fns) if File.exist?(@opt.fns) #CONSIDER
end
- else #SiSU::Operations.new(fns,'html').not_found
+ else #SiSU::Operations.new(fns,'html').not_found
end
end
end
diff --git a/lib/sisu/v5/hub_actions.rb b/lib/sisu/v5/hub_actions.rb
new file mode 100644
index 00000000..8717f815
--- /dev/null
+++ b/lib/sisu/v5/hub_actions.rb
@@ -0,0 +1,585 @@
+# encoding: utf-8
+=begin
+
+ * Name: SiSU
+
+ * Description: a framework for document structuring, publishing and search
+
+ * Author: Ralph Amissah
+
+ * Copyright: (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
+ 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Ralph Amissah,
+ All Rights Reserved.
+
+ * License: GPL 3 or later:
+
+ SiSU, a framework for document structuring, publishing and search
+
+ Copyright (C) Ralph Amissah
+
+ This program is free software: you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the Free
+ Software Foundation, either version 3 of the License, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful, but WITHOUT
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ more details.
+
+ You should have received a copy of the GNU General Public License along with
+ this program. If not, see <http://www.gnu.org/licenses/>.
+
+ If you have Internet connection, the latest version of the GPL should be
+ available at these locations:
+ <http://www.fsf.org/licensing/licenses/gpl.html>
+ <http://www.gnu.org/licenses/gpl.html>
+
+ <http://www.sisudoc.org/sisu/en/manifest/gpl.fsf.html>
+
+ * SiSU uses:
+ * Standard SiSU markup syntax,
+ * Standard SiSU meta-markup syntax, and the
+ * Standard SiSU object citation numbering and system
+
+ * Hompages:
+ <http://www.jus.uio.no/sisu>
+ <http://www.sisudoc.org>
+
+ * Download:
+ <http://www.sisudoc.org/sisu/en/SiSU/download.html>
+
+ * Git
+ <http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=summary>
+ <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v5/hub_actions.rb;hb=HEAD>
+
+ * Ralph Amissah
+ <ralph@amissah.com>
+ <ralph.amissah@gmail.com>
+
+ ** Description: SiSU information Structuring Universe, text structuring,
+ processing, publishing, search
+
+=end
+module SiSU_Hub_Actions
+ class HubActions
+ def initialize(opt)
+ @opt=opt
+ end
+ def prepare
+ def site?
+ if @opt.act[:site_init][:set]==:on #% --init-site, -C initialize/configure
+ require_relative 'conf' #% --init-site, -C initialize/configure
+ SiSU_Initialize::Source.new(@opt).read
+ if @opt.act[:rsync][:set]==:on
+ if @opt.mod.inspect =~/--init(?:ialize)?=site/ \
+ and @opt.selections.str =~/RZ/
+ SiSU::Operations.new(@opt).remote_put_base_site_rsync_match
+ else SiSU::Operations.new(@opt).remote_put_base_site_rsync
+ end
+ elsif @opt.act[:scp][:set]==:on
+ if @opt.mod.inspect =~/--init(?:ialize)?=site/ \
+ and @opt.selections.str =~/CCr/
+ SiSU::Operations.new(@opt).remote_put_base_site_all
+ else SiSU::Operations.new(@opt).remote_put_base_site
+ end
+ end
+ end
+ end
+ def remote_site?
+ if @opt.act[:site_init][:set]==:on
+ if @opt.act[:site_init][:set]==:on #% --init-site, -C initialize/configure
+ #require_relative 'conf' #% --init-site, -C initialize/configure
+ #SiSU_Initialize::Source.new(@opt).read
+ #if @opt.act[:rsync][:set]==:on
+ # if @opt.mod.inspect =~/--init(?:ialize)?=site/ \
+ # and @opt.selection =~/RZ/
+ # SiSU::Operations.new(@opt).remote_put_base_site_rsync_match
+ # else SiSU::Operations.new(@opt).remote_put_base_site_rsync
+ # end
+ #elsif @opt.act[:scp][:set]==:on
+ # if @opt.mod.inspect =~/--init(?:ialize)?=site/ \
+ # and @opt.selection =~/CCr/
+ # SiSU::Operations.new(@opt).remote_put_base_site_all
+ # else SiSU::Operations.new(@opt).remote_put_base_site
+ # end
+ #end
+ end
+ end
+ end
+ def sql?
+ if @opt.act[:psql_createdb][:set]==:on \
+ or @opt.act[:psql_create][:set]==:on \
+ or @opt.act[:psql_drop][:set]==:on
+ done=:ok
+ if @opt.act[:psql][:set]==:on
+ require_relative 'dbi'
+ SiSU_DBI::SQL.new(@opt).connect
+ end
+ end
+ if @opt.act[:sqlite_createdb][:set]==:on \
+ or @opt.act[:sqlite_create][:set]==:on \
+ or @opt.act[:sqlite_drop][:set]==:on
+ done=:ok
+ if @opt.act[:sqlite][:set]==:on
+ require_relative 'dbi'
+ SiSU_DBI::SQL.new(@opt).connect
+ end
+ end
+ end
+ self
+ end
+ def outputs
+ if @opt.f_pths.length > 0
+ def each_file
+ def abstract_objects?
+ if @opt.act[:ao][:set]==:on #% --ao --dal, -m
+ unless @opt.act[:po4a][:set]==:on # --po4a, -P
+ if @opt.fno =~ /\.ssm$/
+ require_relative 'ao_composite' # ao_composite.rb #pre-processing
+ SiSU_Assemble::Composite.new(@opt).read
+ end
+ require_relative 'ao' # -m ao.rb
+ SiSU_AO::Source.new(@opt).read
+ end
+ end
+ end
+ def qrcode?
+ if @opt.act[:qrcode][:set]==:on #% --qrcode, -Q
+ require_relative 'qrcode' # qrcode.rb
+ SiSU_QRcode::Source.new(@opt).read
+ end
+ end
+ def hash_digests?
+ if @opt.act[:hash_digests][:set]==:on #% --hash-digests, -N digest tree
+ require_relative 'digests' # digests.rb
+ SiSU_DigestView::Source.new(@opt).read
+ end
+ end
+ def text?
+ if @opt.act[:txt][:set]==:on #% --txt, -t -a
+ require_relative 'txt_plain' # txt_plain.rb
+ SiSU_Txt_Plain::Source.new(@opt).read
+ end
+ if @opt.act[:txt_textile][:set]==:on #% --textile
+ require_relative 'txt_textile' # txt_textile.rb
+ SiSU_Txt_Textile::Source.new(@opt).read
+ end
+ if @opt.act[:txt_asciidoc][:set]==:on #% --asciidoc
+ require_relative 'txt_asciidoc' # txt_asciidoc.rb
+ SiSU_Txt_AsciiDoc::Source.new(@opt).read
+ end
+ if @opt.act[:txt_markdown][:set]==:on #% --markdown
+ require_relative 'txt_markdown' # txt_markdown.rb
+ SiSU_Txt_Markdown::Source.new(@opt).read
+ end
+ if @opt.act[:txt_rst][:set]==:on #% --rst, --rest
+ require_relative 'txt_rst' # txt_rst.rb
+ SiSU_Txt_rST::Source.new(@opt).read
+ end
+ end
+ def html?
+ if @opt.act[:html][:set]==:on #% --html, -h -H
+ require_relative 'html' # html.rb
+ SiSU_HTML::Source.new(@opt).read
+ else
+ if @opt.act[:html_seg][:set]==:on #% --html-seg (-h -H)
+ require_relative 'html' # html.rb
+ SiSU_HTML::Source.new(@opt).read
+ end
+ if @opt.act[:html_scroll][:set]==:on #% --html-scroll (-h -H)
+ require_relative 'html' # html.rb
+ SiSU_HTML::Source.new(@opt).read
+ end
+ end
+ if @opt.act[:concordance][:set]==:on #% --concordance, -w
+ require_relative 'html_concordance' # html_concordance.rb
+ SiSU_Concordance::Source.new(@opt).read
+ end
+ end
+ def xhtml?
+ if @opt.act[:xhtml][:set]==:on #% --xhtml, -b xhtml
+ require_relative 'xhtml' # xhtml.rb
+ SiSU_XHTML::Source.new(@opt).read
+ end
+ if @opt.act[:epub][:set]==:on #% --epub, -e
+ require_relative 'xhtml_epub2' # xhtml_epub2.rb
+ SiSU_XHTML_EPUB2::Source.new(@opt).read
+ end
+ end
+ def xml?
+ if @opt.act[:odt][:set]==:on #% --odt, -o opendocument
+ require_relative 'xml_odf_odt' # xml_odf_odt.rb
+ SiSU_XML_ODF_ODT::Source.new(@opt).read
+ end
+ if @opt.act[:xml_scaffold_structure_sisu][:set]==:on #% --xml-scaffold --xml-scaffold-sisu
+ require_relative 'xml_scaffold_structure_sisu' # xml_scaffold_structure_sisu.rb
+ SiSU_XML_Scaffold_Structure_Sisu::Source.new(@opt).read
+ end
+ if @opt.act[:xml_scaffold_structure_collapse][:set]==:on #% --xml-scaffold-collapse
+ require_relative 'xml_scaffold_structure_collapsed' # xml_scaffold_structure_collapsed.rb
+ SiSU_XML_Scaffold_Structure_Collapse::Source.new(@opt).read
+ end
+ if @opt.act[:xml_docbook_book][:set]==:on #% --xml-docbook
+ require_relative 'xml_docbook5' # xml_docbook5.rb
+ SiSU_XML_Docbook_Book::Source.new(@opt).read
+ end
+ if @opt.act[:xml_fictionbook][:set]==:on #% --xml-fictionbook
+ require_relative 'xml_fictionbook2' # xml_fictionbook2.rb
+ SiSU_XML_Fictionbook::Source.new(@opt).read
+ end
+ if @opt.act[:xml_sax][:set]==:on #% --xml-sax, -x xml sax type
+ require_relative 'xml_sax' # xml_sax.rb
+ SiSU_XML_SAX::Source.new(@opt).read
+ end
+ if @opt.act[:xml_dom][:set]==:on #% --xml-dom, -X xml dom type
+ require_relative 'xml_dom' # xml_dom.rb
+ SiSU_XML_DOM::Source.new(@opt).read
+ end
+ end
+ def pdf?
+ if @opt.act[:pdf][:set]==:on \
+ or @opt.act[:pdf_p][:set]==:on \
+ or @opt.act[:pdf_l][:set]==:on #% --pdf-l --pdf, -p latex/ texpdf
+ require_relative 'texpdf' # texpdf.rb
+ SiSU_TeX::Source.new(@opt).read
+ end
+ end
+ def man_or_info?
+ if @opt.act[:manpage][:set]==:on #% --manpage, -i
+ require_relative 'manpage' # manpage.rb
+ SiSU_Manpage::Source.new(@opt).read
+ end
+ if @opt.act[:texinfo][:set]==:on #% --texinfo, -I
+ require_relative 'texinfo' # texinfo.rb
+ SiSU_TexInfo::Source.new(@opt).read
+ end
+ end
+ def sqlite_discrete?
+ if @opt.act[:sqlite_discrete][:set]==:on #% --sqlite, -d DB sqlite
+ require_relative 'dbi_discrete' # dbi_discrete.rb
+ SiSU_DBI_Discrete::SQL.new(@opt).build
+ end
+ end
+ def manifest?
+ if @opt.act[:manifest][:set]==:on #% --manifest, -y
+ require_relative 'manifest' # manifest.rb
+ ((@opt.act[:sisupod][:set]==:on \
+ || @opt.act[:share_source][:set]==:on) \
+ && @opt.f_pths.length < 2 ) \
+ ? nil
+ : SiSU_Manifest::Source.new(@opt).read
+ end
+ end
+ def harvest?
+ if @opt.act[:harvest][:set]==:on
+ require_relative 'harvest' # harvest.rb
+ SiSU_Harvest::Source.new(@opt).read # -h -H html.rb
+ end
+ end
+ self
+ end
+ def loop_files
+ def share_source?
+ if @opt.act[:share_source][:set]==:on \
+ or @opt.act[:sisupod][:set]==:on \
+ or @opt.act[:git][:set]==:on
+ begin
+ require_relative 'src_shared'
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option do
+ SiSU_Source::SiSUpodSource.new(@opt).read
+ end
+ if @opt.act[:share_source][:set]==:on
+ require_relative 'src_share' # -s src_share.rb
+ begin
+ ensure
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option_bundle do
+ SiSU_Markup::Source.new(@opt).read
+ end
+ end
+ end
+ if @opt.act[:sisupod][:set]==:on #% --sisupod, -S make sisupod
+ require_relative 'src_sisupod_make' # -S src_sisupod_make.rb
+ begin
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option_bundle do
+ SiSU_Doc::Source.new(@opt).sisupod_tar_xz
+ end
+ ensure
+ end
+ end
+ if @opt.act[:git][:set]==:on #% --git, -g sisu git
+ require_relative 'git' # -g git.rb
+ begin
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option do
+ SiSU_Git::Source.new(@opt).read
+ end
+ ensure
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option_bundle do
+ SiSU_Git::Source.new(@opt).git_commit
+ end
+ end
+ end
+ if (@opt.act[:sisupod][:set]==:on \
+ || @opt.act[:share_source][:set]==:on) \
+ and @opt.act[:manifest][:set]==:on #% --manifest, -y
+ require_relative 'manifest' # -y manifest.rb
+ begin
+ ensure
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option_bundle do
+ SiSU_Manifest::Source.new(@opt).read
+ end
+ end
+ end
+ ensure
+ env=SiSU_Env::InfoEnv.new(@opt.fns)
+ path_pod=env.processing_path.processing_sisupod(@opt).paths
+ unless @opt.act[:maintenance][:set]==:on
+ FileUtils::rm_rf("#{path_pod[:sisupod]}/*") \
+ if FileTest.directory?(path_pod[:sisupod])
+ end
+ end
+ end
+ if @opt.act[:po4a][:set]==:on #% --po4a, -P
+ require_relative 'po4a'
+ begin
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option do
+ SiSU_Po4a::Source.new(@opt).read # -P po4a.rb
+ end
+ ensure
+ end
+ end
+ if @opt.act[:images][:set]==:on #% --images, -j
+ require_relative 'shared_images'
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option do
+ SiSU_Images::Source.new(@opt).read # -j shared_images.rb
+ end
+ end
+ end
+ def run_termsheet? #broken, revisit later
+ if @opt.selections.str =~/--termsheet/ #% -T termsheet/standard form #fix later
+ @opt.files.each do |fns|
+ if FileTest.file?(fns)
+ @opt.fns=fns
+ case @opt.fns
+ when /\.(termsheet.rb)$/
+ SiSU::Operations.new(@opt).termsheet
+ else #print "not processed --> ", fns, "\n"
+ end
+ else SiSU::Operations.new(@opt).not_found
+ end
+ end
+ end
+ end
+ def sql?
+ if @opt.act[:psql][:set]==:on #% --pg, -D DB postgresql
+ require_relative 'dbi'
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option do
+ SiSU_DBI::SQL.new(@opt).connect # -D -d dbi.rb
+ end
+ end
+ if @opt.act[:sqlite][:set]==:on #% --sqlite, -d DB sqlite
+ require_relative 'dbi'
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option do
+ SiSU_DBI::SQL.new(@opt).connect # -D -d dbi.rb
+ end
+ end
+ end
+ def manifest?
+ if @opt.act[:manifest][:set]==:on #% --manifest, -y
+ require_relative 'manifest'
+ SiSU::OptionLoopFiles.new(@opt).manifest_on_files_translated do
+ SiSU_Manifest::Source.new(@opt).read # -y manifest.rb
+ end
+ end
+ end
+ def sitemaps?
+ if @opt.act[:sitemap][:set]==:on #% --sitemap, -Y
+ require_relative 'sitemaps'
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option do
+ SiSU_Sitemaps::Source.new(@opt).read # -Y sitemaps.rb
+ end
+ end
+ end
+ def remote_placement?
+ if @opt.act[:harvest][:set] !=:on
+ if @opt.act[:scp][:set]==:on #% -r copy to remote server
+ require_relative 'remote' # -r remote.rb
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option do
+ SiSU_Remote::Put.new(@opt).scp
+ end
+ end
+ if @opt.act[:rsync][:set]==:on #% -R copy to remote server
+ require_relative 'remote' # -R remote.rb
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option do
+ SiSU_Remote::Put.new(@opt).rsync
+ end
+ end
+ else
+ end
+ end
+ def urls?
+ if @opt.act[:urls_selected][:set]==:on #% --sitemap, -Y
+ require_relative 'urls'
+ SiSU::OptionLoopFiles.new(@opt).loop_files_on_given_option do
+ SiSU_Urls::Source.new(@opt).read #% urls.rb
+ end
+ end
+ end
+ self
+ end
+ end
+ def init?
+ SiSU_Env::InfoProcessingFlag.new
+ if (@opt.act[:verbose][:set]==:on \
+ || @opt.act[:verbose_plus][:set]==:on \
+ || @opt.act[:maintenance][:set]==:on)
+ SiSU_Screen::Ansi.new(
+ @opt.act[:color_state][:set],
+ ' ' + File.dirname(__FILE__)
+ ).grey
+ end
+ if @opt.act[:ao][:set]==:on \
+ or @opt.act[:maintenance][:set]==:on #% --maintenance, -m for -C
+ env=SiSU_Env::InfoEnv.new(@opt.fns)
+ path={}
+ path[:css]=env.path.output + '/_sisu/css'
+ path[:xml]=env.path.output + '/_sisu/xml'
+ path[:xsd]=path[:xml] + '/xsd'
+ path[:xsd]=path[:xml] + '/rnc'
+ path[:xsd]=path[:xml] + '/rng'
+ re_p3=/(sisupod(?:\.txz)?|\S+?\.ss[mt]\.txz|[^\/]+?\.ssp)$/
+ unless @opt.files.join(',') =~ re_p3 #do not mix pods with source markup files in command line
+ if @opt.act[:maintenance][:set] ==:on
+ $VERBOSE=false #debug $VERBOSE=true
+ end
+ end
+ re_p2=/(sisupod(?:\.zip)?|\S+?\.ss[mt]\.zip)$/
+ unless @opt.files.join(',') =~ re_p2 #do not mix pods with source markup files in command line
+ if @opt.act[:maintenance][:set] ==:on
+ $VERBOSE=false #debug $VERBOSE=true
+ end
+ end
+ end
+ if @opt.act[:sample_search_form][:set]==:on #% --sample-search-form, -F cgi sample search form
+ SiSU::Operations.new(@opt).cgi
+ end
+ if @opt.act[:webrick][:set]==:on #% --webrick, -W webrick
+ SiSU::Operations.new(@opt).webrick
+ end
+ if @opt.act[:ao][:set]==:on
+ @retry_count= -1
+ begin
+ @get_s,@get_p,@get_pl=[],[],[]
+ re_s=/(\S+?\.-sst)$/
+ re_p3=/((?:https?|file):\/\/\S+?(?:\/\S+?\.ss[mt]\.txz|sisupod(?:\.txz)?|\.ssp))/
+ re_pl3=/^(\/\S+?\.ss[mt]\.txz)/
+ @opt.files.each do |fns|
+ if fns =~re_s
+ @get_s << @opt.f_pths[0][:url]
+ end
+ if fns =~re_p3
+ @get_p << re_p3.match(fns)[1] if re_p3
+ end
+ if fns =~re_pl3
+ @get_pl << re_pl3.match(fns)[1] if re_p3
+ end
+ end
+ if @get_s.length > 0 #% remote markup file .sst
+ require_relative 'remote' # remote.rb
+ SiSU_Remote::Get.new(@opt,@get_s).fns
+ SiSU::Operations.new.counter
+ end
+ if @get_p.length > 0 #% remote sisupod
+ require_relative 'remote' # remote.rb
+ SiSU_Remote::Get.new(@opt,@get_p).sisupod
+ end
+ rescue
+ SiSU_Errors::Rescued.new($!,$@,@opt,@fns).location do
+ __LINE__.to_s + ':' + __FILE__
+ end
+ @retry_count +=1
+ retry unless @retry_count > 1
+ ensure
+ end
+ end
+ end
+ self
+ end
+ end
+ class Operations
+ @@n_do=0
+ def initialize(opt='')
+ @opt=opt
+ @cX=SiSU_Screen::Ansi.new(@opt).cX
+ end
+ def counter
+ @@n_do=0
+ end
+ def remote_put_base_site_rsync # -CR
+ SiSU_Utils::CodeMarker.new(__LINE__,__FILE__).mark(:cyan) \
+ if @opt.act[:maintenance][:set] ==:on
+ require_relative 'remote' # remote.rb
+ SiSU_Remote::Put.new(@opt).rsync_base
+ end
+ def remote_put_base_site_rsync_match # -CCRZ
+ SiSU_Utils::CodeMarker.new(__LINE__,__FILE__).mark(:cyan) \
+ if @opt.act[:maintenance][:set] ==:on
+ require_relative 'remote' # remote.rb
+ SiSU_Remote::Put.new(@opt).rsync_base_sync
+ end
+ def remote_put_base_site # -Cr
+ SiSU_Utils::CodeMarker.new(__LINE__,__FILE__).mark(:cyan) \
+ if @opt.act[:maintenance][:set] ==:on
+ require_relative 'remote' # remote.rb
+ SiSU_Remote::Put.new(@opt).scp_base
+ end
+ def remote_put_base_site_all # -CCr
+ SiSU_Utils::CodeMarker.new(__LINE__,__FILE__).mark(:cyan) \
+ if @opt.act[:maintenance][:set] ==:on
+ require_relative 'remote' # remote.rb
+ SiSU_Remote::Put.new(@opt).scp_base_all
+ end
+ def cgi # -F
+ require_relative 'cgi' # cgi.rb
+ SiSU_CGI::SearchSQL.new(@opt).read
+ end
+ def termsheet # -t
+ system("sisu_termsheet #{@opt.selections.str} #{@opt.fns}\n")
+ @@n_do=@@n_do+1
+ SiSU_Screen::Ansi.new(
+ @opt.selections.str,@@n_do,
+ 'Termsheet(s) processed'
+ ).term_sheet_title unless @opt.act[:quiet][:set] ==:on
+ end
+ def webrick # -W
+ prt=SiSU_Env::InfoEnv.new(@fns).port.webrick_port
+ puts %{#{@cX.blue}<<#{@cX.off}#{@cX.green}Start Webrick web server on port: #{prt}#{@cX.off}#{@cX.blue}>> #{@cX.off*2} }
+ require_relative 'webrick'
+ SiSU_Webserv::WebrickStart.new
+ end
+ def not_found
+ puts "\n#{@cX.fuchsia}FILE NOT FOUND:#{@cX.off} << #{@opt.fns} >> - requested #{@opt.selections.str} processing skipped\n"
+ end
+ def convert_name_message(fns,type,i,o,rune)
+ %{\nIn filename: "#{@cX.fuchsia}#{fns}#{@cX.off}" << #{type} >> #{@cX.fuchsia}is apre 0.36 markup filename.#{@cX.off} #{@cX.brown}Please rename your file.#{@cX.off}\n\tAs of sisu-0.37, SiSU markup files with #{@cX.brown}the extensions #{i} should be re-named #{o}#{@cX.off}\n\tif you have the program called 'rename' installed, the following rune should do the trick:\n\t\t#{rune}\n\talternatively try:\n\t\tsisu --convert --36to37 #{fns}\n\trequested #{@opt.selections.str} processing skipped\n}
+ end
+ def not_recognised
+ case @opt.fns
+ when /(\.s[123])$/
+ type=@opt.fns.gsub(/\S+?(#{$1})/,'\1')
+ rune=%q{rename 's/\.s[123]$/\.sst/' *.s{1,2,3}}
+ puts convert_name_message(@opt.fns,type,'.s1 .s2 and .s3','.sst',rune)
+ when /(\.r[123])$/
+ type=@opt.fns.gsub(/\S+?(#{$1})/,'\1')
+ rune=%q{rename 's/\.r[123]$/\.ssm/' *.r{1,2,3}}
+ puts convert_name_message(@opt.fns,type,'.r1 .r2 and .r3','.sst',rune)
+ puts %{\n\tNote also that you will need to change the names of the files called/required\n\twithin the document text to build the composite document\n\t\t.s1 .s2 .s3 should be .sst \n\t\t.si should be .ssi\n\trequested #{@opt.selections.str} processing skipped\n}
+ when /(\.ssi)$/
+ puts "\n#{@cX.fuchsia}component filetype:#{@cX.off} << #{@opt.fns} >> - is not a processed filetype, (it may be used as a component of a .ssm markup file)\n\trequested #{@opt.selections.str} processing skipped\n"
+ else
+ puts "\n#{@cX.fuchsia}FILETYPE NOT RECOGNISED:#{@cX.off} << #{@opt.fns} >> - is not a recognized filetype,\n\trequested #{@opt.selections.str} processing skipped\n"
+ end
+ end
+ end
+end
+__END__
diff --git a/lib/sisu/v5/hub_options.rb b/lib/sisu/v5/hub_options.rb
index f851b985..c079915b 100644
--- a/lib/sisu/v5/hub_options.rb
+++ b/lib/sisu/v5/hub_options.rb
@@ -51,7 +51,7 @@
* Git
<http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=summary>
- <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v6/hub_options.rb;hb=HEAD>
+ <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v5/hub_options.rb;hb=HEAD>
* Ralph Amissah
<ralph@amissah.com>
@@ -156,11 +156,12 @@ module SiSU_Commandline
end
end
class Options
- attr_accessor :cmd,:mod,:act,:dir_structure_by,:lingual,:f_pths,:files,:files_mod,:call_path,:base_path,:base_stub,:sub_location,:image_src_path,:paths,:lngs,:f_pth,:pth,:fno,:fns,:fnb,:fnc,:fng,:fncb,:lng,:lng_base,:what,:make_instructions,:make_instructions_pod
+ attr_accessor :selections,:opt_ch,:act,:dir_structure_by,:lingual,:f_pths,:files,:files_mod,:call_path,:base_path,:base_stub,:sub_location,:image_src_path,:paths,:lngs,:f_pth,:pth,:fno,:fns,:fnb,:fnc,:fng,:fncb,:lng,:lng_base,:what,:make_instructions,:make_instructions_pod
@@act=nil
def initialize(a,call_path)
- @cmd=@f_pth=@pth=@fno=@fns=@fnb=@fnc=@fng=@fncb=@what=@lng=@lng_base=@call_path=@base_path=@base_stub=@image_src_path=@sub_location=''
- @f_pths,@files,@files_mod,@paths,@mod,@act=Array.new(5){[]}
+ @opt_ch=@f_pth=@pth=@fno=@fns=@fnb=@fnc=@fng=@fncb=@what=@lng=@lng_base=@call_path=@base_path=@base_stub=@image_src_path=@sub_location=''
+ @f_pths,@files,@files_mod,@paths,@select_arr,@act=Array.new(5){[]}
+ @select_str=nil
@env=SiSU_Env::InfoEnv.new
@lng_base=@env.language_default_set
@dir_structure_by=SiSU_Env::EnvCall.new.output_dir_structure.by?
@@ -269,24 +270,25 @@ module SiSU_Commandline
if a.length > 0
s=expand_numeric_shortcuts(a)
q=set_files_and_paths_and_general_extract(s)
- @cmd,@mod=opt_cmd_and_mod_adjust(q[:cmd],q[:mod])
+ files=(q[:files].length > 0) ? :true : :false
+ @select_arr=opt_cmd_and_mod_adjust(q[:opt_ch],q[:selections],files)
@what=q[:what] unless q[:what].empty?
@paths = q[:paths]
@files = q[:files]
@f_pths = q[:f_pths]
@lngs = q[:lngs]
if @files.length > 0 \
- and @cmd.empty? \
- and @mod.length==0 #% if no other action called on filename given, default is sisu --v5 -0 [filename(s)] configured as flag default
+ and @opt_ch.empty? \
+ and @select_arr.length==0 #% if no other action called on filename given, default is sisu --v5 -0 [filename(s)] configured as flag default
shortcut=SiSU_Env::InfoProcessingFlag.new
- @mod=['--v5']
- @cmd=shortcut.cf_0 + ' --dal'
+ @select_arr=['--v5']
+ @select_arr << shortcut.act_0.arr #+ ' --dal'
end
- if @cmd =~/[vVM]/ \
- && @cmd !~/-[ku]*v[ku]*$/
+ if @select_arr.inspect =~/--verbose/ \
+ && @opt_ch !~/-[ku]*v[ku]*$/
SiSU_Screen::Ansi.new(
- @cmd,
- "\tsisu " + @cmd + ' ' + @mod.join(' ') + ' ' + @files.join(' ') + "\n"
+ @opt_ch,
+ "\tsisu " + @opt_ch + ' ' + @select_arr.join(' ') + ' ' + @files.join(' ') + "\n"
).print_brown
end
end
@@ -443,8 +445,8 @@ module SiSU_Commandline
end
end
{
- cmd: c,
- mod: m,
+ opt_ch: c,
+ selections: m,
what: w,
paths: pth,
files: f,
@@ -454,387 +456,583 @@ module SiSU_Commandline
}
end
def expand_numeric_shortcuts(a)
+ s=''
+ a.each do |x|
+ y=case x
+ when /0/
+ (x=~/^-0\S+/) \
+ ? x.gsub(/^-0(\S+)/,'--act0' + ' -\1')
+ : x.gsub(/^-0/,'--act0' + ' ')
+ when /1/
+ (x=~/^-1\S+/) \
+ ? x.gsub(/^-1(\S+)/,'--act1' + ' -\1')
+ : x.gsub(/^-1/,'--act1' + ' ')
+ when /2/
+ (x=~/^-2\S+/) \
+ ? x.gsub(/^-2(\S+)/,'--act2' + ' -\1')
+ : x.gsub(/^-2/,'--act2' + ' ')
+ when /3/
+ (x=~/^-3\S+/) \
+ ? x.gsub(/^-3(\S+)/,'--act3' + ' -\1')
+ : x.gsub(/^-3/,'--act3' + ' ')
+ when /4/
+ (x=~/^-4\S+/) \
+ ? x.gsub(/^-4(\S+)/,'--act4' + ' -\1')
+ : x.gsub(/^-4/,'--act4' + ' ')
+ when /5/
+ (x=~/^-5\S+/) \
+ ? x.gsub(/^-5(\S+)/,'--act5' + ' -\1')
+ : x.gsub(/^-5/,'--act5' + ' ')
+ when /6/
+ (x=~/^-6\S+/) \
+ ? x.gsub(/^-6(\S+)/,'--act6' + ' -\1')
+ : x.gsub(/^-6/,'--act6' + ' ')
+ when /7/
+ (x=~/^-7\S+/) \
+ ? x.gsub(/^-7(\S+)/,'--act7' + ' -\1')
+ : x.gsub(/^-7/,'--act7' + ' ')
+ when /8/
+ (x=~/^-8\S+/) \
+ ? x.gsub(/^-8(\S+)/,'--act8' + ' -\1')
+ : x.gsub(/^-8/,'--act8' + ' ')
+ when /9/
+ (x=~/^-9\S+/) \
+ ? x.gsub(/^-9(\S+)/,'--act9' + ' -\1')
+ : x.gsub(/^-9/,'--act9' + ' ')
+ else x
+ end
+ s << " #{y}" unless y.empty?
+ end
+ s.strip!
+ end
+ def expand_numeric_shortcuts_(a)
shortcut=SiSU_Env::InfoProcessingFlag.new
s=''
a.each do |x|
y=case x
when /0/
(x=~/^-0\S+/) \
- ? x.gsub(/^-0(\S+)/,shortcut.cf_0 + ' -\1')
- : x.gsub(/^-0/,shortcut.cf_0 + ' ')
+ ? x.gsub(/^-0(\S+)/,shortcut.act_0.str + ' -\1')
+ : x.gsub(/^-0/,shortcut.act_0.str + ' ')
when /1/
(x=~/^-1\S+/) \
- ? x.gsub(/^-1(\S+)/,shortcut.cf_1 + ' -\1')
- : x.gsub(/^-1/,shortcut.cf_1 + ' ')
+ ? x.gsub(/^-1(\S+)/,shortcut.act_1.str + ' -\1')
+ : x.gsub(/^-1/,shortcut.act_1.str + ' ')
when /2/
(x=~/^-2\S+/) \
- ? x.gsub(/^-2(\S+)/,shortcut.cf_2 + ' -\1')
- : x.gsub(/^-2/,shortcut.cf_2 + ' ')
+ ? x.gsub(/^-2(\S+)/,shortcut.act_2.str + ' -\1')
+ : x.gsub(/^-2/,shortcut.act_2.str + ' ')
when /3/
(x=~/^-3\S+/) \
- ? x.gsub(/^-3(\S+)/,shortcut.cf_3 + ' -\1')
- : x.gsub(/^-3/,shortcut.cf_3 + ' ')
+ ? x.gsub(/^-3(\S+)/,shortcut.act_3.str + ' -\1')
+ : x.gsub(/^-3/,shortcut.act_3.str + ' ')
when /4/
(x=~/^-4\S+/) \
- ? x.gsub(/^-4(\S+)/,shortcut.cf_4 + ' -\1')
- : x.gsub(/^-4/,shortcut.cf_4 + ' ')
+ ? x.gsub(/^-4(\S+)/,shortcut.act_4.str + ' -\1')
+ : x.gsub(/^-4/,shortcut.act_4.str + ' ')
when /5/
(x=~/^-5\S+/) \
- ? x.gsub(/^-5(\S+)/,shortcut.cf_5 + ' -\1')
- : x.gsub(/^-5/,shortcut.cf_5 + ' ')
+ ? x.gsub(/^-5(\S+)/,shortcut.act_5.str + ' -\1')
+ : x.gsub(/^-5/,shortcut.act_5.str + ' ')
when /6/
(x=~/^-6\S+/) \
- ? x.gsub(/^-6(\S+)/,shortcut.cf_5 + ' -\1')
- : x.gsub(/^-6/,shortcut.cf_5 + ' ')
+ ? x.gsub(/^-6(\S+)/,shortcut.act_6.str + ' -\1')
+ : x.gsub(/^-6/,shortcut.act_6.str + ' ')
+ when /7/
+ (x=~/^-7\S+/) \
+ ? x.gsub(/^-7(\S+)/,shortcut.act_7.str + ' -\1')
+ : x.gsub(/^-7/,shortcut.act_7.str + ' ')
+ when /8/
+ (x=~/^-8\S+/) \
+ ? x.gsub(/^-8(\S+)/,shortcut.act_8.str + ' -\1')
+ : x.gsub(/^-8/,shortcut.act_8.str + ' ')
+ when /9/
+ (x=~/^-9\S+/) \
+ ? x.gsub(/^-9(\S+)/,shortcut.act_9.str + ' -\1')
+ : x.gsub(/^-9/,shortcut.act_9.str + ' ')
else x
end
s << " #{y}" unless y.empty?
end
s.strip!
end
- def opt_cmd_and_mod_adjust(c,m)
- cmd,mod,files=@cmd,@mod,@files
- if not m.empty? \
- and m.inspect =~/"--pdf-/
- mod << '--pdf'
- m.each do |s|
- if s =~ /^--pdf-(?:(?:l|landscape)(?:-(?:a4|letter|a5|b5|legal))?|(?:a4|letter|a5|b5|legal)-(?:l|landscape))$/
- mod << '--landscape'
- end
- if s =~ /^--pdf-(?:(?:p|portrait)(?:-(?:a4|letter|a5|b5|legal))?|(?:a4|letter|a5|b5|legal)-(?:p|portrait))$/
- mod << '--portrait'
- end
- if s =~ /^--pdf(?:-(?:a4|letter|a5|b5|legal)(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))(?:-(?:a4|letter|a5|b5|legal)))$/
- if s =~ /^--pdf(?:-a4(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))-a4)$/
- mod << '--papersize-a4'
- end
- if s =~ /^--pdf(?:-a5(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))-a5)$/
- mod << '--papersize-a5'
+ def opt_cmd_and_mod_adjust(ch,select_arr,files)
+if @select_arr.length > 0
+ p __LINE__
+ p @selection
+end
+ select_arr=select_arr.flatten
+ sel_init=select_arr.flatten
+ shortcut=SiSU_Env::InfoProcessingFlag.new
+ if files ==:true
+ if not sel_init.empty? \
+ and sel_init.inspect =~/"--act[0-9]/
+ sel_init.each do |s|
+ select_arr <<=case s
+ when /--act0/ then shortcut.act_0.arr
+ when /--act1/ then shortcut.act_1.arr
+ when /--act2/ then shortcut.act_2.arr
+ when /--act3/ then shortcut.act_3.arr
+ when /--act4/ then shortcut.act_4.arr
+ when /--act5/ then shortcut.act_5.arr
+ when /--act6/ then shortcut.act_6.arr
+ when /--act7/ then shortcut.act_7.arr
+ when /--act8/ then shortcut.act_8.arr
+ when /--act9/ then shortcut.act_9.arr
end
- if s =~ /^--pdf(?:-b5(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))-b5)$/
- mod << '--papersize-b5'
+ end
+ end
+ if not sel_init.empty? \
+ and sel_init.inspect =~/"--pdf-/
+ select_arr << '--pdf'
+ sel_init.each do |s|
+ if s =~ /^--pdf-(?:(?:l|landscape)(?:-(?:a4|letter|a5|b5|legal))?|(?:a4|letter|a5|b5|legal)-(?:l|landscape))$/
+ select_arr << '--landscape'
end
- if s =~ /^--pdf(?:-letter(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))-letter)$/
- mod << '--papersize-letter'
+ if s =~ /^--pdf-(?:(?:p|portrait)(?:-(?:a4|letter|a5|b5|legal))?|(?:a4|letter|a5|b5|legal)-(?:p|portrait))$/
+ select_arr << '--portrait'
end
- if s =~ /^--pdf(?:-legal(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))-legal)$/
- mod << '--papersize-legal'
+ if s =~ /^--pdf(?:-(?:a4|letter|a5|b5|legal)(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))(?:-(?:a4|letter|a5|b5|legal)))$/
+ if s =~ /^--pdf(?:-a4(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))-a4)$/
+ select_arr << '--papersize-a4'
+ end
+ if s =~ /^--pdf(?:-a5(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))-a5)$/
+ select_arr << '--papersize-a5'
+ end
+ if s =~ /^--pdf(?:-b5(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))-b5)$/
+ select_arr << '--papersize-b5'
+ end
+ if s =~ /^--pdf(?:-letter(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))-letter)$/
+ select_arr << '--papersize-letter'
+ end
+ if s =~ /^--pdf(?:-legal(?:-(?:[lp]|landscape|portrait))?|(?:-(?:[lp]|landscape|portrait))-legal)$/
+ select_arr << '--papersize-legal'
+ end
end
end
+ select_arr=select_arr.uniq
end
- mod=mod.uniq
- end
- unless m.empty?
- m.each do |s|
- case s
- when /^--(?:color-toggle)$/ then c=c+'c'
- when /^--(?:color-off)$/ then c=c+'k'
- when /^--(?:conf|config|configure|init|initialize|init-site)$/ then c=c+'CC'
- when /^--(?:ao|dal?|machine|abstraction|abs)$/ then c=c+'m'
- when /^--(?:txt|text|plaintext)$/ then c=c+'t'
- when /^--(?:html)$/ then c=c+'h'
- when /^--(?:html-scroll|html-seg)$/ then c=c+'H'
- mod << s
- when /^--(?:epub)$/ then c=c+'e'
- when /^--(?:od[ft])$/ then c=c+'o'
- when /^--docbook$/ then c=c+'d'
- when /^--(?:pdf)$/ then c=c+'p'
- when /^--pdf-(?:a4|a5|b5|legal|letter)$/ then c=c+'p'
- when /^--pdf-(?:p|l|portrait|landscape)$/ then c=c+'L'
- when /^--pdf-(?:p(?:ortrait)?|l(?:andscape)?)-(?:a4|letter|a5|b5|legal)$/ then c=c+'L'
- when /^--pdf-(?:a4|letter|a5|b5|legal)-(?:p(?:ortrait)?|l(?:andscape)?)$/ then c=c+'L'
- when /^--(?:concordance|wordmap)$/ then c=c+'w'
- when /^--(?:manpage|man)$/ then c=c+'i'
- when /^--(?:texinfo)$/ then c=c+'I'
- when /^--(?:xhtml)$/ then c=c+'b'
- when /^--(?:xml-sax)$/ then c=c+'x'
- when /^--(?:xml-dom)$/ then c=c+'X'
- when /^--(?:images)$/ then c=c+'j'
- when /^--(?:digests?|hash-digests)$/ then c=c+'N'
- when /^--(?:po4a|pot?)$/ then c=c+'P'
- when /^--(?:termsheet)$/ then c=c+'T'
- when /^--(?:manifest)$/ then c=c+'y'
- when /^--(?:qrcode)$/ then c=c+'Q'
- when /^--(?:remote|rsync)$/ then c=c+'R'
- when /^--(?:scp)$/ then c=c+'r'
- when /^--(?:source)$/ then c=c+'s'
- when /^--(?:sisupod|pod)$/ then c=c+'S'
- when /^--(?:git)$/ then c=c+'g'
- when /^--(?:urls)$/ then c=c+'U'
- when /^--(?:zap|delete)$/ then c=c+'Z'
- when /^--(?:sample-search-form)$/ then c=c+'F'
- when /^--(?:webserv|webrick)$/ then c=c+'W'
- when /^--(?:profile)$/ then c=c+'E'
- when /^--(?:maintenance|keep-processing-files)$/ then c=c+'M'
- when /^--(?:verbose[=-]3)$/ then c=c+'VM'
- when /^--(?:verbose[=-]2|Verbose|VERBOSE)$/ then c=c+'V'
- when /^--(?:verbose(?:[=-]1)?)$/ then c=c+'v'
- when /^--(?:version)$/ then c=c+'v'
- when /^--(?:verbose[=-]0|quiet|silent)$/ then c=c+'q'
- else mod << s #mod only contains command modifiers; commands converted to character
+ if ch.empty? \
+ and sel_init.length == 0
+ select_arr << shortcut.act_0.arr ################ & --flag empty
+ elsif not ch.empty?
+ if ch =~/c/ then select_arr << '--color-toggle'
+ ch=ch.gsub(/[c]/,'')
+ end
+ if ch =~/k/ then select_arr << '--color-off'
+ ch=ch.gsub(/[k]/,'')
+ end
+ if ch =~/C/ then select_arr << '--config'
+ ch=ch.gsub(/[C]+/,'')
+ end
+ if ch =~/m/ then select_arr << '--dal'
+ ch=ch.gsub(/[m]/,'')
+ end
+ if ch =~/t/ then select_arr << '--txt'
+ ch=ch.gsub(/[t]/,'')
+ end
+ if ch =~/h/ then select_arr << '--html'
+ ch=ch.gsub(/[h]/,'')
+ end
+ if ch =~/e/ then select_arr << '--epub'
+ ch=ch.gsub(/[e]/,'')
+ end
+ if ch =~/o/ then select_arr << '--odt'
+ ch=ch.gsub(/[o]/,'')
+ end
+ if ch =~/d/ then select_arr << '--docbook'
+ ch=ch.gsub(/[d]/,'')
+ end
+ if ch =~/p/ then select_arr << '--pdf'
+ ch=ch.gsub(/[p]/,'')
+ end
+ if ch =~/w/ then select_arr << '--concordance'
+ ch=ch.gsub(/[w]/,'')
+ end
+ if ch =~/i/ then select_arr << '--manpage'
+ ch=ch.gsub(/[i]/,'')
+ end
+ if ch =~/I/ then select_arr << '--texinfo'
+ ch=ch.gsub(/[I]/,'')
+ end
+ if ch =~/b/ then select_arr << '--xhtml'
+ ch=ch.gsub(/[b]/,'')
+ end
+ if ch =~/x/ then select_arr << '--xml-sax'
+ ch=ch.gsub(/[x]/,'')
+ end
+ if ch =~/X/ then select_arr << '--xml-dom'
+ ch=ch.gsub(/[X]/,'')
+ end
+ if ch =~/j/ then select_arr << '--images'
+ ch=ch.gsub(/[j]/,'')
+ end
+ if ch =~/N/ then select_arr << '--digests'
+ ch=ch.gsub(/[N]/,'')
+ end
+ if ch =~/P/ then select_arr << '--po4a'
+ ch=ch.gsub(/[P]/,'')
+ end
+ if ch =~/d/ then select_arr << '--sqlite'
+ ch=ch.gsub(/[d]/,'')
+ end
+ if ch =~/D/ then select_arr << '--pg'
+ ch=ch.gsub(/[D]/,'')
+ end
+ if ch =~/Q/ then select_arr << '--qrcode'
+ ch=ch.gsub(/[Q]/,'')
+ end
+ if ch =~/s/ then select_arr << '--source'
+ ch=ch.gsub(/[s]/,'')
+ end
+ if ch =~/S/ then select_arr << '--sisupod'
+ ch=ch.gsub(/[S]/,'')
+ end
+ if ch =~/m/ then select_arr << '--manifest'
+ ch=ch.gsub(/[m]/,'')
+ end
+ if ch =~/R/ then select_arr << '--rsync'
+ ch=ch.gsub(/[R]/,'')
+ end
+ if ch =~/r/ then select_arr << '--scp'
+ ch=ch.gsub(/[r]/,'')
+ end
+ if ch =~/g/ then select_arr << '--git'
+ ch=ch.gsub(/[g]/,'')
+ end
+ if ch =~/U/ then select_arr << '--urls'
+ ch=ch.gsub(/[u]/,'')
+ end
+ if ch =~/Z/ then select_arr << '--zap'
+ ch=ch.gsub(/[Z]/,'')
+ end
+ if ch =~/F/ then select_arr << '--sample-search-form'
+ ch=ch.gsub(/[F]/,'')
+ end
+ if ch =~/w/ then select_arr << '--webrick'
+ ch=ch.gsub(/[w]/,'')
+ end
+ if ch =~/M/ then select_arr << '--maintenance'
+ ch=ch.gsub(/[M]/,'')
+ end
+ if ch =~/V/ then select_arr << '--very-verbose'
+ ch=ch.gsub(/[V]/,'')
+ end
+ if ch =~/v/ then select_arr << '--verbose'
+ ch=ch.gsub(/[v]/,'')
+ end
+ if ch =~/q/ then select_arr << '--quiet'
+ ch=ch.gsub(/[q]/,'')
+ end
+ if select_arr.inspect !~/--urls/ \
+ and select_arr.inspect \
+ !~/"--harvest/
+ select_arr << '--urls'
+ end
+ if select_arr.inspect !~/--dal/ \
+ and select_arr.inspect =~/txt|text|html|odt|epub|docbook|xml|pdf|manpage|texinfo|concordance|qrcode|source|sisupod|pg|sqlite|zap/
+ select_arr << '--dal'
+ end
+ if select_arr.inspect !~/--manifest/ \
+ and select_arr.inspect =~/txt|text|html|odt|epub|docbook|xml|pdf|manpage|texinfo|concordance|qrcode|source|sisupod|pg|sqlite|zap/
+ select_arr << '--manifest'
+ end
+ if select_arr.inspect !~/--images/ \
+ and select_arr.inspect =~/html|odt|docbook|xml|qrcode/
+ select_arr << '--images'
end
end
- end
- ca=[]
- unless c.empty?
- c=c.gsub(/-/,'')
- c.scan(/CC|\S/) {|x| ca << x}
- cmd= '-' + ca.uniq.join
- end
- extra=''
- if cmd !~/[mn]/
- extra+=if cmd =~/[abegHhIiLNOoPpQTtwXxyz]/ \
- and cmd !~/[mn]/
- 'm' #% add ao
- elsif ((mod.inspect =~/--(?:(?:sq)?lite|pg(?:sql)?)/) \
- and mod.inspect !~/(?:remove|(?:(?:re)?create(?:all)?|dropall|drop)$)/) \
- and cmd !~/[mn]/
- 'm' #% add ao
- else ''
+ else
+ if ch =~/C/ then select_arr << '--config'
+ ch=ch.gsub(/[C]+/,'')
end
- end
- if cmd !~/j/
- extra+=if cmd =~/[bdHhwXxyz]/ \
- and cmd !~/[j]/
- 'j' #% copy images
- else ''
+ if sel_init.inspect =~/"--createdb"|"--create(?:all)?"|"--dropall"|"--recreate(?:all)?"/
+ if ch =~/d/ then select_arr << '--sqlite'
+ ch=ch.gsub(/[d]/,'')
+ end
+ if ch =~/D/ then select_arr << '--pg'
+ ch=ch.gsub(/[D]/,'')
+ end
end
- end
- if cmd !~/y/
- extra+=if cmd =~/[abdeHhIiNopQSstwXxz]/ \
- and cmd !~/y/
- 'ym' #% add manifest
- elsif mod.inspect =~/--(?:(?:sq)?lite|pg(?:sql)?)/ \
- and files[0] !~/^remove$/ \
- and cmd !~/y/
- 'ym' #% add manifest
- else ''
+ if ch =~/v/ then select_arr << '--version'
+ ch=ch.gsub(/[v]/,'')
end
end
- if cmd !~/u/ #% add urls
- extra+='u'
- end
- cmd=cmd + extra
- cmds=cmd.scan(/CC|\S/)
- [cmds.uniq.join,mod]
+ select_arr=select_arr.flatten.compact.uniq.sort
end
- def opt_act #note mod line commands have already been converted to command characters, cmd
- cmd,mod=@cmd,@mod
+ def opt_act
+ select_arr=@select_arr
@@act=if @@act
@act=@@act
else
act={}
- act[:license]=(mod.inspect =~/"--license/) \
+ act[:license]=(select_arr.inspect \
+ =~/"--license/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:site_init]=(cmd =~/C/ \
- || mod.inspect =~/"--init"|"--initialize"|"--init-site"|"--conf"|"--config"|"--configure"/) \
+ act[:site_init]=(select_arr.inspect \
+ =~/"--init"|"--initialize"|"--init-site"|"--conf"|"--config"|"--configure"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:rc]=if mod.inspect =~/"--rc=/
- x=Dir.pwd + '/' + mod.join.gsub(/--rc=/,'')
+ act[:rc]=if select_arr.inspect \
+ =~/"--rc=/
+ x=Dir.pwd + '/' + select_arr.join.gsub(/--rc=/,'')
{ bool: true, set: :on, inst: x }
else
{ bool: false, set: :na, inst: '' }
end
- act[:processing_path]=if mod.inspect =~/"--processing-path=/
- base_pth=mod.join(';').gsub(/^.*--processing-path=['"]?(.+?)(?:['"]?;.+)?$/,'\1')
+ act[:processing_path]=if select_arr.inspect \
+ =~/"--processing-path=/
+ base_pth=select_arr.join(';').gsub(/^.*--processing-path=['"]?(.+?)(?:['"]?;.+)?$/,'\1')
{ bool: true, set: :on, inst: base_pth }
- elsif mod.inspect =~/"--processing-path/
+ elsif select_arr.inspect \
+ =~/"--processing-path/
{ bool: true, set: :on, inst: @base_path }
else
{ bool: false, set: :na, inst: nil }
end
- act[:dump]=if mod.inspect =~/"--dump=/
- base_pth=mod.join(';').gsub(/^.*--dump=['"]?(.+?)(?:['"]?;.+)?$/,'\1')
+ act[:dump]=if select_arr.inspect \
+ =~/"--dump=/
+ base_pth=select_arr.join(';').
+ gsub(/^.*--dump=['"]?(.+?)(?:['"]?;.+)?$/,'\1')
{ bool: true, set: :on, inst: base_pth }
- elsif mod.inspect =~/"--dump/
+ elsif select_arr.inspect =~/"--dump/
{ bool: true, set: :on, inst: @base_path }
else
{ bool: false, set: :na, inst: nil }
end
- act[:redirect]=if mod.inspect =~/"--redirect=/
- base_pth=mod.join(';').gsub(/^.*--redirect=['"]?(.+?)(?:['"]?;.+)?$/,'\1')
+ act[:redirect]=if select_arr.inspect \
+ =~/"--redirect=/
+ base_pth=select_arr.join(';').
+ gsub(/^.*--redirect=['"]?(.+?)(?:['"]?;.+)?$/,'\1')
{ bool: true, set: :on, inst: base_pth }
- elsif mod.inspect =~/"--redirect/
+ elsif select_arr.inspect \
+ =~/"--redirect/
{ bool: true, set: :on, inst: @base_path }
else
{ bool: false, set: :na, inst: nil }
end
- act[:switch]=if mod.inspect =~/"--switch-off=/
- off_list=mod.join(';').gsub(/^.*--switch-off=['"]?(.+?)(?:['"];.+)?$/,'\1')
+ act[:switch]=if select_arr.inspect \
+ =~/"--switch-off=/
+ off_list=select_arr.join(';').
+ gsub(/^.*--switch-off=['"]?(.+?)(?:['"];.+)?$/,'\1')
off_list=off_list.scan(/[^,;\s]+/)
{ bool: false, set: :off, off: off_list}
else { bool: true, set: :na, off: [] }
end
- act[:default_language]=if mod.inspect =~/"--(?:default-)?language[-=](\S{2})"/
+ act[:default_language]=if select_arr.inspect \
+ =~/"--(?:default-)?language[-=](\S{2})"/
{ set: :on, code: $1 }
elsif lng_base
{ set: :on, code: lng_base }
else { set: :na, code: 'en' }
end
- act[:i18n]=if mod.inspect =~/"(?:--monolingual|--i18n-mono(?:lingual)?)"/ #if monolingual possible outputs output_by :filename & :filetype only, without language code in default language name; give warning of conflict settings if monolingual & :language selected
+ act[:i18n]=if select_arr.inspect \
+ =~/"(?:--monolingual|--i18n-mono(?:lingual)?)"/ #if monolingual possible outputs output_by :filename & :filetype only, without language code in default language name; give warning of conflict settings if monolingual & :language selected
@lingual=:mono
{ set: :mono }
- elsif mod.inspect =~/"(?:--multilingual|--i18n-multi(?:lingual)?)"/
+ elsif select_arr.inspect \
+ =~/"(?:--multilingual|--i18n-multi(?:lingual)?)"/
@lingual=:multi
{ set: :multi }
else { set: :na }
end
- act[:output_by]=if mod.inspect =~/"--(?:output-)?by-language"/
+ act[:output_by]=if select_arr.inspect \
+ =~/"--(?:output-)?by-language"/
@dir_structure_by=:language
{ set: :language }
- elsif mod.inspect =~/"--(?:output-)?by-filename"/
+ elsif select_arr.inspect \
+ =~/"--(?:output-)?by-filename"/
@dir_structure_by=:filename
{ set: :filename }
- elsif mod.inspect =~/"--(?:output-)?by-filetype"/
+ elsif select_arr.inspect \
+ =~/"--(?:output-)?by-filetype"/
@dir_structure_by=:filetype
{ set: :filetype }
else { set: :na }
end
- act[:ocn]=if mod.inspect =~/"--ocn"|"--inc-ocn"|"--numbering"|"--inc-numbering"/
+ act[:ocn]=if select_arr.inspect \
+ =~/"--ocn"|"--inc-ocn"|"--numbering"|"--inc-numbering"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--no-ocn"|"--exc-ocn"|"--no-numbering"|"--exc-numbering"/ \
+ elsif select_arr.inspect \
+ =~/"--no-ocn"|"--exc-ocn"|"--no-numbering"|"--exc-numbering"/ \
|| act[:switch][:off].inspect =~/"ocn"|"--numbering"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:toc]=if mod.inspect =~/"--inc-toc"/
+ act[:toc]=if select_arr.inspect \
+ =~/"--inc-toc"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-toc"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-toc"/ \
|| act[:switch][:off].inspect =~/"toc"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:minitoc]=if mod.inspect =~/"--inc-minitoc"/
+ act[:minitoc]=if select_arr.inspect \
+ =~/"--inc-minitoc"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-minitoc"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-minitoc"/ \
|| act[:switch][:off].inspect =~/"minitoc"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:links_to_manifest]=if mod.inspect =~/"--inc-links-to-manifest"|"--inc-manifest-links"/
+ act[:links_to_manifest]=if select_arr.inspect \
+ =~/"--inc-links-to-manifest"|"--inc-manifest-links"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-manifest"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-manifest"/ \
|| act[:switch][:off].inspect =~/"manifest"/ #place lower
{ bool: false, set: :off }
- elsif mod.inspect =~/"--(?:exc|no)-links-to-manifest"|"--(?:exc|no)-manifest-links"/ \
- || act[:switch][:off].inspect =~/"links_to_manifest"|"manifest_links"|"--(?:exc|no)-manifest"/ \
- || mod.inspect =~/"--(?:redirect|dump)/
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-links-to-manifest"|"--(?:exc|no)-manifest-links"/ \
+ || act[:switch][:off].inspect \
+ =~/"links_to_manifest"|"manifest_links"|"--(?:exc|no)-manifest"/ \
+ || select_arr.inspect \
+ =~/"--(?:redirect|dump)/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:manifest_minitoc]=if mod.inspect =~/"--inc-manifest-minitoc"|"--inc-minitoc"/
+ act[:manifest_minitoc]=if select_arr.inspect \
+ =~/"--inc-manifest-minitoc"|"--inc-minitoc"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-manifest-minitoc"|"--(?:exc|no)-minitoc"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-manifest-minitoc"|"--(?:exc|no)-minitoc"/ \
|| act[:switch][:off].inspect =~/"manifest_minitoc"|"minitoc"/
- #|| mod.inspect =~/"--(?:redirect|dump)/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:metadata]=if mod.inspect =~/"--inc-metadata"/
+ act[:metadata]=if select_arr.inspect \
+ =~/"--inc-metadata"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-metadata"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-metadata"/ \
|| act[:switch][:off].inspect =~/"metadata"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:html_minitoc]=if mod.inspect =~/"--inc-html-minitoc"|"--inc-minitoc"/
+ act[:html_minitoc]=if select_arr.inspect \
+ =~/"--inc-html-minitoc"|"--inc-minitoc"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-html-minitoc"|"--(?:exc|no)-minitoc"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-html-minitoc"|"--(?:exc|no)-minitoc"/ \
|| act[:switch][:off].inspect =~/"html_minitoc"|"minitoc"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:html_navigation]=if mod.inspect =~/"--inc-html-navigation"|"--inc-navigation"/
+ act[:html_navigation]=if select_arr.inspect \
+ =~/"--inc-html-navigation"|"--inc-navigation"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-html-navigation"|"--(?:exc|no)-navigation"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-html-navigation"|"--(?:exc|no)-navigation"/ \
|| act[:switch][:off].inspect =~/"html_navigation"|"nav"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:html_navigation_bar]=if mod.inspect =~/"--inc-html-navigation-bar"|"--inc-navigation-bar"/
+ act[:html_navigation_bar]=if select_arr.inspect \
+ =~/"--inc-html-navigation-bar"|"--inc-navigation-bar"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-html-navigation-bar"|"--(?:exc|no)-navigation-bar"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-html-navigation-bar"|"--(?:exc|no)-navigation-bar"/ \
|| act[:switch][:off].inspect =~/"html_navigation_bar"|"navbar"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:segsubtoc]=if mod.inspect =~/"--inc-segsubtoc"/
+ act[:segsubtoc]=if select_arr.inspect \
+ =~/"--inc-segsubtoc"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-segsubtoc"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-segsubtoc"/ \
|| act[:switch][:off].inspect =~/"segsubtoc"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:search_form]=if mod.inspect =~/"--inc-search-form"/
+ act[:search_form]=if select_arr.inspect \
+ =~/"--inc-search-form"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-search-form"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-search-form"/ \
|| act[:switch][:off].inspect =~/"search_form"|"search"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:html_search_form]=if mod.inspect =~/"--inc-html-search-form"|"--inc-search-form"/
+ act[:html_search_form]=if select_arr.inspect \
+ =~/"--inc-html-search-form"|"--inc-search-form"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-html-search-form"|"--(?:exc|no)-search-form"/ \
- || act[:switch][:off].inspect =~/"html_search_form"|"search_form"|"search"/
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-html-search-form"|"--(?:exc|no)-search-form"/ \
+ || act[:switch][:off].inspect \
+ =~/"html_search_form"|"search_form"|"search"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:html_right_pane]=if mod.inspect =~/"--inc-html-right-pane"|"--inc-right-pane"|"--inc-html-right-column"|"--inc-right-column"/
+ act[:html_right_pane]=if select_arr.inspect \
+ =~/"--inc-html-right-pane"|"--inc-right-pane"|"--inc-html-right-column"|"--inc-right-column"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-html-right-pane"|"--(?:exc|no)-right-pane"|"--(?:exc|no)-html-right-column"|"--(?:exc|no)-right-column"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-html-right-pane"|"--(?:exc|no)-right-pane"|"--(?:exc|no)-html-right-column"|"--(?:exc|no)-right-column"/ \
|| act[:switch][:off].inspect =~/"html_right_pane"|"html_right_column"|"promo"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:html_top_band]=if mod.inspect =~/"--inc-html-top-band"|"--inc-top-band"/
+ act[:html_top_band]=if select_arr.inspect \
+ =~/"--inc-html-top-band"|"--inc-top-band"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-html-top-band"|"--(?:exc|no)-top-band"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-html-top-band"|"--(?:exc|no)-top-band"/ \
|| act[:switch][:off].inspect =~/"html-top-band"|"top-band"/
{ bool: false, set: :off }
else { bool: true, set: :na }
end
- act[:html]=if mod.inspect =~/"--html-strict"/ \
- or ((cmd =~/h/ || mod.inspect =~/"--html"/) \
- && mod.inspect =~/"--strict"/)
+ act[:html]=if select_arr.inspect \
+ =~/"--html-strict"/ \
+ or ((select_arr.inspect \
+ =~/"--html"/) \
+ && select_arr.inspect \
+ =~/"--strict"/)
act[:html_strict]={ bool: true, set: :on }
act[:html_scroll]={ bool: true, set: :on }
act[:html_seg]={ bool: true, set: :on }
{ bool: true, set: :on }
- elsif (cmd =~/h/ \
- || mod.inspect =~/"--html"/)
+ elsif (select_arr.inspect \
+ =~/"--html"/)
act[:html_strict]={ bool: false, set: :off }
act[:html_scroll]={ bool: true, set: :on }
act[:html_seg]={ bool: true, set: :on }
{ bool: true, set: :on }
else
- act[:html_strict]=(mod.inspect =~/"--strict"/) \
+ act[:html_strict]=(select_arr.inspect \
+ =~/"--strict"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:html_scroll]=(mod.inspect =~/"--html-scroll"/) \
+ act[:html_scroll]=(select_arr.inspect \
+ =~/"--html-scroll"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:html_seg]=(mod.inspect =~/"--html-seg"/) \
+ act[:html_seg]=(select_arr.inspect \
+ =~/"--html-seg"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
{ bool: false, set: :na }
end
- act[:concordance]=(cmd =~/w/ \
- || mod.inspect =~/"--concordance"/) \
+ act[:concordance]=(select_arr.inspect \
+ =~/"--concordance"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:images]=(cmd =~/j/ \
- || mod.inspect =~/"--images"/) \
+ act[:images]=(select_arr.inspect \
+ =~/"--images"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- if (cmd =~/p/ \
- || mod.inspect =~/"--pdf"/)
- if mod.inspect =~/"--portrait"/
+ if select_arr.inspect \
+ =~/"--pdf"/
+ if select_arr.inspect \
+ =~/"--portrait"/
act[:pdf]= { bool: false, set: :na }
act[:pdf_l]={ bool: false, set: :na }
act[:pdf_p]={ bool: true, set: :on }
- elsif mod.inspect =~/"--landscape"/
+ elsif select_arr.inspect \
+ =~/"--landscape"/
act[:pdf]= { bool: false, set: :na }
act[:pdf_l]={ bool: true, set: :on }
act[:pdf_p]={ bool: false, set: :na }
@@ -856,47 +1054,60 @@ module SiSU_Commandline
if act[:pdf][:set]==:on \
or act[:pdf_p][:set]==:on \
or act[:pdf_l][:set]==:on
- act[:pdf_a4]=if mod.inspect =~/"--a4"|--papersize-a4"/ \
- or mod.inspect =~/"--papersize=\S*a4\b\S*"/ #--papersize=a4,a5
+ act[:pdf_a4]=if select_arr.inspect \
+ =~/"--a4"|--papersize-a4"/ \
+ or select_arr.inspect \
+ =~/"--papersize=\S*a4\b\S*"/ #--papersize=a4,a5
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:pdf_a5]=if mod.inspect =~/"--a5"|"--papersize-a5"/ \
- or mod.inspect =~/"--papersize=\S*a5\b\S*"/ #--papersize=a4,a5
+ act[:pdf_a5]=if select_arr.inspect \
+ =~/"--a5"|"--papersize-a5"/ \
+ or select_arr.inspect \
+ =~/"--papersize=\S*a5\b\S*"/ #--papersize=a4,a5
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:pdf_b5]=if mod.inspect =~/"--b5"|"--papersize-b5"/ \
- or mod.inspect =~/"--papersize=\S*b5\b\S*"/
+ act[:pdf_b5]=if select_arr.inspect \
+ =~/"--b5"|"--papersize-b5"/ \
+ or select_arr.inspect \
+ =~/"--papersize=\S*b5\b\S*"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:pdf_letter]=if mod.inspect =~/"--letter"|"--papersize-letter"/ \
- or mod.inspect =~/"--papersize=\S*letter\b\S*"/
+ act[:pdf_letter]=if select_arr.inspect \
+ =~/"--letter"|"--papersize-letter"/ \
+ or select_arr.inspect \
+ =~/"--papersize=\S*letter\b\S*"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:pdf_legal]=if mod.inspect =~/"--legal"|"--papersize-legal"/ \
- or mod.inspect =~/"--papersize=\S*legal\b\S*"/
+ act[:pdf_legal]=if select_arr.inspect \
+ =~/"--legal"|"--papersize-legal"/ \
+ or select_arr.inspect \
+ =~/"--papersize=\S*legal\b\S*"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
end
- act[:epub]=(cmd =~/e/ \
- || mod.inspect =~/"--epub"/) \
+ act[:epub]=(select_arr.inspect \
+ =~/"--epub"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:odt]=if cmd =~/o/ \
- or mod.inspect =~/"--odt"|"--odf"|"--odt-(?:ocn|numbering)"|"--odf-(?:ocn|numbering)"/
- act[:odt_ocn]=if (mod.inspect =~/"--odt-(?:ocn|numbering)"|"--odf-(?:ocn|numbering)"/ \
- or mod.inspect =~/"--ocn"|"--inc-ocn"|"--numbering"|"--inc-numbering"/)
+ act[:odt]=if select_arr.inspect \
+ =~/"--odt"|"--odf"|"--odt-(?:ocn|numbering)"|"--odf-(?:ocn|numbering)"/
+ act[:odt_ocn]=if (select_arr.inspect \
+ =~/"--odt-(?:ocn|numbering)"|"--odf-(?:ocn|numbering)"/ \
+ or select_arr.inspect \
+ =~/"--ocn"|"--inc-ocn"|"--numbering"|"--inc-numbering"/)
{ bool: true, set: :on }
- elsif mod.inspect =~/"--no-ocn"|"--exc-ocn"|"--no-numbering"|"--exc-numbering"/
+ elsif select_arr.inspect \
+ =~/"--no-ocn"|"--exc-ocn"|"--no-numbering"|"--exc-numbering"/
{ bool: false, set: :off }
else
{ bool: false, set: :na }
@@ -905,38 +1116,43 @@ module SiSU_Commandline
else
{ bool: false, set: :na }
end
- act[:xml_sax]=(cmd =~/x/ \
- || mod.inspect =~/"--xml-sax"/) \
+ act[:xml_sax]=(select_arr.inspect \
+ =~/"--xml-sax"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:xml_dom]=(cmd =~/X/ \
- || mod.inspect =~/"--xml-dom"/) \
+ act[:xml_dom]=(select_arr.inspect \
+ =~/"--xml-dom"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:xml_docbook_book]=(cmd =~/d/ \
- || mod.inspect =~/"--docbook"|"--docbook-book"|"--xml-docbook"|"--xml-docbook_book"/) \
+ act[:xml_docbook_book]=(select_arr.inspect \
+ =~/"--docbook"|"--docbook-book"|"--xml-docbook"|"--xml-docbook_book"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:xml_fictionbook]=(cmd =~/f/ \
- || mod.inspect =~/"--fictionbook"|"--xml-fictionbook"/) \
+ act[:xml_fictionbook]=(select_arr.inspect \
+ =~/"--fictionbook"|"--xml-fictionbook"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:xml_scaffold_structure_sisu]=mod.inspect =~/"--xml-scaffold"|"--xml-scaffold-sisu"/ \
+ act[:xml_scaffold_structure_sisu]=select_arr.inspect \
+ =~/"--xml-scaffold"|"--xml-scaffold-sisu"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:xml_scaffold_structure_collapse]=mod.inspect =~/"--xml-scaffold-collapse"/ \
+ act[:xml_scaffold_structure_collapse]=select_arr.inspect \
+ =~/"--xml-scaffold-collapse"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:xhtml]=(cmd =~/b/ \
- || mod.inspect =~/"--xhtml"/) \
+ act[:xhtml]=(select_arr.inspect \
+ =~/"--xhtml"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:txt]=if cmd =~/[at]/ \
- or mod.inspect =~/"--txt"|"--text"|"--plaintext"|"--txt-(?:ocn|numbering)"|"--text-(?:ocn|numbering)"|"--plaintext-(?:ocn|numbering)"/
- act[:txt_ocn]=if (mod.inspect =~/"--txt-(?:ocn|numbering)"|"--text-(?:ocn|numbering)"|"--plaintext-(?:ocn|numbering)"/ \
- or mod.inspect =~/"--ocn"|"--inc-ocn"|"--numbering"|"--inc-numbering"/)
+ act[:txt]=if select_arr.inspect \
+ =~/"--txt"|"--text"|"--plaintext"|"--txt-(?:ocn|numbering)"|"--text-(?:ocn|numbering)"|"--plaintext-(?:ocn|numbering)"/
+ act[:txt_ocn]=if (select_arr.inspect \
+ =~/"--txt-(?:ocn|numbering)"|"--text-(?:ocn|numbering)"|"--plaintext-(?:ocn|numbering)"/ \
+ or select_arr.inspect \
+ =~/"--ocn"|"--inc-ocn"|"--numbering"|"--inc-numbering"/)
{ bool: true, set: :on }
- elsif mod.inspect =~/"--no-ocn"|"--exc-ocn"|"--no-numbering"|"--exc-numbering"/
+ elsif select_arr.inspect \
+ =~/"--no-ocn"|"--exc-ocn"|"--no-numbering"|"--exc-numbering"/
{ bool: false, set: :off }
else
{ bool: false, set: :na }
@@ -945,66 +1161,71 @@ module SiSU_Commandline
else
{ bool: false, set: :na }
end
- act[:txt_textile]=(mod.inspect =~/"--textile"/) \
+ act[:txt_textile]=(select_arr.inspect \
+ =~/"--textile"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:txt_asciidoc]=(mod.inspect =~/"--asciidoc"/) \
+ act[:txt_asciidoc]=(select_arr.inspect \
+ =~/"--asciidoc"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:txt_markdown]=(mod.inspect =~/"--markdown"/) \
+ act[:txt_markdown]=(select_arr.inspect \
+ =~/"--markdown"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:txt_rst]=(mod.inspect =~/"--rst"|"--rest"|"--restructuredtext"/) \
+ act[:txt_rst]=(select_arr.inspect \
+ =~/"--rst"|"--rest"|"--restructuredtext"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:manpage]=(cmd =~/i/ \
- || mod.inspect =~/"--manpage"|"--man"/) \
+ act[:manpage]=(select_arr.inspect \
+ =~/"--manpage"|"--man"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:texinfo]=(cmd =~/I/ \
- || mod.inspect =~/"--texinfo"/) \
+ act[:texinfo]=(select_arr.inspect \
+ =~/"--texinfo"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:psql]=if mod.inspect =~/"--pg-\S+"/ \
- or ((mod.inspect =~/"--pg"/) \
- && (mod.inspect \
+ act[:psql]=if select_arr.inspect \
+ =~/"--pg-\S+"/ \
+ or ((select_arr.inspect =~/"--pg"/) \
+ && (select_arr.inspect \
=~/"--createdb"|"--create(?:all)?"|"--dropall"|"--recreate(?:all)?"|"--import"|"--update"|"--remove"/))
- act[:psql_createdb]=if mod.inspect \
+ act[:psql_createdb]=if select_arr.inspect \
=~/"--pg-createdb"|"--createdb"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- if mod.inspect \
+ if select_arr.inspect \
=~/"--pg-recreate(?:all)?"|"--recreate(?:all)?"/
act[:psql_drop]={ bool: true, set: :on }
act[:psql_create]={ bool: true, set: :on }
else
- act[:psql_drop]=if mod.inspect \
+ act[:psql_drop]=if select_arr.inspect \
=~/"--pg-dropall"|"--dropall"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:psql_create]=if mod.inspect \
+ act[:psql_create]=if select_arr.inspect \
=~/"--pg-create(?:all)?"|"--create(?:all)?"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
end
- act[:psql_import]=if mod.inspect \
+ act[:psql_import]=if select_arr.inspect \
=~/"--pg-import"|"--import"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:psql_update]=if mod.inspect \
+ act[:psql_update]=if select_arr.inspect \
=~/"--pg-update"|"--update"/
act[:psql_remove]={ bool: true, set: :on }
{ bool: true, set: :on }
else
- act[:psql_remove]=if mod.inspect \
+ act[:psql_remove]=if select_arr.inspect \
=~/"--pg-remove"|"--remove"/
{ bool: true, set: :on }
else
@@ -1028,46 +1249,48 @@ module SiSU_Commandline
{ bool: false, set: :na }
{ bool: false, set: :na }
end
- act[:sqlite]=if (mod.inspect =~/"--sqlite-\S+"/) \
- or ((mod.inspect =~/"--sqlite"/) \
- && (mod.inspect \
- =~/"--createdb"|"--create(?:all)?"|"--dropall"|"--recreate(?:all)?"|"--import"|"--update"|"--remove"/))
- act[:sqlite_createdb]=if mod.inspect \
+ act[:sqlite]=if select_arr.inspect \
+ =~/"--sqlite-\S+"/ \
+ or (select_arr.inspect \
+ =~/"--sqlite"/ \
+ && select_arr.inspect \
+ =~/"--createdb"|"--create(?:all)?"|"--dropall"|"--recreate(?:all)?"|"--import"|"--update"|"--remove"/)
+ act[:sqlite_createdb]=if select_arr.inspect \
=~/"--sqlite-createdb"|"--createdb"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- if mod.inspect \
+ if select_arr.inspect \
=~/"--sqlite-recreate(?:all)?"|"--recreate(?:all)?"/
act[:sqlite_drop]={ bool: true, set: :on }
act[:sqlite_create]={ bool: true, set: :on }
else
- act[:sqlite_create]=if mod.inspect \
+ act[:sqlite_create]=if select_arr.inspect \
=~/"--sqlite-create(?:all)?"|"--create(?:all)?"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:sqlite_drop]=if mod.inspect \
+ act[:sqlite_drop]=if select_arr.inspect \
=~/"--sqlite-dropall"|"--dropall"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
end
- act[:sqlite_import]=if mod.inspect \
+ act[:sqlite_import]=if select_arr.inspect \
=~/"--sqlite-import"|"--import"/
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:sqlite_update]=if mod.inspect \
+ act[:sqlite_update]=if select_arr.inspect \
=~/"--sqlite-update"|"--update"/
act[:sqlite_remove]={ bool: true, set: :on }
{ bool: true, set: :on }
else
- act[:sqlite_remove]=if mod.inspect \
+ act[:sqlite_remove]=if select_arr.inspect \
=~/"--sqlite-remove"|"--sqlite-remove"/
{ bool: true, set: :on }
else
@@ -1091,92 +1314,110 @@ module SiSU_Commandline
{ bool: false, set: :na }
{ bool: false, set: :na }
end
- act[:sqlite_discrete]=mod.inspect =~/"--sql"|"--sqlite"/ \
- && (mod.inspect !~/"--createdb"|"--create(?:all)?"|"--dropall"|"--recreate(?:all)?"|"--import"|"--update"|"--remove"/) \
+ act[:sqlite_discrete]=select_arr.inspect \
+ =~/"--sql"|"--sqlite"/ \
+ && (select_arr.inspect \
+ !~/"--createdb"|"--create(?:all)?"|"--dropall"|"--recreate(?:all)?"|"--import"|"--update"|"--remove"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:harvest]=(mod.inspect =~/"--harvest"/) \
+ act[:harvest]=(select_arr.inspect \
+ =~/"--harvest"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:po4a]=(cmd =~/P/ \
- || mod.inspect =~/"--po4a"|"--pot?"/) \
+ act[:po4a]=(select_arr.inspect \
+ =~/"--po4a"|"--pot?"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:git]=(cmd =~/g/ \
- || mod.inspect =~/"--git"/) \
+ act[:git]=(select_arr.inspect \
+ =~/"--git"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:hash_digests]=(cmd =~/N/ \
- || mod.inspect =~/"--digests?"|"--hash-digests"/) \
+ act[:hash_digests]=(select_arr.inspect \
+ =~/"--digests?"|"--hash-digests"/) \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:pdf_font_size]=if mod.inspect =~/"--(?:pdf-)?font-?size[=-](\d{1,2})(?:pt)?"/
+ act[:pdf_font_size]=if select_arr.inspect \
+ =~/"--(?:pdf-)?font-?size[=-](\d{1,2})(?:pt)?"/
$1
else :na
end
- act[:pdf_hyperlink_colors]=if mod.inspect =~/"--pdf-hyperlinks-(?:mono(?:chrome)?|no-color)"/
+ act[:pdf_hyperlink_colors]=if select_arr.inspect \
+ =~/"--pdf-hyperlinks-(?:mono(?:chrome)?|no-color)"/
:mono
- elsif mod.inspect =~/"--pdf-hyperlinks-color"/
+ elsif select_arr.inspect \
+ =~/"--pdf-hyperlinks-color"/
:color
else :na
end
- act[:hash_digest_algo]=if mod.inspect =~/"--hash-(?:sha)?512"/
+ act[:hash_digest_algo]=if select_arr.inspect \
+ =~/"--hash-(?:sha)?512"/
:sha512
- elsif mod.inspect =~/"--hash-(?:sha)?256"/
+ elsif select_arr.inspect \
+ =~/"--hash-(?:sha)?256"/
:sha256
- elsif mod.inspect =~/"--hash-md5"/
+ elsif select_arr.inspect \
+ =~/"--hash-md5"/
:md5
else :na
end
- act[:sample_search_form]=(cmd =~/F/ \
- || mod.inspect =~/"--sample-search-form"/) \
+ act[:sample_search_form]=select_arr.inspect \
+ =~/"--sample-search-form"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:webrick]=(cmd =~/W/ \
- || mod.inspect =~/"--webrick"/) \
+ act[:webrick]=select_arr.inspect \
+ =~/"--webrick"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:share_source]=(cmd =~/s/ \
- || mod.inspect =~/"--source"/) \
+ act[:share_source]=select_arr.inspect \
+ =~/"--source"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:sisupod]=(cmd =~/S/ \
- || mod.inspect =~/"--sisupod"/) \
+ act[:sisupod]=select_arr.inspect \
+ =~/"--sisupod"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:scp]=(cmd =~/r/ \
- || mod.inspect =~/"--scp"/) \
+ act[:scp]=select_arr.inspect \
+ =~/"--scp"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:rsync]=(cmd =~/R/ \
- || mod.inspect =~/"--rsync"|"--remote"/) \
+ act[:rsync]=select_arr.inspect \
+ =~/"--rsync"|"--remote"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:zap]=(cmd =~/Z/ \
- || mod.inspect =~/"--zap"|"--delete"/) \
+ act[:zap]=select_arr.inspect \
+ =~/"--zap"|"--delete"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:urls_all]=(cmd =~/U/ \
- || mod.inspect =~/"--urls-all"/) \
+ act[:urls_all]=select_arr.inspect \
+ =~/"--urls-all"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:urls_selected]=(cmd =~/u/ \
- || mod.inspect =~/"--urls"/) \
- ? { bool: true, set: :on }
- : { bool: false, set: :na }
- act[:sitemap]=(cmd =~/Y/ \
- || mod.inspect =~/"--sitemap"/) \
+ act[:urls_selected]=if select_arr.inspect \
+ =~/"--urls"/
+ { bool: true, set: :on }
+ elsif select_arr.inspect \
+ =~/"--harvest/
+ { bool: false, set: :off }
+ elsif select_arr.inspect \
+ =~/"--verbose"/
+ { bool: true, set: :on }
+ else
+ { bool: false, set: :na }
+ end
+ act[:sitemap]=select_arr.inspect \
+ =~/"--sitemap"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:qrcode]=(cmd =~/Q/ \
- || mod.inspect =~/"--qrcode"/) \
+ act[:qrcode]=select_arr.inspect \
+ =~/"--qrcode"/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:help]=(mod.inspect =~/"--help/) \
+ act[:help]=select_arr.inspect \
+ =~/"--help/ \
? { bool: true, set: :on }
: { bool: false, set: :na }
- act[:ao]=if (cmd =~/m/ \
- || mod.inspect =~/"--ao"|"--dal"/)
+ act[:ao]=if select_arr.inspect \
+ =~/"--ao"|"--dal"/
{ bool: true, set: :on }
elsif (act[:txt][:set]==:on \
|| act[:txt_textile][:set]==:on \
@@ -1199,6 +1440,13 @@ module SiSU_Commandline
|| act[:share_source][:set]==:on \
|| act[:sisupod][:set]==:on \
|| act[:concordance][:set]==:on \
+ || act[:sqlite_discrete][:set]==:on \
+ || act[:sqlite_import][:set]==:on \
+ || act[:sqlite_update][:set]==:on \
+ || act[:sqlite_remove][:set]==:on \
+ || act[:psql_import][:set]==:on \
+ || act[:psql_update][:set]==:on \
+ || act[:psql_remove][:set]==:on \
|| act[:xml_dom][:set]==:on \
|| act[:xml_sax][:set]==:on \
|| act[:xml_docbook_book][:set]==:on \
@@ -1206,27 +1454,18 @@ module SiSU_Commandline
|| act[:xml_scaffold_structure_sisu][:set]==:on \
|| act[:xml_scaffold_structure_collapse][:set]==:on )
{ bool: true, set: :on }
- #if cmd !~/[mn]/
- # extra+=if cmd =~/[abegHhIiLNOoPpQTtwXxyz]/ \
- # and cmd !~/[mn]/
- # 'm' #% add ao
- #elsif (act[:txt][:set]==:on \
- # { bool: true, set: :on }
- # elsif ((cmd =~/[Dd]/ \
- # or (mod.inspect =~/--(?:(?:sq)?lite|pg(?:sql)?)/)) \
- # and mod.inspect !~/(?:remove|(?:(?:re)?create(?:all)?|dropall|drop)$)/) \
- # and cmd !~/[mn]/
- # 'm' #% add ao
else
{ bool: false, set: :na }
end
- act[:manifest]=if mod.inspect =~/"--inc-manifest"/
+ act[:manifest]=if select_arr.inspect \
+ =~/"--inc-manifest"/
{ bool: true, set: :on }
- elsif mod.inspect =~/"--(?:exc|no)-manifest"/ \
+ elsif select_arr.inspect \
+ =~/"--(?:exc|no)-manifest"/ \
|| act[:switch][:off].inspect =~/"manifest"/
{ bool: false, set: :off }
- elsif (cmd =~/y/ \
- || mod.inspect =~/"--manifest"/)
+ elsif select_arr.inspect \
+ =~/"--manifest"/
{ bool: true, set: :on }
elsif (act[:txt][:set]==:on \
|| act[:txt_textile][:set]==:on \
@@ -1256,71 +1495,55 @@ module SiSU_Commandline
|| act[:xml_scaffold_structure_sisu][:set]==:on \
|| act[:xml_scaffold_structure_collapse][:set]==:on )
{ bool: true, set: :on }
- ## if cmd !~/y/
- ## extra+=if cmd =~/[abeHhIiNopQSstwXxz]/ \
- ## and cmd !~/y/
- ## 'ym' #% add manifest
- #elsif (act[:txt][:set]==:on \
- # { bool: true, set: :on }
- # elsif (cmd =~/[Dd]/ \
- # or mod.inspect =~/--(?:(?:sq)?lite|pg(?:sql)?)/) \
- # and files[0] !~/^remove$/ \
- # and cmd !~/y/
- # 'ym' #% add manifest
else { bool: true, set: :na }
end
act[:console_messages] = ''
- act[:verbose]=if (cmd =~/v/ \
- || mod.inspect =~/"--verbose"/)
+ act[:verbose]=if select_arr.inspect \
+ =~/"--verbose"/
act[:console_messages] << ' --verbose '
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:verbose_plus]=if (cmd =~/V/ \
- || mod.inspect =~/"--very-verbose"/)
+ act[:verbose_plus]=if select_arr.inspect \
+ =~/"--very-verbose"/
act[:console_messages] << ' --very-verbose '
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:version_info]=if (cmd =~/[vVM]/ \
- || mod.inspect =~/"--verbose"|"--maintenance"/)
+ act[:version_info]=if select_arr.inspect \
+ =~/"--version"|"--verbose"|"--maintenance"/
act[:console_messages] << ' --maintenance '
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:quiet]=if (cmd =~/q/ \
- || mod.inspect =~/"--quiet"/)
+ act[:quiet]=if (select_arr.inspect =~/"--quiet"/)
act[:console_messages] << ' --quiet '
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:color_state]=if mod.inspect =~/"--color-on"|"--color"/
+ act[:color_state]=if select_arr.inspect =~/"--color-on"|"--color"/
act[:console_messages] << ' --color-on '
{ bool: true, set: :on }
- elsif (cmd =~/k/ \
- || mod.inspect =~/"--color-off"/)
+ elsif (select_arr.inspect =~/"--color-off"/)
act[:console_messages] << ' --color-off '
{ bool: false, set: :off }
else { bool: true, set: :na } #fix default color
end
-# act[:color_toggle]=if cmd =~/c/ \
-# or mod.inspect =~/"--color-toggle"/
+# act[:color_toggle]=if select_arr.inspect =~/"--color-toggle"/
# true
# else false
# end
- act[:maintenance]=if (cmd =~/M/ \
- || mod.inspect =~/"--maintenance|--keep-processing-files"/)
+ act[:maintenance]=if (select_arr.inspect =~/"--maintenance|--keep-processing-files"/)
act[:console_messages] << ' --maintenance '
{ bool: true, set: :on }
else
{ bool: false, set: :na }
end
- act[:profile]=if (cmd =~/E/ \
- || mod.inspect =~/"--profile"/)
+ act[:profile]=if (select_arr.inspect =~/"--profile"/)
act[:console_messages] << ' --color-off '
{ bool: true, set: :on }
else
@@ -1329,11 +1552,17 @@ module SiSU_Commandline
@act=act
end
end
- def cmd
- @cmd
+ def opt_ch
+ @opt_ch
end
- def mod
- @mod
+ def selections
+ def arr
+ @select_arr.sort
+ end
+ def str
+ @select_str ||= arr.join(' ')
+ end
+ self
end
def act
@@act
@@ -1342,6 +1571,9 @@ module SiSU_Commandline
files_mod=files
@files_mod=files_mod
end
+ def files
+ @files
+ end
def f_pth
@f_pth
end
diff --git a/lib/sisu/v5/manifest.rb b/lib/sisu/v5/manifest.rb
index f2a9e748..0b4f79a4 100644
--- a/lib/sisu/v5/manifest.rb
+++ b/lib/sisu/v5/manifest.rb
@@ -116,7 +116,7 @@ module SiSU_Manifest
data=SiSU_HTML::Source::HTML_Environment.new(@particulars).tuned_file_instructions
SiSU_Manifest::Source::Output.new(@md).check_output(data)
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -1019,7 +1019,7 @@ WOK
WOK
output
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/manpage.rb b/lib/sisu/v5/manpage.rb
index 0bcf1799..c8957dfe 100644
--- a/lib/sisu/v5/manpage.rb
+++ b/lib/sisu/v5/manpage.rb
@@ -94,7 +94,7 @@ module SiSU_Manpage
(@opt.act[:verbose][:set]==:on \
|| @opt.act[:verbose_plus][:set]==:on \
|| @opt.act[:maintenance][:set]==:on) \
- && @opt.cmd !~/q/ \
+ && @opt.act[:quiet][:set]==:on \
? SiSU_Screen::Ansi.new(
@opt.act[:color_state][:set],
'Manpage',
@@ -116,7 +116,7 @@ module SiSU_Manpage
@ao_array=SiSU_AO::Source.new(@opt).get # ao file drawn here
SiSU_Manpage::Source::Scroll.new(@md,@ao_array).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/po4a.rb b/lib/sisu/v5/po4a.rb
index b5086eb7..66798dbd 100644
--- a/lib/sisu/v5/po4a.rb
+++ b/lib/sisu/v5/po4a.rb
@@ -167,7 +167,7 @@ module SiSU_Po4a
SiSU_Po4a::Source::Scroll.new(fn,@ao_array_lang_src,@ao_array_lang_translation,@@md_src,@@md_trn,wrap_width).songsheet
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/qrcode.rb b/lib/sisu/v5/qrcode.rb
index 19d310c1..3a7d9406 100644
--- a/lib/sisu/v5/qrcode.rb
+++ b/lib/sisu/v5/qrcode.rb
@@ -111,7 +111,7 @@ module SiSU_QRcode
data=SiSU_HTML::Source::HTML_Environment.new(@particulars).tuned_file_instructions
OutputInfo.new(@md).check_output(data)
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -152,7 +152,7 @@ module SiSU_QRcode
mn += x
end
manifest.close if @md.opt.act[:maintenance][:set]==:on
- cmd=SiSU_Env::SystemCall.new(mn,@f.place_file.qrcode_md.dir,@md.opt.cmd)
+ cmd=SiSU_Env::SystemCall.new(mn,@f.place_file.qrcode_md.dir,@md.opt.selections.str)
cmd.qrencode
end
def output_metadata_short
@@ -160,7 +160,7 @@ module SiSU_QRcode
@manifest[:txt_title].each do |x|
mn += x
end
- cmd=SiSU_Env::SystemCall.new(mn,@f.place_file.qrcode_title.dir,@md.opt.cmd)
+ cmd=SiSU_Env::SystemCall.new(mn,@f.place_file.qrcode_title.dir,@md.opt.selections.str)
cmd.qrencode
end
def summarize(id,file,pth='',rel='',url='',img='● ')
@@ -193,7 +193,7 @@ WOK
|| @md.opt.act[:verbose_plus][:set]==:on \
|| @md.opt.act[:maintenance][:set]==:on)
SiSU_Screen::Ansi.new(
- @md.opt.cmd,
+ @md.opt.selections.str,
"#{dgst[1]} #{file}"
).warn
end
@@ -403,12 +403,13 @@ WOK
summarize(id,file,pth,rel,url)
end
if FileTest.file?(@f.place_file.txt.dir)==true
- id=if @md.opt.cmd =~/a/ then 'Plaintext (Unix (UTF-8) with footnotes)'
- elsif @md.opt.cmd =~/e/ then 'Plaintext (Unix (UTF-8) with endnotes)'
- elsif @md.opt.cmd =~/A/ then 'Plaintext (dos (UTF-8) with footnotes)'
- elsif @md.opt.cmd =~/E/ then 'Plaintext (dos (UTF-8) with endnotes)'
- else 'Plaintext (UTF-8)'
- end
+ id='Plaintext (UTF-8)'
+ #id=if @md.opt.selections.str =~/a/ then 'Plaintext (Unix (UTF-8) with footnotes)'
+ #elsif @md.opt.selections.str =~/e/ then 'Plaintext (Unix (UTF-8) with endnotes)'
+ #elsif @md.opt.selections.str =~/A/ then 'Plaintext (dos (UTF-8) with footnotes)'
+ #elsif @md.opt.selections.str =~/E/ then 'Plaintext (dos (UTF-8) with endnotes)'
+ #else 'Plaintext (UTF-8)'
+ #end
pth=@f.output_path.txt.dir
rel=@f.output_path.txt.rel_sm
url=@f.output_path.txt.url
@@ -746,7 +747,7 @@ WOK
output_metadata
output_metadata_short
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/rexml.rb b/lib/sisu/v5/rexml.rb
index c4512872..98263899 100644
--- a/lib/sisu/v5/rexml.rb
+++ b/lib/sisu/v5/rexml.rb
@@ -130,7 +130,7 @@ module SiSU_Rexml
exit
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/se_createsite.rb b/lib/sisu/v5/se_createsite.rb
index 33e334ce..a7ab7cf5 100644
--- a/lib/sisu/v5/se_createsite.rb
+++ b/lib/sisu/v5/se_createsite.rb
@@ -190,16 +190,20 @@ module SiSU_Create_Site
if defined? @rc['permission_set']['css_modify'] \
and @rc['permission_set']['css_modify']
SiSU_Screen::Ansi.new(
- @opt.cmd,
+ @opt.selections.str,
"*WARN* modify is css set to: #{@rc['permission_set']['css_modify']}"
- ).warn if @opt.cmd=~/[MV]/
+ ).warn if @opt.act[:verbose_plus][:set]==:on \
+ or @opt.act[:maintenance][:set]==:on
css_path.each do |x|
if FileTest.directory?(x)
FileUtils::cd(x)
source=Dir.glob("*.{css}")
source.each do |i|
if FileTest.file?(i)
- FileUtils::cp(i,"#{@env.path.output}/#{@env.path.style}")
+ FileUtils::cp(
+ i,
+ @env.path.output + '/' + @env.path.style
+ )
else STDERR.puts %{\t*WARN* did not find css - "#{i}" [#{__FILE__}:#{__LINE__}]}
end
end
@@ -208,62 +212,63 @@ module SiSU_Create_Site
end
else
SiSU_Screen::Ansi.new(
- @opt.cmd,
+ @opt.selections.str,
"*WARN* modify css is not set or is set to: false"
- ).warn if @opt.cmd=~/[MV]/
+ ).warn if @opt.act[:verbose_plus][:set]==:on \
+ or @opt.act[:maintenance][:set]==:on
end
fn_css=SiSU_Env::CSS_Default.new
css=SiSU_Style::CSS.new
path_style="#{@env.path.output}/#{@env.path.style}"
FileUtils::mkdir_p(path_style) \
unless FileTest.directory?(path_style)
- if @opt.cmd =~/C/ \
+ if @opt.act[:site_init][:set]==:on \
or not FileTest.file?("#{path_style}/#{fn_css.homepage}")
style=File.new("#{path_style}/#{fn_css.homepage}",'w')
style << css.homepage
style.close
end
- if @opt.cmd =~/C/ \
+ if @opt.act[:site_init][:set]==:on \
or not FileTest.file?("#{path_style}/#{fn_css.html_tables}")
style=File.new("#{path_style}/#{fn_css.html_tables}",'w')
style << css.html_tables
style.close
end
- if @opt.cmd =~/C/ \
+ if @opt.act[:site_init][:set]==:on \
or not FileTest.file?("#{path_style}/#{fn_css.html}")
style=File.new("#{path_style}/#{fn_css.html}",'w')
style << css.html
style.close
end
- if @opt.cmd =~/C/ \
+ if @opt.act[:site_init][:set]==:on \
or not FileTest.file?("#{path_style}/#{fn_css.harvest}")
style=File.new("#{path_style}/#{fn_css.harvest}",'w')
style << css.harvest
style.close
end
- if @opt.cmd =~/C/ \
- or (@opt.cmd =~/[x]/ \
+ if @opt.act[:site_init][:set]==:on \
+ or (@opt.act[:xml_sax][:set]==:on \
and not FileTest.file?("#{path_style}/#{fn_css.xml_sax}"))
style=File.new("#{path_style}/#{fn_css.xml_sax}",'w')
style << css.xml_sax
style.close
end
- if @opt.cmd =~/C/ \
- or (@opt.cmd =~/[X]/ \
+ if @opt.act[:site_init][:set]==:on \
+ or (@opt.act[:xml_dom][:set]==:on \
and not FileTest.file?("#{path_style}/#{fn_css.xml_dom}"))
style=File.new("#{path_style}/#{fn_css.xml_dom}",'w')
style << css.xml_dom
style.close
end
- if @opt.cmd =~/C/ \
+ if @opt.act[:site_init][:set]==:on \
or (@opt.act[:xml_docbook_book][:set] == :on \
and not FileTest.file?("#{path_style}/#{fn_css.xml_docbook}"))
style=File.new("#{path_style}/#{fn_css.xml_docbook}",'w')
style << css.xml_docbook
style.close
end
- if @opt.cmd =~/C/ \
- or (@opt.cmd =~/[b]/ \
+ if @opt.act[:site_init][:set]==:on \
+ or (@opt.act[:xhtml][:set] == :on \
and not FileTest.file?("#{path_style}/#{fn_css.xhtml}"))
style=File.new("#{path_style}/#{fn_css.xhtml}",'w')
style << css.xhtml
diff --git a/lib/sisu/v5/se_db.rb b/lib/sisu/v5/se_db.rb
index 8ed78afa..3c6fdcba 100644
--- a/lib/sisu/v5/se_db.rb
+++ b/lib/sisu/v5/se_db.rb
@@ -94,7 +94,7 @@ module SiSU_Info_Db
def psql
def user(opt=nil)
if opt \
- and opt.mod.inspect =~/--db-user[=-]["']?(\S+)["']+/
+ and opt.selections.str.inspect =~/--db-user[=-]["']?(\S+)["']+/
$1
elsif opt \
and opt.mod =~/--webserv[=-]webrick/
@@ -176,7 +176,7 @@ module SiSU_Db_Op
begin
@md=md
rescue
- SiSU_Screen::Ansi.new(md.opt.cmd,$!,$@).rescue do
+ SiSU_Screen::Ansi.new(md.opt.selections.str,$!,$@).rescue do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/se_file_op.rb b/lib/sisu/v5/se_file_op.rb
index d8a919dd..83e9c1b9 100644
--- a/lib/sisu/v5/se_file_op.rb
+++ b/lib/sisu/v5/se_file_op.rb
@@ -188,7 +188,7 @@ module SiSU_File_Op
@md,@fno=md,fno
@env=SiSU_Env::InfoEnv.new(@md.fns)
rescue
- SiSU_Screen::Ansi.new(md.opt.cmd,$!,$@).rescue do
+ SiSU_Screen::Ansi.new(md.opt.selections.str,$!,$@).rescue do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/se_filemap.rb b/lib/sisu/v5/se_filemap.rb
index 0c4c84c0..075cdb83 100644
--- a/lib/sisu/v5/se_filemap.rb
+++ b/lib/sisu/v5/se_filemap.rb
@@ -68,7 +68,7 @@ module SiSU_File_Map
attr_accessor :local_sisu_source
def initialize(opt='') #watch / REVIEW
super()
- @opt=opt #,opt.fns,opt.cmd
+ @opt=opt #,opt.fns,opt.selections.str
@env=(@opt.fns && !(@opt.fns.empty?) \
? (SiSU_Env::InfoEnv.new(@opt.fns))
: (SiSU_Env::InfoEnv.new('dummy.sst')))
@@ -216,7 +216,7 @@ module SiSU_File_Map
ft=ft.uniq
filetypes=ft.join(',')
@filetypes=if filetypes !~/..+/ then '' # -r called alone, copy all
- elsif @opt.cmd =~/u/ then '' # -u added, copy all, (used to create remote directory tree see output path), not the usual function of -u
+ elsif @opt.selections.str =~/u/ then '' # -u added, copy all, (used to create remote directory tree see output path), not the usual function of -u
elsif filetypes =~/\S+?,\S+/ then '*{' + filetypes + '}' # more than one relevant file type
else '*' + filetypes # one relevant file type
end
diff --git a/lib/sisu/v5/se_hub_particulars.rb b/lib/sisu/v5/se_hub_particulars.rb
index 4372ac72..17942a71 100644
--- a/lib/sisu/v5/se_hub_particulars.rb
+++ b/lib/sisu/v5/se_hub_particulars.rb
@@ -127,7 +127,7 @@ module SiSU_Particulars
@md=SiSU_Param::Parameters.new(opt).get
self
rescue
- SiSU_Errors::Rescued.new($!,$@,opt.cmd,opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,opt.selections.str,opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -138,7 +138,7 @@ module SiSU_Particulars
@env=SiSU_Env::InfoEnv.new(opt.fns)
self
rescue
- SiSU_Errors::Rescued.new($!,$@,opt.cmd,opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,opt.selections.str,opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -149,7 +149,7 @@ module SiSU_Particulars
@file=SiSU_Env::FileOp.new(@md)
self
rescue
- SiSU_Errors::Rescued.new($!,$@,opt.cmd,opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,opt.selections.str,opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -160,7 +160,7 @@ module SiSU_Particulars
@ao_array=SiSU_AO::Source.new(opt).get
self
rescue
- SiSU_Errors::Rescued.new($!,$@,opt.cmd,opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,opt.selections.str,opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -170,7 +170,7 @@ module SiSU_Particulars
@sst_idx=SiSU_AO::Source.new(opt).get_idx_sst
self
rescue
- SiSU_Errors::Rescued.new($!,$@,opt.cmd,opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,opt.selections.str,opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -180,7 +180,7 @@ module SiSU_Particulars
@raw_idx=SiSU_AO::Source.new(opt).get_idx_raw
self
rescue
- SiSU_Errors::Rescued.new($!,$@,opt.cmd,opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,opt.selections.str,opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -190,7 +190,7 @@ module SiSU_Particulars
@html_idx=SiSU_AO::Source.new(opt).get_idx_html
self
rescue
- SiSU_Errors::Rescued.new($!,$@,opt.cmd,opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,opt.selections.str,opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -200,7 +200,7 @@ module SiSU_Particulars
@xhtml_idx=SiSU_AO::Source.new(opt).get_idx_xhtml
self
rescue
- SiSU_Errors::Rescued.new($!,$@,opt.cmd,opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,opt.selections.str,opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -213,11 +213,11 @@ module SiSU_Particulars
self
rescue
if @md
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
else
- SiSU_Errors::Rescued.new($!,$@,opt.cmd,opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,opt.selections.str,opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -229,7 +229,7 @@ module SiSU_Particulars
@ocn_htmlseg_map=SiSU_AO::Source.new(@md).get_map_ocn_htmlseg
self
rescue
- SiSU_Errors::Rescued.new($!,$@,opt.cmd,opt.fnl).location do
+ SiSU_Errors::Rescued.new($!,$@,opt.selections.str,opt.fnl).location do
__LINE__.to_s + ':' + __FILE__
end
end
diff --git a/lib/sisu/v5/se_info_env.rb b/lib/sisu/v5/se_info_env.rb
index df3d0216..5d91e433 100644
--- a/lib/sisu/v5/se_info_env.rb
+++ b/lib/sisu/v5/se_info_env.rb
@@ -1634,7 +1634,7 @@ WOK
http=http.strip
end
def webserv_base_cgi(opt=nil) #web url for local webserv (localhost, or hostname)
- http=if opt.mod.inspect =~/--webserv-(?:cgi|db|search)[=-]["']?(\S+)["']+/
+ http=if opt.selections.str =~/--webserv-(?:cgi|db|search)[=-]["']?(\S+)["']+/
m=$1
(m=~/http\/\/:/) ? m : %{http://#{m}}
elsif defined? @rc['webserv_cgi']['host'] \
@@ -1708,7 +1708,7 @@ WOK
end
end
def webserv_files_from_db(opt=nil) #sort this out, messy
- if opt.mod.inspect =~/--webserv-output[=-]["']?(\S+)["']+/
+ if opt.selections.str =~/--webserv-output[=-]["']?(\S+)["']+/
m=$1
(m=~/(?:http|file\/)\/\/:/) ? m : %{http://#{m}}
else
@@ -1729,10 +1729,10 @@ WOK
#%q{http://#{ENV['HTTP_HOST']}/cgi-bin}
end
def cgi_sample_search_form_name(opt=nil)
- if opt.mod.inspect \
+ if opt.selections.str \
=~/--(?:cgi-)?search-form-name[=-]["']?(\S+?\.cgi)/
$1
- elsif not opt.mod.inspect =~/--db[=-]["']?sqlite/ \
+ elsif not opt.selections.str =~/--db[=-]["']?sqlite/ \
and defined? @rc['search'] \
and defined? @rc['search']['sisu'] \
and defined? @rc['search']['sisu']['action'] \
@@ -1740,7 +1740,7 @@ WOK
/(?:https?:\/\/\S+?)\/([^\/]+?\.cgi)$/.
match(@rc['search']['sisu']['action'])[1]
else
- (opt.mod.inspect =~/--db[=-]["']?sqlite/) \
+ (opt.selections.str =~/--db[=-]["']?sqlite/) \
? "#{Db[:name_prefix_db]}sqlite.cgi" \
: "#{Db[:name_prefix_db]}pg.cgi"
end
@@ -1783,12 +1783,12 @@ WOK
path.image_source_include
else
if @@local_image==true
- cmd=@cmd ? @cmd : ''
+ cmd=@selections.str ? @selections.str : ''
SiSU_Screen::Ansi.new(
cmd,
"WARNING - no local image directory or images:",
defaults[:image_local]
- ).warn unless cmd =~/q/
+ ).warn unless @md.opt.act[:quiet][:set]==:on
@@local_image=false
end
url.images
@@ -1813,7 +1813,7 @@ WOK
@cmd,
'WARNING - image directory for external images or no such images:',
:image_external
- ).warn unless @cmd =~/q/
+ ).warn unless @md.opt.act[:quiet][:set]==:on
@@local_image=false
end
url.images_external
@@ -1827,15 +1827,15 @@ WOK
def port
def webrick_port
if @md \
- and @md.opt.cmd.inspect=~/-F/ \
- and @md.opt.mod.inspect=~/port=(\d+)/
+ and @md.opt.act[:sample_search_form][:set]==:on \
+ and @md.opt.selections.str=~/port=(\d+)/
$1
else
if defined? @rc['webserv_cgi']['port']
if @rc['webserv_cgi']['port'].nil? \
and (defined? @md.opt.mod \
and not @md.opt.mod.nil? \
- and @md.opt.mod.inspect=~/webrick/)
+ and @md.opt.selections.str=~/webrick/)
defaults[:webserv_port_cgi]
elsif not @rc['webserv_cgi']['port'].nil?
@rc['webserv_cgi']['port']
@@ -1847,15 +1847,15 @@ WOK
end
def webserv_port_cgi(opt=nil)
port=if opt \
- and opt.cmd.inspect=~/-F/ \
- and opt.mod.inspect=~/port=(\d+)/
+ and @md.opt.act[:sample_search_form][:set]==:on \
+ and opt.selections.str=~/port=(\d+)/
$1
else
port=if defined? @rc['webserv_cgi']['port']
if @rc['webserv_cgi']['port'].nil? \
and (defined? opt.mod \
and not opt.mod.nil? \
- and opt.mod.inspect=~/webrick/)
+ and opt.selections.str=~/webrick/)
defaults[:webserv_port_cgi]
elsif not @rc['webserv_cgi']['port'].nil?
@rc['webserv_cgi']['port']
@@ -1864,7 +1864,7 @@ WOK
else
if (defined? opt.mod \
and not opt.mod.nil? \
- and opt.mod.inspect=~/webrick/)
+ and opt.selections.str=~/webrick/)
defaults[:webserv_port_cgi]
else nil
end
@@ -2145,7 +2145,7 @@ WOK
SiSU_Screen::Ansi.new(
'',
'*WARN* file not found: ' + fns_pod
- ).warn unless @cmd=~/q/
+ ).warn unless @md.opt.act[:quiet][:set]==:on
end
sisupod_processing_path
end
@@ -2164,7 +2164,7 @@ WOK
: (SiSU_Screen::Ansi.new(
'',
"*WARN* file not found: #{fns_pod}"
- ).warn unless @cmd=~/q/)
+ ).warn unless @md.opt.act[:quiet][:set]==:on)
sisupod_processing_path
end
end
diff --git a/lib/sisu/v5/se_processing.rb b/lib/sisu/v5/se_processing.rb
index 0a035ce8..35fa72c2 100644
--- a/lib/sisu/v5/se_processing.rb
+++ b/lib/sisu/v5/se_processing.rb
@@ -465,62 +465,172 @@ module SiSU_Processing_Settings
end
module SiSU_Info_Processing_Flag
class InfoProcessingFlag
- attr_accessor :color,:cf_0,:cf_1,:cf_2,:cf_3,:cf_4,:cf_5
+ attr_accessor :color,:act_0,:act_1,:act_2,:act_3,:act_4,:act_5,:act_6,:act_7,:act_8,:act_9
def initialize
@rc=SiSU_Get_Init::GetInit.new.sisu_yaml.rc
end
- def color #processing flag shortcuts
+ def color #configurable processing flag shortcuts
(defined? @rc['flag']['color']) \
? @rc['flag']['color']
: false
end
- def cf_0 #processing flag shortcuts
- if defined? @rc['flag']['default'] \
- and @rc['flag']['default'].is_a?(String)
- @rc['flag']['default']
- else #'-NQhewpotbxXdyYv'
- '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --sqlite --manifest'
+ def act_0 #configurable processing flag shortcuts
+ def str
+ if defined? @rc['flag']['act0'] \
+ and @rc['flag']['act0'].is_a?(String)
+ @rc['flag']['act0']
+ elsif defined? @rc['flag']['default'] \
+ and @rc['flag']['default'].is_a?(String)
+ @rc['flag']['default']
+ else
+ '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --sqlite --manifest --verbose'
+ end
+ end
+ def arr
+ str.scan(/\S+/)
+ end
+ self
+ end
+ def act_1 #configurable processing flag shortcuts
+ def str
+ if defined? @rc['flag']['act1'] \
+ and @rc['flag']['act1'].is_a?(String)
+ @rc['flag']['act1']
+ elsif defined? @rc['flag']['i'] \
+ and @rc['flag']['i'].is_a?(String)
+ @rc['flag']['i']
+ else
+ '--digest --text --html --manifest'
+ end
+ end
+ def arr
+ str.scan(/\S+/)
+ end
+ self
+ end
+ def act_2 #configurable processing flag shortcuts
+ def str
+ if defined? @rc['flag']['act2'] \
+ and @rc['flag']['act2'].is_a?(String)
+ @rc['flag']['act2']
+ elsif defined? @rc['flag']['ii'] \
+ and @rc['flag']['ii'].is_a?(String)
+ @rc['flag']['ii']
+ else
+ '--digest --text --html --epub --pdf --manifest'
+ end
+ end
+ def arr
+ str.scan(/\S+/)
+ end
+ self
+ end
+ def act_3 #configurable processing flag shortcuts
+ def str
+ if defined? @rc['flag']['act3'] \
+ and @rc['flag']['act3'].is_a?(String)
+ @rc['flag']['act3']
+ elsif defined? @rc['flag']['iii'] \
+ and @rc['flag']['iii'].is_a?(String)
+ @rc['flag']['iii']
+ else
+ '--digest --qrcode --text --html --epub --concordance --pdf --manifest'
+ end
+ end
+ def arr
+ str.scan(/\S+/)
+ end
+ self
+ end
+ def act_4 #configurable processing flag shortcuts
+ def str
+ if defined? @rc['flag']['act4'] \
+ and @rc['flag']['act4'].is_a?(String)
+ @rc['flag']['act4']
+ elsif defined? @rc['flag']['iv'] \
+ and @rc['flag']['iv'].is_a?(String)
+ @rc['flag']['iv']
+ else
+ '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --manifest'
+ end
+ end
+ def arr
+ str.scan(/\S+/)
end
+ self
end
- def cf_1 #processing flag shortcuts
- if defined? @rc['flag']['i'] \
- and @rc['flag']['i'].is_a?(String)
- @rc['flag']['i']
- else #'-Qhewpoty'
- '--digest --qrcode --text --html --epub --concordance --pdf --manifest'
+ def act_5 #configurable processing flag shortcuts
+ def str
+ if defined? @rc['flag']['act5'] \
+ and @rc['flag']['act5'].is_a?(String)
+ @rc['flag']['act5']
+ elsif defined? @rc['flag']['v'] \
+ and @rc['flag']['v'].is_a?(String)
+ @rc['flag']['v']
+ else
+ '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --sqlite --manifest'
+ end
end
+ def arr
+ str.scan(/\S+/)
+ end
+ self
end
- def cf_2 #processing flag shortcuts
- if defined? @rc['flag']['ii'] \
- and @rc['flag']['ii'].is_a?(String)
- @rc['flag']['ii']
- else #'-NQhewpotbxXdy'
- '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --manifest'
+ def act_6 #configurable processing flag shortcuts
+ def str
+ if defined? @rc['flag']['act6'] \
+ and @rc['flag']['act6'].is_a?(String)
+ @rc['flag']['act6']
+ else
+ '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --sqlite --manifest'
+ end
+ end
+ def arr
+ str.scan(/\S+/)
end
+ self
end
- def cf_3 #processing flag shortcuts
- if defined? @rc['flag']['iii'] \
- and @rc['flag']['iii'].is_a?(String)
- @rc['flag']['iii']
- else #'-NQhewpotbxXdyY'
- '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --sqlite --manifest'
+ def act_7 #configurable processing flag shortcuts
+ def str
+ if defined? @rc['flag']['act7'] \
+ and @rc['flag']['act7'].is_a?(String)
+ @rc['flag']['act7']
+ else
+ '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --sqlite --source --sisupod --manifest'
+ end
+ end
+ def arr
+ str.scan(/\S+/)
end
+ self
end
- def cf_4 #processing flag shortcuts
- if defined? @rc['flag']['iv'] \
- and @rc['flag']['iv'].is_a?(String)
- @rc['flag']['iv']
- else #'-NQhewpotbxXdDyY --update'
- '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --postresql --update --manifest'
+ def act_8 #configurable processing flag shortcuts
+ def str
+ if defined? @rc['flag']['act8'] \
+ and @rc['flag']['act8'].is_a?(String)
+ @rc['flag']['act8']
+ else
+ '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --pg --update --manifest'
+ end
end
+ def arr
+ str.scan(/\S+/)
+ end
+ self
end
- def cf_5 #processing flag shortcuts
- if defined? @rc['flag']['v'] \
- and @rc['flag']['v'].is_a?(String)
- @rc['flag']['v']
- else #'-NQhewpotbxXdyYsS'
- '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --sqlite --manifest --sisupod --source'
+ def act_9 #configurable processing flag shortcuts
+ def str
+ if defined? @rc['flag']['act9'] \
+ and @rc['flag']['act9'].is_a?(String)
+ @rc['flag']['act9']
+ else
+ '--digest --qrcode --text --html --epub --concordance --pdf --odf --docbook --xhtml --xml-sax --xml-dom --pg --update --source --sisupod --manifest'
+ end
+ end
+ def arr
+ str.scan(/\S+/)
end
+ self
end
end
end
diff --git a/lib/sisu/v5/se_programs.rb b/lib/sisu/v5/se_programs.rb
index 35d68cb6..4eef1ce9 100644
--- a/lib/sisu/v5/se_programs.rb
+++ b/lib/sisu/v5/se_programs.rb
@@ -87,7 +87,7 @@ module SiSU_Sys_Call
end
@sys.locale
end
- def file_encoding(filename,cmd='') #file encoding
+ def file_encoding(filename,act='') #file encoding
program='file'
fnsp=SiSU_Env::InfoEnv.new(filename).source_file_with_path
if program_found?(program)
@@ -98,9 +98,13 @@ module SiSU_Sys_Call
encoding
else 'UTF-8 assumed, encoding undetermined'
end
- puts encoding if cmd =~/[VM]/
+ if act[:verbose_plus][:set] ==:on \
+ or act[:maintenance][:set] ==:on
+ puts encoding
+ end
encoding
- else encoding='UTF-8 assumed, file encoding check program unavailable'
+ else
+ 'UTF-8 assumed, file encoding check program unavailable'
end
end
def wc #word count
diff --git a/lib/sisu/v5/texinfo.rb b/lib/sisu/v5/texinfo.rb
index e792a989..16aef8bf 100644
--- a/lib/sisu/v5/texinfo.rb
+++ b/lib/sisu/v5/texinfo.rb
@@ -132,7 +132,7 @@ module SiSU_TexInfo
@marshalfile=SiSU_Env::InfoFile.new(@opt.fns).marshal.ao_content
if FileTest.file?(@marshalfile)==true
File.open(@marshalfile) { |f| @@tuned_file=Marshal.load(f)}
- #tell.meta_verse_skipped if @opt.cmd =~/[vVM]/
+ #tell.meta_verse_skipped if @opt.selections.str =~/[vVM]/
else
tex_array=IO.readlines(@opt.fns,'')
SiSU_Metaverse.songsheet(tex_array)
@@ -418,7 +418,7 @@ module SiSU_TexInfo
pwd=Dir.pwd
case sfx
when /(?:-|ssm\.)?sst$/
- @env=SiSU_Env::InfoEnv.new(@md.fns,@md.opt.cmd)
+ @env=SiSU_Env::InfoEnv.new(@md.fns,@md.opt.selections.str)
Dir.chdir(@env.processing_path.texi)
texinfo=SiSU_Env::SystemCall.new("#{fnb}.texinfo")
texinfo.makeinfo
diff --git a/lib/sisu/v5/texpdf.rb b/lib/sisu/v5/texpdf.rb
index b5d36602..3be8ceb7 100644
--- a/lib/sisu/v5/texpdf.rb
+++ b/lib/sisu/v5/texpdf.rb
@@ -107,7 +107,7 @@ module SiSU_TeX
Dir.mkdir(@env.processing_path.tex) unless FileTest.directory?(@env.processing_path.tex)
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -148,7 +148,7 @@ module SiSU_TeX
end
end
@md=@particulars.md
- $flag=@md.opt.cmd #introduced to pass 0 for no object citation numbers... to texpdf_format
+ $flag=@md.opt.selections.str #introduced to pass 0 for no object citation numbers... to texpdf_format
directories
#% needed needs to be reprogrammed !!!
ao_array=SiSU_AO::Source.new(@opt).get # ao file drawn here
@@ -158,7 +158,7 @@ module SiSU_TeX
SiSU_TeX::Source::LaTeXtoPdf.new(@md,@particulars.env).latexrun_selective
Dir.chdir(pwd)
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -180,7 +180,7 @@ module SiSU_TeX
@@date=SiSU_Env::InfoDate.new
@@flag={}
$flag=1 #remove at some stage
- SiSU_Env::Clear.new(@opt.cmd,@opt.fns).param_instantiate
+ SiSU_Env::Clear.new(@opt.selections.str,@opt.fns).param_instantiate
end
end
private
@@ -194,7 +194,7 @@ module SiSU_TeX
@texfilename=texfilename
@@n_lpdf=@@n_lpdf+1
tex_fn_base=@texfilename.gsub(/\.tex$/,'')
- tell=SiSU_Screen::Ansi.new(@md.opt.cmd)
+ tell=SiSU_Screen::Ansi.new(@md.opt.selections.str)
if @md.opt.act[:pdf_p][:set]==:on
if (@md.opt.act[:verbose][:set]==:on \
|| @md.opt.act[:verbose_plus][:set]==:on \
@@ -204,13 +204,21 @@ module SiSU_TeX
"#{papersize} portrait ->"
).dark_grey_title_hi
end
- cmd=SiSU_Env::SystemCall.new("#{tex_fn_base}.tex",'',@md.opt.cmd)
- tell.grey_open if @md.opt.cmd =~/[MVv]/
+ cmd=SiSU_Env::SystemCall.new("#{tex_fn_base}.tex",'',@md.opt.selections.str)
+ if @md.opt.act[:verbose][:set]==:on \
+ || @md.opt.act[:verbose_plus][:set]==:on \
+ || @md.opt.act[:maintenance][:set]==:on
+ tell.grey_open
+ end
if "#{tex_fn_base}" =~/\w+/ \
and "#{papersize}" =~/\w+/
2.times { |i| cmd.latex2pdf(@md,papersize) } #comment out to skip processing of latex portrait
end
- tell.p_off if @md.opt.cmd =~/[MVv]/
+ if @md.opt.act[:verbose][:set]==:on \
+ || @md.opt.act[:verbose_plus][:set]==:on \
+ || @md.opt.act[:maintenance][:set]==:on
+ tell.p_off
+ end
end
if @md.opt.act[:pdf_l][:set]==:on
if (@md.opt.act[:verbose][:set]==:on \
@@ -221,7 +229,7 @@ module SiSU_TeX
"#{papersize} landscape ->"
).dark_grey_title_hi
end
- cmd=SiSU_Env::SystemCall.new("#{tex_fn_base}.landscape.tex",'',@md.opt.cmd)
+ cmd=SiSU_Env::SystemCall.new("#{tex_fn_base}.landscape.tex",'',@md.opt.selections.str)
if (@md.opt.act[:verbose][:set]==:on \
|| @md.opt.act[:verbose_plus][:set]==:on \
|| @md.opt.act[:maintenance][:set]==:on)
@@ -357,7 +365,7 @@ module SiSU_TeX
lst=Dir["*.{aux,log,out}"]
lst.each {|file| File.unlink(file)} if lst
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -438,7 +446,7 @@ module SiSU_TeX
data=markup(data)
output(data)
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/txt_asciidoc.rb b/lib/sisu/v5/txt_asciidoc.rb
index 43e49f7b..7171ee64 100644
--- a/lib/sisu/v5/txt_asciidoc.rb
+++ b/lib/sisu/v5/txt_asciidoc.rb
@@ -121,7 +121,7 @@ module SiSU_Txt_AsciiDoc
#wrap_width=(defined? md.make.plaintext_wrap) ? md.make.plaintext_wrap : 78
SiSU_Txt_AsciiDoc::Source::Scroll.new(md,ao_array,wrap_width).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/txt_markdown.rb b/lib/sisu/v5/txt_markdown.rb
index 1e4326a3..9a184635 100644
--- a/lib/sisu/v5/txt_markdown.rb
+++ b/lib/sisu/v5/txt_markdown.rb
@@ -120,7 +120,7 @@ module SiSU_Txt_Markdown
#wrap_width=(defined? md.make.plaintext_wrap) ? md.make.plaintext_wrap : 78
SiSU_Txt_Markdown::Source::Scroll.new(md,ao_array,wrap_width).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/txt_plain.rb b/lib/sisu/v5/txt_plain.rb
index 2f3cc134..479eddde 100644
--- a/lib/sisu/v5/txt_plain.rb
+++ b/lib/sisu/v5/txt_plain.rb
@@ -122,7 +122,7 @@ module SiSU_Txt_Plain
#wrap_width=(defined? md.make.plaintext_wrap) ? md.make.plaintext_wrap : 78
SiSU_Txt_Plain::Source::Scroll.new(md,ao_array,wrap_width).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -139,7 +139,7 @@ module SiSU_Txt_Plain
@env=SiSU_Env::InfoEnv.new(@md.fns)
@brace_url=SiSU_Viz::Defaults.new.url_decoration
@tab="\t"
- @@endnotes_=case md.opt.mod.inspect
+ @@endnotes_=case md.opt.selections.str
when /--footnote/ then false
when /--endnote/ then true
else true
diff --git a/lib/sisu/v5/txt_rst.rb b/lib/sisu/v5/txt_rst.rb
index f00c9e9c..0147a6de 100644
--- a/lib/sisu/v5/txt_rst.rb
+++ b/lib/sisu/v5/txt_rst.rb
@@ -121,7 +121,7 @@ module SiSU_Txt_rST
#wrap_width=(defined? md.make.plaintext_wrap) ? md.make.plaintext_wrap : 78
SiSU_Txt_rST::Source::Scroll.new(md,ao_array,wrap_width).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/txt_textile.rb b/lib/sisu/v5/txt_textile.rb
index 65c102fc..43124493 100644
--- a/lib/sisu/v5/txt_textile.rb
+++ b/lib/sisu/v5/txt_textile.rb
@@ -121,7 +121,7 @@ module SiSU_Txt_Textile
#wrap_width=(defined? md.make.plaintext_wrap) ? md.make.plaintext_wrap : 78
SiSU_Txt_Textile::Source::Scroll.new(md,ao_array,wrap_width).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/update.rb b/lib/sisu/v5/update.rb
index 2301990a..3c355edb 100644
--- a/lib/sisu/v5/update.rb
+++ b/lib/sisu/v5/update.rb
@@ -81,7 +81,7 @@ module SiSU_UpdateControlFlag
).green_hi_blue unless @md.opt.act[:quiet][:set]==:on
SetCF.new(@md).set_flags
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/urls.rb b/lib/sisu/v5/urls.rb
index 815fe65a..4ecad1f9 100644
--- a/lib/sisu/v5/urls.rb
+++ b/lib/sisu/v5/urls.rb
@@ -74,7 +74,7 @@ module SiSU_Urls
begin
SiSU_Urls::OutputUrls.new(@opt).songsheet if @opt.fnb
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -82,11 +82,20 @@ module SiSU_Urls
end
end
class OutputUrls
- attr_reader :fns,:fnb,:cmd,:dir,:m_regular,:u
+ attr_reader :fns,:fnb,:act,:dir,:m_regular,:u
def initialize(opt)
@opt=opt
@particulars=SiSU_Particulars::CombinedSingleton.instance.get_env_md(opt)
- @cmd=@opt.cmd
+ if @particulars.is_a?(NilClass)
+ if @opt.act[:verbose_plus][:set]==:on \
+ or @opt.act[:maintenance][:set]==:on
+ SiSU_Utils::CodeMarker.new(__LINE__,__FILE__,:fuchsia).
+ mark("@particulars is NilClass, acceptable e.g. for --harvest")
+ end
+ exit
+ end
+ @selections=@opt.selections.str
+ @act=@opt.act
@md=@particulars.md
@env=@particulars.env
@fnb=@env.fnb
@@ -95,308 +104,29 @@ module SiSU_Urls
@fn=SiSU_Env::EnvCall.new(@opt.fns).lang(fn_set_lang[:c])
@m_regular=/(.+?)\.(?:(?:-|ssm\.)?sst|ssm)$/
@prog=@env.program
- @u ||= {
- 'b --xhtml (XHTML)'=>@fn[:xhtml],
- 'D[iu] --psql (DBI import/update postgresql)'=>'dbi psql',
- 'd --sqlite (DBI sqlite)'=>'dbi sqlite3',
- 'd[iu] --sqlite (DBI sqlite)'=>'dbi sqlite3',
- 'e --epub (EPUB)'=>@fn[:epub],
- 'P --pot (Pot)'=>@fn[:pot],
- 'h --html (HTML segmented)'=>@fn[:toc],
- 'h --html (HTML scroll)'=>@fn[:doc],
- 'I --texinfo (Info file)'=>'info',
- 'i --manpage (manpage)'=>'manpage',
- 'm --ao (Document Abstraction)'=>'ao',
- 'N --hash-digests (Digests sha512/sha256/md5)'=>@fn[:digest],
- 'o --odt (ODF:ODT - Open Document)'=>@fn[:odf],
- 'p --pdf (PDF landscape)'=>@fn[:pdf_l],
- 'p --pdf (PDF portrait)'=>@fn[:pdf_p],
- 'E --profile (Ruby profiler)'=>'profile',
- 's --source (sisu markup)'=>@opt.fno,
- 'S --sisupod (sisupod)'=>@fn[:sisupod],
- 't --txt (Plain-text (endnotes))'=>@fn[:plain],
- ' --textile (textile txt)'=>@fn[:txt_textile],
- ' --asciidoc (AsciiDoc txt)'=>@fn[:txt_asciidoc],
- ' --markdown (markdown txt)'=>@fn[:txt_markdown],
- ' --rst (rST restructured-text)'=>@fn[:txt_rst],
- ' --docbook-book (DocBook Book)'=>@fn[:xml_docbook_book],
- ' --fictionbook (Fictionbook)'=>@fn[:xml_fictionbook],
- 'x --xml-sax (XML sax type)'=>@fn[:sax],
- 'X --xml-dom (XML dom type)'=>@fn[:dom],
- ' --xml-scaffold-sisu (XML scaffold)'=>@fn[:xml_scaffold_structure_sisu],
- ' --xml-scaffold-collapse (XML scaffold)'=>@fn[:xml_scaffold_structure_collapse],
- 'Q --qrcode (QR Code jpg)'=>@fn[:qrcode],
- 'y --manifest (Manifest, html)'=>@fn[:manifest],
- 'Y (Sitemap, xml)'=>@fn[:sitemap],
- 'w --concordance (Concordance, html)'=>@fn[:concordance],
- }.sort {|a,b| a[0].downcase<=>b[0].downcase}
end
def songsheet
begin
- @opt.cmd=~/U/ ? urls_all : (urls_select unless @opt.act[:quiet][:set]==:on)
+ (@opt.act[:urls_all][:set]==:on) \
+ ? urls_all \
+ : (urls_select unless @opt.act[:quiet][:set]==:on)
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
end
end
def show
- def source
- def src(x,y)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.text_editor} #{@md.file.output_path.src.dir}/#{y}"
- ).result
- end
- def pod(x,y)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.sisupod.dir}/#{y}"
- ).result
- end
- self
- end
- def generic(x,y)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} #{@env.url.output_tell}/#{@fnb}/#{y}"
- ).result
- end
- def meta(x,y)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.text_editor} ~#{y}/#{@fnb}.#{y}"
- ).result
- end
- def text(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.txt.dir}/#{@md.file.base_filename.txt}"
- ).result
- end
- def textile(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.textile.dir}/#{@md.file.base_filename.textile}"
- ).result
- end
- def asciidoc(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.asciidoc.dir}/#{@md.file.base_filename.asciidoc}"
- ).result
- end
- def markdown(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.markdown.dir}/#{@md.file.base_filename.markdown}"
- ).result
- end
- def rst(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.rst.dir}/#{@md.file.base_filename.rst}"
- ).result
- end
- def epub(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.epub_viewer} #{@md.file.output_path.epub.dir}/#{@md.file.base_filename.epub}"
- ).result
- end
- def html
- def scroll(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.html_scroll.dir}/#{@md.file.base_filename.html_scroll}"
- ).result
- end
- def toc(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.html_seg.dir}/#{@md.file.base_filename.html_segtoc}"
- ).result
- end
- def concordance(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.html_concordance.dir}/#{@md.file.base_filename.html_concordance}"
- ).result
- end
- def manifest(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.manifest.dir}/#{@md.file.base_filename.manifest}"
- ).result
- end
- self
- end
- def qrcode(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.manifest.dir}/#{@md.file.base_filename.manifest}"
- ).result
- end
- def odt(x)
+ def report(x)
SiSU_Screen::Ansi.new(
@opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.odf_viewer} file://#{@md.file.output_path.odt.dir}/#{@md.file.base_filename.odt}"
+ "[#{@opt.f_pth[:lng_is]}]",
+ x[:cmd],
+ x[:viewer] + ' ' \
+ + x[:f_pth]
).result
end
- def pdf
- def portrait(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.pdf_viewer} #{@md.file.output_path.pdf.dir}/#{@md.file.base_filename.pdf_p}#{@md.papersize_array[0]}.pdf"
- ).result
- end
- def landscape(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.pdf_viewer} #{@md.file.output_path.pdf.dir}/#{@md.file.base_filename.pdf_l}#{@md.papersize_array[0]}.pdf"
- ).result
- end
- self
- end
- def manpage(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.manpage_viewer} #{@md.file.output_path.manpage.dir}/#{@md.file.base_filename.manpage}"
- ).result
- end
- def pinfo(x,y)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "cd #{@md.file.output_path.texinfo.dir} && #{@env.program.texinfo} #{@md.file.base_filename.info}; cd -"
- ).result
- end
- def po4a
- def po(x,y)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "-#{x}",
- "#{@prog.text_editor} #{@md.file.output_path.po.dir}/#{y}"
- ).result
- end
- def pot(x,y)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "-#{x}",
- "#{@prog.text_editor} #{@md.file.output_path.pot.dir}/#{y}"
- ).result
- end
- self
- end
- def xhtml(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.xhtml.dir}/#{@md.file.base_filename.xhtml}"
- ).result
- end
- def xml
- def sax(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.xml_sax.dir}/#{@md.file.base_filename.xml_sax}"
- ).result
- end
- def dom(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],"[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.xml_dom.dir}/#{@md.file.base_filename.xml_dom}"
- ).result
- end
- def docbook_book(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.xml_docbook_book.dir}/#{@md.file.base_filename.xml_docbook_book}"
- ).result
- end
- def fictionbook(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.xml_fictionbook.dir}/#{@md.file.base_filename.xml_fictionbook}"
- ).result
- end
- def scaffold_structure_sisu(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.xml_scaffold_structure_sisu.dir}/#{@md.file.base_filename.xml_scaffold_structure_sisu}"
- ).result
- end
- def scaffold_structure_collapse(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.xml_scaffold_structure_collapse.dir}/#{@md.file.base_filename.xml_scaffold_structure_collapse}"
- ).result
- end
- def sitemap(x) #BROKEN
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.sitemaps.dir}/#{@md.file.base_filename.sitemap}"
- ).result
- end
- self
- end
- def hash_digest(x)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "#{@prog.web_browser} file://#{@md.file.output_path.hash_digest.dir}/#{@md.file.base_filename.hash_digest}"
- ).result
- end
- def db
- def psql(x,y)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x} DBI psql","#{@pwd_stub}::#{@opt.fns}",
- y
- ).result
- end
- def sqlite(x,y)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x} DBI sqlite",
- "sqlite3 #{@env.path.webserv}/#{@md.opt.f_pth[:pth_stub]}/sisu_sqlite.db"
- ).result
- end
- def sqlite_discrete(x,y)
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- "[#{@opt.f_pth[:lng_is]}] -#{x}",
- "sqlite3 #{@md.file.output_path.sqlite_discrete.dir}/#{@md.file.base_filename.sqlite_discrete}"
- ).result
- end
- self
- end
self
end
def urls_maintenance(opt,x,y)
@@ -472,8 +202,341 @@ module SiSU_Urls
end
end
end
+ def report_info
+ def dal
+ {
+ cmd: '--ao',
+ fn: 'ao',
+ }
+ end
+ def hash_digests
+ {
+ cmd: '--hash-digests (sha512/sha256/md5)',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.hash_digest.dir + '/' \
+ + @md.file.base_filename.hash_digest,
+ fn: @fn[:digest],
+ }
+ end
+ def text
+ def txt
+ {
+ cmd: '--txt',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.txt.dir + '/' \
+ + @md.file.base_filename.txt,
+ fn: @fn[:plain],
+ }
+ end
+ def asciidoc
+ {
+ cmd: '--asciidoc',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.asciidoc.dir + '/' \
+ + @md.file.base_filename.asciidoc,
+ fn: @fn[:txt_asciidoc],
+ }
+ end
+ def markdown
+ {
+ cmd: '--markdown',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.markdown.dir + '/' \
+ + @md.file.base_filename.markdown,
+ fn: @fn[:txt_markdown],
+ }
+ end
+ def rst
+ {
+ cmd: '--rst',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.rst.dir + '/' \
+ + @md.file.base_filename.rst,
+ fn: @fn[:txt_rst],
+ }
+ end
+ def textile
+ {
+ cmd: '--textile',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.textile.dir + '/' \
+ + @md.file.base_filename.textile,
+ fn: @fn[:txt_textile],
+ }
+ end
+ self
+ end
+ def html
+ def seg
+ {
+ cmd: '--html-seg',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.html_seg.dir + '/' \
+ + @md.file.base_filename.html_segtoc,
+ fn: @fn[:toc],
+ }
+ end
+ def scroll
+ {
+ cmd: '--html-scroll',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.html_scroll.dir + '/' \
+ + @md.file.base_filename.html_scroll,
+ fn: @fn[:doc],
+ }
+ end
+ def concordance
+ {
+ cmd: '--concordance',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.html_concordance.dir + '/' \
+ + @md.file.base_filename.html_concordance,
+ fn: @fn[:concordance],
+ }
+ end
+ self
+ end
+ def xhtml
+ def xhtml
+ {
+ cmd: '--xhtml',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.xhtml.dir + '/' \
+ + @md.file.base_filename.xhtml,
+ fn: @fn[:xhtml],
+ }
+ end
+ def epub
+ {
+ cmd: '--epub',
+ viewer: @prog.epub_viewer,
+ f_pth: @md.file.output_path.epub.dir + '/' \
+ + @md.file.base_filename.epub,
+ fn: @fn[:epub],
+ }
+ end
+ self
+ end
+ def xml
+ def odt
+ {
+ cmd: '--odt (ODF:ODT)',
+ viewer: @prog.odf_viewer,
+ f_pth: @md.file.output_path.odt.dir + '/' \
+ + @md.file.base_filename.odt,
+ fn: @fn[:odf],
+ }
+ end
+ def docbook
+ {
+ cmd: '--docbook',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.xml_docbook_book.dir + '/' \
+ + @md.file.base_filename.xml_docbook_book,
+ fn: @fn[:xml_docbook_book],
+ }
+ end
+ def fictionbook
+ {
+ cmd: '--fictionbook',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.xml_fictionbook.dir + '/' \
+ + @md.file.base_filename.xml_fictionbook,
+ fn: @fn[:xml_fictionbook],
+ }
+ end
+ def sax
+ {
+ cmd: '--xml-sax',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.xml_sax.dir + '/' \
+ + @md.file.base_filename.xml_sax,
+ fn: @fn[:sax],
+ }
+ end
+ def dom
+ {
+ cmd: '--xml-dom',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.xml_dom.dir + '/' \
+ + @md.file.base_filename.xml_dom,
+ fn: @fn[:dom],
+ }
+ end
+ def scaffold_sisu
+ {
+ cmd: '--xml-scaffold-sisu',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.xml_scaffold_structure_sisu.dir + '/' \
+ + @md.file.base_filename.xml_scaffold_structure_sisu,
+ fn: @fn[:xml_scaffold_structure_sisu],
+ }
+ end
+ def scaffold_collapse
+ {
+ cmd: '--xml-scaffold-collapse',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.xml_scaffold_structure_collapse.dir + '/' \
+ + @md.file.base_filename.xml_scaffold_structure_collapse,
+ fn: @fn[:xml_scaffold_structure_collapse],
+ }
+ end
+ self
+ end
+ def pdf
+ def landscape
+ {
+ cmd: '--pdf (landscape)',
+ viewer: @prog.pdf_viewer,
+ f_pth: @md.file.output_path.pdf.dir + '/' \
+ + @md.file.base_filename.pdf_l \
+ + @md.papersize_array[0] + '.pdf',
+ fn: @fn[:pdf_l],
+ }
+ end
+ def portrait
+ {
+ cmd: '--pdf (portrait)',
+ viewer: @prog.pdf_viewer,
+ f_pth: @md.file.output_path.pdf.dir + '/' \
+ + @md.file.base_filename.pdf_p \
+ + @md.papersize_array[0] + '.pdf',
+ fn: @fn[:pdf_p],
+ }
+ end
+ self
+ end
+ def manpage
+ {
+ cmd: '--manpage',
+ viewer: @prog.manpage_viewer,
+ f_pth: @md.file.output_path.manpage.dir + '/' \
+ + @md.file.base_filename.manpage,
+ fn: 'manpage',
+ }
+ end
+ def texinfo
+ {
+ cmd: '--texinfo',
+ viewer: '',
+ f_pth: 'cd ' \
+ + @md.file.output_path.texinfo.dir + ' && ' \
+ + @env.program.texinfo + ' ' \
+ + @md.file.base_filename.info \
+ + '; cd -',
+ fn: 'info',
+ }
+ end
+ def db
+ def psql
+ {
+ cmd: '--psql --update/--import',
+ viewer: '',
+ f_pth: @pwd_stub + '::' \
+ + @opt.fns \
+ + 'dbi psql',
+ fn: 'dbi psql',
+ }
+ end
+ def sqlite
+ {
+ cmd: '--sqlite --update/--import',
+ viewer: 'sqlite3 ',
+ f_pth: @env.path.webserv + '/' \
+ + @md.opt.f_pth[:pth_stub] + '/' \
+ + 'sisu_sqlite.db',
+ fn: 'dbi sqlite3',
+ }
+ end
+ def sqlite_discrete
+ {
+ cmd: '--sqlite --update/--import',
+ viewer: 'sqlite3 ',
+ f_pth: @md.file.output_path.sqlite_discrete.dir + '/' \
+ + @md.file.base_filename.sqlite_discrete,
+ fn: 'dbi sqlite3',
+ }
+ end
+ self
+ end
+ def po4a
+ def po
+ {
+ cmd: '--po4a/--pot',
+ viewer: @prog.web_browser,
+ f_pth: @prog.text_editor + ' ' \
+ + @md.file.output_path.po.dir \
+ + '/' + y,
+ fn: @fn[:pot],
+ }
+ end
+ def pot
+ {
+ cmd: '--po4a/--pot',
+ viewer: @prog.web_browser,
+ f_pth: @prog.text_editor + ' ' \
+ + @md.file.output_path.pot.dir \
+ + '/' + y,
+ fn: @fn[:pot],
+ }
+ end
+ self
+ end
+ def source
+ {
+ cmd: '--source (sisu markup)',
+ viewer: @prog.text_editor,
+ f_pth: @md.file.output_path.src.dir + '/' \
+ + @opt.fno,
+ fn: @opt.fno,
+ }
+ end
+ def sisupod
+ {
+ cmd: '--sisupod',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.sisupod.dir + '/' \
+ + @opt.fno,
+ fn: @fn[:sisupod],
+ }
+ end
+ def ruby_profile
+ {
+ cmd: '--profile (ruby profiler)',
+ fn: 'profile',
+ }
+ end
+ def qrcode
+ {
+ cmd: '--qrcode',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.manifest.dir + '/' \
+ + @md.file.base_filename.manifest,
+ fn: @fn[:qrcode],
+ }
+ end
+ def manifest
+ {
+ cmd: '--manifest',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.manifest.dir + '/' \
+ + @md.file.base_filename.manifest,
+ fn: @fn[:manifest],
+ }
+ end
+ def sitemap
+ {
+ cmd: '--sitemap',
+ viewer: @prog.web_browser,
+ f_pth: @md.file.output_path.sitemaps.dir + '/' \
+ + @md.file.base_filename.sitemap,
+ fn: @fn[:sitemap],
+ }
+ end
+ self
+ end
def urls_select
- unless @opt.cmd =~/q/
+ unless @opt.act[:quiet][:set]==:on
i1='[' + @opt.f_pth[:lng_is] + ']'
i2='file://' \
+ @md.file.output_path.manifest.dir + '/' \
@@ -490,168 +553,129 @@ module SiSU_Urls
'URL (output manifest)',
i1, i2
).grey_title_grey_blue
- SiSU_Screen::Ansi.new(
- @opt.act[:color_state][:set],
- i1, i2,
- ).flow if @opt.cmd =~/[MVv]/
+ if (@opt.act[:verbose][:set]==:on \
+ || @opt.act[:verbose_plus][:set]==:on \
+ || @opt.act[:maintenance][:set]==:on)
+ SiSU_Screen::Ansi.new(
+ @opt.act[:color_state][:set],
+ i1, i2,
+ ).flow
+ end
end
m=/.+\/(?:src\/)?(\S+)/im # m=/.+?\/(?:src\/)?([^\/]+)$/im # m=/.+\/(\S+)/m
@pwd_stub="#{@env.url.output_tell}"[m,1]
unless @opt.act[:quiet][:set]==:on
- @u.each do |x,y|
- if @opt.fns =~ @m_regular
- if (@opt.act[:verbose][:set]==:on \
- || @opt.act[:verbose_plus][:set]==:on \
- || @opt.act[:maintenance][:set]==:on)
- if x=~/--txt\b/ \
- and @opt.act[:txt][:set]==:on
- show.text(x)
- end
- if x=~/--textile\b/ \
- and @opt.act[:txt_textile][:set]==:on
- show.textile(x)
- end
- if x=~/--asciidoc\b/ \
- and @opt.act[:txt_asciidoc][:set]==:on
- show.asciidoc(x)
- end
- if x=~/--markdown\b/ \
- and @opt.act[:txt_markdown][:set]==:on
- show.markdown(x)
- end
- if x=~/--rst\b/ \
- and @opt.act[:txt_rst][:set]==:on
- show.rst(x)
- end
- if x=~/--xhtml\b/ \
- and @opt.act[:xhtml][:set]==:on
- show.xhtml(x)
- end
- if x=~/--psql\b/ \
- and @opt.act[:psql][:set]==:on
- show.db.psql(x,y)
- end
- if x=~/d\s+--sqlite\b|--sql\b/ \
- and @opt.act[:sqlite_discrete][:set]==:on
- show.db.sqlite_discrete(x,y)
- end
- if x=~/d\[iu\]\s+--sqlite\b/ \
- and @opt.act[:sqlite][:set]==:on
- show.db.sqlite(x,y)
- end
- if x=~/--epub\b/ \
- and @opt.act[:epub][:set]==:on
- show.epub(x)
- end
- if x=~/--html\b/ \
- and (@opt.act[:html][:set]==:on \
- or @opt.act[:html_scroll][:set]==:on \
- or @opt.act[:html_seg][:set]==:on)
- if x =~/scroll/
- if @opt.act[:html_scroll][:set]==:on
- show.html.scroll(x)
- end
- else
- if @opt.act[:html_seg][:set]==:on
- show.html.toc(x)
- end
- end
- end
- if x=~/--texinfo\b/ \
- and @opt.cmd =~/I/
- show.pinfo(x,y)
- end
- if x=~/--manpage\b/ \
- and @opt.act[:manpage][:set]==:on
- show.manpage(x)
- end
- if x=~/--hash-digests\b/ \
- and @opt.cmd =~/N/
- show.hash_digest(x)
- end
- if x=~/--odt\b|--odf\b/ \
- and @opt.act[:odt][:set]==:on
- show.odt(x)
- end
- if x=~/^P/ \
- and @opt.cmd =~/P/
- if @opt.fns =~/\S+?~\S{2}(?:_\S{2})?\.ss[mt]/
- f=y.gsub(/\.pot$/,'.po')
- show.po4a.po(x,f)
- else
- show.po4a.pot(x,f)
- end
- end
- if x=~/--pdf\b/ \
- and (@opt.act[:pdf][:set]==:on \
- or @opt.act[:pdf_p][:set]==:on \
- or @opt.act[:pdf_l][:set]==:on)
- if x =~/portrait/
- if @opt.act[:pdf_p][:set]==:on
- show.pdf.portrait(x)
- end
- else
- if @opt.act[:pdf_l][:set]==:on
- show.pdf.landscape(x)
- end
- end
- end
- if x=~/--sisupod\b/ \
- and @opt.act[:sisupod][:set]==:on
- (@opt.fno =~/\.ssm$/) \
- ? y.gsub(/(?:\~\S{2,3})?(\.ssm.sst\.txz)$/,'.ssm.txz')
- : y.gsub(/(?:\~\S{2,3})?(\.sst\.txz)$/,'\1')
- show.source.pod(x,y)
- end
- if x=~/--source\b/ \
- and @opt.act[:share_source][:set]==:on
- show.source.src(x,y)
- end
- if x=~/--concordance\b/ \
- and @opt.act[:concordance][:set]==:on
- show.html.concordance(x)
- end
- if x=~/--xml-dom\b/ \
- and @opt.act[:xml_dom][:set]==:on
- show.xml.dom(x)
- end
- if x=~/--xml-sax\b/ \
- and @opt.act[:xml_sax][:set]==:on
- show.xml.sax(x)
- end
- if x=~/--docbook-book\b/ \
- and @opt.act[:xml_docbook_book][:set]==:on
- show.xml.docbook_book(x)
- end
- if x=~/--fictionbook\b/ \
- and @opt.act[:xml_fictionbook][:set]==:on
- show.xml.fictionbook(x)
- end
- if x=~/--xml-scaffold-sisu\b/ \
- and @opt.act[:xml_scaffold_structure_sisu][:set]==:on
- show.xml.scaffold_structure_sisu(x)
+ if @opt.fns =~ @m_regular
+ if (@opt.act[:verbose][:set]==:on \
+ || @opt.act[:verbose_plus][:set]==:on \
+ || @opt.act[:maintenance][:set]==:on)
+ if @opt.act[:txt][:set]==:on
+ show.report(report_info.text.txt)
+ end
+ if @opt.act[:txt_textile][:set]==:on
+ show.report(report_info.text.textile)
+ end
+ if @opt.act[:txt_asciidoc][:set]==:on
+ show.report(report_info.text.asciidoc)
+ end
+ if @opt.act[:txt_markdown][:set]==:on
+ show.report(report_info.text.markdown)
+ end
+ if @opt.act[:txt_rst][:set]==:on
+ show.report(report_info.text.rst)
+ end
+ if (@opt.act[:html][:set]==:on \
+ or @opt.act[:html_scroll][:set]==:on \
+ or @opt.act[:html_seg][:set]==:on)
+ if @opt.act[:html_scroll][:set]==:on
+ show.report(report_info.html.scroll)
end
- if x=~/--xml-scaffold-collapse\b/ \
- and @opt.act[:xml_scaffold_structure_collapse][:set]==:on
- show.xml.scaffold_structure_collapse(x)
+ if @opt.act[:html_seg][:set]==:on
+ show.report(report_info.html.seg)
end
- if x=~/--qrcode\b/ \
- and @opt.act[:qrcode][:set]==:on
- show.qrcode(x)
+ end
+ if @opt.act[:concordance][:set]==:on
+ show.report(report_info.html.concordance)
+ end
+ if @opt.act[:xhtml][:set]==:on
+ show.report(report_info.xhtml.xhtml)
+ end
+ if @opt.act[:epub][:set]==:on
+ show.report(report_info.xhtml.epub)
+ end
+ if @opt.act[:odt][:set]==:on
+ show.report(report_info.xml.odt)
+ end
+ if @opt.act[:xml_dom][:set]==:on
+ show.report(report_info.xml.dom)
+ end
+ if @opt.act[:xml_sax][:set]==:on
+ show.report(report_info.xml.sax)
+ end
+ if @opt.act[:xml_docbook_book][:set]==:on
+ show.report(report_info.xml.docbook)
+ end
+ if @opt.act[:xml_fictionbook][:set]==:on
+ show.report(report_info.xml.fictionbook)
+ end
+ if @opt.act[:xml_scaffold_structure_sisu][:set]==:on
+ show.report(report_info.xml.scaffold_structure_sisu)
+ end
+ if @opt.act[:xml_scaffold_structure_collapse][:set]==:on
+ show.report(report_info.xml.scaffold_collapse)
+ end
+ if (@opt.act[:pdf][:set]==:on \
+ or @opt.act[:pdf_p][:set]==:on \
+ or @opt.act[:pdf_l][:set]==:on)
+ if @opt.act[:pdf_p][:set]==:on
+ show.report(report_info.pdf.portrait)
end
- if x=~/--sitemap\b/ \
- and @opt.cmd =~/Y/ #BROKEN
- show.xml.sitemap(x)
+ if @opt.act[:pdf_l][:set]==:on
+ show.report(report_info.pdf.landscape)
end
- if x=~/--manifest\b/ \
- and @opt.act[:manifest][:set]==:on
- show.html.manifest(x)
+ end
+ if @opt.act[:psql][:set]==:on
+ show.report(report_info.db.psql)
+ end
+ if @opt.act[:sqlite_discrete][:set]==:on
+ show.report(report_info.db.sqlite_discrete)
+ end
+ if @opt.act[:sqlite][:set]==:on
+ show.report(report_info.db.sqlite)
+ end
+ if @opt.act[:texinfo][:set]==:on
+ show.report(report_info.texinfo)
+ end
+ if @opt.act[:manpage][:set]==:on
+ show.report(report_info.manpage)
+ end
+ if @opt.act[:hash_digests][:set]==:on
+ show.report(report_info.hash_digests)
+ end
+ if @opt.act[:po4a][:set]==:on
+ if @opt.fns =~/\S+?~\S{2}(?:_\S{2})?\.ss[mt]/
+ f=y.gsub(/\.pot$/,'.po')
+ show.po4a.po(x,f)
+ else
+ show.po4a.pot(x,f)
end
end
- if (@opt.act[:verbose_plus][:set]==:on \
- || @opt.act[:maintenance][:set]==:on)
- urls_maintenance(@opt,x,y)
+ if @opt.act[:share_source][:set]==:on
+ show.report(report_info.source)
+ end
+ if @opt.act[:sisupod][:set]==:on
+ show.report(report_info.sisupod)
end
+ if @opt.act[:qrcode][:set]==:on
+ show.report(report_info.qrcode)
+ end
+ if @opt.act[:manifest][:set]==:on
+ show.report(report_info.manifest)
+ end
+ end
+ if (@opt.act[:verbose_plus][:set]==:on \
+ || @opt.act[:maintenance][:set]==:on)
+ urls_maintenance(@opt,x,y)
end
end
end
diff --git a/lib/sisu/v5/utils_screen_text_color.rb b/lib/sisu/v5/utils_screen_text_color.rb
index 42b0c698..d50b39b6 100644
--- a/lib/sisu/v5/utils_screen_text_color.rb
+++ b/lib/sisu/v5/utils_screen_text_color.rb
@@ -51,7 +51,7 @@
* Git
<http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=summary>
- <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v5/screen_text_color.rb;hb=HEAD>
+ <http://sources.sisudoc.org/?p=code/sisu.git;a=blob;f=lib/sisu/v5/utils_screen_text_color.rb;hb=HEAD>
* Ralph Amissah
<ralph@amissah.com>
@@ -269,7 +269,7 @@ module SiSU_Screen
blue
end
def result
- puts "\t#{@cX.green}#{@txt[0]}#{@cX.off} #{@cX.blue}#{@txt[1]}#{@cX.off} #{@cX.grey}#{@txt[2]}#{@cX.off}"
+ puts "\t#{@cX.grey}#{@txt[0]}#{@cX.off} #{@cX.green}#{@txt[1]}#{@cX.off} #{@cX.blue}#{@txt[2]}#{@cX.off}"
end
def maintenance
puts "\t#{@cX.grey}#{@txt[0]}#{@cX.off} #{@cX.brown}#{@txt[1]}#{@cX.off} #{@cX.grey}#{@txt[2]}#{@cX.off}"
diff --git a/lib/sisu/v5/wikispeak.rb b/lib/sisu/v5/wikispeak.rb
index a0fba849..198ea11b 100644
--- a/lib/sisu/v5/wikispeak.rb
+++ b/lib/sisu/v5/wikispeak.rb
@@ -102,7 +102,7 @@ module SiSU_Wikispeak
@ao_array=SiSU_AO::Source.new(@opt).get # ao file drawn here
SiSU_Wikispeak::Source::Scroll.new(@ao_array,@md).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/xhtml.rb b/lib/sisu/v5/xhtml.rb
index 4253e8eb..9a9d74a2 100644
--- a/lib/sisu/v5/xhtml.rb
+++ b/lib/sisu/v5/xhtml.rb
@@ -116,7 +116,7 @@ module SiSU_XHTML
end
SiSU_XHTML::Source::Songsheet.new(@particulars).song
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -140,7 +140,7 @@ module SiSU_XHTML
end
SiSU_Rexml::Rexml.new(@md,@file.place_file.xhtml.dir).xml if @md.opt.act[:maintenance][:set]==:on # test rexml parsing, comment out when not in use #debug
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/xhtml_epub2.rb b/lib/sisu/v5/xhtml_epub2.rb
index 9b110497..25d1b955 100644
--- a/lib/sisu/v5/xhtml_epub2.rb
+++ b/lib/sisu/v5/xhtml_epub2.rb
@@ -135,7 +135,7 @@ module SiSU_XHTML_EPUB2
SiSU_XHTML_EPUB2::Source::Seg.new(@md,data).songsheet
SiSU_XHTML_EPUB2::Source::Output.new(@md).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -148,7 +148,7 @@ module SiSU_XHTML_EPUB2
end
end
end
- SiSU_Env::Clear.new(@opt.cmd,@opt.fns).param_instantiate
+ SiSU_Env::Clear.new(@opt.selections.str,@opt.fns).param_instantiate
@@flag,@@scr,@@seg,@@seg_endnotes,@@seg_subtoc,@@seg_ad={},{},{},{},{},{}
@@seg_total,@@tracker,@@loop_count,@@tablehead,@@number_of_cols=0,0,0,0,0
@@seg_name,@@seg_name_html,@@seg_subtoc_array,@@seg_endnotes_array,@@segtocband,@@tablefoot=Array.new(7){[]}
@@ -393,7 +393,7 @@ module SiSU_XHTML_EPUB2
@@toc[:seg] << toc[:seg]
@@toc[:scr] << toc[:seg]
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -726,7 +726,7 @@ module SiSU_XHTML_EPUB2
end
out.close
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -741,7 +741,7 @@ module SiSU_XHTML_EPUB2
end
out.close
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -818,7 +818,7 @@ WOK
filename_xhtml.close
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -836,7 +836,7 @@ WOK
filename_xhtml.close
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
end
diff --git a/lib/sisu/v5/xhtml_epub2_concordance.rb b/lib/sisu/v5/xhtml_epub2_concordance.rb
index 447dd72e..0bdaff3c 100644
--- a/lib/sisu/v5/xhtml_epub2_concordance.rb
+++ b/lib/sisu/v5/xhtml_epub2_concordance.rb
@@ -96,7 +96,7 @@ module SiSU_XHTML_EPUB2_Concordance
SiSU_XHTML_EPUB2_Concordance::Source::Words.new(@particulars).songsheet
end
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -181,7 +181,7 @@ WOK
@rgx_splitlist=%r{[—.,;:-]+|#{Mx[:nbsp]}+}mi
@rgx_scanlist=%r{#{Mx[:fa_italics_o]}[a-zA-Z0-9"\s]{2,12}#{Mx[:fa_italics_c]}|#{Mx[:fa_bold_o]}[a-zA-Z0-9"\s]{2,12}#{Mx[:fa_bold_c]}|#{Mx[:url_o]}https?://\S+?#{Mx[:url_c]}|file://\S+|<\S+?>|\w+|[a-zA-Z]+}mi
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
end
@@ -195,7 +195,7 @@ WOK
@file_concordance=File.open("#{@path}/content/#{@md.fn[:epub_concord]}",'w')
map_para
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/xhtml_epub2_segments.rb b/lib/sisu/v5/xhtml_epub2_segments.rb
index 917a4f92..9492a736 100644
--- a/lib/sisu/v5/xhtml_epub2_segments.rb
+++ b/lib/sisu/v5/xhtml_epub2_segments.rb
@@ -146,7 +146,7 @@ WOK
SiSU_XHTML_EPUB2_Seg::Seg.new.cleanup # (((( added ))))
#### (((( END )))) ####
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/xhtml_epub2_tune.rb b/lib/sisu/v5/xhtml_epub2_tune.rb
index aa748cf6..c6d9f165 100644
--- a/lib/sisu/v5/xhtml_epub2_tune.rb
+++ b/lib/sisu/v5/xhtml_epub2_tune.rb
@@ -141,7 +141,7 @@ module SiSU_XHTML_EPUB2_Tune
end
SiSU_XHTML_EPUB2_Tune::Tune.new(@data,@md).output
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/xml_docbook5.rb b/lib/sisu/v5/xml_docbook5.rb
index 8132a356..2a7f2fb0 100644
--- a/lib/sisu/v5/xml_docbook5.rb
+++ b/lib/sisu/v5/xml_docbook5.rb
@@ -83,12 +83,12 @@ module SiSU_XML_Docbook_Book
report
SiSU_XML_Docbook_Book::Source::Scroll.new(@ao_array,@md).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
- #SiSU_Env::CreateSite.new(@opt.cmd).cp_css
- #SiSU_Env::CreateSite.new(@opt.cmd).cp_base_images
+ #SiSU_Env::CreateSite.new(@opt.selections.str).cp_css
+ #SiSU_Env::CreateSite.new(@opt.selections.str).cp_base_images
Dir.chdir(@opt.f_pth[:pth])
end
end
diff --git a/lib/sisu/v5/xml_dom.rb b/lib/sisu/v5/xml_dom.rb
index a602eee3..38c60edf 100644
--- a/lib/sisu/v5/xml_dom.rb
+++ b/lib/sisu/v5/xml_dom.rb
@@ -117,7 +117,7 @@ module SiSU_XML_DOM
end
SiSU_XML_DOM::Source::Songsheet.new(@particulars).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -141,7 +141,7 @@ module SiSU_XML_DOM
end
SiSU_Rexml::Rexml.new(@md,@file.place_file.xml_dom.dir).xml if @md.opt.act[:maintenance][:set]==:on # test rexml parsing, comment out when not in use #debug
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/xml_fictionbook2.rb b/lib/sisu/v5/xml_fictionbook2.rb
index 74afc6ad..c7c54b30 100644
--- a/lib/sisu/v5/xml_fictionbook2.rb
+++ b/lib/sisu/v5/xml_fictionbook2.rb
@@ -82,7 +82,7 @@ module SiSU_XML_Fictionbook
report
SiSU_XML_Fictionbook::Source::Scroll.new(@ao_array,@md).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/xml_odf_odt.rb b/lib/sisu/v5/xml_odf_odt.rb
index 55c8d7ed..1fd32244 100644
--- a/lib/sisu/v5/xml_odf_odt.rb
+++ b/lib/sisu/v5/xml_odf_odt.rb
@@ -117,7 +117,7 @@ module SiSU_XML_ODF_ODT
end
SiSU_XML_ODF_ODT::Source::Scroll.new(@particulars).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -150,7 +150,7 @@ module SiSU_XML_ODF_ODT
unless (@md.opt.act[:verbose_plus][:set]==:on \
|| @md.opt.act[:maintenance][:set]==:on)
if @env.processing_path.odt =~/od[ft]/
- #p "rm -r #{@env.processing_path.odt}" if @md.opt.cmd =~/v/
+ #p "rm -r #{@env.processing_path.odt}" if @md.opt.selections.str =~/v/
FileUtils::rm_r(@env.processing_path.odf_pth)
#system("rm -r #{@env.processing_path.odt}")
end
@@ -636,7 +636,7 @@ module SiSU_XML_ODF_ODT
odf_book_idx
odf_metadata
data.each do |dob|
- #p dob.obj if dob.obj =~safe_characters and @md.opt.cmd =~/V/ #KEEP
+ #p dob.obj if dob.obj =~safe_characters and @md.opt.selections.str =~/V/ #KEEP
dob.obj='' if dob.obj =~/#{Mx[:lv_o]}\d+:.*?#{Mx[:lv_c]}.+?#{Mx[:pa_non_object_dummy_heading]}/ #fix Mx[:lv_o]
para_array=[]
dob.obj=dob.obj.gsub(/</,'&lt;').gsub(/>/,'&gt;')
diff --git a/lib/sisu/v5/xml_sax.rb b/lib/sisu/v5/xml_sax.rb
index 58719798..273d24cc 100644
--- a/lib/sisu/v5/xml_sax.rb
+++ b/lib/sisu/v5/xml_sax.rb
@@ -116,7 +116,7 @@ module SiSU_XML_SAX
end
SiSU_XML_SAX::Source::Songsheet.new(@particulars).song
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
@@ -141,7 +141,7 @@ module SiSU_XML_SAX
end
SiSU_Rexml::Rexml.new(@md,@file.place_file.xml_sax.dir).xml if @md.opt.act[:maintenance][:set]==:on # test rexml parsing, comment out when not in use #debug
rescue
- SiSU_Errors::Rescued.new($!,$@,@md.opt.cmd,@md.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/xml_scaffold_structure_collapsed.rb b/lib/sisu/v5/xml_scaffold_structure_collapsed.rb
index f36c937f..25a3dea0 100644
--- a/lib/sisu/v5/xml_scaffold_structure_collapsed.rb
+++ b/lib/sisu/v5/xml_scaffold_structure_collapsed.rb
@@ -79,7 +79,7 @@ module SiSU_XML_Scaffold_Structure_Collapse
@md,@ao_array=@particulars.md,@particulars.ao_array
SiSU_XML_Scaffold_Structure_Collapse::Source::Scroll.new(@ao_array,@md).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/xml_scaffold_structure_sisu.rb b/lib/sisu/v5/xml_scaffold_structure_sisu.rb
index 44344328..40df4fa8 100644
--- a/lib/sisu/v5/xml_scaffold_structure_sisu.rb
+++ b/lib/sisu/v5/xml_scaffold_structure_sisu.rb
@@ -79,7 +79,7 @@ module SiSU_XML_Scaffold_Structure_Sisu
@md,@ao_array=@particulars.md,@particulars.ao_array
SiSU_XML_Scaffold_Structure_Sisu::Source::Scroll.new(@ao_array,@md).songsheet
rescue
- SiSU_Errors::Rescued.new($!,$@,@opt.cmd,@opt.fns).location do
+ SiSU_Errors::Rescued.new($!,$@,@opt.selections.str,@opt.fns).location do
__LINE__.to_s + ':' + __FILE__
end
ensure
diff --git a/lib/sisu/v5/zap.rb b/lib/sisu/v5/zap.rb
index 75707247..487d1fa5 100644
--- a/lib/sisu/v5/zap.rb
+++ b/lib/sisu/v5/zap.rb
@@ -75,7 +75,7 @@ module SiSU_Zap
unless @opt.act[:quiet][:set]==:on
tell=SiSU_Screen::Ansi.new(
@opt.act[:color_state][:set],
- "Clean files related to processing #{@opt.cmd} ->",
+ "Clean files related to processing #{@opt.selections.str} ->",
"#{@opt.fns} -> #{zap_path}"
)
tell.warn