aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/sdp/ao_abstract_doc_source.d
diff options
context:
space:
mode:
Diffstat (limited to 'src/sdp/ao_abstract_doc_source.d')
-rw-r--r--src/sdp/ao_abstract_doc_source.d219
1 files changed, 111 insertions, 108 deletions
diff --git a/src/sdp/ao_abstract_doc_source.d b/src/sdp/ao_abstract_doc_source.d
index c1566d2..7539755 100644
--- a/src/sdp/ao_abstract_doc_source.d
+++ b/src/sdp/ao_abstract_doc_source.d
@@ -136,7 +136,7 @@ template SiSUdocAbstraction() {
}
auto type = flags_type_init;
auto dochead_make = parseJSON(header_make_jsonstr).object;
- auto dochead_metadata = parseJSON(header_metadata_jsonstr).object;
+ auto dochead_meta = parseJSON(header_metadata_jsonstr).object;
mixin ScreenTxtColors;
int tell_lo(string color, int obj_cite_number, in char[] line) {
writefln(
@@ -242,12 +242,12 @@ template SiSUdocAbstraction() {
/+ block object: code +/
code_block(line, an_object, type);
continue;
- } else if (!match(line, rgx.regular_parse_skip)) {
+ } else if (!matchFirst(line, rgx.regular_parse_skip)) {
/+ object other than code block object (includes regular text paragraph) +/
- if (((match(line, rgx.heading_biblio)
+ if (((matchFirst(line, rgx.heading_biblio)
|| (type["heading_biblio"] == State.on)))
- && (!match(line, rgx.heading))
- && (!match(line, rgx.comment))) {
+ && (!matchFirst(line, rgx.heading))
+ && (!matchFirst(line, rgx.comment))) {
/+ within block object: biblio +/
biblio_block(line, type, bib_entry, biblio_arr_json);
continue;
@@ -273,15 +273,15 @@ template SiSUdocAbstraction() {
table_block(line, an_object, type);
continue;
} else {
- /+ not within a block group +/
+ /+ not within a block group +/
assert(
(type["blocks"] == TriState.off)
|| (type["blocks"] == TriState.closing),
"block status: none or closed"
);
assertions_flag_types_block_status_none_or_closed(type);
- if (match(line, rgx.block_open)) {
- if (match(line, (rgx.block_poem_open))) {
+ if (matchFirst(line, rgx.block_open)) {
+ if (matchFirst(line, (rgx.block_poem_open))) {
/+ poem to verse exceptions! +/
object_reset(an_object);
processing.remove("verse");
@@ -308,19 +308,19 @@ template SiSUdocAbstraction() {
tell_l("red", line);
}
assert(
- match(line, rgx.book_index)
- || match(line, rgx.book_index_open)
+ matchFirst(line, rgx.book_index)
+ || matchFirst(line, rgx.book_index_open)
|| type["book_index"] == State.on
);
}
- if ((match(line, rgx.book_index))
- || (match(line, rgx.book_index_open))
+ if ((matchFirst(line, rgx.book_index))
+ || (matchFirst(line, rgx.book_index_open))
|| (type["book_index"] == State.on )) {
/+ book_index +/
book_index(line, book_idx_tmp, an_object, type);
} else {
/+ not book_index +/
- if (auto m = match(line, rgx.comment)) {
+ if (auto m = matchFirst(line, rgx.comment)) {
/+ matched comment +/
debug(comment) {
tell_l("blue", line);
@@ -333,8 +333,8 @@ template SiSUdocAbstraction() {
type["header_make"] = State.off;
type["header_metadata"] = State.off;
++counter;
- } else if ((match(line, rgx.header_make))
- || (match(line, rgx.header_metadata))
+ } else if ((matchFirst(line, rgx.header_make))
+ || (matchFirst(line, rgx.header_metadata))
|| (type["header_make"] == State.on
&& (line_occur["header_make"] > State.off))
|| (type["header_metadata"] == State.on
@@ -360,9 +360,9 @@ template SiSUdocAbstraction() {
/+ heading make set +/
heading_make_set(line, line_occur, heading_match_rgx, type);
}
- if (auto m = match(line, rgx.heading)) {
+ if (matchFirst(line, rgx.heading)) {
/+ heading match +/
- heading_match(line, line_occur, an_object, lv, collapsed_lev, type);
+ heading_match(line, line_occur, an_object, lv, collapsed_lev, type, dochead_meta);
} else if (line_occur["para"] == State.off) {
/+ para match +/
para_match(line, an_object, indent, bullet, type);
@@ -417,9 +417,9 @@ template SiSUdocAbstraction() {
&& (line_occur["header_make"] > State.off)) {
/+ header_make instructions (current line empty) +/
auto dochead_metadata_and_make =
- set_header.header_metadata_and_make_jsonstr(strip(an_object["obj"]), dochead_metadata, dochead_make);
+ set_header.header_metadata_and_make_jsonstr(strip(an_object["obj"]), dochead_meta, dochead_make);
static assert(!isTypeTuple!(dochead_metadata_and_make));
- dochead_metadata = dochead_metadata_and_make[0];
+ dochead_meta = dochead_metadata_and_make[0];
dochead_make = dochead_metadata_and_make[1];
header_set_common(line_occur, an_object, type);
processing.remove("verse");
@@ -427,9 +427,9 @@ template SiSUdocAbstraction() {
&& (line_occur["header_metadata"] > State.off)) {
/+ header_metadata (current line empty) +/
auto dochead_metadata_and_make =
- set_header.header_metadata_and_make_jsonstr(strip(an_object["obj"]), dochead_metadata, dochead_make);
- static assert(!isTypeTuple!(dochead_metadata_and_make));
- dochead_metadata = dochead_metadata_and_make[0];
+ set_header.header_metadata_and_make_jsonstr(strip(an_object["obj"]), dochead_meta, dochead_make);
+ static assert(!isTypeTuple!(dochead_meta));
+ dochead_meta = dochead_metadata_and_make[0];
dochead_make = dochead_metadata_and_make[1];
header_set_common(line_occur, an_object, type);
type["header_make"] = State.off;
@@ -684,7 +684,7 @@ template SiSUdocAbstraction() {
tuple(
document_the,
dochead_make,
- dochead_metadata,
+ dochead_meta,
bookindex_unordered_hashes,
biblio_ordered
);
@@ -721,15 +721,15 @@ template SiSUdocAbstraction() {
auto check_obj_cite_number_status(char[] line, ref int[string] type) {
if ((!line.empty) && (type["obj_cite_number_status_multi_obj"] == TriState.off)) {
/+ not multi-line object, check whether obj_cite_number is on or turned off +/
- if (match(line, rgx.obj_cite_number_block_marks)) {
+ if (matchFirst(line, rgx.obj_cite_number_block_marks)) {
/+ switch off obj_cite_number +/
- if (match(line, rgx.obj_cite_number_off_block)) {
+ if (matchFirst(line, rgx.obj_cite_number_off_block)) {
type["obj_cite_number_status_multi_obj"] = TriState.on;
debug(ocnoff) {
tell_l("fuchsia", line);
}
}
- if (match(line, rgx.obj_cite_number_off_block_dh)) {
+ if (matchFirst(line, rgx.obj_cite_number_off_block_dh)) {
type["obj_cite_number_status_multi_obj"] = TriState.closing;
debug(ocnoff) {
tell_l("fuchsia", line);
@@ -737,9 +737,9 @@ template SiSUdocAbstraction() {
}
} else {
if (type["obj_cite_number_status_multi_obj"] == TriState.off) {
- if (match(line, rgx.obj_cite_number_off)) {
+ if (matchFirst(line, rgx.obj_cite_number_off)) {
type["obj_cite_number_status"] = TriState.on;
- } else if (match(line, rgx.obj_cite_number_off_dh)) {
+ } else if (matchFirst(line, rgx.obj_cite_number_off_dh)) {
type["obj_cite_number_status"] = TriState.closing;
} else {
// type["obj_cite_number_status"] = TriState.closing;
@@ -751,7 +751,7 @@ template SiSUdocAbstraction() {
}
}
} else if ((!line.empty) && (type["obj_cite_number_status_multi_obj"] > TriState.off)) {
- if (auto m = match(line, rgx.obj_cite_number_off_block_close)) {
+ if (matchFirst(line, rgx.obj_cite_number_off_block_close)) {
type["obj_cite_number_status_multi_obj"] = TriState.off;
type["obj_cite_number_status"] = TriState.off;
debug(ocnoff) {
@@ -766,7 +766,7 @@ template SiSUdocAbstraction() {
ref int[string] type,
string[string] obj_cite_number_poem
) {
- if (match(line, rgx.block_curly_code_open)) {
+ if (matchFirst(line, rgx.block_curly_code_open)) {
/+ curly code open +/
debug(code) { // code (curly) open
writefln(
@@ -779,7 +779,7 @@ template SiSUdocAbstraction() {
type["blocks"] = TriState.on;
type["code"] = TriState.on;
type["curly_code"] = TriState.on;
- } else if (match(line, rgx.block_curly_poem_open)) {
+ } else if (matchFirst(line, rgx.block_curly_poem_open)) {
/+ curly poem open +/
debug(poem) { // poem (curly) open
writefln(
@@ -795,7 +795,7 @@ template SiSUdocAbstraction() {
type["verse_new"] = State.on;
type["poem"] = TriState.on;
type["curly_poem"] = TriState.on;
- } else if (match(line, rgx.block_curly_group_open)) {
+ } else if (matchFirst(line, rgx.block_curly_group_open)) {
/+ curly group open +/
debug(group) { // group (curly) open
writefln(
@@ -808,7 +808,7 @@ template SiSUdocAbstraction() {
type["blocks"] = TriState.on;
type["group"] = TriState.on;
type["curly_group"] = TriState.on;
- } else if (match(line, rgx.block_curly_block_open)) {
+ } else if (matchFirst(line, rgx.block_curly_block_open)) {
/+ curly block open +/
debug(block) { // block (curly) open
writefln(
@@ -821,7 +821,7 @@ template SiSUdocAbstraction() {
type["blocks"] = TriState.on;
type["block"] = TriState.on;
type["curly_block"] = TriState.on;
- } else if (match(line, rgx.block_curly_quote_open)) {
+ } else if (matchFirst(line, rgx.block_curly_quote_open)) {
/+ curly quote open +/
debug(quote) { // quote (curly) open
writefln(
@@ -834,7 +834,7 @@ template SiSUdocAbstraction() {
type["blocks"] = TriState.on;
type["quote"] = TriState.on;
type["curly_quote"] = TriState.on;
- } else if (match(line, rgx.block_curly_table_open)) {
+ } else if (matchFirst(line, rgx.block_curly_table_open)) {
/+ curly table open +/
debug(table) { // table (curly) open
writefln(
@@ -847,7 +847,7 @@ template SiSUdocAbstraction() {
type["blocks"] = TriState.on;
type["table"] = TriState.on;
type["curly_table"] = TriState.on;
- } else if (match(line, rgx.block_tic_code_open)) {
+ } else if (matchFirst(line, rgx.block_tic_code_open)) {
/+ tic code open +/
debug(code) { // code (tic) open
writefln(
@@ -860,7 +860,7 @@ template SiSUdocAbstraction() {
type["blocks"] = TriState.on;
type["code"] = TriState.on;
type["tic_code"] = TriState.on;
- } else if (match(line, rgx.block_tic_poem_open)) {
+ } else if (matchFirst(line, rgx.block_tic_poem_open)) {
/+ tic poem open +/
debug(poem) { // poem (tic) open
writefln(
@@ -875,7 +875,7 @@ template SiSUdocAbstraction() {
type["verse_new"] = State.on;
type["poem"] = TriState.on;
type["tic_poem"] = TriState.on;
- } else if (match(line, rgx.block_tic_group_open)) {
+ } else if (matchFirst(line, rgx.block_tic_group_open)) {
/+ tic group open +/
debug(group) { // group (tic) open
writefln(
@@ -888,7 +888,7 @@ template SiSUdocAbstraction() {
type["blocks"] = TriState.on;
type["group"] = TriState.on;
type["tic_group"] = TriState.on;
- } else if (match(line, rgx.block_tic_block_open)) {
+ } else if (matchFirst(line, rgx.block_tic_block_open)) {
/+ tic block open +/
debug(block) { // block (tic) open
writefln(
@@ -901,7 +901,7 @@ template SiSUdocAbstraction() {
type["blocks"] = TriState.on;
type["block"] = TriState.on;
type["tic_block"] = TriState.on;
- } else if (match(line, rgx.block_tic_quote_open)) {
+ } else if (matchFirst(line, rgx.block_tic_quote_open)) {
/+ tic quote open +/
debug(quote) { // quote (tic) open
writefln(
@@ -914,7 +914,7 @@ template SiSUdocAbstraction() {
type["blocks"] = TriState.on;
type["quote"] = TriState.on;
type["tic_quote"] = TriState.on;
- } else if (match(line, rgx.block_tic_table_open)) {
+ } else if (matchFirst(line, rgx.block_tic_table_open)) {
/+ tic table open +/
debug(table) { // table (tic) open
writefln(
@@ -936,7 +936,7 @@ template SiSUdocAbstraction() {
ref int[string] type
) {
if (type["curly_code"] == TriState.on) {
- if (auto m = match(line, rgx.block_curly_code_close)) {
+ if (matchFirst(line, rgx.block_curly_code_close)) {
debug(code) { // code (curly) close
tell_l("blue", line);
}
@@ -947,10 +947,10 @@ template SiSUdocAbstraction() {
debug(code) { // code (curly) line
tell_l("blue", line);
}
- an_object["obj"] ~= line ~= "\n"; // code (curly) line
+ an_object["obj"] ~= line ~= "\n"; // code (curly) line
}
} else if (type["tic_code"] == TriState.on) {
- if (auto m = match(line, rgx.block_tic_close)) {
+ if (matchFirst(line, rgx.block_tic_close)) {
debug(code) { // code (tic) close
tell_l("blue", line);
}
@@ -961,7 +961,7 @@ template SiSUdocAbstraction() {
debug(code) { // code (tic) line
tell_l("blue", line);
}
- an_object["obj"] ~= line ~= "\n"; // code (tic) line
+ an_object["obj"] ~= line ~= "\n"; // code (tic) line
}
}
return 0;
@@ -991,7 +991,7 @@ template SiSUdocAbstraction() {
ref int bib_entry,
ref string[] biblio_arr_json
) {
- if (match(line, rgx.heading_biblio)) {
+ if (matchFirst(line, rgx.heading_biblio)) {
type["heading_biblio"] = TriState.on;
}
if (empty(line) && (bib_entry == TriState.off)) {
@@ -1006,7 +1006,7 @@ template SiSUdocAbstraction() {
line
);
}
- if (match(line, rgx.biblio_tags)) {
+ if (matchFirst(line, rgx.biblio_tags)) {
auto bt = match(line, rgx.biblio_tags);
bib_entry = 0;
st=to!string(bt.captures[1]);
@@ -1081,7 +1081,7 @@ template SiSUdocAbstraction() {
string[string] obj_cite_number_poem
) {
if (type["curly_poem"] == TriState.on) {
- if (auto m = match(line, rgx.block_curly_poem_close)) {
+ if (matchFirst(line, rgx.block_curly_poem_close)) {
an_object["obj"]="verse"; // check that this is as you please
debug(poem) { // poem (curly) close
writefln(
@@ -1140,7 +1140,7 @@ template SiSUdocAbstraction() {
obj_cite_number =
obj_cite_number_emit(type["obj_cite_number_status"]);
type["verse_new"] = State.off;
- } else if (match(line, rgx.line_delimiter_only)) {
+ } else if (matchFirst(line, rgx.line_delimiter_only)) {
verse_line = TriState.off;
type["verse_new"] = State.on;
}
@@ -1181,7 +1181,7 @@ template SiSUdocAbstraction() {
}
}
} else if (type["tic_poem"] == TriState.on) {
- if (auto m = match(line, rgx.block_tic_close)) { // tic_poem_close
+ if (auto m = matchFirst(line, rgx.block_tic_close)) { // tic_poem_close
an_object["obj"]="verse"; // check that this is as you please
debug(poem) { // poem (curly) close
writefln(
@@ -1226,7 +1226,7 @@ template SiSUdocAbstraction() {
obj_cite_number =
obj_cite_number_emit(type["obj_cite_number_status"]);
type["verse_new"] = State.off;
- } else if (match(line, rgx.line_delimiter_only)) {
+ } else if (matchFirst(line, rgx.line_delimiter_only)) {
type["verse_new"] = State.on;
verse_line = TriState.off;
}
@@ -1276,7 +1276,7 @@ template SiSUdocAbstraction() {
ref int[string] type
) {
if (type["curly_group"] == State.on) {
- if (match(line, rgx.block_curly_group_close)) {
+ if (matchFirst(line, rgx.block_curly_group_close)) {
debug(group) { // group (curly) close
tell_l("blue", line);
}
@@ -1290,7 +1290,7 @@ template SiSUdocAbstraction() {
an_object["obj"] ~= line ~= "\n"; // build group array (or string)
}
} else if (type["tic_group"] == TriState.on) {
- if (match(line, rgx.block_tic_close)) {
+ if (matchFirst(line, rgx.block_tic_close)) {
debug(group) { // group (tic) close
tell_l("blue", line);
}
@@ -1312,7 +1312,7 @@ template SiSUdocAbstraction() {
ref int[string] type
) {
if (type["curly_block"] == TriState.on) {
- if (match(line, rgx.block_curly_block_close)) {
+ if (matchFirst(line, rgx.block_curly_block_close)) {
debug(block) { // block (curly) close
tell_l("blue", line);
}
@@ -1326,7 +1326,7 @@ template SiSUdocAbstraction() {
an_object["obj"] ~= line ~= "\n"; // build block array (or string)
}
} else if (type["tic_block"] == TriState.on) {
- if (match(line, rgx.block_tic_close)) {
+ if (matchFirst(line, rgx.block_tic_close)) {
debug(block) { // block (tic) close
tell_l("blue", line);
}
@@ -1344,7 +1344,7 @@ template SiSUdocAbstraction() {
}
auto quote_block(char[] line, ref string[string] an_object, ref int[string] type) {
if (type["curly_quote"] == TriState.on) {
- if (match(line, rgx.block_curly_quote_close)) {
+ if (matchFirst(line, rgx.block_curly_quote_close)) {
debug(quote) { // quote (curly) close
tell_l("blue", line);
}
@@ -1358,7 +1358,7 @@ template SiSUdocAbstraction() {
an_object["obj"] ~= line ~= "\n"; // build quote array (or string)
}
} else if (type["tic_quote"] == TriState.on) {
- if (match(line, rgx.block_tic_close)) {
+ if (matchFirst(line, rgx.block_tic_close)) {
debug(quote) { // quote (tic) close
tell_l("blue", line);
}
@@ -1376,7 +1376,7 @@ template SiSUdocAbstraction() {
}
auto table_block(char[] line, ref string[string] an_object, ref int[string] type) {
if (type["curly_table"] == TriState.on) {
- if (match(line, rgx.block_curly_table_close)) {
+ if (matchFirst(line, rgx.block_curly_table_close)) {
debug(table) { // table (curly) close
tell_l("blue", line);
}
@@ -1390,7 +1390,7 @@ template SiSUdocAbstraction() {
an_object["obj"] ~= line ~= "\n"; // build table array (or string)
}
} else if (type["tic_table"] == TriState.on) {
- if (match(line, rgx.block_tic_close)) {
+ if (matchFirst(line, rgx.block_tic_close)) {
debug(table) { // table (tic) close
tell_l("blue", line);
}
@@ -1674,7 +1674,7 @@ template SiSUdocAbstraction() {
ref string[string] an_object,
ref int[string] type
) {
- if (auto m = match(line, rgx.header_make)) {
+ if (matchFirst(line, rgx.header_make)) {
/+ matched header_make +/
debug(header1) { // header
tell_l("yellow", line);
@@ -1686,7 +1686,7 @@ template SiSUdocAbstraction() {
type["para"] = State.off;
++line_occur["header_make"];
an_object["obj"] ~= line ~= "\n";
- } else if (auto m = match(line, rgx.header_metadata)) {
+ } else if (matchFirst(line, rgx.header_metadata)) {
/+ matched header_metadata +/
debug(header1) { // header
tell_l("yellow", line);
@@ -1701,7 +1701,7 @@ template SiSUdocAbstraction() {
} else if (type["header_make"] == State.on
&& (line_occur["header_make"] > State.off)) {
/+ header_make flag set +/
- if (auto m = match(line, rgx.header_sub)) {
+ if (matchFirst(line, rgx.header_sub)) {
/+ sub-header +/
debug(header1) {
tell_l("yellow", line);
@@ -1713,7 +1713,7 @@ template SiSUdocAbstraction() {
} else if (type["header_metadata"] == State.on
&& (line_occur["header_metadata"] > State.off)) {
/+ header_metadata flag set +/
- if (auto m = match(line, rgx.header_sub)) {
+ if (matchFirst(line, rgx.header_sub)) {
/+ sub-header +/
debug(header1) {
tell_l("yellow", line);
@@ -1824,43 +1824,43 @@ template SiSUdocAbstraction() {
&& ((type["para"] == State.off)
&& (type["heading"] == State.off))) {
/+ heading make set +/
- if (match(line, heading_match_rgx["h_B"])) {
+ if (matchFirst(line, heading_match_rgx["h_B"])) {
line = "B~ " ~ line;
debug(headingsfound) {
writeln(line);
}
}
- if (match(line, heading_match_rgx["h_C"])) {
+ if (matchFirst(line, heading_match_rgx["h_C"])) {
line = "C~ " ~ line;
debug(headingsfound) {
writeln(line);
}
}
- if (match(line, heading_match_rgx["h_D"])) {
+ if (matchFirst(line, heading_match_rgx["h_D"])) {
line = "D~ " ~ line;
debug(headingsfound) {
writeln(line);
}
}
- if (match(line, heading_match_rgx["h_1"])) {
+ if (matchFirst(line, heading_match_rgx["h_1"])) {
line = "1~ " ~ line;
debug(headingsfound) {
writeln(line);
}
}
- if (match(line, heading_match_rgx["h_2"])) {
+ if (matchFirst(line, heading_match_rgx["h_2"])) {
line = "2~ " ~ line;
debug(headingsfound) {
writeln(line);
}
}
- if (match(line, heading_match_rgx["h_3"])) {
+ if (matchFirst(line, heading_match_rgx["h_3"])) {
line = "3~ " ~ line;
debug(headingsfound) {
writeln(line);
}
}
- if (match(line, heading_match_rgx["h_4"])) {
+ if (matchFirst(line, heading_match_rgx["h_4"])) {
line = "4~ " ~ line;
debug(headingsfound) {
writeln(line);
@@ -1874,7 +1874,8 @@ template SiSUdocAbstraction() {
ref string[string] an_object,
ref int[string] lv,
ref int[string] collapsed_lev,
- ref int[string] type
+ ref int[string] type,
+ ref JSONValue[string] dochead_meta
) {
if (auto m = match(line, rgx.heading)) {
/+ heading match +/
@@ -1890,6 +1891,8 @@ template SiSUdocAbstraction() {
assertions_doc_structure(an_object, lv); // includes most of the logic for collapsed levels
switch (an_object["lev"]) {
case "A":
+ an_object["obj"]=replaceFirst(an_object["obj"], rgx.head_value_title, to!string(dochead_meta["title"]["main"]));
+ an_object["obj"]=replaceFirst(an_object["obj"], rgx.head_value_author, to!string(dochead_meta["creator"]["author"]));
collapsed_lev["h0"] = 1;
an_object["lev_collapsed_number"] =
to!string(collapsed_lev["h0"]);
@@ -2017,7 +2020,7 @@ template SiSUdocAbstraction() {
/+ para matches +/
// paragraphs
// (fl ag_type["heading"] = true) &&
- if (auto m = match(line, rgx.para_indent)) {
+ if (auto m = matchFirst(line, rgx.para_indent)) {
debug(paraindent) { // para indent
tell_l("blue", line);
}
@@ -2026,7 +2029,7 @@ template SiSUdocAbstraction() {
indent["first"] = to!string(m.captures[1]);
indent["second"] = "0";
bullet = false;
- } else if (auto m = match(line, rgx.para_bullet)) {
+ } else if (matchFirst(line, rgx.para_bullet)) {
debug(parabullet) { // para bullet
tell_l("blue", line);
}
@@ -2035,7 +2038,7 @@ template SiSUdocAbstraction() {
indent["first"] = "0";
indent["second"] = "0";
bullet = true;
- } else if (auto m = match(line, rgx.para_indent_hang)) {
+ } else if (auto m = matchFirst(line, rgx.para_indent_hang)) {
debug(paraindenthang) { // para indent hang
tell_l("blue", line);
}
@@ -2044,7 +2047,7 @@ template SiSUdocAbstraction() {
indent["first"] = to!string(m.captures[1]);
indent["second"] = to!string(m.captures[2]);
bullet = false;
- } else if (auto m = match(line, rgx.para_bullet_indent)) {
+ } else if (auto m = matchFirst(line, rgx.para_bullet_indent)) {
debug(parabulletindent) { // para bullet indent
tell_l("blue", line);
}
@@ -2092,19 +2095,19 @@ template SiSUdocAbstraction() {
body {
auto rgx = Rgx();
obj_txt["munge"]=obj_txt_in;
- if (match(obj_txt_in, rgx.para_bullet)) {
+ if (matchFirst(obj_txt_in, rgx.para_bullet)) {
obj_txt["attrib"] =" \"bullet\": \"true\","
~ " \"indent_first\": 0,"
~ " \"indent_rest\": 0,";
- } else if (auto m = match(obj_txt_in, rgx.para_bullet_indent)) {
+ } else if (auto m = matchFirst(obj_txt_in, rgx.para_bullet_indent)) {
obj_txt["attrib"] =" \"bullet\": \"true\","
~ " \"indent_first\": " ~ to!string(m.captures[1]) ~ ","
~ " \"indent_rest\": " ~ to!string(m.captures[1]) ~ ",";
- } else if (auto m = match(obj_txt_in, rgx.para_indent_hang)) {
+ } else if (auto m = matchFirst(obj_txt_in, rgx.para_indent_hang)) {
obj_txt["attrib"] =" \"bullet\": \"false\","
~ " \"indent_first\": " ~ to!string(m.captures[1]) ~ ","
~ " \"indent_rest\": " ~ to!string(m.captures[2]) ~ ",";
- } else if (auto m = match(obj_txt_in, rgx.para_indent)) {
+ } else if (auto m = matchFirst(obj_txt_in, rgx.para_indent)) {
obj_txt["attrib"] =" \"bullet\": \"false\","
~ " \"indent_first\": " ~ to!string(m.captures[1]) ~ ","
~ " \"indent_rest\": " ~ to!string(m.captures[1]) ~ ",";
@@ -2578,14 +2581,14 @@ template SiSUdocAbstraction() {
string hm, hs;
auto header_metadata_and_make_jsonstr(
string header,
- JSONValue[string] dochead_metadata,
+ JSONValue[string] dochead_meta,
JSONValue[string] dochead_make
)
in { }
body {
scope(exit) {
destroy(header);
- destroy(dochead_metadata);
+ destroy(dochead_meta);
destroy(dochead_make);
}
if (auto t = match(header, rgx.head_main)) {
@@ -2599,13 +2602,13 @@ template SiSUdocAbstraction() {
if (auto m = match(line, rgx.head_main)) {
if (!empty(m.captures[2])) {
if (hm == "creator") {
- dochead_metadata[hm]["author"].str =
+ dochead_meta[hm]["author"].str =
to!string(m.captures[2]);
} else if (hm == "title") {
- dochead_metadata[hm]["main"].str =
+ dochead_meta[hm]["main"].str =
to!string(m.captures[2]);
} else if (hm == "publisher") {
- dochead_metadata[hm]["name"].str =
+ dochead_meta[hm]["name"].str =
to!string(m.captures[2]);
}
}
@@ -2629,12 +2632,12 @@ template SiSUdocAbstraction() {
default:
break;
}
- } else if (dochead_metadata[hm].type() == JSON_TYPE.OBJECT) {
+ } else if (dochead_meta[hm].type() == JSON_TYPE.OBJECT) {
switch (hm) {
case "creator":
if (match(hs, rgx.subhead_creator)) {
- if (dochead_metadata[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_metadata[hm][hs].str =
+ if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
+ dochead_meta[hm][hs].str =
to!string(s.captures[2]);
}
} else {
@@ -2646,11 +2649,11 @@ template SiSUdocAbstraction() {
case "title":
if (match(hs, rgx.subhead_title)) {
if ((hs == "subtitle")
- && (dochead_metadata[hm]["sub"].type() == JSON_TYPE.STRING)) {
- dochead_metadata[hm]["sub"].str =
+ && (dochead_meta[hm]["sub"].type() == JSON_TYPE.STRING)) {
+ dochead_meta[hm]["sub"].str =
to!string(s.captures[2]);
- } else if (dochead_metadata[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_metadata[hm][hs].str =
+ } else if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
+ dochead_meta[hm][hs].str =
to!string(s.captures[2]);
}
} else {
@@ -2661,8 +2664,8 @@ template SiSUdocAbstraction() {
break;
case "rights":
if (match(hs, rgx.subhead_rights)) {
- if (dochead_metadata[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_metadata[hm][hs].str =
+ if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
+ dochead_meta[hm][hs].str =
to!string(s.captures[2]);
}
} else {
@@ -2673,8 +2676,8 @@ template SiSUdocAbstraction() {
break;
case "date":
if (match(hs, rgx.subhead_date)) {
- if (dochead_metadata[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_metadata[hm][hs].str =
+ if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
+ dochead_meta[hm][hs].str =
to!string(s.captures[2]);
}
} else {
@@ -2685,8 +2688,8 @@ template SiSUdocAbstraction() {
break;
case "original":
if (match(hs, rgx.subhead_original)) {
- if (dochead_metadata[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_metadata[hm][hs].str =
+ if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
+ dochead_meta[hm][hs].str =
to!string(s.captures[2]);
}
} else {
@@ -2697,8 +2700,8 @@ template SiSUdocAbstraction() {
break;
case "classify":
if (match(hs, rgx.subhead_classify)) {
- if (dochead_metadata[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_metadata[hm][hs].str =
+ if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
+ dochead_meta[hm][hs].str =
to!string(s.captures[2]);
}
} else {
@@ -2709,8 +2712,8 @@ template SiSUdocAbstraction() {
break;
case "identifier":
if (match(hs, rgx.subhead_identifier)) {
- if (dochead_metadata[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_metadata[hm][hs].str =
+ if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
+ dochead_meta[hm][hs].str =
to!string(s.captures[2]);
}
} else {
@@ -2721,8 +2724,8 @@ template SiSUdocAbstraction() {
break;
case "notes":
if (match(hs, rgx.subhead_notes)) {
- if (dochead_metadata[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_metadata[hm][hs].str =
+ if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
+ dochead_meta[hm][hs].str =
to!string(s.captures[2]);
}
} else {
@@ -2733,8 +2736,8 @@ template SiSUdocAbstraction() {
break;
case "publisher":
if (match(hs, rgx.subhead_publisher)) {
- if (dochead_metadata[hm][hs].type() == JSON_TYPE.STRING) {
- dochead_metadata[hm][hs].str =
+ if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
+ dochead_meta[hm][hs].str =
to!string(s.captures[2]);
}
} else {
@@ -2747,8 +2750,8 @@ template SiSUdocAbstraction() {
destroy(hm);
destroy(hs);
// if (match(hs, rgx.subhead_links)) {
- // if (dochead_metadata[hm][hs].type() == JSON_TYPE.STRING) {
- // dochead_metadata[hm][hs].str = to!string(s.captures[2]);
+ // if (dochead_meta[hm][hs].type() == JSON_TYPE.STRING) {
+ // dochead_meta[hm][hs].str = to!string(s.captures[2]);
// }
// } else {
// writeln("not a valid header type:", hm, ":", hs);
@@ -2767,7 +2770,7 @@ template SiSUdocAbstraction() {
writeln("not a valid header type:", hm);
}
}
- auto t = tuple(dochead_metadata, dochead_make);
+ auto t = tuple(dochead_meta, dochead_make);
static assert(!isTypeTuple!(t));
return t;
}