aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2017-11-23 16:09:14 -0500
committerRalph Amissah <ralph@amissah.com>2019-04-10 15:14:14 -0400
commit916e227028ab19e58a4ae1e5ebb1fa38691633bd (patch)
tree3b0134a4e5fd7dd7f872be87559ee7d41c0c930c /src
parentsdp, select language source to process (diff)
0.20.1 struct for opt_actions
Diffstat (limited to 'src')
-rw-r--r--src/sdp/meta/doc_debugs.d4
-rw-r--r--src/sdp/meta/metadoc.d13
-rw-r--r--src/sdp/meta/metadoc_from_src.d175
-rw-r--r--src/sdp/meta/metadoc_summary.d2
-rw-r--r--src/sdp/output/epub3.d20
-rw-r--r--src/sdp/output/html.d36
-rw-r--r--src/sdp/output/hub.d82
-rw-r--r--src/sdp/output/source_sisupod.d20
-rw-r--r--src/sdp/output/sqlite.d40
-rw-r--r--src/sdp/output/sqlite_discrete.d36
-rwxr-xr-xsrc/sdp/sdp.d169
11 files changed, 370 insertions, 227 deletions
diff --git a/src/sdp/meta/doc_debugs.d b/src/sdp/meta/doc_debugs.d
index e8ed3e3..2b274a3 100644
--- a/src/sdp/meta/doc_debugs.d
+++ b/src/sdp/meta/doc_debugs.d
@@ -458,10 +458,10 @@ template SiSUdebugs() {
];
}
debug(checkdoc) {
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.do_debug)) {
debug(checkdoc) {
if (auto mfn=match(doc_matters.source_filename, rgx.src_fn)) {
- if (doc_matters.opt_action["assertions"]) {
+ if (doc_matters.opt_action.assertions) {
switch (mfn.captures[2]) {
// live manual:
case "live-manual.ssm":
diff --git a/src/sdp/meta/metadoc.d b/src/sdp/meta/metadoc.d
index 8d83340..f36af09 100644
--- a/src/sdp/meta/metadoc.d
+++ b/src/sdp/meta/metadoc.d
@@ -31,10 +31,9 @@ template SiSUabstraction() {
enum makeMeta { make, meta }
enum docAbst { doc_abstraction, section_keys, segnames, segnames_0_4, images }
static auto rgx = Rgx();
- auto SiSUabstraction(Fn,O,S,E)(
+ auto SiSUabstraction(Fn,O,E)(
Fn fn_src,
- O opts,
- S settings,
+ O _opt_action,
E env,
){
auto sdl_root_config_share = configRead!()("config_share", env);
@@ -73,7 +72,7 @@ template SiSUabstraction() {
auto da = SiSUdocAbstraction!()(
_header_body_inserts[headBody.body_content],
_make_and_meta_struct,
- opts
+ _opt_action,
);
static assert(!isTypeTuple!(da));
static assert(da.length==5);
@@ -116,11 +115,7 @@ template SiSUabstraction() {
return _k;
}
auto opt_action() {
- bool[string] _k = opts;
- return _k;
- }
- auto opt_settings() {
- string[string] _k = settings;
+ auto _k = _opt_action;
return _k;
}
auto environment() {
diff --git a/src/sdp/meta/metadoc_from_src.d b/src/sdp/meta/metadoc_from_src.d
index 24c4699..917b66f 100644
--- a/src/sdp/meta/metadoc_from_src.d
+++ b/src/sdp/meta/metadoc_from_src.d
@@ -244,7 +244,6 @@ template SiSUdocAbstraction() {
static auto rgx = Rgx();
debug(asserts) {
static assert(is(typeof(markup_sourcefile_content) == char[][]));
- static assert(is(typeof(opt_action) == bool[string]));
}
/+ ↓ abstraction init +/
scope(success) {
@@ -410,7 +409,7 @@ template SiSUdocAbstraction() {
obj_type_status["glossary_section"] = State.off;
obj_type_status["biblio_section"] = State.on;
obj_type_status["blurb_section"] = State.off;
- if (opt_action["backmatter"] && opt_action["section_biblio"]) {
+ if (opt_action.backmatter && opt_action.section_biblio) {
_biblio_block_(line, obj_type_status, bib_entry, biblio_entry_str_json, biblio_arr_json);
debug(bibliobuild) {
writeln("- ", biblio_entry_str_json);
@@ -431,7 +430,7 @@ template SiSUdocAbstraction() {
obj_type_status["glossary_section"] = State.on;
obj_type_status["biblio_section"] = State.off;
obj_type_status["blurb_section"] = State.off;
- if (opt_action["backmatter"] && opt_action["section_glossary"]) {
+ if (opt_action.backmatter && opt_action.section_glossary) {
indent=[
"hang_position" : 0,
"base_position" : 0,
@@ -513,7 +512,7 @@ template SiSUdocAbstraction() {
obj_type_status["glossary_section"] = State.off;
obj_type_status["biblio_section"] = State.off;
obj_type_status["blurb_section"] = State.on;
- if (opt_action["backmatter"] && opt_action["section_blurb"]) {
+ if (opt_action.backmatter && opt_action.section_blurb) {
indent=[
"hang_position" : 0,
"base_position" : 0,
@@ -563,7 +562,7 @@ template SiSUdocAbstraction() {
comp_obj_heading_.dom_collapsed = [ 1, 1, 1, 0, 0, 0, 0, 0];
the_blurb_section ~= comp_obj_heading_;
} else if (line.matchFirst(rgx.heading)
- && (opt_action["backmatter"] && opt_action["section_blurb"])) {
+ && (opt_action.backmatter && opt_action.section_blurb)) {
comp_obj_heading_ = comp_obj_heading_.init;
comp_obj_heading_.of_part = "backmatter";
comp_obj_heading_.of_section = "blurb";
@@ -1374,13 +1373,13 @@ template SiSUdocAbstraction() {
obj.obj_cite_number_type = OCNtype.ocn;
}
/+ dom structure (marked up & collapsed) +/
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])
- || (opt_action["sqlite-discrete"])
- || (opt_action["sqlite-update"])
- || (opt_action["postgresql"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)
+ || (opt_action.sqlite_discrete)
+ || (opt_action.sqlite_update)
+ || (opt_action.postgresql)) {
obj = obj_dom_structure_set_markup_tags(obj, dom_markedup, obj.heading_lev_markup);
obj = obj_dom_set_collapsed_tags(obj, dom_collapsed, obj.heading_lev_collapsed);
}
@@ -1401,13 +1400,13 @@ template SiSUdocAbstraction() {
}
}
/+ dom structure (marked up & collapsed) +/
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])
- || (opt_action["sqlite-discrete"])
- || (opt_action["sqlite-update"])
- || (opt_action["postgresql"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)
+ || (opt_action.sqlite_discrete)
+ || (opt_action.sqlite_update)
+ || (opt_action.postgresql)) {
obj = obj_dom_structure_set_markup_tags(obj, dom_markedup, obj.heading_lev_markup);
obj = obj_dom_set_collapsed_tags(obj, dom_collapsed, obj.heading_lev_collapsed);
}
@@ -1429,10 +1428,10 @@ template SiSUdocAbstraction() {
assert(obj.segment_anchor_tag == html_segnames[obj.ptr_html_segnames]);
}
}
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)) {
obj = obj_dom_structure_set_markup_tags(obj, dom_markedup, obj.heading_lev_markup);
obj = obj_dom_set_collapsed_tags(obj, dom_collapsed, obj.heading_lev_collapsed);
}
@@ -1459,13 +1458,13 @@ template SiSUdocAbstraction() {
}
}
/+ dom structure (marked up & collapsed) +/
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])
- || (opt_action["sqlite-discrete"])
- || (opt_action["sqlite-update"])
- || (opt_action["postgresql"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)
+ || (opt_action.sqlite_discrete)
+ || (opt_action.sqlite_update)
+ || (opt_action.postgresql)) {
obj = obj_dom_structure_set_markup_tags(obj, dom_markedup, obj.heading_lev_markup);
obj = obj_dom_set_collapsed_tags(obj, dom_collapsed, obj.heading_lev_collapsed);
}
@@ -1501,13 +1500,13 @@ template SiSUdocAbstraction() {
}
}
/+ dom structure (marked up & collapsed) +/
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])
- || (opt_action["sqlite-discrete"])
- || (opt_action["sqlite-update"])
- || (opt_action["postgresql"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)
+ || (opt_action.sqlite_discrete)
+ || (opt_action.sqlite_update)
+ || (opt_action.postgresql)) {
obj = obj_dom_structure_set_markup_tags(obj, dom_markedup, obj.heading_lev_markup);
obj = obj_dom_set_collapsed_tags(obj, dom_collapsed, obj.heading_lev_collapsed);
}
@@ -1536,13 +1535,13 @@ template SiSUdocAbstraction() {
}
}
/+ dom structure (marked up & collapsed) +/
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])
- || (opt_action["sqlite-discrete"])
- || (opt_action["sqlite-update"])
- || (opt_action["postgresql"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)
+ || (opt_action.sqlite_discrete)
+ || (opt_action.sqlite_update)
+ || (opt_action.postgresql)) {
obj = obj_dom_structure_set_markup_tags(obj, dom_markedup, obj.heading_lev_markup);
obj = obj_dom_set_collapsed_tags(obj, dom_collapsed, obj.heading_lev_collapsed);
}
@@ -1575,13 +1574,13 @@ template SiSUdocAbstraction() {
}
}
/+ dom structure (marked up & collapsed) +/
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])
- || (opt_action["sqlite-discrete"])
- || (opt_action["sqlite-update"])
- || (opt_action["postgresql"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)
+ || (opt_action.sqlite_discrete)
+ || (opt_action.sqlite_update)
+ || (opt_action.postgresql)) {
obj = obj_dom_structure_set_markup_tags(obj, dom_markedup, obj.heading_lev_markup);
obj = obj_dom_set_collapsed_tags(obj, dom_collapsed, obj.heading_lev_collapsed);
}
@@ -1619,13 +1618,13 @@ template SiSUdocAbstraction() {
}
}
/+ dom structure (marked up & collapsed) +/
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])
- || (opt_action["sqlite-discrete"])
- || (opt_action["sqlite-update"])
- || (opt_action["postgresql"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)
+ || (opt_action.sqlite_discrete)
+ || (opt_action.sqlite_update)
+ || (opt_action.postgresql)) {
obj = obj_dom_structure_set_markup_tags(obj, dom_markedup, obj.heading_lev_markup);
obj = obj_dom_set_collapsed_tags(obj, dom_collapsed, obj.heading_lev_collapsed);
}
@@ -1658,13 +1657,13 @@ template SiSUdocAbstraction() {
}
}
/+ dom structure (marked up & collapsed) +/
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])
- || (opt_action["sqlite-discrete"])
- || (opt_action["sqlite-update"])
- || (opt_action["postgresql"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)
+ || (opt_action.sqlite_discrete)
+ || (opt_action.sqlite_update)
+ || (opt_action.postgresql)) {
obj = obj_dom_structure_set_markup_tags(obj, dom_markedup, obj.heading_lev_markup);
obj = obj_dom_set_collapsed_tags(obj, dom_collapsed, obj.heading_lev_collapsed);
}
@@ -1701,13 +1700,13 @@ template SiSUdocAbstraction() {
}
}
/+ dom structure (marked up & collapsed) +/
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])
- || (opt_action["sqlite-discrete"])
- || (opt_action["sqlite-update"])
- || (opt_action["postgresql"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)
+ || (opt_action.sqlite_discrete)
+ || (opt_action.sqlite_update)
+ || (opt_action.postgresql)) {
obj = obj_dom_structure_set_markup_tags(obj, dom_markedup, obj.heading_lev_markup);
obj = obj_dom_set_collapsed_tags(obj, dom_collapsed, obj.heading_lev_collapsed);
}
@@ -1793,10 +1792,10 @@ template SiSUdocAbstraction() {
document_section_keys_sequenced["scroll"] ~= "blurb";
document_section_keys_sequenced["sql"] ~= "blurb";
}
- if ((opt_action["html"])
- || (opt_action["html-scroll"])
- || (opt_action["html-seg"])
- || (opt_action["epub"])) {
+ if ((opt_action.html)
+ || (opt_action.html_scroll)
+ || (opt_action.html_seg)
+ || (opt_action.epub)) {
document_section_keys_sequenced["seg"] ~= "tail";
document_section_keys_sequenced["scroll"] ~= "tail";
}
@@ -3012,7 +3011,6 @@ template SiSUdocAbstraction() {
static assert(is(typeof(book_idx_tmp) == string));
static assert(is(typeof(an_object) == string[string]));
static assert(is(typeof(obj_type_status) == int[string]));
- static assert(is(typeof(opt_action) == bool[string]));
}
static auto rgx = Rgx();
if (auto m = line.match(rgx.book_index)) {
@@ -3027,7 +3025,7 @@ template SiSUdocAbstraction() {
} else if (auto m = line.match(rgx.book_index_open)) {
/+ match open book_index +/
obj_type_status["book_index"] = State.on;
- if (opt_action["backmatter"] && opt_action["section_bookindex"]) {
+ if (opt_action.backmatter && opt_action.section_bookindex) {
book_idx_tmp = m.captures[1].to!string;
debug(bookindexmatch) { // book index
writefln(
@@ -3040,8 +3038,8 @@ template SiSUdocAbstraction() {
/+ book_index flag set +/
if (auto m = line.match(rgx.book_index_close)) {
obj_type_status["book_index"] = State.off;
- if (opt_action["backmatter"]
- && opt_action["section_bookindex"]) {
+ if (opt_action.backmatter
+ && opt_action.section_bookindex) {
an_object["bookindex_nugget"] = book_idx_tmp ~ m.captures[1].to!string;
debug(bookindexmatch) { // book index
writefln(
@@ -3052,8 +3050,8 @@ template SiSUdocAbstraction() {
}
book_idx_tmp = "";
} else {
- if (opt_action["backmatter"]
- && opt_action["section_bookindex"]) {
+ if (opt_action.backmatter
+ && opt_action.section_bookindex) {
book_idx_tmp ~= line;
}
}
@@ -4870,7 +4868,6 @@ template SiSUdocAbstraction() {
debug(asserts) {
static assert(is(typeof(bookindex_unordered_hashes) == string[][string][string]));
static assert(is(typeof(obj_cite_digits.on) == int));
- static assert(is(typeof(opt_action) == bool[string]));
}
mixin SiSUnode;
mixin InternalMarkup;
@@ -4887,8 +4884,8 @@ template SiSUdocAbstraction() {
auto node_para_int_ = node_metadata_para_int;
auto node_para_str_ = node_metadata_para_str;
if ((mainkeys.length > 0)
- && (opt_action["backmatter"]
- && opt_action["section_bookindex"])) {
+ && (opt_action.backmatter
+ && opt_action.section_bookindex)) {
string bi_tmp_seg, bi_tmp_scroll;
string[] bi_tmp_tags;
comp_obj_heading_ = comp_obj_heading_.init;
@@ -5104,9 +5101,9 @@ template SiSUdocAbstraction() {
}
return endnotes_;
}
- private auto endnote_objects(N)(
+ private auto endnote_objects(N,O)(
N obj_cite_digits,
- bool[string] opt_action,
+ O opt_action,
)
in {
}
@@ -5120,7 +5117,7 @@ template SiSUdocAbstraction() {
int[string] indent;
ObjGenericComposite comp_obj_heading_;
if ((endnotes_["notes"].length > 0)
- && (opt_action["backmatter"] && opt_action["section_endnotes"])) {
+ && (opt_action.backmatter && opt_action.section_endnotes)) {
comp_obj_heading_ = comp_obj_heading_.init;
comp_obj_heading_.of_part = "backmatter";
comp_obj_heading_.of_section = "endnotes";
@@ -5176,7 +5173,7 @@ template SiSUdocAbstraction() {
comp_obj_heading_.parent_lev_markup = 0;
the_endnotes_section ~= comp_obj_heading_;
}
- if (opt_action["backmatter"] && opt_action["section_endnotes"]) {
+ if (opt_action.backmatter && opt_action.section_endnotes) {
ObjGenericComposite comp_obj_endnote_;
comp_obj_endnote_ = comp_obj_endnote_.init;
comp_obj_endnote_.of_part = "backmatter";
diff --git a/src/sdp/meta/metadoc_summary.d b/src/sdp/meta/metadoc_summary.d
index 45fd319..c1e3f76 100644
--- a/src/sdp/meta/metadoc_summary.d
+++ b/src/sdp/meta/metadoc_summary.d
@@ -20,7 +20,7 @@ template SiSUabstractionSummary() {
std.conv : to;
mixin InternalMarkup;
auto markup = InlineMarkup();
- if (doc_matters.opt_action["verbose"]) {
+ if (doc_matters.opt_action.verbose) {
string[string] check = [
"last_obj_cite_number" : "NA [debug \"checkdoc\" not run]",
"last_obj_cite_number_body" : "0",
diff --git a/src/sdp/output/epub3.d b/src/sdp/output/epub3.d
index b6987ae..78603b2 100644
--- a/src/sdp/output/epub3.d
+++ b/src/sdp/output/epub3.d
@@ -356,13 +356,13 @@ template outputEPub3() {
doc_epub3_endnotes[segment_filename] ~= t[1];
break;
case 8: .. case 9:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a, ": ", obj.heading_lev_markup);
writeln(__FILE__, ":", __LINE__, ": ", obj.text);
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a, ": ", obj.heading_lev_markup);
}
break;
@@ -380,14 +380,14 @@ template outputEPub3() {
doc_epub3_endnotes[segment_filename] ~= t[1];
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -403,7 +403,7 @@ template outputEPub3() {
doc_epub3_endnotes[segment_filename] ~= t[1];
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
@@ -442,14 +442,14 @@ template outputEPub3() {
doc_epub3_endnotes[segment_filename] ~= t[1];
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -485,14 +485,14 @@ template outputEPub3() {
doc_epub3_endnotes[segment_filename] ~= t[1];
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -501,7 +501,7 @@ template outputEPub3() {
case "comment":
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.of_part);
}
break;
diff --git a/src/sdp/output/html.d b/src/sdp/output/html.d
index 7ed649e..b0b0405 100644
--- a/src/sdp/output/html.d
+++ b/src/sdp/output/html.d
@@ -40,14 +40,14 @@ template outputHTML() {
doc_html ~= xhtml_format.para_scroll(obj, _txt, suffix);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -64,7 +64,7 @@ template outputHTML() {
doc_html ~= xhtml_format.para_scroll(obj, _txt, suffix);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
@@ -93,14 +93,14 @@ template outputHTML() {
doc_html ~= xhtml_format.table(obj, _txt);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -130,14 +130,14 @@ template outputHTML() {
doc_html ~= xhtml_format.para_scroll(obj, _txt, suffix);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -146,7 +146,7 @@ template outputHTML() {
case "comment":
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.of_part);
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
writeln(__FILE__, ":", __LINE__, ": ", obj.text);
@@ -254,13 +254,13 @@ template outputHTML() {
doc_html_endnotes[segment_filename] ~= t[1];
break;
case 8: .. case 9:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a, ": ", obj.heading_lev_markup);
writeln(__FILE__, ":", __LINE__, ": ", obj.text);
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a, ": ", obj.heading_lev_markup);
}
break;
@@ -277,14 +277,14 @@ template outputHTML() {
doc_html[segment_filename] ~= to!string(t[0]);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
@@ -300,7 +300,7 @@ template outputHTML() {
doc_html_endnotes[segment_filename] ~= t[1];
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
@@ -338,14 +338,14 @@ template outputHTML() {
doc_html_endnotes[segment_filename] ~= "";
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -381,14 +381,14 @@ template outputHTML() {
doc_html_endnotes[segment_filename] ~= t[1];
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -397,7 +397,7 @@ template outputHTML() {
case "comment":
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.of_part);
}
break;
diff --git a/src/sdp/output/hub.d b/src/sdp/output/hub.d
index 4f5a363..1600dd2 100644
--- a/src/sdp/output/hub.d
+++ b/src/sdp/output/hub.d
@@ -16,73 +16,73 @@ template outputHub() {
void outputHub(D,I)(D doc_abstraction, I doc_matters) {
mixin SiSUoutputRgxInit;
static auto rgx = Rgx();
- if ((doc_matters.opt_action["verbose"])) {
+ if ((doc_matters.opt_action.verbose)) {
writeln(doc_matters.keys_seq.seg);
}
- if ((doc_matters.opt_action["source"])
- || (doc_matters.opt_action["sisupod"])) {
- if ((doc_matters.opt_action["verbose"])
- && (doc_matters.opt_action["source"]))
+ if ((doc_matters.opt_action.source)
+ || (doc_matters.opt_action.sisupod)) {
+ if ((doc_matters.opt_action.verbose)
+ && (doc_matters.opt_action.source))
{ writeln("sisu source processing... "); }
- if ((doc_matters.opt_action["verbose"])
- && (doc_matters.opt_action["sisupod"]))
+ if ((doc_matters.opt_action.verbose)
+ && (doc_matters.opt_action.sisupod))
{ writeln("sisupod source processing... "); }
SiSUpod!()(doc_matters);
- if ((doc_matters.opt_action["verbose"])
- && (doc_matters.opt_action["debug"])
- && (doc_matters.opt_action["source"]))
+ if ((doc_matters.opt_action.verbose)
+ && (doc_matters.opt_action.debug_do)
+ && (doc_matters.opt_action.source))
{ writeln("sisu source done"); }
- if ((doc_matters.opt_action["verbose"])
- && (doc_matters.opt_action["debug"])
- && (doc_matters.opt_action["sisupod"]))
+ if ((doc_matters.opt_action.verbose)
+ && (doc_matters.opt_action.debug_do)
+ && (doc_matters.opt_action.sisupod))
{ writeln("sisupod done"); }
}
- if (doc_matters.opt_action["text"]) {
+ if (doc_matters.opt_action.text) {
/+ mixin outputText; +/
- if ((doc_matters.opt_action["verbose"])) { writeln("text processing... "); }
+ if ((doc_matters.opt_action.verbose)) { writeln("text processing... "); }
}
- if (doc_matters.opt_action["html"]) {
- if ((doc_matters.opt_action["verbose"])) { writeln("html scroll processing... "); }
+ if (doc_matters.opt_action.html) {
+ if ((doc_matters.opt_action.verbose)) { writeln("html scroll processing... "); }
outputHTML!().scroll(doc_abstraction, doc_matters);
- if ((doc_matters.opt_action["verbose"]) && (doc_matters.opt_action["debug"])) { writeln("html scroll done"); }
- if ((doc_matters.opt_action["verbose"])) { writeln("html seg processing... "); }
+ if ((doc_matters.opt_action.verbose) && (doc_matters.opt_action.debug_do)) { writeln("html scroll done"); }
+ if ((doc_matters.opt_action.verbose)) { writeln("html seg processing... "); }
outputHTML!().seg(doc_abstraction, doc_matters);
- if ((doc_matters.opt_action["verbose"]) && (doc_matters.opt_action["debug"])) { writeln("html seg done"); }
+ if ((doc_matters.opt_action.verbose) && (doc_matters.opt_action.debug_do)) { writeln("html seg done"); }
outputHTML!().css(doc_matters);
- } else if (doc_matters.opt_action["html-seg"]) {
- if ((doc_matters.opt_action["verbose"])) { writeln("html seg processing... "); }
+ } else if (doc_matters.opt_action.html_seg) {
+ if ((doc_matters.opt_action.verbose)) { writeln("html seg processing... "); }
outputHTML!().seg(doc_abstraction, doc_matters);
- if ((doc_matters.opt_action["verbose"]) && (doc_matters.opt_action["debug"])) { writeln("html seg done"); }
+ if ((doc_matters.opt_action.verbose) && (doc_matters.opt_action.debug_do)) { writeln("html seg done"); }
outputHTML!().css(doc_matters);
- } else if (doc_matters.opt_action["html-scroll"]) {
- if ((doc_matters.opt_action["verbose"])) { writeln("html scroll processing... "); }
+ } else if (doc_matters.opt_action.html_scroll) {
+ if ((doc_matters.opt_action.verbose)) { writeln("html scroll processing... "); }
outputHTML!().scroll(doc_abstraction, doc_matters);
- if ((doc_matters.opt_action["verbose"]) && (doc_matters.opt_action["debug"])) { writeln("html scroll done"); }
+ if ((doc_matters.opt_action.verbose) && (doc_matters.opt_action.debug_do)) { writeln("html scroll done"); }
outputHTML!().css(doc_matters);
}
- if (doc_matters.opt_action["epub"]) {
- if ((doc_matters.opt_action["verbose"])) { writeln("epub3 processing... "); }
+ if (doc_matters.opt_action.epub) {
+ if ((doc_matters.opt_action.verbose)) { writeln("epub3 processing... "); }
outputEPub3!()(doc_abstraction, doc_matters);
// epub.css_write;
- if ((doc_matters.opt_action["verbose"]) && (doc_matters.opt_action["debug"])) { writeln("epub3 done"); }
+ if ((doc_matters.opt_action.verbose) && (doc_matters.opt_action.debug_do)) { writeln("epub3 done"); }
}
- if (doc_matters.opt_action["pdf"]) {
+ if (doc_matters.opt_action.pdf) {
/+ mixin outputPDF; +/
writeln("pdf processing");
}
- if (doc_matters.opt_action["odt"]) {
+ if (doc_matters.opt_action.odt) {
/+ mixin outputODT; +/
writeln("odt processing");
}
- if (doc_matters.opt_action["sqlite-discrete"]) {
- if ((doc_matters.opt_action["verbose"])) { writeln("sqlite processing... "); }
+ if (doc_matters.opt_action.sqlite_discrete) {
+ if ((doc_matters.opt_action.verbose)) { writeln("sqlite processing... "); }
SQLiteDiscreteBuildTablesAndPopulate!()(doc_abstraction, doc_matters);
}
- if (doc_matters.opt_action["sqlite-update"]) {
- if ((doc_matters.opt_action["verbose"])) { writeln("sqlite processing... "); }
+ if (doc_matters.opt_action.sqlite_update) {
+ if ((doc_matters.opt_action.verbose)) { writeln("sqlite processing... "); }
SQLiteBuildTablesAndPopulate!()(doc_abstraction, doc_matters);
}
- if (doc_matters.opt_action["postgresql"]) {
+ if (doc_matters.opt_action.postgresql) {
/+ mixin outputPostgreSQL; +/
writeln("pgsql processing");
}
@@ -98,15 +98,15 @@ template outputHubOp() {
sdp.output.source_sisupod,
sdp.output.create_zip_file,
sdp.output.paths_output;
- void outputHubOp(C)(C config) {
+ void outputHubOp(O)(O opt_action) {
mixin SiSUoutputRgxInit;
static auto rgx = Rgx();
- if ((config["sqlite-create"])) {
- if ((config["verbose"])) { writeln("sqlite create table... "); }
+ if ((opt_action.sqlite_create)) {
+ if ((opt_action.verbose)) { writeln("sqlite create table... "); }
SQLiteTablesCreate!()();
}
- if ((config["sqlite-drop"])) {
- if ((config["verbose"])) { writeln("sqlite drop table... "); }
+ if ((opt_action.sqlite_drop)) {
+ if ((opt_action.verbose)) { writeln("sqlite drop table... "); }
SQLiteTablesDrop!()();
}
}
diff --git a/src/sdp/output/source_sisupod.d b/src/sdp/output/source_sisupod.d
index d83ae87..6e06667 100644
--- a/src/sdp/output/source_sisupod.d
+++ b/src/sdp/output/source_sisupod.d
@@ -30,7 +30,7 @@ template SiSUpod() {
// used both by sisupod zipped (& sisupod filesystem (unzipped) which makes its own recursive dirs)
pths_sisupod.sisupod_dir_().mkdirRecurse;
}
- if (doc_matters.opt_action["source"]) {
+ if (doc_matters.opt_action.source) {
if (!exists(pths_sisupod.text_root(doc_matters.source_filename).filesystem_open_zpod)) {
pths_sisupod.text_root(doc_matters.source_filename).filesystem_open_zpod.mkdirRecurse;
}
@@ -70,10 +70,10 @@ template SiSUpod() {
auto fn_src_out_sisupod_zip_base = pths_sisupod.image_root(doc_matters.source_filename).zpod.to!string ~ "/" ~ image;
auto fn_src_out_filesystem = pths_sisupod.image_root(doc_matters.source_filename).filesystem_open_zpod.to!string ~ "/" ~ image;
if (exists(fn_src_in)) {
- if (doc_matters.opt_action["source"]) {
+ if (doc_matters.opt_action.source) {
fn_src_in.copy(fn_src_out_filesystem);
}
- if (doc_matters.opt_action["sisupod"]) {
+ if (doc_matters.opt_action.sisupod) {
auto zip_arc_member_file = new ArchiveMember();
zip_arc_member_file.name = fn_src_out_sisupod_zip_base;
auto zip_data = new OutBuffer();
@@ -88,10 +88,10 @@ template SiSUpod() {
auto fn_src_out_sisupod_zip_base = pths_sisupod.conf_root(doc_matters.source_filename).zpod.to!string ~ "/" ~ "sisu_document_make";
auto fn_src_out_filesystem = pths_sisupod.conf_root(doc_matters.source_filename).filesystem_open_zpod.to!string ~ "/" ~ "sisu_document_make";
if (exists(fn_src_in)) {
- if (doc_matters.opt_action["source"]) {
+ if (doc_matters.opt_action.source) {
fn_src_in.copy(fn_src_out_filesystem);
}
- if (doc_matters.opt_action["sisupod"]) {
+ if (doc_matters.opt_action.sisupod) {
auto zip_arc_member_file = new ArchiveMember();
zip_arc_member_file.name = fn_src_out_sisupod_zip_base;
auto zip_data = new OutBuffer();
@@ -110,14 +110,14 @@ template SiSUpod() {
if (exists(fn_src_in)) {
filelist_src_out_sisupod_arr ~= fn_src_out_sisupod_zip_base;
filelist_src_zpod_arr ~= fn_src_out_inside_pod;
- if (doc_matters.opt_action["source"]) {
+ if (doc_matters.opt_action.source) {
auto filelist = File(pths_sisupod.fn_pod_filelist(doc_matters.source_filename).filesystem_open_zpod, "w");
foreach (source_pth_and_fn; filelist_src_zpod_arr) {
filelist.writeln(source_pth_and_fn);
}
fn_src_in.copy(fn_src_out_filesystem);
}
- if (doc_matters.opt_action["sisupod"]) {
+ if (doc_matters.opt_action.sisupod) {
auto zip_arc_member_file = new ArchiveMember();
zip_arc_member_file.name = fn_src_out_sisupod_zip_base;
auto zip_data = new OutBuffer();
@@ -150,10 +150,10 @@ template SiSUpod() {
insert_file,
).filesystem_open_zpod.to!string;
if (exists(fn_src_in)) {
- if (doc_matters.opt_action["source"]) {
+ if (doc_matters.opt_action.source) {
fn_src_in.copy(fn_src_out_filesystem);
}
- if (doc_matters.opt_action["sisupod"]) {
+ if (doc_matters.opt_action.sisupod) {
auto zip_arc_member_file = new ArchiveMember();
zip_arc_member_file.name = fn_src_out_sisupod_zip_base;
auto zip_data = new OutBuffer();
@@ -168,7 +168,7 @@ template SiSUpod() {
} {
auto fn_src_in = doc_matters.source_filename;
if (exists(fn_src_in)) {
- if (doc_matters.opt_action["sisupod"]) {
+ if (doc_matters.opt_action.sisupod) {
createZipFile!()(fn_sisupod, zip.build());
}
}
diff --git a/src/sdp/output/sqlite.d b/src/sdp/output/sqlite.d
index 6a9acd2..591b002 100644
--- a/src/sdp/output/sqlite.d
+++ b/src/sdp/output/sqlite.d
@@ -44,7 +44,7 @@ template SQLiteBuildTablesAndPopulate() {
if (_urls.length > 0) {
_txt ~= _urls;
}
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
writeln(_txt, "\n");
}
debug(sql_text_clean) {
@@ -96,7 +96,7 @@ template SQLiteBuildTablesAndPopulate() {
if (_notes.length > 0) {
_txt ~= _notes;
}
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
writeln(_txt, "\n");
}
return _txt;
@@ -303,7 +303,7 @@ template SQLiteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_heading(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -322,7 +322,7 @@ template SQLiteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_para(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -341,7 +341,7 @@ template SQLiteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_quote(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -360,7 +360,7 @@ template SQLiteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_group(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -379,7 +379,7 @@ template SQLiteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_block(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -398,7 +398,7 @@ template SQLiteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_verse(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -417,7 +417,7 @@ template SQLiteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_code(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -436,7 +436,7 @@ template SQLiteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_table(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -459,8 +459,8 @@ template SQLiteBuildTablesAndPopulate() {
auto pth_sqlite = SiSUpathsSQLite!()(doc_matters.src_path_info, doc_matters.language);
auto db = Database(pth_sqlite.sqlite_file(doc_matters.environment["pwd"].baseName));
// auto db = Database(":memory:"); // open database in memory
- if (doc_matters.opt_action["sqlite-create"]) {
- if ((doc_matters.opt_action["verbose"])) { writeln("sqlite create tables... "); }
+ if (doc_matters.opt_action.sqlite_create) {
+ if ((doc_matters.opt_action.verbose)) { writeln("sqlite create tables... "); }
db.run("
DROP TABLE IF EXISTS metadata_and_text;
DROP TABLE IF EXISTS doc_objects;
@@ -911,14 +911,14 @@ template SQLiteBuildTablesAndPopulate() {
obj_txt = format_and_sqlite_load.heading(obj);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -940,7 +940,7 @@ template SQLiteBuildTablesAndPopulate() {
obj_txt = format_and_sqlite_load.para(obj);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
@@ -969,14 +969,14 @@ template SQLiteBuildTablesAndPopulate() {
obj_txt = format_and_sqlite_load.table(obj);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -1006,14 +1006,14 @@ template SQLiteBuildTablesAndPopulate() {
obj_txt = format_and_sqlite_load.para(obj);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -1022,7 +1022,7 @@ template SQLiteBuildTablesAndPopulate() {
case "comment":
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.of_part); // check where empty value could come from
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
writeln(__FILE__, ":", __LINE__, ": ", obj.text); // check where empty value could come from
diff --git a/src/sdp/output/sqlite_discrete.d b/src/sdp/output/sqlite_discrete.d
index 132d312..7415f4c 100644
--- a/src/sdp/output/sqlite_discrete.d
+++ b/src/sdp/output/sqlite_discrete.d
@@ -44,7 +44,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
if (_urls.length > 0) {
_txt ~= _urls;
}
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
writeln(_txt, "\n");
}
debug(sql_text_clean) {
@@ -96,7 +96,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
if (_notes.length > 0) {
_txt ~= _notes;
}
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
writeln(_txt, "\n");
}
return _txt;
@@ -303,7 +303,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_heading(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -322,7 +322,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_para(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -341,7 +341,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_quote(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -360,7 +360,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_group(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -379,7 +379,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_block(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -398,7 +398,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_verse(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -417,7 +417,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_code(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -436,7 +436,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
"text": generic_munge_sanitize_text_for_search(obj.text),
"html": html_table(obj)
];
- if (doc_matters.opt_action["debug"]) {
+ if (doc_matters.opt_action.debug_do) {
debug(sql_txt) {
writeln(obj_txt["text"]);
}
@@ -908,14 +908,14 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
obj_txt = format_and_sqlite_load.heading(obj);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -937,7 +937,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
obj_txt = format_and_sqlite_load.para(obj);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
@@ -966,14 +966,14 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
obj_txt = format_and_sqlite_load.table(obj);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -1003,14 +1003,14 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
obj_txt = format_and_sqlite_load.para(obj);
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
}
break;
}
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.is_of);
}
break;
@@ -1019,7 +1019,7 @@ template SQLiteDiscreteBuildTablesAndPopulate() {
case "comment":
break;
default:
- if ((doc_matters.opt_action["debug"])) {
+ if ((doc_matters.opt_action.debug_do)) {
writeln(__FILE__, ":", __LINE__, ": ", obj.of_part); // check where empty value could come from
writeln(__FILE__, ":", __LINE__, ": ", obj.is_a);
writeln(__FILE__, ":", __LINE__, ": ", obj.text); // check where empty value could come from
diff --git a/src/sdp/sdp.d b/src/sdp/sdp.d
index 330fe7a..ac022ba 100755
--- a/src/sdp/sdp.d
+++ b/src/sdp/sdp.d
@@ -148,6 +148,157 @@ void main(string[] args) {
if (helpInfo.helpWanted) {
defaultGetoptPrinter("Some information about the program.", helpInfo.options);
}
+ struct OptActions {
+ auto assertions() {
+ auto _k = opts["assertions"];
+ return _k;
+ }
+ auto concordance() {
+ auto _k = opts["concordance"];
+ return _k;
+ }
+ auto debug_do() {
+ auto _k = opts["debug"];
+ return _k;
+ }
+ auto digest() {
+ auto _k = opts["digest"];
+ return _k;
+ }
+ auto docbook() {
+ auto _k = opts["docbook"];
+ return _k;
+ }
+ auto epub() {
+ auto _k = opts["epub"];
+ return _k;
+ }
+ auto html() {
+ auto _k = opts["html"];
+ return _k;
+ }
+ auto html_seg() {
+ auto _k = opts["html-seg"];
+ return _k;
+ }
+ auto html_scroll() {
+ auto _k = opts["html-scroll"];
+ return _k;
+ }
+ auto manifest() {
+ auto _k = opts["manifest"];
+ return _k;
+ }
+ auto ocn() {
+ auto _k = opts["ocn"];
+ return _k;
+ }
+ auto odt() {
+ auto _k = opts["odt"];
+ return _k;
+ }
+ auto pdf() {
+ auto _k = opts["pdf"];
+ return _k;
+ }
+ auto postgresql() {
+ auto _k = opts["postgresql"];
+ return _k;
+ }
+ auto qrcode() {
+ auto _k = opts["qrcode"];
+ return _k;
+ }
+ auto sisupod() {
+ auto _k = opts["sisupod"];
+ return _k;
+ }
+ auto source() {
+ auto _k = opts["source"];
+ return _k;
+ }
+ auto sqlite_discrete() {
+ auto _k = opts["sqlite-discrete"];
+ return _k;
+ }
+ auto sqlite_update() {
+ auto _k = opts["sqlite-update"];
+ return _k;
+ }
+ auto sqlite_create() {
+ auto _k = opts["sqlite-create"];
+ return _k;
+ }
+ auto sqlite_drop() {
+ auto _k = opts["sqlite-drop"];
+ return _k;
+ }
+ auto text() {
+ auto _k = opts["text"];
+ return _k;
+ }
+ auto verbose() {
+ auto _k = opts["verbose"];
+ return _k;
+ }
+ auto xhtml() {
+ auto _k = opts["xhtml"];
+ return _k;
+ }
+ auto xml_dom() {
+ auto _k = opts["xml-dom"];
+ return _k;
+ }
+ auto xml_sax() {
+ auto _k = opts["xml-sax"];
+ return _k;
+ }
+ auto section_toc() {
+ auto _k = opts["section_toc"];
+ return _k;
+ }
+ auto section_body() {
+ auto _k = opts["section_body"];
+ return _k;
+ }
+ auto section_endnotes() {
+ auto _k = opts["section_endnotes"];
+ return _k;
+ }
+ auto section_glossary() {
+ auto _k = opts["section_glossary"];
+ return _k;
+ }
+ auto section_biblio() {
+ auto _k = opts["section_biblio"];
+ return _k;
+ }
+ auto section_bookindex() {
+ auto _k = opts["section_bookindex"];
+ return _k;
+ }
+ auto section_blurb() {
+ auto _k = opts["section_blurb"];
+ return _k;
+ }
+ auto backmatter() {
+ auto _k = opts["backmatter"];
+ return _k;
+ }
+ auto skip_output() {
+ auto _k = opts["skip-output"];
+ return _k;
+ }
+ auto languages_set() {
+ auto _k = settings["lang"].split(",");
+ return _k;
+ }
+ auto output_dir_set() {
+ auto _k = settings["output-dir"];
+ return _k;
+ }
+ }
+ auto _opt_action = OptActions();
foreach(arg; args[1..$]) {
if (arg.match(rgx.flag_action)) {
flag_action ~= " " ~ arg; // flags not taken by getopt
@@ -183,8 +334,8 @@ void main(string[] args) {
contents_location ~ "»"
);
auto contents_location_pth_ = (contents_location).to!string;
- auto lang_rgx_ = regex(r"/(" ~ settings["lang"].split(",").join("|") ~ ")/");
- if (settings["lang"] == "all"
+ auto lang_rgx_ = regex(r"/(" ~ _opt_action.languages_set.join("|") ~ ")/");
+ if (_opt_action.languages_set[0] == "all"
|| (contents_location_pth_).match(lang_rgx_)
) {
fns_src ~= (((tmp_dir_).chainPath(contents_location_pth_)).array).to!(char[]);
@@ -200,8 +351,8 @@ void main(string[] args) {
"pwd" : environment["PWD"],
"home" : environment["HOME"],
];
- if (!(opts["skip-output"])) {
- outputHubOp!()(opts);
+ if (!(_opt_action.skip_output)) {
+ outputHubOp!()(_opt_action);
}
if (fns_src.length > 0) {
foreach(fn_src; fns_src) {
@@ -229,23 +380,23 @@ void main(string[] args) {
"not a sisu markup filename: «" ~
fn_src ~ "»"
);
- auto t = SiSUabstraction!()(fn_src, opts, settings, env);
+ auto t = SiSUabstraction!()(fn_src, _opt_action, env);
static assert(!isTypeTuple!(t));
static assert(t.length==2);
auto doc_abstraction = t[dAM.abstraction];
auto doc_matters = t[dAM.matters];
/+ ↓ debugs +/
- if (doc_matters.opt_action["verbose"]) {
+ if (doc_matters.opt_action.verbose) {
SiSUabstractionSummary!()(doc_abstraction, doc_matters);
}
/+ ↓ debugs +/
- if ((doc_matters.opt_action["debug"])
- || (doc_matters.opt_action["verbose"])
+ if ((doc_matters.opt_action.debug_do)
+ || (doc_matters.opt_action.verbose)
) {
SiSUdebugs!()(doc_abstraction, doc_matters);
}
/+ ↓ output hub +/
- if (!(opts["skip-output"])) {
+ if (!(doc_matters.opt_action.skip_output)) {
outputHub!()(doc_abstraction, doc_matters);
}
scope(exit) {