From 1dab1836fe17ecdbf750b99832c4d1f789bedcf1 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Wed, 6 May 2020 18:51:42 -0400 Subject: doc abstraction, code & org whitespace, cosmetic --- org/metaverse.org | 2180 ++++++++++++++++++++++++++--------------------------- 1 file changed, 1090 insertions(+), 1090 deletions(-) (limited to 'org/metaverse.org') diff --git a/org/metaverse.org b/org/metaverse.org index 683ed86..697dd5e 100644 --- a/org/metaverse.org +++ b/org/metaverse.org @@ -19,7 +19,7 @@ * 1. Document Abstraction Process markup document, create document abstraction. -** _module template_ :module:metadoc_from_src: +** _module template_ :module:metadoc_from_src: #+BEGIN_SRC d :tangle "../src/doc_reform/meta/metadoc_from_src.d" /++ @@ -139,8 +139,8 @@ template docAbstraction() { <> #+END_SRC -** 1. _pre loop processing_ :pre: -*** imports :imports: +** 1. _pre loop process ing_ :pre: +*** imports :imports: [[./meta_defaults.org][meta_defaults]] #+NAME: abs_top_imports @@ -158,7 +158,7 @@ import doc_reform.meta.rgx; #+END_SRC -*** mixins :mixins: +*** mixins :mixins: #+NAME: abs_top_mixins #+BEGIN_SRC d @@ -167,7 +167,7 @@ mixin InternalMarkup; mixin spineRgxIn; #+END_SRC -*** initialize :initialize: +*** initialize :initialize: **** declare enum #+NAME: abs_top_init_struct @@ -266,10 +266,10 @@ JSONValue[] bib_arr_json; int bib_entry; /+ counters +/ int cntr, previous_count, previous_length; -bool reset_note_numbers=true; +bool reset_note_numbers = true; int[string] line_occur; -int html_segnames_ptr=0; -int html_segnames_ptr_cntr=0; +int html_segnames_ptr = 0; +int html_segnames_ptr_cntr = 0; int verse_line, heading_ptr; /+ paragraph attributes +/ int[string] indent; @@ -582,8 +582,8 @@ scope(exit) { destroy(an_object); destroy(processing); destroy(biblio_arr_json); - previous_length=0; - reset_note_numbers=true; + previous_length = 0; + reset_note_numbers = true; } #+END_SRC @@ -744,8 +744,8 @@ debug (substitutions) { } #+END_SRC -** 2. ↻ *LOOP* _loop: process document body_ [+6] :loop: -*** Loop scope :scope: +** 2. ↻ *LOOP* _loop: process document body_ [+6] :loop: +*** Loop scope :scope: #+NAME: abs_in_loop_body_00 #+BEGIN_SRC d @@ -773,7 +773,7 @@ debug(srclines) { } #+END_SRC -*** check whether object_number is on or turned off :ocn: +*** check whether object number is on or turned off :ocn: #+NAME: abs_in_loop_body_00 #+BEGIN_SRC d @@ -783,7 +783,7 @@ if (!line.empty) { #+END_SRC *** separate _code blocks_ from _other markup text_ [+5] [#A] -**** _code blocks_ :block:code: +**** _code blocks_ :block:code: #+NAME: abs_in_loop_body_00_code_block #+BEGIN_SRC d @@ -800,8 +800,8 @@ continue; line = line.inline_markup_faces; // by text line (rather than by text object), linebreaks in para problematic #+END_SRC -***** in section (biblio, glossary, blurb) +(block group)+ [+1] :block:active: -****** in section: biblio :biblio: +***** in section (biblio, glossary, blurb) +(block group)+ [+1] :block:active: +****** in section: biblio :biblio: #+NAME: abs_in_loop_body_non_code_obj #+BEGIN_SRC d @@ -823,7 +823,7 @@ if (line.matchFirst(rgx.heading_biblio) continue; #+END_SRC -****** in section: glossary :glossary: +****** in section: glossary :glossary: if there is a glossary section you need to: - extract it @@ -848,14 +848,14 @@ if there is a glossary section you need to: } pith["section"] = eN.sect.glossary; if (opt_action.backmatter && opt_action.section_glossary) { - indent=[ + indent = [ "hang_position" : 0, "base_position" : 0, ]; bullet = false; pith["txt_is"] = eN.txt_is.para; line_occur["para"] = eN.bi.off; - an_object_key="glossary_nugget"; + an_object_key = "glossary_nugget"; if (line.matchFirst(rgx.heading_glossary)) { { comp_obj_heading_ = comp_obj_heading_.init; @@ -931,7 +931,7 @@ if there is a glossary section you need to: continue; #+END_SRC -****** in section: blurb :blurb: +****** in section: blurb :blurb: if there is a blurb section you need to: - extract it @@ -955,7 +955,7 @@ if there is a blurb section you need to: writeln(line); } if (opt_action.backmatter && opt_action.section_blurb) { - indent=[ + indent = [ "hang_position" : 0, "base_position" : 0, ]; @@ -975,7 +975,7 @@ if there is a blurb section you need to: debug(paraindenthang) { writeln(line); } - indent=[ + indent = [ "hang_position" : (m["hang"]).to!int, "base_position" : (m["indent"]).to!int, ]; @@ -983,7 +983,7 @@ if there is a blurb section you need to: debug(parabulletindent) { writeln(line); } - indent=[ + indent = [ "hang_position" : (m["indent"]).to!int, "base_position" : (m["indent"]).to!int, ]; @@ -991,7 +991,7 @@ if there is a blurb section you need to: } pith["txt_is"] = eN.txt_is.para; line_occur["para"] = eN.bi.off; - an_object_key="blurb_nugget"; + an_object_key = "blurb_nugget"; if (line.matchFirst(rgx.heading_blurb)) { { comp_obj_heading_ = comp_obj_heading_.init; @@ -1091,14 +1091,14 @@ if there is a blurb section you need to: continue; #+END_SRC -***** in blocks [+1] :block:active: +***** in blocks [+1] :block:active: #+NAME: abs_in_loop_body_non_code_obj #+BEGIN_SRC d } else if (pith["block_state"] == eN.blk_state.on) { #+END_SRC -****** in block: quote :quote: +****** in block: quote :quote: #+NAME: abs_in_loop_body_non_code_obj #+BEGIN_SRC d @@ -1110,7 +1110,7 @@ if there is a blurb section you need to: continue; #+END_SRC -****** in block: group :group: +****** in block: group :group: #+NAME: abs_in_loop_body_non_code_obj #+BEGIN_SRC d @@ -1123,7 +1123,7 @@ if there is a blurb section you need to: continue; #+END_SRC -****** in block: block :block: +****** in block: block :block: #+NAME: abs_in_loop_body_non_code_obj #+BEGIN_SRC d @@ -1139,7 +1139,7 @@ if there is a blurb section you need to: continue; #+END_SRC -****** in block: poem :poem: +****** in block: poem :poem: #+NAME: abs_in_loop_body_non_code_obj #+BEGIN_SRC d @@ -1148,7 +1148,7 @@ if there is a blurb section you need to: continue; #+END_SRC -****** in block: table :table: +****** in block: table :table: #+NAME: abs_in_loop_body_non_code_obj #+BEGIN_SRC d @@ -1184,7 +1184,7 @@ continue; #+END_SRC ****** line not empty [+2] -******* asserts :assert: +******* asserts :assert: #+NAME: abs_in_loop_body_not_block_obj #+BEGIN_SRC d @@ -1212,7 +1212,7 @@ if (pith["block_state"] == eN.blk_state.closing) { } #+END_SRC -******* book index :bookindex: +******* book index :bookindex: #+NAME: abs_in_loop_body_not_block_obj #+BEGIN_SRC d @@ -1229,11 +1229,11 @@ if (line.matchFirst(rgx.book_index_item) } else { /+ not book_index +/ #+END_SRC -******** matched: comment :comment:match: +******** matched: comment :comment:match: #+NAME: abs_in_loop_body_not_block_obj #+BEGIN_SRC d - an_object_key="body_nugget"; + an_object_key = "body_nugget"; if (auto m = line.matchFirst(rgx.comment)) { /+ matched comment +/ debug(comment) { writeln(line); @@ -1251,7 +1251,7 @@ if (line.matchFirst(rgx.book_index_item) ++cntr; #+END_SRC -******** flag !set & line !exist: heading or para :heading:paragraph: +******** flag !set & line !exist: heading or para :heading:paragraph: #+NAME: abs_in_loop_body_not_block_obj #+BEGIN_SRC d @@ -1288,7 +1288,7 @@ if (line.matchFirst(rgx.book_index_item) conf_make_meta, ); } else if (line_occur["para"] == eN.bi.off) { /+ para match +/ - an_object_key="body_nugget"; + an_object_key = "body_nugget"; line = line ._doc_header_and_make_substitutions_(conf_make_meta) ._doc_header_and_make_substitutions_fontface_(conf_make_meta); @@ -1296,7 +1296,7 @@ if (line.matchFirst(rgx.book_index_item) } #+END_SRC -******** line exist: heading :heading: +******** line exist: heading :heading: #+NAME: abs_in_loop_body_not_block_obj #+BEGIN_SRC d @@ -1308,7 +1308,7 @@ if (line.matchFirst(rgx.book_index_item) ++line_occur["heading"]; #+END_SRC -******** line exist: para :para: +******** line exist: para :para: #+NAME: abs_in_loop_body_not_block_obj #+BEGIN_SRC d @@ -1345,7 +1345,7 @@ an_object = line.flow_block_flag_line_empty_( #+END_SRC ****** line empty [+1] -******* assert line empty :assert: +******* assert line empty :assert: #+NAME: abs_in_loop_body_not_block_obj_line_empty #+BEGIN_SRC d @@ -1360,7 +1360,7 @@ assert( ); #+END_SRC -******* heading object :heading:object: +******* heading object :heading:object: #+NAME: abs_in_loop_body_not_block_obj_line_empty #+BEGIN_SRC d @@ -1376,7 +1376,7 @@ if (pith["txt_is"] == eN.txt_is.heading ? ocn_emit(eN.ocn.reset) : ocn_emit(pith["ocn"]); an_object["is"] = "heading"; - an_object_key="body_nugget"; + an_object_key = "body_nugget"; TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_object_and_anchor_tags_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, ((_new_doc) ? Yes._new_doc : No._new_doc)); an_object["substantive"] = substantive_object_and_anchor_tags_tuple[sObj.content]; @@ -1494,7 +1494,7 @@ if (pith["txt_is"] == eN.txt_is.heading ++cntr; #+END_SRC -******* paragraph object :paragraph:object: +******* paragraph object :paragraph:object: #+NAME: abs_in_loop_body_not_block_obj_line_empty #+BEGIN_SRC d @@ -1527,31 +1527,31 @@ if (pith["txt_is"] == eN.txt_is.heading = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, No._new_doc); an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; - comp_obj_para = comp_obj_para.init; - comp_obj_para.metainfo.is_of_part = "body"; - comp_obj_para.metainfo.is_of_section = "body"; - comp_obj_para.metainfo.is_of_type = "para"; - comp_obj_para.metainfo.is_a = "para"; - comp_obj_para.text = an_object["substantive"].to!string.strip; - comp_obj_para.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_para.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_para.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_para.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_para.metainfo.object_number_off = (obj_cite_digits.off==0) ? true : false; // TODO - comp_obj_para.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_para.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_para.attrib.indent_hang = indent["hang_position"]; - comp_obj_para.attrib.indent_base = indent["base_position"]; - comp_obj_para.attrib.bullet = bullet; - comp_obj_para.tags.anchor_tags = [anchor_tag]; - comp_obj_para.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; - comp_obj_para.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; - comp_obj_para.has.inline_links = substantive_obj_misc_tuple[sObj.links]; - comp_obj_para.has.image_without_dimensions = substantive_obj_misc_tuple[sObj.image_no_dimensions]; - the_document_body_section ~= comp_obj_para; - tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); + comp_obj_para = comp_obj_para.init; + comp_obj_para.metainfo.is_of_part = "body"; + comp_obj_para.metainfo.is_of_section = "body"; + comp_obj_para.metainfo.is_of_type = "para"; + comp_obj_para.metainfo.is_a = "para"; + comp_obj_para.text = an_object["substantive"].to!string.strip; + comp_obj_para.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_para.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_para.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_para.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_para.metainfo.object_number_off = (obj_cite_digits.off == 0) ? true : false; // TODO + comp_obj_para.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_para.metainfo.object_number_type = obj_cite_digits.type; + comp_obj_para.attrib.indent_hang = indent["hang_position"]; + comp_obj_para.attrib.indent_base = indent["base_position"]; + comp_obj_para.attrib.bullet = bullet; + comp_obj_para.tags.anchor_tags = [anchor_tag]; + comp_obj_para.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; + comp_obj_para.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; + comp_obj_para.has.inline_links = substantive_obj_misc_tuple[sObj.links]; + comp_obj_para.has.image_without_dimensions = substantive_obj_misc_tuple[sObj.image_no_dimensions]; + the_document_body_section ~= comp_obj_para; + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); flow_common_reset_(line_occur, an_object, pith); - indent=[ + indent = [ "hang_position" : 0, "base_position" : 0, ]; @@ -1563,7 +1563,7 @@ if (pith["txt_is"] == eN.txt_is.heading } #+END_SRC -*** regular _text objects_ identified :text:paragraph: +*** regular _text objects_ identified :text:paragraph: #+NAME: abs_in_loop_body_01 #+BEGIN_SRC d @@ -1599,7 +1599,7 @@ if (the_document_body_section.length > 0) { if ((the_document_body_section[$-1].text).match( rgx.inline_notes_al_all_note )) { - previous_count=(the_document_body_section.length -1).to!int; + previous_count = (the_document_body_section.length -1).to!int; note_section.gather_notes_for_endnote_section( the_document_body_section, tag_in_seg, @@ -1612,7 +1612,7 @@ if (the_document_body_section.length > 0) { } #+END_SRC -** 3. _post main-loop processing_ :post: +** 3. _post main-loop processing_ :post: *** misc /+ @@ -1625,7 +1625,7 @@ if (the_document_body_section.length > 0) { +/ *** tie up preparation of document sections -**** endnotes section (scroll & seg) :endnotes: +**** endnotes section (scroll & seg) :endnotes: #+NAME: abs_post #+BEGIN_SRC d @@ -1645,27 +1645,27 @@ debug(endnotes) { } #+END_SRC -**** no glossary section? :glossary: +**** no glossary section? :glossary: #+NAME: abs_post #+BEGIN_SRC d if (an_object["glossary_nugget"].length == 0) { - comp_obj_heading_ = comp_obj_heading_.init; - comp_obj_heading_.metainfo.is_of_part = "empty"; - comp_obj_heading_.metainfo.is_of_section = "empty"; - comp_obj_heading_.metainfo.is_of_type = "para"; - comp_obj_heading_.metainfo.is_a = "heading"; - comp_obj_heading_.text = "(skip) there is no Glossary section"; - comp_obj_heading_.metainfo.ocn = 0; - comp_obj_heading_.metainfo.identifier = ""; - comp_obj_heading_.metainfo.dummy_heading = true; - comp_obj_heading_.metainfo.object_number_off = true; - comp_obj_heading_.metainfo.object_number_type = 0; - comp_obj_heading_.metainfo.heading_lev_markup = 1; - comp_obj_heading_.metainfo.heading_lev_collapsed = 1; - comp_obj_heading_.metainfo.parent_ocn = 1; - comp_obj_heading_.metainfo.parent_lev_markup = 0; - the_glossary_section ~= comp_obj_heading_; + comp_obj_heading_ = comp_obj_heading_.init; + comp_obj_heading_.metainfo.is_of_part = "empty"; + comp_obj_heading_.metainfo.is_of_section = "empty"; + comp_obj_heading_.metainfo.is_of_type = "para"; + comp_obj_heading_.metainfo.is_a = "heading"; + comp_obj_heading_.text = "(skip) there is no Glossary section"; + comp_obj_heading_.metainfo.ocn = 0; + comp_obj_heading_.metainfo.identifier = ""; + comp_obj_heading_.metainfo.dummy_heading = true; + comp_obj_heading_.metainfo.object_number_off = true; + comp_obj_heading_.metainfo.object_number_type = 0; + comp_obj_heading_.metainfo.heading_lev_markup = 1; + comp_obj_heading_.metainfo.heading_lev_collapsed = 1; + comp_obj_heading_.metainfo.parent_ocn = 1; + comp_obj_heading_.metainfo.parent_lev_markup = 0; + the_glossary_section ~= comp_obj_heading_; } debug(glossary) { foreach (gloss; the_glossary_section) { @@ -1674,7 +1674,7 @@ debug(glossary) { } #+END_SRC -**** bibliography section (objects) :bibliography: +**** bibliography section (objects) :bibliography: #+NAME: abs_post #+BEGIN_SRC d @@ -1755,40 +1755,40 @@ if (biblio_ordered.length > 0) { ((entry["place"].str.empty) ? "" : ", " ~ entry["place"].str), ((entry["url"].str.empty) ? "" : ", [" ~ entry["url"].str ~ "]"), ); - comp_obj_para = comp_obj_para.init; - comp_obj_para.metainfo.is_of_part = "backmatter"; - comp_obj_para.metainfo.is_of_section = "bibliography"; - comp_obj_para.metainfo.is_of_type = "para"; - comp_obj_para.metainfo.is_a = "bibliography"; - comp_obj_para.text = out_.to!string.strip; - comp_obj_para.metainfo.ocn = 0; - comp_obj_para.metainfo.identifier = ""; - comp_obj_para.metainfo.object_number_off = true; - comp_obj_para.metainfo.object_number_type = 0; - comp_obj_para.attrib.indent_hang = 0; - comp_obj_para.attrib.indent_base = 1; - comp_obj_para.attrib.bullet = bullet; - comp_obj_para.tags.anchor_tags = [anchor_tag]; - the_bibliography_section ~= comp_obj_para; + comp_obj_para = comp_obj_para.init; + comp_obj_para.metainfo.is_of_part = "backmatter"; + comp_obj_para.metainfo.is_of_section = "bibliography"; + comp_obj_para.metainfo.is_of_type = "para"; + comp_obj_para.metainfo.is_a = "bibliography"; + comp_obj_para.text = out_.to!string.strip; + comp_obj_para.metainfo.ocn = 0; + comp_obj_para.metainfo.identifier = ""; + comp_obj_para.metainfo.object_number_off = true; + comp_obj_para.metainfo.object_number_type = 0; + comp_obj_para.attrib.indent_hang = 0; + comp_obj_para.attrib.indent_base = 1; + comp_obj_para.attrib.bullet = bullet; + comp_obj_para.tags.anchor_tags = [anchor_tag]; + the_bibliography_section ~= comp_obj_para; } } } else { - comp_obj_heading_ = comp_obj_heading_.init; - comp_obj_heading_.metainfo.is_of_part = "empty"; - comp_obj_heading_.metainfo.is_of_section = "empty"; - comp_obj_heading_.metainfo.is_of_type = "para"; - comp_obj_heading_.metainfo.is_a = "heading"; - comp_obj_heading_.text = "(skip) there is no Bibliography"; - comp_obj_heading_.metainfo.ocn = 0; - comp_obj_heading_.metainfo.identifier = ""; - comp_obj_heading_.metainfo.dummy_heading = true; - comp_obj_heading_.metainfo.object_number_off = true; - comp_obj_heading_.metainfo.object_number_type = 0; - comp_obj_heading_.metainfo.heading_lev_markup = 1; - comp_obj_heading_.metainfo.heading_lev_collapsed = 1; - comp_obj_heading_.metainfo.parent_ocn = 1; - comp_obj_heading_.metainfo.parent_lev_markup = 0; - the_bibliography_section ~= comp_obj_heading_; + comp_obj_heading_ = comp_obj_heading_.init; + comp_obj_heading_.metainfo.is_of_part = "empty"; + comp_obj_heading_.metainfo.is_of_section = "empty"; + comp_obj_heading_.metainfo.is_of_type = "para"; + comp_obj_heading_.metainfo.is_a = "heading"; + comp_obj_heading_.text = "(skip) there is no Bibliography"; + comp_obj_heading_.metainfo.ocn = 0; + comp_obj_heading_.metainfo.identifier = ""; + comp_obj_heading_.metainfo.dummy_heading = true; + comp_obj_heading_.metainfo.object_number_off = true; + comp_obj_heading_.metainfo.object_number_type = 0; + comp_obj_heading_.metainfo.heading_lev_markup = 1; + comp_obj_heading_.metainfo.heading_lev_collapsed = 1; + comp_obj_heading_.metainfo.parent_ocn = 1; + comp_obj_heading_.metainfo.parent_lev_markup = 0; + the_bibliography_section ~= comp_obj_heading_; } #+END_SRC @@ -1835,7 +1835,7 @@ JSONValue biblio_entry_tags_jsonstr = `{ }`; // is: book, article, magazine, newspaper, blog, other #+END_SRC -**** bookindex section (scroll & seg) :book:index: +**** bookindex section (scroll & seg) :book:index: #+NAME: abs_post #+BEGIN_SRC d @@ -1856,29 +1856,29 @@ debug(bookindex) { } #+END_SRC -**** no blurb section? :blurb: +**** no blurb section? :blurb: #+NAME: abs_post #+BEGIN_SRC d if (an_object["blurb_nugget"].length == 0) { - comp_obj_heading_ = comp_obj_heading_.init; - comp_obj_heading_.metainfo.is_of_part = "empty"; - comp_obj_heading_.metainfo.is_of_section = "empty"; - comp_obj_heading_.metainfo.is_of_type = "para"; - comp_obj_heading_.metainfo.is_a = "heading"; - comp_obj_heading_.text = "(skip) there is no Blurb section"; - comp_obj_heading_.metainfo.ocn = 0; - comp_obj_heading_.metainfo.identifier = ""; - comp_obj_para.metainfo.object_number_off = true; - comp_obj_para.metainfo.object_number_type = 0; - comp_obj_heading_.tags.segment_anchor_tag_epub = ""; - comp_obj_heading_.tags.anchor_tag_html = ""; - comp_obj_heading_.tags.in_segment_html = ""; - comp_obj_heading_.metainfo.heading_lev_markup = 1; - comp_obj_heading_.metainfo.heading_lev_collapsed = 1; - comp_obj_heading_.metainfo.parent_ocn = 1; - comp_obj_heading_.metainfo.parent_lev_markup = 0; - the_blurb_section ~= comp_obj_heading_; + comp_obj_heading_ = comp_obj_heading_.init; + comp_obj_heading_.metainfo.is_of_part = "empty"; + comp_obj_heading_.metainfo.is_of_section = "empty"; + comp_obj_heading_.metainfo.is_of_type = "para"; + comp_obj_heading_.metainfo.is_a = "heading"; + comp_obj_heading_.text = "(skip) there is no Blurb section"; + comp_obj_heading_.metainfo.ocn = 0; + comp_obj_heading_.metainfo.identifier = ""; + comp_obj_para.metainfo.object_number_off = true; + comp_obj_para.metainfo.object_number_type = 0; + comp_obj_heading_.tags.segment_anchor_tag_epub = ""; + comp_obj_heading_.tags.anchor_tag_html = ""; + comp_obj_heading_.tags.in_segment_html = ""; + comp_obj_heading_.metainfo.heading_lev_markup = 1; + comp_obj_heading_.metainfo.heading_lev_collapsed = 1; + comp_obj_heading_.metainfo.parent_ocn = 1; + comp_obj_heading_.metainfo.parent_lev_markup = 0; + the_blurb_section ~= comp_obj_heading_; } debug(blurb) { foreach (blurb; the_blurb_section) { @@ -1887,26 +1887,26 @@ debug(blurb) { } #+END_SRC -**** toc backmatter, table of contents backmatter (scroll & seg) :contents: +**** toc backmatter, table of contents backmatter (scroll & seg) :contents: #+NAME: abs_post #+BEGIN_SRC d -indent=[ +indent = [ "hang_position" : 1, "base_position" : 1, ]; -comp_obj_toc = comp_obj_toc.init; -comp_obj_toc.metainfo.is_of_part = "frontmatter"; -comp_obj_toc.metainfo.is_of_section = "toc"; -comp_obj_toc.metainfo.is_of_type = "para"; -comp_obj_toc.metainfo.is_a = "toc"; -comp_obj_toc.metainfo.ocn = 0; -comp_obj_toc.metainfo.identifier = ""; -comp_obj_toc.metainfo.object_number_off = true; -comp_obj_toc.metainfo.object_number_type = 0; -comp_obj_toc.attrib.indent_hang = indent["hang_position"]; -comp_obj_toc.attrib.indent_base = indent["base_position"]; -comp_obj_toc.attrib.bullet = false; +comp_obj_toc = comp_obj_toc.init; +comp_obj_toc.metainfo.is_of_part = "frontmatter"; +comp_obj_toc.metainfo.is_of_section = "toc"; +comp_obj_toc.metainfo.is_of_type = "para"; +comp_obj_toc.metainfo.is_a = "toc"; +comp_obj_toc.metainfo.ocn = 0; +comp_obj_toc.metainfo.identifier = ""; +comp_obj_toc.metainfo.object_number_off = true; +comp_obj_toc.metainfo.object_number_type = 0; +comp_obj_toc.attrib.indent_hang = indent["hang_position"]; +comp_obj_toc.attrib.indent_base = indent["base_position"]; +comp_obj_toc.attrib.bullet = false; if (the_endnotes_section.length > 1) { toc_txt_ = format("%s%s%s%s#%s%s", mkup.lnk_o, @@ -1917,9 +1917,9 @@ if (the_endnotes_section.length > 1) { mkup.url_c, ); toc_txt_= toc_txt_.links_and_images; - comp_obj_toc.text = toc_txt_.to!string.strip; - comp_obj_toc.has.inline_links = true; - the_table_of_contents_section ~= comp_obj_toc; + comp_obj_toc.text = toc_txt_.to!string.strip; + comp_obj_toc.has.inline_links = true; + the_table_of_contents_section ~= comp_obj_toc; } if (the_glossary_section.length > 1) { toc_txt_ = format("%s%s%s%s#%s%s", @@ -1931,9 +1931,9 @@ if (the_glossary_section.length > 1) { mkup.url_c, ); toc_txt_= toc_txt_.links_and_images; - comp_obj_toc.text = toc_txt_.to!string.strip; - comp_obj_toc.has.inline_links = true; - the_table_of_contents_section ~= comp_obj_toc; + comp_obj_toc.text = toc_txt_.to!string.strip; + comp_obj_toc.has.inline_links = true; + the_table_of_contents_section ~= comp_obj_toc; } if (the_bibliography_section.length > 1){ toc_txt_ = format("%s%s%s%s#%s%s", @@ -1945,9 +1945,9 @@ if (the_bibliography_section.length > 1){ mkup.url_c, ); toc_txt_= toc_txt_.links_and_images; - comp_obj_toc.text = toc_txt_.to!string.strip; - comp_obj_toc.has.inline_links = true; - the_table_of_contents_section ~= comp_obj_toc; + comp_obj_toc.text = toc_txt_.to!string.strip; + comp_obj_toc.has.inline_links = true; + the_table_of_contents_section ~= comp_obj_toc; } if (the_bookindex_section.length > 1) { toc_txt_ = format("%s%s%s%s#%s%s", @@ -1959,9 +1959,9 @@ if (the_bookindex_section.length > 1) { mkup.url_c, ); toc_txt_= toc_txt_.links_and_images; - comp_obj_toc.text = toc_txt_.to!string.strip; - comp_obj_toc.has.inline_links = true; - the_table_of_contents_section ~= comp_obj_toc; + comp_obj_toc.text = toc_txt_.to!string.strip; + comp_obj_toc.has.inline_links = true; + the_table_of_contents_section ~= comp_obj_toc; } if (the_blurb_section.length > 1) { toc_txt_ = format("%s%s%s%s#%s%s", @@ -1973,9 +1973,9 @@ if (the_blurb_section.length > 1) { mkup.url_c, ); toc_txt_= toc_txt_.links_and_images; - comp_obj_toc.has.inline_links = true; - comp_obj_toc.text = toc_txt_.to!string.strip; - the_table_of_contents_section ~= comp_obj_toc; + comp_obj_toc.has.inline_links = true; + comp_obj_toc.text = toc_txt_.to!string.strip; + the_table_of_contents_section ~= comp_obj_toc; } debug(toc) { writefln( @@ -1993,11 +1993,11 @@ debug(toc) { #+NAME: abs_post #+BEGIN_SRC d the_document_head_section ~= the_document_body_section[0]; -the_document_body_section=the_document_body_section[1..$]; +the_document_body_section = the_document_body_section[1..$]; #+END_SRC -*** ↻ *LOOPs* _post main-loop loops_ :loop:post: -**** 1. ↻ _Loop as required_ (e.g. backmatter): loop up to lev4, extract html_segnames, set pointers +*** ↻ *LOOPs* _post main-loop loops_ :loop:post: +**** 1. ↻ _Loop as required_ (e.g. backmatter): loop up to lev4, extract html segnames, set pointers this extra loop is used/needed to determine pre and (in particular) next segment for html, that is then used in a subsequent loop @@ -2502,7 +2502,7 @@ string[] segnames_0_to_4; writeln("links to stow: ", (obj.text.match(rgx.inline_link_stow_uri))); } int _n_matches = (obj.text.match(rgx.inline_link_stow_uri)).count.to!int; - for(int i=0; i < _n_matches; ++i) { + for(int i = 0; i < _n_matches; ++i) { if (obj.text.match(rgx.inline_link_stow_uri)) { obj.stow.link ~= obj.text.matchFirst(rgx.inline_link_stow_uri)[2]; obj.text = obj.text.replaceFirst( @@ -2635,19 +2635,19 @@ auto image_list = (_images.sort()).uniq; #+BEGIN_SRC d /+ optional only one 1~ level +/ if (the_endnotes_section.length > 1) { - dom_structure_markedup_tags_status_buffer = dom_structure_markedup_tags_status.dup; - dom_structure_collapsed_tags_status_buffer = dom_structure_collapsed_tags_status.dup; - dom_structure_markedup_tags_status = dom_structure_markedup_tags_status_buffer.dup; - dom_structure_collapsed_tags_status = dom_structure_collapsed_tags_status_buffer.dup; + dom_structure_markedup_tags_status_buffer = dom_structure_markedup_tags_status.dup; + dom_structure_collapsed_tags_status_buffer = dom_structure_collapsed_tags_status.dup; + dom_structure_markedup_tags_status = dom_structure_markedup_tags_status_buffer.dup; + dom_structure_collapsed_tags_status = dom_structure_collapsed_tags_status_buffer.dup; foreach (ref obj; the_endnotes_section) { if (obj.metainfo.is_a == "heading") { debug(dom) { writeln(obj.text); } if (obj.metainfo.heading_lev_markup == 1) { - obj_cite_digits = ocn_emit(eN.ocn.on); - obj.metainfo.ocn = obj_cite_digits.object_number; - obj.metainfo.identifier = obj_cite_digits.identifier; + obj_cite_digits = ocn_emit(eN.ocn.on); + obj.metainfo.ocn = obj_cite_digits.object_number; + obj.metainfo.identifier = obj_cite_digits.identifier; } if (obj.metainfo.heading_lev_markup <= 4) { segnames_0_to_4 ~= obj.tags.segment_anchor_tag_epub; @@ -2686,9 +2686,9 @@ if (the_glossary_section.length > 1) { writeln(obj.text); } if (obj.metainfo.heading_lev_markup == 1) { - obj_cite_digits = ocn_emit(eN.ocn.on); - obj.metainfo.ocn = obj_cite_digits.object_number; - obj.metainfo.identifier = obj_cite_digits.identifier; + obj_cite_digits = ocn_emit(eN.ocn.on); + obj.metainfo.ocn = obj_cite_digits.object_number; + obj.metainfo.identifier = obj_cite_digits.identifier; } if (obj.metainfo.heading_lev_markup <= 4) { segnames_0_to_4 ~= obj.tags.segment_anchor_tag_epub; @@ -2731,9 +2731,9 @@ if (the_bibliography_section.length > 1) { writeln(obj.text); } if (obj.metainfo.heading_lev_markup == 1) { - obj_cite_digits = ocn_emit(eN.ocn.on); - obj.metainfo.ocn = obj_cite_digits.object_number; - obj.metainfo.identifier = obj_cite_digits.identifier; + obj_cite_digits = ocn_emit(eN.ocn.on); + obj.metainfo.ocn = obj_cite_digits.object_number; + obj.metainfo.identifier = obj_cite_digits.identifier; } if (obj.metainfo.heading_lev_markup <= 4) { segnames_0_to_4 ~= obj.tags.segment_anchor_tag_epub; @@ -2753,9 +2753,9 @@ if (the_bibliography_section.length > 1) { } obj = obj.obj_heading_ancestors(lv_ancestors_txt); } else if (obj.metainfo.is_a == "bibliography") { - obj_cite_digits = ocn_emit(eN.ocn.on); - obj.metainfo.ocn = obj_cite_digits.object_number; - obj.metainfo.identifier = obj_cite_digits.identifier; + obj_cite_digits = ocn_emit(eN.ocn.on); + obj.metainfo.ocn = obj_cite_digits.object_number; + obj.metainfo.identifier = obj_cite_digits.identifier; } obj = _links(obj); } @@ -2783,9 +2783,9 @@ if (the_bookindex_section.length > 1) { / segnames_0_to_4 ~= obj.tags.segment_anchor_tag_epub; } if (obj.metainfo.heading_lev_markup == 1) { - obj_cite_digits = ocn_emit(eN.ocn.on); - obj.metainfo.ocn = obj_cite_digits.object_number; - obj.metainfo.identifier = obj_cite_digits.identifier; + obj_cite_digits = ocn_emit(eN.ocn.on); + obj.metainfo.ocn = obj_cite_digits.object_number; + obj.metainfo.identifier = obj_cite_digits.identifier; } if (obj.metainfo.heading_lev_markup <= 4) { if (obj.metainfo.heading_lev_markup == 4) { @@ -2804,11 +2804,11 @@ if (the_bookindex_section.length > 1) { / } obj = obj.obj_heading_ancestors(lv_ancestors_txt); } else if (obj.metainfo.is_a == "bookindex") { - obj_cite_digits = ocn_emit(eN.ocn.bkidx); - obj.metainfo.ocn = obj_cite_digits.object_number; - obj.metainfo.identifier = obj_cite_digits.identifier; - obj.metainfo.o_n_book_index = obj_cite_digits.bkidx; - obj.metainfo.object_number_type = OCNtype.bkidx; + obj_cite_digits = ocn_emit(eN.ocn.bkidx); + obj.metainfo.ocn = obj_cite_digits.object_number; + obj.metainfo.identifier = obj_cite_digits.identifier; + obj.metainfo.o_n_book_index = obj_cite_digits.bkidx; + obj.metainfo.object_number_type = OCNtype.bkidx; } obj = _links(obj); } @@ -2831,9 +2831,9 @@ if (the_blurb_section.length > 1) { writeln(obj.text); } if (obj.metainfo.heading_lev_markup == 1) { - obj_cite_digits = ocn_emit(eN.ocn.on); - obj.metainfo.ocn = obj_cite_digits.object_number; - obj.metainfo.identifier = obj_cite_digits.identifier; + obj_cite_digits = ocn_emit(eN.ocn.on); + obj.metainfo.ocn = obj_cite_digits.object_number; + obj.metainfo.identifier = obj_cite_digits.identifier; } if (obj.metainfo.heading_lev_markup <= 4) { segnames_0_to_4 ~= obj.tags.segment_anchor_tag_epub; @@ -2853,9 +2853,9 @@ if (the_blurb_section.length > 1) { } obj = obj.obj_heading_ancestors(lv_ancestors_txt); } else if (obj.metainfo.is_a == "blurb") { - obj_cite_digits = ocn_emit(eN.ocn.off); - obj.metainfo.object_number_off = obj_cite_digits.off; - obj.metainfo.object_number_type = OCNtype.non; + obj_cite_digits = ocn_emit(eN.ocn.off); + obj.metainfo.object_number_off = obj_cite_digits.off; + obj.metainfo.object_number_type = OCNtype.non; } obj = _links(obj); } @@ -2970,35 +2970,35 @@ if (the_document_body_section.length > 1) { - obj.metainfo.dom_structure_markedup_tags_status = dom_structure_markedup_tags_status; - obj.metainfo.dom_structure_collapsed_tags_status = dom_structure_collapsed_tags_status; +/ -comp_obj_heading_ = comp_obj_heading_.init; -comp_obj_heading_.metainfo.is_of_part = "empty"; -comp_obj_heading_.metainfo.is_of_section = "empty"; -comp_obj_heading_.metainfo.is_of_type = "para"; -comp_obj_heading_.metainfo.is_a = "heading"; -comp_obj_heading_.metainfo.ocn = 0; -comp_obj_heading_.metainfo.identifier = ""; -comp_obj_heading_.metainfo.dummy_heading = true; -comp_obj_heading_.metainfo.object_number_off = true; -comp_obj_heading_.metainfo.object_number_type = 0; -comp_obj_heading_.tags.segment_anchor_tag_epub = ""; -comp_obj_heading_.tags.anchor_tag_html = ""; -comp_obj_heading_.tags.in_segment_html = ""; -comp_obj_heading_.tags.html_segment_anchor_tag_is = ""; -comp_obj_heading_.tags.epub_segment_anchor_tag_is = ""; -comp_obj_heading_.metainfo.heading_lev_markup = 9; -comp_obj_heading_.metainfo.heading_lev_collapsed = 9; -comp_obj_heading_.metainfo.parent_ocn = 0; -comp_obj_heading_.metainfo.parent_lev_markup = 0; -comp_obj_heading_.metainfo.dom_structure_markedup_tags_status = dom_structure_markedup_tags_status.dup; -comp_obj_heading_.metainfo.dom_structure_collapsed_tags_status = dom_structure_collapsed_tags_status.dup; +comp_obj_heading_ = comp_obj_heading_.init; +comp_obj_heading_.metainfo.is_of_part = "empty"; +comp_obj_heading_.metainfo.is_of_section = "empty"; +comp_obj_heading_.metainfo.is_of_type = "para"; +comp_obj_heading_.metainfo.is_a = "heading"; +comp_obj_heading_.metainfo.ocn = 0; +comp_obj_heading_.metainfo.identifier = ""; +comp_obj_heading_.metainfo.dummy_heading = true; +comp_obj_heading_.metainfo.object_number_off = true; +comp_obj_heading_.metainfo.object_number_type = 0; +comp_obj_heading_.tags.segment_anchor_tag_epub = ""; +comp_obj_heading_.tags.anchor_tag_html = ""; +comp_obj_heading_.tags.in_segment_html = ""; +comp_obj_heading_.tags.html_segment_anchor_tag_is = ""; +comp_obj_heading_.tags.epub_segment_anchor_tag_is = ""; +comp_obj_heading_.metainfo.heading_lev_markup = 9; +comp_obj_heading_.metainfo.heading_lev_collapsed = 9; +comp_obj_heading_.metainfo.parent_ocn = 0; +comp_obj_heading_.metainfo.parent_lev_markup = 0; +comp_obj_heading_.metainfo.dom_structure_markedup_tags_status = dom_structure_markedup_tags_status.dup; +comp_obj_heading_.metainfo.dom_structure_collapsed_tags_status = dom_structure_collapsed_tags_status.dup; comp_obj_heading_ = comp_obj_heading_.obj_dom_structure_set_markup_tags(dom_structure_markedup_tags_status, 0); comp_obj_heading_ = comp_obj_heading_.obj_dom_set_collapsed_tags(dom_structure_collapsed_tags_status, 0); comp_obj_heading_ = comp_obj_heading_.obj_heading_ancestors(lv_ancestors_txt); // the_dom_tail_section ~= comp_obj_heading_; // remove tail for now, decide on later #+END_SRC -** 4. _return document tuple_ :post: -*** _the document_ :document: +** 4. _return document tuple_ :post: +*** _the document_ :document: #+NAME: abs_post #+BEGIN_SRC d @@ -3070,8 +3070,8 @@ if ((opt_action.html) #+NAME: abs_post #+BEGIN_SRC d -string[] segnames_4 = segnames["html"].dup; -string[] segnames_lv1_to_4 = segnames["epub"].dup; +string[] segnames_4 = segnames["html"].dup; +string[] segnames_lv1_to_4 = segnames["epub"].dup; debug(segnames) { writeln("segnames_lv4: ", segnames_4); writeln("segnames_lv1_to_4: ", segnames_lv1_to_4); @@ -3093,19 +3093,19 @@ destroy(the_blurb_section); destroy(segnames); destroy(bookindex_unordered_hashes); destroy(an_object); -obj_cite_digits = ocn_emit(eN.ocn.reset); -biblio_arr_json = []; -obj_cite_digit_ = 0; -html_segnames_ptr = 0; -html_segnames_ptr_cntr = 0; -content_non_header = "8"; -dom_structure_markedup_tags_status = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,]; -dom_structure_markedup_tags_status_buffer = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,]; -dom_structure_collapsed_tags_status = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,]; -dom_structure_collapsed_tags_status_buffer = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,]; +obj_cite_digits = ocn_emit(eN.ocn.reset); +biblio_arr_json = []; +obj_cite_digit_ = 0; +html_segnames_ptr = 0; +html_segnames_ptr_cntr = 0; +content_non_header = "8"; +dom_structure_markedup_tags_status = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,]; +dom_structure_markedup_tags_status_buffer = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,]; +dom_structure_collapsed_tags_status = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,]; +dom_structure_collapsed_tags_status_buffer = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,]; #+END_SRC -*** doc_has struct +*** doc has struct #+NAME: abs_struct_doc_has #+BEGIN_SRC d @@ -3161,7 +3161,7 @@ dom_structure_collapsed_tags_status_buffer = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,]; } #+END_SRC -*** _return the document tuple_ [#A] :return:tuple: +*** _return the document tuple_ [#A] :return:tuple: #+NAME: abs_return_tuple #+BEGIN_SRC d @@ -3172,12 +3172,12 @@ auto t = tuple( return t; #+END_SRC -** 5. Functions :abstract:function: +** 5. Functions :abstract:function: functions used in document abstraction -*** set & resets :reset: -**** object reset: remove (clean) :object:remove: +*** set & resets :reset: +**** object reset: remove (clean) :object:remove: #+NAME: abs_functions_object_reset #+BEGIN_SRC d @@ -3191,7 +3191,7 @@ functions used in document abstraction } #+END_SRC -**** set, initialize or re-initialize :set: +**** set, initialize or re-initialize :set: #+NAME: abs_functions_header_set_common #+BEGIN_SRC d @@ -3200,14 +3200,14 @@ functions used in document abstraction return ref string[string] an_object, return ref uint[string] pith, ) { - line_occur["heading"] = eN.bi.off; - line_occur["para"] = eN.bi.off; - pith["txt_is"] = eN.txt_is.off; - an_object = an_object.object_reset; + line_occur["heading"] = eN.bi.off; + line_occur["para"] = eN.bi.off; + pith["txt_is"] = eN.txt_is.off; + an_object = an_object.object_reset; } #+END_SRC -*** check object_number status in document :ocn: +*** check object_number status in document :ocn: #+NAME: abs_functions_ocn_status #+BEGIN_SRC d @@ -3236,27 +3236,27 @@ functions used in document abstraction } } } else if (pith["no_ocn_multiple_objects"] == eN.bi.off) { - pith["dummy_heading_status"] = eN.bi.off; + pith["dummy_heading_status"] = eN.bi.off; if (pith["dummy_heading_multiple_objects"]) { - pith["dummy_heading_status"] = eN.bi.on; + pith["dummy_heading_status"] = eN.bi.on; } if (line.matchFirst(rgx.object_number_off)) { - pith["ocn"] = eN.ocn.off; + pith["ocn"] = eN.ocn.off; } else if (line.matchFirst(rgx.object_number_off_dummy_heading)) { - pith["ocn"] = eN.ocn.off; - pith["dummy_heading_status"] = eN.bi.on; + pith["ocn"] = eN.ocn.off; + pith["dummy_heading_status"] = eN.bi.on; } else { - pith["ocn"] = eN.ocn.on; - pith["dummy_heading_status"] = eN.bi.off; + pith["ocn"] = eN.ocn.on; + pith["dummy_heading_status"] = eN.bi.off; } } else { pith["ocn"] = pith["no_ocn_multiple_objects"]; } } else if (pith["no_ocn_multiple_objects"] == eN.bi.on) { if (line.matchFirst(rgx.object_number_off_block_close)) { - pith["no_ocn_multiple_objects"] = eN.bi.off; - pith["ocn"] = eN.ocn.on; - pith["dummy_heading_status"] = eN.bi.off; + pith["no_ocn_multiple_objects"] = eN.bi.off; + pith["ocn"] = eN.ocn.on; + pith["dummy_heading_status"] = eN.bi.off; debug(ocnoff) { writeln(line); } @@ -3320,8 +3320,8 @@ functions used in document abstraction } #+END_SRC -*** block :block: -**** block start (open) block :start: +*** block :block: +**** block start (open) block :start: ***** { block starts function #+NAME: abs_functions_block @@ -3334,7 +3334,7 @@ functions used in document abstraction ) { #+END_SRC -****** block (various) curly open :curly: +****** block (various) curly open :curly: #+NAME: abs_functions_block #+BEGIN_SRC d @@ -3347,18 +3347,18 @@ functions used in document abstraction #+BEGIN_SRC d if (auto m = line.matchFirst(rgx.block_curly_code_open)) { dochas["codeblock"]++; - an_object["lang"] = ""; - an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; - an_object["syntax"] = (m["syntax"]) ? m["syntax"].to!string : ""; + an_object["lang"] = ""; + an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; + an_object["syntax"] = (m["syntax"]) ? m["syntax"].to!string : ""; debug(codecurly) { // code (curly) open writefln( "* [code curly] %s", line ); } - pith["block_is"] = eN.blk_is.code; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.curly; + pith["block_is"] = eN.blk_is.code; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.curly; #+END_SRC ******* poem @@ -3367,20 +3367,20 @@ functions used in document abstraction #+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_curly_poem_open)) { dochas["poem"]++; - an_object["syntax"] = ""; - an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; - an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; + an_object["syntax"] = ""; + an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; + an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; debug(poem) { // poem (curly) open writefln( "* [poem curly] %s", line ); } - object_number_poem["start"] = obj_cite_digits.object_number.to!string; - pith["block_is"] = eN.blk_is.poem; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.curly; - pith["verse_new"] = eN.bi.on; + object_number_poem["start"] = obj_cite_digits.object_number.to!string; + pith["block_is"] = eN.blk_is.poem; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.curly; + pith["verse_new"] = eN.bi.on; #+END_SRC ******* group @@ -3389,18 +3389,18 @@ functions used in document abstraction #+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_curly_group_open)) { dochas["group"]++; - an_object["syntax"] = ""; - an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; - an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; + an_object["syntax"] = ""; + an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; + an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; debug(group) { // group (curly) open writefln( "* [group curly] %s", line ); } - pith["block_is"] = eN.blk_is.group; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.curly; + pith["block_is"] = eN.blk_is.group; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.curly; #+END_SRC ******* block @@ -3409,18 +3409,18 @@ functions used in document abstraction #+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_curly_block_open)) { dochas["block"]++; - an_object["syntax"] = ""; - an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; - an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; + an_object["syntax"] = ""; + an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; + an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; debug(block) { writefln( "* [block curly] %s", line ); } - pith["block_is"] = eN.blk_is.block; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.curly; + pith["block_is"] = eN.blk_is.block; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.curly; #+END_SRC ******* quote @@ -3429,18 +3429,18 @@ functions used in document abstraction #+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_curly_quote_open)) { dochas["quote"]++; - an_object["syntax"] = ""; - an_object["attrib"] = m["attrib"].to!string; - an_object["lang"] = m["lang"].to!string; + an_object["syntax"] = ""; + an_object["attrib"] = m["attrib"].to!string; + an_object["lang"] = m["lang"].to!string; debug(quote) { writefln( "* [quote curly] %s", line ); } - pith["block_is"] = eN.blk_is.quote; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.curly; + pith["block_is"] = eN.blk_is.quote; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.curly; #+END_SRC ******* table @@ -3455,11 +3455,11 @@ functions used in document abstraction ); } dochas["table"] ++; - an_object["table_head"] = m["attrib"].to!string; - an_object["block_type"] = "curly"; - pith["block_is"] = eN.blk_is.table; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.curly; + an_object["table_head"] = m["attrib"].to!string; + an_object["block_type"] = "curly"; + pith["block_is"] = eN.blk_is.table; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.curly; #+END_SRC ******* table special @@ -3468,32 +3468,32 @@ functions used in document abstraction #+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_curly_table_special_markup)) { /+ table: special table block markup syntax! +/ dochas["table"]++; - an_object["table_head"] = m["attrib"].to!string; - an_object["block_type"] = "special"; - pith["block_is"] = eN.blk_is.table; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.curly_special; + an_object["table_head"] = m["attrib"].to!string; + an_object["block_type"] = "special"; + pith["block_is"] = eN.blk_is.table; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.curly_special; #+END_SRC -****** block (various) tic open :tic: +****** block (various) tic open :tic: ******* code #+NAME: abs_functions_block #+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_tic_code_open)) { dochas["codeblock"]++; - an_object["lang"] = ""; - an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; - an_object["syntax"] = (m["syntax"]) ? m["syntax"].to!string : ""; + an_object["lang"] = ""; + an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; + an_object["syntax"] = (m["syntax"]) ? m["syntax"].to!string : ""; debug(codetic) { writefln( "* [code tic] %s", line ); } - pith["block_is"] = eN.blk_is.code; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.tic; + pith["block_is"] = eN.blk_is.code; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.tic; #+END_SRC ******* poem @@ -3502,20 +3502,20 @@ functions used in document abstraction #+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_tic_poem_open)) { dochas["poem"]++; - an_object["syntax"] = ""; - an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; - an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; + an_object["syntax"] = ""; + an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; + an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; debug(poem) { writefln( "* [poem tic] %s", line ); } - object_number_poem["start"] = obj_cite_digits.object_number.to!string; - pith["block_is"] = eN.blk_is.poem; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.tic; - pith["verse_new"] = eN.bi.on; + object_number_poem["start"] = obj_cite_digits.object_number.to!string; + pith["block_is"] = eN.blk_is.poem; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.tic; + pith["verse_new"] = eN.bi.on; #+END_SRC ******* group @@ -3524,18 +3524,18 @@ functions used in document abstraction #+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_tic_group_open)) { dochas["group"]++; - an_object["syntax"] = ""; - an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; - an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; + an_object["syntax"] = ""; + an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; + an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; debug(group) { writefln( "* [group tic] %s", line ); } - pith["block_is"] = eN.blk_is.group; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.tic; + pith["block_is"] = eN.blk_is.group; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.tic; #+END_SRC ******* block @@ -3544,18 +3544,18 @@ functions used in document abstraction #+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_tic_block_open)) { dochas["block"]++; - an_object["syntax"] = ""; - an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; - an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; + an_object["syntax"] = ""; + an_object["attrib"] = (m["attrib"]) ? m["attrib"].to!string : ""; + an_object["lang"] = (m["lang"]) ? m["lang"].to!string : ""; debug(block) { writefln( "* [block tic] %s", line ); } - pith["block_is"] = eN.blk_is.block; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.tic; + pith["block_is"] = eN.blk_is.block; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.tic; #+END_SRC ******* quote @@ -3564,18 +3564,18 @@ functions used in document abstraction #+BEGIN_SRC d } else if (auto m = line.matchFirst(rgx.block_tic_quote_open)) { dochas["quote"]++; - an_object["syntax"] = ""; - an_object["attrib"] = m["attrib"].to!string; - an_object["lang"] = m["lang"].to!string; - debug(quote) { + an_object["syntax"] = ""; + an_object["attrib"] = m["attrib"].to!string; + an_object["lang"] = m["lang"].to!string; + debug(quote) { // quote (tic) open writefln( "* [quote tic] %s", line ); } - pith["block_is"] = eN.blk_is.quote; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.tic; + pith["block_is"] = eN.blk_is.quote; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.tic; #+END_SRC ******* table @@ -3590,11 +3590,11 @@ functions used in document abstraction ); } dochas["table"] ++; - an_object["table_head"] = m["attrib"].to!string; - an_object["block_type"] = "tic"; - pith["block_is"] = eN.blk_is.table; - pith["block_state"] = eN.blk_state.on; - pith["block_delim"] = eN.blk_delim.tic; + an_object["table_head"] = m["attrib"].to!string; + an_object["block_type"] = "tic"; + pith["block_is"] = eN.blk_is.table; + pith["block_state"] = eN.blk_state.on; + pith["block_delim"] = eN.blk_delim.tic; } #+END_SRC @@ -3605,8 +3605,8 @@ functions used in document abstraction } #+END_SRC -**** block continue (an open block) :continue: -***** _code block_ (special status, deal with first) :code: +**** block continue (an open block) :continue: +***** _code block_ (special status, deal with first) :code: #+NAME: abs_functions_block_code #+BEGIN_SRC d @@ -3625,9 +3625,9 @@ functions used in document abstraction an_object[an_object_key] = an_object[an_object_key] .replaceFirst(rgx.newline_eol_delimiter_only, "") .stripRight; - pith["block_is"] = eN.blk_is.code; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + pith["block_is"] = eN.blk_is.code; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { debug(codecurly) { writeln(line); @@ -3642,9 +3642,9 @@ functions used in document abstraction an_object[an_object_key] = an_object[an_object_key] .replaceFirst(rgx.newline_eol_delimiter_only, "") .stripRight; - pith["block_is"] = eN.blk_is.code; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + pith["block_is"] = eN.blk_is.code; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { debug(codetic) { writeln(line); @@ -3656,27 +3656,27 @@ functions used in document abstraction } #+END_SRC -***** biblio block :biblio: +***** biblio block :biblio: ****** biblio tag map #+NAME: abs_functions_block_biblio #+BEGIN_SRC d @safe final string biblio_tag_map()(string abr) { auto btm = [ - "au" : "author_raw", - "ed" : "editor_raw", - "ti" : "fulltitle", - "lng" : "language", - "jo" : "journal", - "vol" : "volume", - "edn" : "edition", - "yr" : "year", - "pl" : "place", - "pb" : "publisher", - "pub" : "publisher", - "pg" : "pages", - "pgs" : "pages", - "sn" : "short_name" + "au" : "author_raw", + "ed" : "editor_raw", + "ti" : "fulltitle", + "lng" : "language", + "jo" : "journal", + "vol" : "volume", + "edn" : "edition", + "yr" : "year", + "pl" : "place", + "pb" : "publisher", + "pub" : "publisher", + "pg" : "pages", + "pgs" : "pages", + "sn" : "short_name" ]; return btm[abr]; } @@ -3689,21 +3689,21 @@ functions used in document abstraction final string biblio_tag_map_()(string abr) { string name; switch (abr) { - case "au" : name = "author_raw"; break; - case "ed" : name = "editor_raw"; break; - case "ti" : name = "fulltitle"; break; - case "lng" : name = "language"; break; - case "jo" : name = "journal"; break; - case "vol" : name = "volume"; break; - case "edn" : name = "edition"; break; - case "yr" : name = "year"; break; - case "pl" : name = "place"; break; - case "pb" : name = "publisher"; break; - case "pub" : name = "publisher"; break; - case "pg" : name = "pages"; break; - case "pgs" : name = "pages"; break; - case "sn" : name = "short_name"; break; - default : name = abr; break; + case "au" : name = "author_raw"; break; + case "ed" : name = "editor_raw"; break; + case "ti" : name = "fulltitle"; break; + case "lng" : name = "language"; break; + case "jo" : name = "journal"; break; + case "vol" : name = "volume"; break; + case "edn" : name = "edition"; break; + case "yr" : name = "year"; break; + case "pl" : name = "place"; break; + case "pb" : name = "publisher"; break; + case "pub" : name = "publisher"; break; + case "pg" : name = "pages"; break; + case "pgs" : name = "pages"; break; + case "sn" : name = "short_name"; break; + default : name = abr; break; } return name; } @@ -3763,7 +3763,7 @@ final string biblio_tag_map_()(string abr) { auto bt = line.match(rgx.biblio_tags); bib_entry = eN.bi.off; st = bt.captures[1].to!string; - auto header_tag_value=(bt.captures[2]).to!string; + auto header_tag_value = (bt.captures[2]).to!string; JSONValue j = parseJSON(biblio_entry_str_json); biblio_tag_name = (st.match(rgx.biblio_abbreviations)) ? (biblio_tag_map(st)) @@ -3830,12 +3830,12 @@ final string biblio_tag_map_()(string abr) { } else { biblio_entry_str_json = ""; } - header_tag_value=""; + header_tag_value = ""; } } #+END_SRC -***** quote block :quote: +***** quote block :quote: #+NAME: abs_functions_block_quote #+BEGIN_SRC d @@ -3851,10 +3851,10 @@ final string biblio_tag_map_()(string abr) { debug(quote) { writeln(line); } - an_object[an_object_key] = an_object[an_object_key].stripRight; - pith["block_is"] = eN.blk_is.quote; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + an_object[an_object_key] = an_object[an_object_key].stripRight; + pith["block_is"] = eN.blk_is.quote; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { debug(quote) { writeln(line); @@ -3866,10 +3866,10 @@ final string biblio_tag_map_()(string abr) { debug(quote) { writeln(line); } - an_object[an_object_key] = an_object[an_object_key].stripRight; - pith["block_is"] = eN.blk_is.quote; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + an_object[an_object_key] = an_object[an_object_key].stripRight; + pith["block_is"] = eN.blk_is.quote; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { debug(quote) { writeln(line); @@ -3882,7 +3882,7 @@ final string biblio_tag_map_()(string abr) { } #+END_SRC -***** group block :group: +***** group block :group: - apply inline markup - discard leading and newline whitespace @@ -3901,10 +3901,10 @@ final string biblio_tag_map_()(string abr) { debug(group) { writeln(line); } - an_object[an_object_key] = an_object[an_object_key].stripRight; - pith["block_is"] = eN.blk_is.group; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + an_object[an_object_key] = an_object[an_object_key].stripRight; + pith["block_is"] = eN.blk_is.group; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { debug(group) { writeln(line); @@ -3916,10 +3916,10 @@ final string biblio_tag_map_()(string abr) { debug(group) { writeln(line); } - an_object[an_object_key] = an_object[an_object_key].stripRight; - pith["block_is"] = eN.blk_is.group; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + an_object[an_object_key] = an_object[an_object_key].stripRight; + pith["block_is"] = eN.blk_is.group; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { debug(group) { writeln(line); @@ -3932,7 +3932,7 @@ final string biblio_tag_map_()(string abr) { } #+END_SRC -***** block block :block: +***** block block :block: - apply inline markup - keep whitespace indentation @@ -3952,10 +3952,10 @@ final string biblio_tag_map_()(string abr) { debug(block) { writeln(line); } - an_object[an_object_key] = an_object[an_object_key].stripRight; - pith["block_is"] = eN.blk_is.block; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + an_object[an_object_key] = an_object[an_object_key].stripRight; + pith["block_is"] = eN.blk_is.block; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { debug(block) { writeln(line); @@ -3967,10 +3967,10 @@ final string biblio_tag_map_()(string abr) { debug(block) { writeln(line); } - an_object[an_object_key] = an_object[an_object_key].stripRight; - pith["block_is"] = eN.blk_is.block; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + an_object[an_object_key] = an_object[an_object_key].stripRight; + pith["block_is"] = eN.blk_is.block; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { debug(block) { writeln(line); @@ -3983,7 +3983,7 @@ final string biblio_tag_map_()(string abr) { } #+END_SRC -***** poem block, verse objects :poem:verse: +***** poem block, verse objects :poem:verse: why extra object stuff only in poem/verse? @@ -4004,7 +4004,7 @@ why extra object stuff only in poem/verse? if (line.matchFirst(rgx.block_curly_poem_close)) { if (an_object_key in an_object || processing.length > 0) { - an_object[an_object_key] = ""; + an_object[an_object_key] = ""; debug(poem) { writefln( "* [poem curly] %s", @@ -4012,7 +4012,7 @@ why extra object stuff only in poem/verse? ); } if (processing.length > 0) { - an_object[an_object_key] = processing["verse"]; + an_object[an_object_key] = processing["verse"]; } debug(poem) { writeln(__LINE__); @@ -4029,51 +4029,51 @@ why extra object stuff only in poem/verse? an_object[an_object_key] ); } - an_object["is"] = "verse"; + an_object["is"] = "verse"; TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_obj_misc_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, No._new_doc); - an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; - anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; - comp_obj_block = comp_obj_block.init; - comp_obj_block.metainfo.is_of_part = "body"; - comp_obj_block.metainfo.is_of_section = "body"; - comp_obj_block.metainfo.is_of_type = "block"; - comp_obj_block.metainfo.is_a = "verse"; - comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_block.text = an_object["substantive"]; - comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; - comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; - comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; - the_document_body_section ~= comp_obj_block; - tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); + an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; + anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; + comp_obj_block = comp_obj_block.init; + comp_obj_block.metainfo.is_of_part = "body"; + comp_obj_block.metainfo.is_of_section = "body"; + comp_obj_block.metainfo.is_of_type = "block"; + comp_obj_block.metainfo.is_a = "verse"; + comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; + comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_block.text = an_object["substantive"]; + comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; + comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; + comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; + the_document_body_section ~= comp_obj_block; + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); } object_reset(an_object); processing.remove("verse"); ++cntr; } - object_number_poem["end"] = obj_cite_digits.object_number.to!string; - pith["block_is"] = eN.blk_is.poem; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + object_number_poem["end"] = obj_cite_digits.object_number.to!string; + pith["block_is"] = eN.blk_is.poem; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { processing["verse"] ~= line ~= "\n"; if (pith["verse_new"] == eN.bi.on) { obj_cite_digits = ocn_emit(pith["ocn"]); - pith["verse_new"] = eN.bi.off; + pith["verse_new"] = eN.bi.off; } else if (line.matchFirst(rgx.newline_eol_delimiter_only)) { - processing["verse"] = processing["verse"].stripRight; - verse_line = eN.bi.off; - pith["verse_new"] = eN.bi.on; + processing["verse"] = processing["verse"].stripRight; + verse_line = eN.bi.off; + pith["verse_new"] = eN.bi.on; } if (pith["verse_new"] == eN.bi.on) { - verse_line=1; - an_object[an_object_key] = processing["verse"]; + verse_line = 1; + an_object[an_object_key] = processing["verse"]; debug(poem) { writefln( "* %s curly\n%s", @@ -4082,7 +4082,7 @@ why extra object stuff only in poem/verse? ); } processing.remove("verse"); - an_object["is"] = "verse"; + an_object["is"] = "verse"; auto comp_obj_location = node_construct.node_location_emitter( content_non_header, tag_in_seg, @@ -4095,26 +4095,26 @@ why extra object stuff only in poem/verse? ); TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_obj_misc_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, No._new_doc); - an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; - anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; - comp_obj_block = comp_obj_block.init; - comp_obj_block.metainfo.is_of_part = "body"; - comp_obj_block.metainfo.is_of_section = "body"; - comp_obj_block.metainfo.is_of_type = "block"; - comp_obj_block.metainfo.is_a = "verse"; - comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_block.text = an_object["substantive"]; - comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; - comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; - comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; - the_document_body_section ~= comp_obj_block; - tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); + an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; + anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; + comp_obj_block = comp_obj_block.init; + comp_obj_block.metainfo.is_of_part = "body"; + comp_obj_block.metainfo.is_of_section = "body"; + comp_obj_block.metainfo.is_of_type = "block"; + comp_obj_block.metainfo.is_a = "verse"; + comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; + comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_block.text = an_object["substantive"]; + comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; + comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; + comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; + the_document_body_section ~= comp_obj_block; + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); object_reset(an_object); processing.remove("verse"); ++cntr; @@ -4122,7 +4122,7 @@ why extra object stuff only in poem/verse? } } else if (pith["block_delim"] == eN.blk_delim.tic) { if (auto m = line.matchFirst(rgx.block_tic_close)) { - an_object[an_object_key]="verse"; + an_object[an_object_key] = "verse"; debug(poem) { writefln( "* [poem tic] %s", @@ -4130,7 +4130,7 @@ why extra object stuff only in poem/verse? ); } if (processing.length > 0) { - an_object[an_object_key] = processing["verse"]; + an_object[an_object_key] = processing["verse"]; } if (an_object.length > 0) { debug(poem) { @@ -4138,50 +4138,50 @@ why extra object stuff only in poem/verse? writeln(obj_cite_digits.object_number, line); } processing.remove("verse"); - an_object["is"] = "verse"; + an_object["is"] = "verse"; TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_obj_misc_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, No._new_doc); - an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; - anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; - comp_obj_block = comp_obj_block.init; - comp_obj_block.metainfo.is_of_part = "body"; - comp_obj_block.metainfo.is_of_section = "body"; - comp_obj_block.metainfo.is_of_type = "block"; - comp_obj_block.metainfo.is_a = "verse"; - comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_block.text = an_object["substantive"]; - comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; - comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; - comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; - the_document_body_section ~= comp_obj_block; - tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); - object_number_poem["end"] = obj_cite_digits.object_number.to!string; + an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; + anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; + comp_obj_block = comp_obj_block.init; + comp_obj_block.metainfo.is_of_part = "body"; + comp_obj_block.metainfo.is_of_section = "body"; + comp_obj_block.metainfo.is_of_type = "block"; + comp_obj_block.metainfo.is_a = "verse"; + comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; + comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_block.text = an_object["substantive"]; + comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; + comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; + comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; + the_document_body_section ~= comp_obj_block; + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); + object_number_poem["end"] = obj_cite_digits.object_number.to!string; object_reset(an_object); processing.remove("verse"); ++cntr; } - pith["block_is"] = eN.blk_is.poem; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + pith["block_is"] = eN.blk_is.poem; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { - processing["verse"] ~= line ~= "\n"; + processing["verse"] ~= line ~= "\n"; if (pith["verse_new"] == eN.bi.on) { - obj_cite_digits = ocn_emit(pith["ocn"]); - pith["verse_new"] = eN.bi.off; + obj_cite_digits = ocn_emit(pith["ocn"]); + pith["verse_new"] = eN.bi.off; } else if (line.matchFirst(rgx.newline_eol_delimiter_only)) { - processing["verse"] = processing["verse"].stripRight; - pith["verse_new"] = eN.bi.on; - verse_line = eN.bi.off; + processing["verse"] = processing["verse"].stripRight; + pith["verse_new"] = eN.bi.on; + verse_line = eN.bi.off; } if (pith["verse_new"] == eN.bi.on) { - verse_line=1; - an_object[an_object_key] = processing["verse"]; + verse_line = 1; + an_object[an_object_key] = processing["verse"]; debug(poem) { writefln( "* %s tic\n%s", @@ -4190,7 +4190,7 @@ why extra object stuff only in poem/verse? ); } processing.remove("verse"); - an_object["is"] = "verse"; + an_object["is"] = "verse"; auto comp_obj_location = node_construct.node_location_emitter( content_non_header, @@ -4204,26 +4204,26 @@ why extra object stuff only in poem/verse? ); TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_obj_misc_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, No._new_doc); - an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; - anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; - comp_obj_block = comp_obj_block.init; - comp_obj_block.metainfo.is_of_part = "body"; - comp_obj_block.metainfo.is_of_section = "body"; - comp_obj_block.metainfo.is_of_type = "block"; - comp_obj_block.metainfo.is_a = "verse"; - comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_block.text = an_object["substantive"]; - comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; - comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; - comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; - the_document_body_section ~= comp_obj_block; - tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); + an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; + anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; + comp_obj_block = comp_obj_block.init; + comp_obj_block.metainfo.is_of_part = "body"; + comp_obj_block.metainfo.is_of_section = "body"; + comp_obj_block.metainfo.is_of_type = "block"; + comp_obj_block.metainfo.is_a = "verse"; + comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; + comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_block.text = an_object["substantive"]; + comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; + comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; + comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; + the_document_body_section ~= comp_obj_block; + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); object_reset(an_object); processing.remove("verse"); ++cntr; @@ -4235,7 +4235,7 @@ why extra object stuff only in poem/verse? } #+END_SRC -***** table block :table: +***** table block :table: there are 3 types of table markup that need to be nomalized (given a single representation) here @@ -4268,9 +4268,9 @@ you need: debug(table) { writeln(line); } - pith["block_is"] = eN.blk_is.table; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + pith["block_is"] = eN.blk_is.table; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { debug(table) { writeln(line); @@ -4279,9 +4279,9 @@ you need: } } else if (pith["block_delim"] == eN.blk_delim.curly_special) { if (line.empty) { - pith["block_is"] = eN.blk_is.table; - pith["block_state"] = eN.blk_state.off; - pith["block_delim"] = eN.blk_delim.off; + pith["block_is"] = eN.blk_is.table; + pith["block_state"] = eN.blk_state.off; + pith["block_delim"] = eN.blk_delim.off; line.flow_table_closed_make_special_notation_table_( an_object, the_document_body_section, @@ -4302,9 +4302,9 @@ you need: debug(table) { writeln(line); } - pith["block_is"] = eN.blk_is.table; - pith["block_state"] = eN.blk_state.closing; - pith["block_delim"] = eN.blk_delim.off; + pith["block_is"] = eN.blk_is.table; + pith["block_state"] = eN.blk_state.closing; + pith["block_delim"] = eN.blk_delim.off; } else { debug(table) { writeln(line); @@ -4350,27 +4350,27 @@ process and use an_object["table_head"] (then empty it) heading_ptr-1, "table" ); - an_object["is"] = "table"; + an_object["is"] = "table"; TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_obj_misc_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, "body_nugget", conf_make_meta, No._new_doc); - an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; - comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_block = comp_obj_block.flow_table_instructions(an_object["table_head"]); - comp_obj_block = comp_obj_block.flow_table_substantive_munge_special(an_object["substantive"]); - the_document_body_section ~= comp_obj_block; + an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; + comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; + comp_obj_block = comp_obj_block.flow_table_instructions(an_object["table_head"]); + comp_obj_block = comp_obj_block.flow_table_substantive_munge_special(an_object["substantive"]); + the_document_body_section ~= comp_obj_block; object_reset(an_object); processing.remove("verse"); ++cntr; } #+END_SRC -**** block end (close an open block): line empty, block flag _makes_ :close: +**** block end (close an open block): line empty, block flag _makes_ :close: ***** { line empty, _make block_ @@ -4417,7 +4417,7 @@ process and use an_object["table_head"] (then empty it) obj_cite_digits, tag_in_seg ); - an_object["is"] = "quote"; + an_object["is"] = "quote"; auto comp_obj_location = node_construct.node_location_emitter( content_non_header, @@ -4431,31 +4431,31 @@ process and use an_object["table_head"] (then empty it) ); TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_obj_misc_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, No._new_doc); - an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; - anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; - comp_obj_block = comp_obj_block.init; - comp_obj_block.metainfo.is_of_part = "body"; - comp_obj_block.metainfo.is_of_section = "body"; - comp_obj_block.metainfo.is_of_type = "block"; - comp_obj_block.metainfo.is_a = "quote"; - comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_block.metainfo.object_number_type = obj_cite_digit_type; - comp_obj_block.metainfo.lang = an_object["lang"]; - comp_obj_block.metainfo.attrib = an_object["attrib"]; - comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_block.text = an_object["substantive"]; - comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; - comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; - comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; - the_document_body_section ~= comp_obj_block; - tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); - pith["block_is"] = eN.blk_is.quote; - pith["block_state"] = eN.blk_state.off; - pith["block_delim"] = eN.blk_delim.off; + an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; + anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; + comp_obj_block = comp_obj_block.init; + comp_obj_block.metainfo.is_of_part = "body"; + comp_obj_block.metainfo.is_of_section = "body"; + comp_obj_block.metainfo.is_of_type = "block"; + comp_obj_block.metainfo.is_a = "quote"; + comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_block.metainfo.object_number_type = obj_cite_digit_type; + comp_obj_block.metainfo.lang = an_object["lang"]; + comp_obj_block.metainfo.attrib = an_object["attrib"]; + comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_block.text = an_object["substantive"]; + comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; + comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; + comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; + the_document_body_section ~= comp_obj_block; + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); + pith["block_is"] = eN.blk_is.quote; + pith["block_state"] = eN.blk_state.off; + pith["block_delim"] = eN.blk_delim.off; object_reset(an_object); processing.remove("verse"); ++cntr; @@ -4475,7 +4475,7 @@ process and use an_object["table_head"] (then empty it) obj_cite_digits, tag_in_seg ); - an_object["is"] = "group"; + an_object["is"] = "group"; auto comp_obj_location = node_construct.node_location_emitter( content_non_header, @@ -4489,31 +4489,31 @@ process and use an_object["table_head"] (then empty it) ); TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_obj_misc_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, No._new_doc); - an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; - anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; - comp_obj_block = comp_obj_block.init; - comp_obj_block.metainfo.is_of_part = "body"; - comp_obj_block.metainfo.is_of_section = "body"; - comp_obj_block.metainfo.is_of_type = "block"; - comp_obj_block.metainfo.is_a = "group"; - comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_block.metainfo.lang = an_object["lang"]; - comp_obj_block.metainfo.attrib = an_object["attrib"]; - comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_block.text = an_object["substantive"]; - comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; - comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; - comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; - the_document_body_section ~= comp_obj_block; - tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); - pith["block_is"] = eN.blk_is.poem; - pith["block_state"] = eN.blk_state.off; - pith["block_delim"] = eN.blk_delim.off; + an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; + anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; + comp_obj_block = comp_obj_block.init; + comp_obj_block.metainfo.is_of_part = "body"; + comp_obj_block.metainfo.is_of_section = "body"; + comp_obj_block.metainfo.is_of_type = "block"; + comp_obj_block.metainfo.is_a = "group"; + comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; + comp_obj_block.metainfo.lang = an_object["lang"]; + comp_obj_block.metainfo.attrib = an_object["attrib"]; + comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_block.text = an_object["substantive"]; + comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; + comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; + comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; + the_document_body_section ~= comp_obj_block; + tag_assoc = an_object.inline_para_link_anchor(tag_in_seg, tag_assoc); + pith["block_is"] = eN.blk_is.poem; + pith["block_state"] = eN.blk_state.off; + pith["block_delim"] = eN.blk_delim.off; object_reset(an_object); processing.remove("verse"); ++cntr; @@ -4533,7 +4533,7 @@ process and use an_object["table_head"] (then empty it) obj_cite_digits, tag_in_seg ); - an_object["is"] = "block"; + an_object["is"] = "block"; auto comp_obj_location = node_construct.node_location_emitter( content_non_header, @@ -4547,30 +4547,30 @@ process and use an_object["table_head"] (then empty it) ); TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_obj_misc_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, No._new_doc); - an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; - // anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; - comp_obj_block = comp_obj_block.init; - comp_obj_block.metainfo.is_of_part = "body"; - comp_obj_block.metainfo.is_of_section = "body"; - comp_obj_block.metainfo.is_of_type = "block"; - comp_obj_block.metainfo.is_a = "block"; - comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_block.metainfo.object_number_type = obj_cite_digit_type; - comp_obj_block.metainfo.lang = an_object["lang"]; - comp_obj_block.metainfo.attrib = an_object["attrib"]; - comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_block.text = an_object["substantive"]; - comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; - comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; - comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; - the_document_body_section ~= comp_obj_block; - pith["block_is"] = eN.blk_is.block; - pith["block_state"] = eN.blk_state.off; - pith["block_delim"] = eN.blk_delim.off; + an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; + // anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; + comp_obj_block = comp_obj_block.init; + comp_obj_block.metainfo.is_of_part = "body"; + comp_obj_block.metainfo.is_of_section = "body"; + comp_obj_block.metainfo.is_of_type = "block"; + comp_obj_block.metainfo.is_a = "block"; + comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_block.metainfo.object_number_type = obj_cite_digit_type; + comp_obj_block.metainfo.lang = an_object["lang"]; + comp_obj_block.metainfo.attrib = an_object["attrib"]; + comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_block.text = an_object["substantive"]; + comp_obj_block.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; + comp_obj_block.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; + comp_obj_block.has.inline_links = substantive_obj_misc_tuple[sObj.links]; + the_document_body_section ~= comp_obj_block; + pith["block_is"] = eN.blk_is.block; + pith["block_state"] = eN.blk_state.off; + pith["block_delim"] = eN.blk_delim.off; object_reset(an_object); processing.remove("verse"); ++cntr; @@ -4589,7 +4589,7 @@ process and use an_object["table_head"] (then empty it) obj_cite_digits, tag_in_seg ); - an_object["is"] = "verse"; + an_object["is"] = "verse"; auto comp_obj_location = node_construct.node_location_emitter( content_non_header, @@ -4601,21 +4601,21 @@ process and use an_object["table_head"] (then empty it) heading_ptr-1, an_object["is"] ); - comp_obj_poem_ocn = comp_obj_poem_ocn.init; - comp_obj_poem_ocn.metainfo.is_of_part = "body"; - comp_obj_poem_ocn.metainfo.is_of_section = "body"; - comp_obj_poem_ocn.metainfo.is_of_type = "block"; - comp_obj_poem_ocn.metainfo.is_a = "poem"; - comp_obj_poem_ocn.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_poem_ocn.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_poem_ocn.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_poem_ocn.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_poem_ocn.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_poem_ocn.text = ""; - the_document_body_section ~= comp_obj_poem_ocn; - pith["block_is"] = eN.blk_is.poem; - pith["block_state"] = eN.blk_state.off; - pith["block_delim"] = eN.blk_delim.off; + comp_obj_poem_ocn = comp_obj_poem_ocn.init; + comp_obj_poem_ocn.metainfo.is_of_part = "body"; + comp_obj_poem_ocn.metainfo.is_of_section = "body"; + comp_obj_poem_ocn.metainfo.is_of_type = "block"; + comp_obj_poem_ocn.metainfo.is_a = "poem"; + comp_obj_poem_ocn.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_poem_ocn.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_poem_ocn.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_poem_ocn.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_poem_ocn.metainfo.object_number_type = obj_cite_digits.type; + comp_obj_poem_ocn.text = ""; + the_document_body_section ~= comp_obj_poem_ocn; + pith["block_is"] = eN.blk_is.poem; + pith["block_state"] = eN.blk_state.off; + pith["block_delim"] = eN.blk_delim.off; object_reset(an_object); processing.remove("verse"); #+END_SRC @@ -4634,7 +4634,7 @@ process and use an_object["table_head"] (then empty it) obj_cite_digits, tag_in_seg ); - an_object["is"] = "code"; + an_object["is"] = "code"; auto comp_obj_location = node_construct.node_location_emitter( content_non_header, @@ -4648,31 +4648,31 @@ process and use an_object["table_head"] (then empty it) ); TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_obj_misc_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, No._new_doc); - an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; - anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; - comp_obj_code = comp_obj_code.init; - comp_obj_code.metainfo.is_of_part = "body"; - comp_obj_code.metainfo.is_of_section = "body"; - comp_obj_code.metainfo.is_of_type = "block"; - comp_obj_code.metainfo.is_a = "code"; - comp_obj_code.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_code.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_code.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_code.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_code.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_code.metainfo.syntax = an_object["syntax"]; - comp_obj_code.metainfo.attrib = an_object["attrib"]; - comp_obj_code.code_block.linenumbers = (an_object["attrib"].match(rgx.code_numbering)) ? true : false; - comp_obj_code.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_code.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_code.text = an_object["substantive"]; - comp_obj_code.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; - comp_obj_code.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; - comp_obj_code.has.inline_links = substantive_obj_misc_tuple[sObj.links]; - the_document_body_section ~= comp_obj_code; - pith["block_is"] = eN.blk_is.code; - pith["block_state"] = eN.blk_state.off; - pith["block_delim"] = eN.blk_delim.off; + an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; + anchor_tag = substantive_obj_misc_tuple[sObj.anchor_tag]; + comp_obj_code = comp_obj_code.init; + comp_obj_code.metainfo.is_of_part = "body"; + comp_obj_code.metainfo.is_of_section = "body"; + comp_obj_code.metainfo.is_of_type = "block"; + comp_obj_code.metainfo.is_a = "code"; + comp_obj_code.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_code.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_code.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_code.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_code.metainfo.object_number_type = obj_cite_digits.type; + comp_obj_code.metainfo.syntax = an_object["syntax"]; + comp_obj_code.metainfo.attrib = an_object["attrib"]; + comp_obj_code.code_block.linenumbers = (an_object["attrib"].match(rgx.code_numbering)) ? true : false; + comp_obj_code.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_code.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_code.text = an_object["substantive"]; + comp_obj_code.has.inline_notes_reg = substantive_obj_misc_tuple[sObj.notes_reg]; + comp_obj_code.has.inline_notes_star = substantive_obj_misc_tuple[sObj.notes_star]; + comp_obj_code.has.inline_links = substantive_obj_misc_tuple[sObj.links]; + the_document_body_section ~= comp_obj_code; + pith["block_is"] = eN.blk_is.code; + pith["block_state"] = eN.blk_state.off; + pith["block_delim"] = eN.blk_delim.off; object_reset(an_object); processing.remove("verse"); ++cntr; @@ -4693,7 +4693,7 @@ process and use an_object["table_head"] (then empty it) obj_cite_digits, tag_in_seg ); - an_object["is"] = "table"; + an_object["is"] = "table"; auto comp_obj_location = node_construct.node_location_emitter( content_non_header, @@ -4707,21 +4707,21 @@ process and use an_object["table_head"] (then empty it) ); TxtAndAnchorTagPlusHasFootnotesUrlsImages substantive_obj_misc_tuple = obj_im.obj_inline_markup_and_anchor_tags_and_misc(an_object, an_object_key, conf_make_meta, No._new_doc); - an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; - comp_obj_block = comp_obj_block.init; - comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; - comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; - comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; - comp_obj_block = comp_obj_block.flow_table_instructions(an_object["table_head"]); - comp_obj_block = comp_obj_block.flow_table_substantive_munge(an_object["substantive"]); - the_document_body_section ~= comp_obj_block; - pith["block_is"] = eN.blk_is.table; - pith["block_state"] = eN.blk_state.off; - pith["block_delim"] = eN.blk_delim.off; + an_object["substantive"] = substantive_obj_misc_tuple[sObj.content]; + comp_obj_block = comp_obj_block.init; + comp_obj_block.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_block.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_block.metainfo.object_number_off = obj_cite_digits.off; + comp_obj_block.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + comp_obj_block.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + comp_obj_block.metainfo.o_n_book_index = obj_cite_digits.bkidx; + comp_obj_block.metainfo.object_number_type = obj_cite_digits.type; + comp_obj_block = comp_obj_block.flow_table_instructions(an_object["table_head"]); + comp_obj_block = comp_obj_block.flow_table_substantive_munge(an_object["substantive"]); + the_document_body_section ~= comp_obj_block; + pith["block_is"] = eN.blk_is.table; + pith["block_state"] = eN.blk_state.off; + pith["block_delim"] = eN.blk_delim.off; object_reset(an_object); processing.remove("verse"); ++cntr; @@ -4737,7 +4737,7 @@ process and use an_object["table_head"] (then empty it) } #+END_SRC -*** book index :bookindex: +*** book index :bookindex: #+NAME: abs_functions_book_index #+BEGIN_SRC d @@ -4793,8 +4793,8 @@ process and use an_object["table_head"] (then empty it) } #+END_SRC -*** heading or paragraph :heading:paragraph: -**** heading found :heading: +*** heading or paragraph :heading:paragraph: +**** heading found :heading: #+NAME: abs_functions_heading #+BEGIN_SRC d @@ -4881,7 +4881,7 @@ process and use an_object["table_head"] (then empty it) } #+END_SRC -**** heading make set :heading: +**** heading make set :heading: #+NAME: abs_functions_heading #+BEGIN_SRC d @@ -4943,7 +4943,7 @@ process and use an_object["table_head"] (then empty it) } #+END_SRC -**** heading match :heading: +**** heading match :heading: #+NAME: abs_functions_heading #+BEGIN_SRC d @@ -5099,7 +5099,7 @@ process and use an_object["table_head"] (then empty it) } #+END_SRC -**** para match :para: +**** para match :para: #+NAME: abs_functions_para #+BEGIN_SRC d @@ -5118,7 +5118,7 @@ process and use an_object["table_head"] (then empty it) /+ para matches +/ pith["txt_is"] = eN.txt_is.para; an_object[an_object_key] ~= line; - indent=[ + indent = [ "hang_position" : 0, "base_position" : 0, ]; @@ -5204,13 +5204,13 @@ process and use an_object["table_head"] (then empty it) H table_head, ) { static auto rgx = RgxI(); - table_object.metainfo.is_of_part = "body"; - table_object.metainfo.is_of_section = "body"; - table_object.metainfo.is_of_type = "block"; - table_object.metainfo.is_a = "table"; - table_object.has.inline_notes_reg = false; - table_object.has.inline_notes_star = false; - table_object.has.inline_links = false; + table_object.metainfo.is_of_part = "body"; + table_object.metainfo.is_of_section = "body"; + table_object.metainfo.is_of_type = "block"; + table_object.metainfo.is_a = "table"; + table_object.has.inline_notes_reg = false; + table_object.has.inline_notes_star = false; + table_object.has.inline_links = false; if (auto m = table_head.matchFirst(rgx.table_head_instructions)) { table_object.table.heading = ((m["c_heading"].length > 0) && (m["c_heading"] == "h")) ? true : false; @@ -5400,9 +5400,9 @@ process and use an_object["table_head"] (then empty it) } #+END_SRC -*** function emitters :emitters: -**** object :object: -***** ocn :ocn: +*** function emitters :emitters: +**** object :object: +***** ocn :ocn: #+NAME: meta_emitters_ocn #+BEGIN_SRC d @@ -5413,42 +5413,42 @@ process and use an_object["table_head"] (then empty it) @safe auto ocn_emitter(int ocn_status_flag) { OCNset ocn; assert(ocn_status_flag <= eN.ocn.reset); - ocn_object_number = ocn_bkidx = 0; - object_identifier = ""; - ocn_is_off = false; + ocn_object_number = ocn_bkidx = 0; + object_identifier = ""; + ocn_is_off = false; switch(ocn_status_flag) with (eN.ocn) { case reset: - ocn_digit = ocn_on_ = 1; - object_identifier = "1"; - ocn_is_off = false; - ocn_off_ = ocn_bkidx_ = 0; + ocn_digit = ocn_on_ = 1; + object_identifier = "1"; + ocn_is_off = false; + ocn_off_ = ocn_bkidx_ = 0; break; case on: - ocn_digit = ocn_object_number = ++ocn_on_; - object_identifier = ocn_digit.to!string; - ocn_is_off = false; + ocn_digit = ocn_object_number = ++ocn_on_; + object_identifier = ocn_digit.to!string; + ocn_is_off = false; break; case off: - ocn_digit = 0; - ocn_off_ = ++ocn_off_; - object_identifier = "a" ~ ocn_off_.to!string; - ocn_is_off = true; + ocn_digit = 0; + ocn_off_ = ++ocn_off_; + object_identifier = "a" ~ ocn_off_.to!string; + ocn_is_off = true; break; case bkidx: - ocn_bkidx = ++ocn_bkidx_; + ocn_bkidx = ++ocn_bkidx_; break; case closing: // unused? break; default: - ocn_digit = 0; + ocn_digit = 0; } assert(ocn_digit >= 0); - ocn.digit = ocn_digit; - ocn.object_number = ocn_object_number; // difference between .object_number and .digit? - ocn.identifier = object_identifier; - ocn.off = ocn_is_off; - ocn.bkidx = ocn_bkidx; - ocn.type = ocn_status_flag; + ocn.digit = ocn_digit; + ocn.object_number = ocn_object_number; // difference between .object_number and .digit? + ocn.identifier = object_identifier; + ocn.off = ocn_is_off; + ocn.bkidx = ocn_bkidx; + ocn.type = ocn_status_flag; return ocn; } invariant() { @@ -5456,7 +5456,7 @@ process and use an_object["table_head"] (then empty it) } #+END_SRC -***** object inline markup munge :markup:inline: +***** object inline markup munge :markup:inline: ****** { struct, inline markup munge @@ -5471,10 +5471,10 @@ process and use an_object["table_head"] (then empty it) static auto mkup = InlineMarkup(); int stage_reset_note_numbers = true; private auto initialize_note_numbers() { - n_foot = 0; - n_foot_reg = 0; - n_foot_sp_asterisk = 0; - n_foot_sp_plus = 0; + n_foot = 0; + n_foot_reg = 0; + n_foot_sp_asterisk = 0; + n_foot_sp_plus = 0; } #+END_SRC @@ -5534,10 +5534,10 @@ process and use an_object["table_head"] (then empty it) foreach (x; obj_txt_in.split("\n")) { if (auto m = x.matchAll(rgx.inline_text_and_note_al_)) { if (stage_reset_note_numbers) { - n_foot = 0; - n_foot_reg = 0; - n_foot_sp_asterisk = 0; - n_foot_sp_plus = 0; + n_foot = 0; + n_foot_reg = 0; + n_foot_sp_asterisk = 0; + n_foot_sp_plus = 0; } stage_reset_note_numbers = false; foreach(n; m) { @@ -5545,7 +5545,7 @@ process and use an_object["table_head"] (then empty it) flg_notes_star = true; ++n_foot_sp_asterisk; asterisks_ = "*"; - n_foot=n_foot_sp_asterisk; + n_foot = n_foot_sp_asterisk; _tmp_txt ~= n.hit.to!string.replaceFirst( rgx.inline_al_delimiter_open_symbol_star, (mkup.en_a_o ~ replicate(asterisks_, n_foot_sp_asterisk) ~ " ") @@ -5554,7 +5554,7 @@ process and use an_object["table_head"] (then empty it) flg_notes_plus = true; ++n_foot_sp_plus; plus_ = "*"; - n_foot=n_foot_sp_plus; + n_foot = n_foot_sp_plus; _tmp_txt ~= n.hit.to!string.replaceFirst( rgx.inline_al_delimiter_open_symbol_plus, (mkup.en_a_o ~ replicate(plus_, n_foot_sp_plus) ~ " ") @@ -5564,7 +5564,7 @@ process and use an_object["table_head"] (then empty it) flg_notes_reg = true; foreach (q; n.hit.to!string.matchAll(rgx.inline_al_delimiter_open_regular)) { ++n_foot_reg; - n_foot=n_foot_reg; + n_foot = n_foot_reg; _tmp_str = replaceFirst!(m => mkup.en_a_o ~ n_foot.to!string ~ " ") (_tmp_str, rgx.inline_al_delimiter_open_regular); } @@ -5595,7 +5595,7 @@ process and use an_object["table_head"] (then empty it) #+BEGIN_SRC d @safe private TxtPlusHasFootnotesUrlsImages object_notes_and_links_()( string obj_txt_in, - bool reset_note_numbers=false + bool reset_note_numbers = false ) { obj_txt_out = ""; bool urls = false; @@ -5666,7 +5666,7 @@ process and use an_object["table_head"] (then empty it) #+BEGIN_SRC d @safe auto munge_heading()( string obj_txt_in, - bool reset_note_numbers=false + bool reset_note_numbers = false ) { obj_txt["munge"] = obj_txt_in .replaceFirst(rgx.headings, "") @@ -5696,7 +5696,7 @@ process and use an_object["table_head"] (then empty it) #+NAME: meta_emitters_obj_inline_markup_munge #+BEGIN_SRC d @safe auto munge_para()(string obj_txt_in) { - obj_txt["munge"]=(obj_txt_in) + obj_txt["munge"] = (obj_txt_in) .replaceFirst(rgx.para_attribs, "") .replaceFirst(rgx.object_number_off_all, ""); TxtPlusHasFootnotesUrlsImages t = object_notes_and_links_(obj_txt["munge"]); @@ -5715,7 +5715,7 @@ process and use an_object["table_head"] (then empty it) #+NAME: meta_emitters_obj_inline_markup_munge #+BEGIN_SRC d @safe string munge_quote()(string obj_txt_in) { - obj_txt["munge"]=obj_txt_in; + obj_txt["munge"] = obj_txt_in; return obj_txt["munge"]; } invariant() { @@ -5808,7 +5808,7 @@ process and use an_object["table_head"] (then empty it) #+NAME: meta_emitters_obj_inline_markup_munge #+BEGIN_SRC d @safe string munge_table()(string obj_txt_in) { - obj_txt["munge"]=obj_txt_in; + obj_txt["munge"] = obj_txt_in; return obj_txt["munge"]; } invariant() { @@ -5820,7 +5820,7 @@ process and use an_object["table_head"] (then empty it) #+NAME: meta_emitters_obj_inline_markup_munge #+BEGIN_SRC d @safe string munge_comment()(string obj_txt_in) { - obj_txt["munge"]=obj_txt_in; + obj_txt["munge"] = obj_txt_in; return obj_txt["munge"]; } invariant() { @@ -5834,7 +5834,7 @@ process and use an_object["table_head"] (then empty it) } #+END_SRC -***** toc, tags, object inline markup :markup:inline: +***** toc, tags, object inline markup :markup:inline: ****** { #+NAME: meta_emitters_obj_inline_markup @@ -5846,7 +5846,7 @@ static struct ObjInlineMarkup { static string anchor_tag = ""; #+END_SRC -******* object inline markup and anchor tags :markup:inline: +******* object inline markup and anchor tags :markup:inline: #+NAME: meta_emitters_obj_inline_markup_and_anchor_tags_and_misc #+BEGIN_SRC d @@ -5856,8 +5856,8 @@ static struct ObjInlineMarkup { CMM conf_make_meta, Flag!"_new_doc" _new_doc ) { - obj_txt["munge"] = obj_[obj_key_].dup; - obj_txt["munge"] = (obj_["is"].match(ctRegex!(`verse|code`))) + obj_txt["munge"] = obj_[obj_key_].dup; + obj_txt["munge"] = (obj_["is"].match(ctRegex!(`verse|code`))) ? obj_txt["munge"] : obj_txt["munge"].strip; if (_new_doc) { @@ -5865,69 +5865,69 @@ static struct ObjInlineMarkup { } auto x = munge.init; bool[string] obj_notes_and_links; - obj_notes_and_links["notes_reg"] = false; - obj_notes_and_links["notes_star"] = false; - obj_notes_and_links["links"] = false; - obj_notes_and_links["image_no_dimensions"] = false; + obj_notes_and_links["notes_reg"] = false; + obj_notes_and_links["notes_star"] = false; + obj_notes_and_links["links"] = false; + obj_notes_and_links["image_no_dimensions"] = false; if ((obj_["is"] == "para") || (obj_["is"] == "heading") || (obj_["is"] == "quote") || (obj_["is"] == "group") || (obj_["is"] == "block") || (obj_["is"] == "verse")) { - obj_txt["munge"] = (obj_txt["munge"]).inline_markup_faces; - obj_txt["munge"] = (obj_txt["munge"]).links_and_images; + obj_txt["munge"] = (obj_txt["munge"]).inline_markup_faces; + obj_txt["munge"] = (obj_txt["munge"]).links_and_images; } switch (obj_["is"]) { case "heading": if (_new_doc) { - anchor_tag = ""; + anchor_tag = ""; } obj_txt["munge"] = _configured_auto_heading_numbering_and_segment_anchor_tags(obj_txt["munge"], obj_, conf_make_meta, _new_doc); obj_txt["munge"] = _make_segment_anchor_tags_if_none_provided(obj_txt["munge"], obj_["lev"], _new_doc); if (auto m = obj_txt["munge"].match(rgx.heading_anchor_tag)) { - anchor_tag = m.captures[1]; + anchor_tag = m.captures[1]; } else if (obj_["lev"] == "1") { writeln("heading anchor tag missing: ", obj_txt["munge"]); } - x = munge.munge_heading(obj_txt["munge"], reset_note_numbers); - reset_note_numbers=false; + x = munge.munge_heading(obj_txt["munge"], reset_note_numbers); + reset_note_numbers = false; goto default; case "para": - x = munge.munge_para(obj_txt["munge"]); + x = munge.munge_para(obj_txt["munge"]); goto default; case "group": - x = munge.munge_group(obj_txt["munge"]); + x = munge.munge_group(obj_txt["munge"]); goto default; case "block": - x = munge.munge_block(obj_txt["munge"]); + x = munge.munge_block(obj_txt["munge"]); goto default; case "verse": - x = munge.munge_verse(obj_txt["munge"]); + x = munge.munge_verse(obj_txt["munge"]); goto default; case "code": - obj_txt["munge"] = munge.munge_code(obj_txt["munge"]); + obj_txt["munge"] = munge.munge_code(obj_txt["munge"]); break; case "table": - obj_txt["munge"] = munge.munge_table(obj_txt["munge"]); + obj_txt["munge"] = munge.munge_table(obj_txt["munge"]); break; case "quote": - obj_txt["munge"] = munge.munge_quote(obj_txt["munge"]); + obj_txt["munge"] = munge.munge_quote(obj_txt["munge"]); break; case "comment": - obj_txt["munge"] = munge.munge_comment(obj_txt["munge"]); + obj_txt["munge"] = munge.munge_comment(obj_txt["munge"]); break; case "doc_end_reset": munge.initialize_note_numbers(); break; default: /+ para, heading, group, block, verse +/ - obj_txt["munge"] = x[0]; - obj_notes_and_links["notes_reg"] = x[1]; - obj_notes_and_links["notes_star"] = x[2]; - obj_notes_and_links["notes_plus"] = x[3]; - obj_notes_and_links["links"] = x[4]; - obj_notes_and_links["image_no_dimensions"] = x[5]; + obj_txt["munge"] = x[0]; + obj_notes_and_links["notes_reg"] = x[1]; + obj_notes_and_links["notes_star"] = x[2]; + obj_notes_and_links["notes_plus"] = x[3]; + obj_notes_and_links["links"] = x[4]; + obj_notes_and_links["image_no_dimensions"] = x[5]; break; } TxtAndAnchorTagPlusHasFootnotesUrlsImages t = tuple( @@ -5945,7 +5945,7 @@ static struct ObjInlineMarkup { } #+END_SRC -******* toc (table of contents), build, gather headings :markup:inline: +******* toc (table of contents), build, gather headings :markup:inline: #+NAME: meta_emitters_obj_inline_markup_table_of_contents #+BEGIN_SRC d @@ -5967,14 +5967,14 @@ static struct ObjInlineMarkup { ObjGenericComposite comp_obj_toc; mixin InternalMarkup; static auto mkup = InlineMarkup(); - char[] heading_toc_ = (obj_["substantive"].dup.strip.to!(char[])) + char[] heading_toc_ = (obj_["substantive"].dup.strip.to!(char[])) .replaceAll(rgx.inline_notes_al, ""); - heading_toc_ = _clean_heading_toc_(heading_toc_); - auto attrib=""; + heading_toc_ = _clean_heading_toc_(heading_toc_); + auto attrib = ""; string toc_txt_, subtoc_txt_; int[string] indent; if (obj_["lev_markup_number"].to!int > 0) { - indent=[ + indent = [ "hang_position" : obj_["lev_markup_number"].to!int, "base_position" : obj_["lev_markup_number"].to!int, ]; @@ -5987,35 +5987,35 @@ static struct ObjInlineMarkup { mkup.url_c, ); toc_txt_= toc_txt_.links_and_images; - comp_obj_toc = comp_obj_toc.init; - comp_obj_toc.metainfo.is_of_part = "frontmatter"; - comp_obj_toc.metainfo.is_of_section = "toc"; - comp_obj_toc.metainfo.is_of_type = "para"; - comp_obj_toc.metainfo.is_a = "toc"; - comp_obj_toc.metainfo.ocn = 0; - comp_obj_toc.metainfo.identifier = ""; - comp_obj_toc.metainfo.object_number_off = true; - comp_obj_toc.metainfo.object_number_type = 0; - comp_obj_toc.metainfo.dummy_heading = (an_object["dummy_heading_status"] == "t") ? true: false; - comp_obj_toc.attrib.indent_hang = indent["hang_position"]; - comp_obj_toc.attrib.indent_base = indent["base_position"]; - comp_obj_toc.attrib.bullet = false; - comp_obj_toc.text = toc_txt_.to!string.strip; - comp_obj_toc.has.inline_links = true; - the_table_of_contents_section ~= comp_obj_toc; - } - comp_obj_toc = comp_obj_toc.init; - comp_obj_toc.metainfo.is_of_part = "frontmatter"; - comp_obj_toc.metainfo.is_of_section = "toc"; - comp_obj_toc.metainfo.is_of_type = "para"; - comp_obj_toc.metainfo.is_a = "toc"; - comp_obj_toc.metainfo.ocn = 0; - comp_obj_toc.metainfo.identifier = ""; - comp_obj_toc.metainfo.object_number_off = true; - comp_obj_toc.metainfo.object_number_type = 0; - comp_obj_toc.metainfo.dummy_heading = (an_object["dummy_heading_status"] == "t") ? true: false; - comp_obj_toc.attrib.bullet = false; - comp_obj_toc.has.inline_links = true; + comp_obj_toc = comp_obj_toc.init; + comp_obj_toc.metainfo.is_of_part = "frontmatter"; + comp_obj_toc.metainfo.is_of_section = "toc"; + comp_obj_toc.metainfo.is_of_type = "para"; + comp_obj_toc.metainfo.is_a = "toc"; + comp_obj_toc.metainfo.ocn = 0; + comp_obj_toc.metainfo.identifier = ""; + comp_obj_toc.metainfo.object_number_off = true; + comp_obj_toc.metainfo.object_number_type = 0; + comp_obj_toc.metainfo.dummy_heading = (an_object["dummy_heading_status"] == "t") ? true: false; + comp_obj_toc.attrib.indent_hang = indent["hang_position"]; + comp_obj_toc.attrib.indent_base = indent["base_position"]; + comp_obj_toc.attrib.bullet = false; + comp_obj_toc.text = toc_txt_.to!string.strip; + comp_obj_toc.has.inline_links = true; + the_table_of_contents_section ~= comp_obj_toc; + } + comp_obj_toc = comp_obj_toc.init; + comp_obj_toc.metainfo.is_of_part = "frontmatter"; + comp_obj_toc.metainfo.is_of_section = "toc"; + comp_obj_toc.metainfo.is_of_type = "para"; + comp_obj_toc.metainfo.is_a = "toc"; + comp_obj_toc.metainfo.ocn = 0; + comp_obj_toc.metainfo.identifier = ""; + comp_obj_toc.metainfo.object_number_off = true; + comp_obj_toc.metainfo.object_number_type = 0; + comp_obj_toc.metainfo.dummy_heading = (an_object["dummy_heading_status"] == "t") ? true: false; + comp_obj_toc.attrib.bullet = false; + comp_obj_toc.has.inline_links = true; switch (obj_["lev_markup_number"].to!int) { case 0: .. case 3: break; @@ -6067,17 +6067,17 @@ private: bool _new_doc, ) { if (_new_doc) { - heading_num = [ 0, 0, 0, 0 ]; - heading_number_auto_composite = ""; - auto_heading_numbering = [ true, true, true, true]; + heading_num = [ 0, 0, 0, 0 ]; + heading_number_auto_composite = ""; + auto_heading_numbering = [ true, true, true, true]; } if (conf_make_meta.make.auto_num_top_lv) { if (obj_["lev_markup_number"].to!int == 0) { - heading_num[0] = 0; - heading_num[1] = 0; - heading_num[2] = 0; - heading_num[3] = 0; - heading_number_auto_composite = ""; + heading_num[0] = 0; + heading_num[1] = 0; + heading_num[2] = 0; + heading_num[3] = 0; + heading_number_auto_composite = ""; } /+ auto_num_depth minimum 0 (1.) default 2 (1.1.1) max 3 (1.1.1.1) implement +/ @@ -6085,9 +6085,9 @@ private: conf_make_meta.make.auto_num_top_lv > obj_["lev_markup_number"].to!uint ) { - heading_num[1] = 0; - heading_num[2] = 0; - heading_num[3] = 0; + heading_num[1] = 0; + heading_num[2] = 0; + heading_num[3] = 0; } else if ( conf_make_meta.make.auto_num_top_lv == obj_["lev_markup_number"].to!uint @@ -6097,9 +6097,9 @@ private: if (auto_heading_numbering[0]) { heading_num[0] ++; } - heading_num[1] = 0; - heading_num[2] = 0; - heading_num[3] = 0; + heading_num[1] = 0; + heading_num[2] = 0; + heading_num[3] = 0; } else if ( conf_make_meta.make.auto_num_top_lv == (obj_["lev_markup_number"].to!uint - 1) @@ -6110,8 +6110,8 @@ private: && auto_heading_numbering[1]) { heading_num[1] ++; } - heading_num[2] = 0; - heading_num[3] = 0; + heading_num[2] = 0; + heading_num[3] = 0; } else if ( conf_make_meta.make.auto_num_top_lv == (obj_["lev_markup_number"].to!uint - 2) @@ -6123,7 +6123,7 @@ private: && auto_heading_numbering[2]) { heading_num[2] ++; } - heading_num[3] = 0; + heading_num[3] = 0; } else if ( conf_make_meta.make.auto_num_top_lv == (obj_["lev_markup_number"].to!uint - 3) @@ -6231,7 +6231,7 @@ private: rgx.heading_marker_missing_tag, "$1~" ~ "s" ~ m.captures[1] ~ " "); } - } else if (lev_ == "1") { // (if not successful) manufacture a unique anchor tag for lev=="1" + } else if (lev_ == "1") { // (if not successful) manufacture a unique anchor tag for lev == "1" if (_new_doc) { heading_num_lev1 = 0; } @@ -6252,7 +6252,7 @@ private: } #+END_SRC -***** object attrib :attributes: +***** object attrib :attributes: ****** { attributes structure open, public #+NAME: meta_emitters_obj_attributes @@ -6311,8 +6311,8 @@ struct ObjAttributes { _obj_attrib["json"] ~= txt_para(obj_raw); break; } - _obj_attrib["json"] ~=" }"; - _obj_attrib["json"]=_set_additional_values_parse_as_json(_obj_attrib["json"], obj_is_, _comp_obj_heading); + _obj_attrib["json"] ~= " }"; + _obj_attrib["json"] = _set_additional_values_parse_as_json(_obj_attrib["json"], obj_is_, _comp_obj_heading); debug(structattrib) { if (oa_j["is"].str() == "heading") { writeln(_obj_attrib["json"]); @@ -6506,15 +6506,15 @@ struct ObjAttributes { (oa_j.type == JSON_TYPE.OBJECT) ); if (obj_is_ == "heading") { - oa_j.object["object_number"] = _comp_obj_heading.metainfo.ocn; - oa_j.object["lev_markup_number"] = _comp_obj_heading.metainfo.heading_lev_markup; - oa_j.object["lev_collapsed_number"] = _comp_obj_heading.metainfo.heading_lev_collapsed; - oa_j.object["heading_ptr"] = _comp_obj_heading.ptr.heading; - oa_j.object["doc_object_ptr"] = _comp_obj_heading.ptr.doc_object; - } - oa_j.object["parent_object_number"] = _comp_obj_heading.metainfo.parent_ocn; - oa_j.object["parent_lev_markup_number"] = _comp_obj_heading.metainfo.parent_lev_markup; - _obj_attrib = oa_j.toString(); + oa_j.object["object_number"] = _comp_obj_heading.metainfo.ocn; + oa_j.object["lev_markup_number"] = _comp_obj_heading.metainfo.heading_lev_markup; + oa_j.object["lev_collapsed_number"] = _comp_obj_heading.metainfo.heading_lev_collapsed; + oa_j.object["heading_ptr"] = _comp_obj_heading.ptr.heading; + oa_j.object["doc_object_ptr"] = _comp_obj_heading.ptr.doc_object; + } + oa_j.object["parent_object_number"] = _comp_obj_heading.metainfo.parent_ocn; + oa_j.object["parent_lev_markup_number"] = _comp_obj_heading.metainfo.parent_lev_markup; + _obj_attrib = oa_j.toString(); return _obj_attrib; } #+END_SRC @@ -6526,8 +6526,8 @@ struct ObjAttributes { } #+END_SRC -**** book index :book:index: -***** book index nugget hash :hash:nugget: +**** book index :book:index: +***** book index nugget hash :hash:nugget: #+NAME: meta_emitters_book_index_nugget #+BEGIN_SRC d @@ -6595,7 +6595,7 @@ struct BookIndexNuggetHash { if (!empty(sub_term)) { bi_hash_nugget[main_term][sub_term] ~= object_numbers; } - object_numbers=null; + object_numbers = null; } } } @@ -6607,7 +6607,7 @@ struct BookIndexNuggetHash { } #+END_SRC -***** book index (sort &) report indented :report:indented: +***** book index (sort &) report indented :report:indented: #+NAME: meta_emitters_book_index_report_indented #+BEGIN_SRC d @@ -6639,7 +6639,7 @@ struct BookIndexReportIndent { } #+END_SRC -***** book index (sort &) report section :report:section: +***** book index (sort &) report section :report:section: ****** { book index struct open #+NAME: meta_emitters_book_index_report_section @@ -6685,7 +6685,7 @@ struct BookIndexReportSection { } #+END_SRC -******* book index (sort &) build section :report:section: +******* book index (sort &) build section :report:section: #+NAME: meta_emitters_book_index_report_section #+BEGIN_SRC d @@ -6718,53 +6718,53 @@ struct BookIndexReportSection { string bi_tmp; string[] bi_tmp_tags; { - comp_obj_heading_ = comp_obj_heading_.init; - comp_obj_heading_.metainfo.is_of_part = "backmatter"; - comp_obj_heading_.metainfo.is_of_section = "bookindex"; - comp_obj_heading_.metainfo.is_of_type = "para"; - comp_obj_heading_.metainfo.is_a = "heading"; - comp_obj_heading_.text = "Book Index"; - comp_obj_heading_.metainfo.ocn = 0; - comp_obj_heading_.metainfo.identifier = ""; - comp_obj_heading_.metainfo.dummy_heading = false; - comp_obj_heading_.metainfo.object_number_off = false; - comp_obj_heading_.metainfo.object_number_type = 0; - comp_obj_heading_.tags.segment_anchor_tag_epub = "_part_book_index"; - comp_obj_heading_.tags.anchor_tag_html = comp_obj_heading_.tags.segment_anchor_tag_epub; - comp_obj_heading_.tags.in_segment_html = "bookindex"; - comp_obj_heading_.tags.anchor_tags = ["section_bookindex"]; - comp_obj_heading_.metainfo.heading_lev_markup = 1; - comp_obj_heading_.metainfo.heading_lev_collapsed = 1; - comp_obj_heading_.metainfo.parent_ocn = 1; - comp_obj_heading_.metainfo.parent_lev_markup = 0; - comp_obj_heading.has.inline_links = true; - bookindex_section ~= comp_obj_heading_; + comp_obj_heading_ = comp_obj_heading_.init; + comp_obj_heading_.metainfo.is_of_part = "backmatter"; + comp_obj_heading_.metainfo.is_of_section = "bookindex"; + comp_obj_heading_.metainfo.is_of_type = "para"; + comp_obj_heading_.metainfo.is_a = "heading"; + comp_obj_heading_.text = "Book Index"; + comp_obj_heading_.metainfo.ocn = 0; + comp_obj_heading_.metainfo.identifier = ""; + comp_obj_heading_.metainfo.dummy_heading = false; + comp_obj_heading_.metainfo.object_number_off = false; + comp_obj_heading_.metainfo.object_number_type = 0; + comp_obj_heading_.tags.segment_anchor_tag_epub = "_part_book_index"; + comp_obj_heading_.tags.anchor_tag_html = comp_obj_heading_.tags.segment_anchor_tag_epub; + comp_obj_heading_.tags.in_segment_html = "bookindex"; + comp_obj_heading_.tags.anchor_tags = ["section_bookindex"]; + comp_obj_heading_.metainfo.heading_lev_markup = 1; + comp_obj_heading_.metainfo.heading_lev_collapsed = 1; + comp_obj_heading_.metainfo.parent_ocn = 1; + comp_obj_heading_.metainfo.parent_lev_markup = 0; + comp_obj_heading.has.inline_links = true; + bookindex_section ~= comp_obj_heading_; tag_assoc[comp_obj_heading_.tags.anchor_tag_html]["seg_lv4"] = comp_obj_heading_.tags.in_segment_html; tag_assoc[comp_obj_heading_.tags.segment_anchor_tag_epub]["seg_lv1_to_4"] = comp_obj_heading_.tags.segment_anchor_tag_epub; ++mkn; } { - comp_obj_heading_ = comp_obj_heading_.init; - comp_obj_heading_.metainfo.is_of_part = "backmatter"; - comp_obj_heading_.metainfo.is_of_section = "bookindex"; - comp_obj_heading_.metainfo.is_of_type = "para"; - comp_obj_heading_.metainfo.is_a = "heading"; - comp_obj_heading_.text = "Index"; - comp_obj_heading_.metainfo.ocn = 0; - comp_obj_heading_.metainfo.identifier = ""; - comp_obj_heading_.metainfo.dummy_heading = true; - comp_obj_heading_.metainfo.object_number_off = true; - comp_obj_heading_.metainfo.object_number_type = 0; - comp_obj_heading_.tags.segment_anchor_tag_epub = "bookindex"; - comp_obj_heading_.tags.anchor_tag_html = comp_obj_heading_.tags.segment_anchor_tag_epub; - comp_obj_heading_.tags.in_segment_html = comp_obj_heading_.tags.anchor_tag_html; - comp_obj_heading_.metainfo.heading_lev_markup = 4; - comp_obj_heading_.metainfo.heading_lev_collapsed = 2; - comp_obj_heading_.metainfo.parent_ocn = 1; - comp_obj_heading_.metainfo.parent_lev_markup = 0; - comp_obj_heading.has.inline_links = false; - comp_obj_heading_.tags.anchor_tags = ["bookindex"]; - bookindex_section ~= comp_obj_heading_; + comp_obj_heading_ = comp_obj_heading_.init; + comp_obj_heading_.metainfo.is_of_part = "backmatter"; + comp_obj_heading_.metainfo.is_of_section = "bookindex"; + comp_obj_heading_.metainfo.is_of_type = "para"; + comp_obj_heading_.metainfo.is_a = "heading"; + comp_obj_heading_.text = "Index"; + comp_obj_heading_.metainfo.ocn = 0; + comp_obj_heading_.metainfo.identifier = ""; + comp_obj_heading_.metainfo.dummy_heading = true; + comp_obj_heading_.metainfo.object_number_off = true; + comp_obj_heading_.metainfo.object_number_type = 0; + comp_obj_heading_.tags.segment_anchor_tag_epub = "bookindex"; + comp_obj_heading_.tags.anchor_tag_html = comp_obj_heading_.tags.segment_anchor_tag_epub; + comp_obj_heading_.tags.in_segment_html = comp_obj_heading_.tags.anchor_tag_html; + comp_obj_heading_.metainfo.heading_lev_markup = 4; + comp_obj_heading_.metainfo.heading_lev_collapsed = 2; + comp_obj_heading_.metainfo.parent_ocn = 1; + comp_obj_heading_.metainfo.parent_lev_markup = 0; + comp_obj_heading.has.inline_links = false; + comp_obj_heading_.tags.anchor_tags = ["bookindex"]; + bookindex_section ~= comp_obj_heading_; tag_assoc[comp_obj_heading_.tags.anchor_tag_html]["seg_lv4"] = comp_obj_heading_.tags.in_segment_html; tag_assoc[comp_obj_heading_.tags.segment_anchor_tag_epub]["seg_lv1_to_4"] = comp_obj_heading_.tags.segment_anchor_tag_epub; ++mkn; @@ -6806,39 +6806,39 @@ struct BookIndexReportSection { bi_tmp ~= " \\\\\n "; ++skn; } - bi_tmp = bi_tmp.replaceFirst(rgx.trailing_linebreak, ""); - comp_obj_para = comp_obj_para.init; - comp_obj_para.metainfo.is_of_part = "backmatter"; - comp_obj_para.metainfo.is_of_section = "bookindex"; - comp_obj_para.metainfo.is_of_type = "para"; - comp_obj_para.metainfo.is_a = "bookindex"; - comp_obj_para.text = bi_tmp.to!string.strip; - comp_obj_para.metainfo.ocn = 0; - comp_obj_para.metainfo.identifier = ""; - comp_obj_para.metainfo.object_number_off = true; - comp_obj_para.metainfo.object_number_type = 0; - comp_obj_para.tags.anchor_tags = bi_tmp_tags; - comp_obj_para.attrib.indent_hang = 0; - comp_obj_para.attrib.indent_base = 1; - comp_obj_para.attrib.bullet = false; - comp_obj_para.has.inline_links = true; - comp_obj_para.text = bi_tmp.to!string.strip; - bookindex_section ~= comp_obj_para; + bi_tmp = bi_tmp.replaceFirst(rgx.trailing_linebreak, ""); + comp_obj_para = comp_obj_para.init; + comp_obj_para.metainfo.is_of_part = "backmatter"; + comp_obj_para.metainfo.is_of_section = "bookindex"; + comp_obj_para.metainfo.is_of_type = "para"; + comp_obj_para.metainfo.is_a = "bookindex"; + comp_obj_para.text = bi_tmp.to!string.strip; + comp_obj_para.metainfo.ocn = 0; + comp_obj_para.metainfo.identifier = ""; + comp_obj_para.metainfo.object_number_off = true; + comp_obj_para.metainfo.object_number_type = 0; + comp_obj_para.tags.anchor_tags = bi_tmp_tags; + comp_obj_para.attrib.indent_hang = 0; + comp_obj_para.attrib.indent_base = 1; + comp_obj_para.attrib.bullet = false; + comp_obj_para.has.inline_links = true; + comp_obj_para.text = bi_tmp.to!string.strip; + bookindex_section ~= comp_obj_para; ++mkn; } } else { // no book index, (figure out what to do here) - comp_obj_heading_ = comp_obj_heading_.init; - comp_obj_heading_.text = "(skip) there is no Book Index"; - comp_obj_heading_.metainfo.ocn = 0; - comp_obj_heading_.metainfo.identifier = ""; - comp_obj_heading_.metainfo.dummy_heading = true; - comp_obj_heading_.metainfo.object_number_off = true; - comp_obj_heading_.metainfo.object_number_type = 0; - comp_obj_heading_.metainfo.heading_lev_markup = 1; - comp_obj_heading_.metainfo.heading_lev_collapsed = 1; - comp_obj_heading_.metainfo.parent_ocn = 1; - comp_obj_heading_.metainfo.parent_lev_markup = 0; - bookindex_section ~= comp_obj_heading_; + comp_obj_heading_ = comp_obj_heading_.init; + comp_obj_heading_.text = "(skip) there is no Book Index"; + comp_obj_heading_.metainfo.ocn = 0; + comp_obj_heading_.metainfo.identifier = ""; + comp_obj_heading_.metainfo.dummy_heading = true; + comp_obj_heading_.metainfo.object_number_off = true; + comp_obj_heading_.metainfo.object_number_type = 0; + comp_obj_heading_.metainfo.heading_lev_markup = 1; + comp_obj_heading_.metainfo.heading_lev_collapsed = 1; + comp_obj_heading_.metainfo.parent_ocn = 1; + comp_obj_heading_.metainfo.parent_lev_markup = 0; + bookindex_section ~= comp_obj_heading_; } auto t = tuple( bookindex_section, @@ -6855,7 +6855,7 @@ struct BookIndexReportSection { } #+END_SRC -**** (end)notes section :endnotes:section: +**** (end)notes section :endnotes:section: #+NAME: meta_emitters_endnotes #+BEGIN_SRC d @@ -6887,7 +6887,7 @@ struct NotesSection { rgx.inline_notes_al_all_note) ); mixin InternalMarkup; - previous_count=cntr; + previous_count = cntr; static auto mkup = InlineMarkup(); static auto munge = ObjInlineMarkupMunge(); foreach(m; @@ -6988,96 +6988,96 @@ struct NotesSection { if ((endnotes_["notes"].length > 0) && (opt_action.backmatter && opt_action.section_endnotes)) { { - comp_obj_heading_ = comp_obj_heading_.init; - comp_obj_heading_.metainfo.is_of_part = "backmatter"; - comp_obj_heading_.metainfo.is_of_section = "endnotes"; - comp_obj_heading_.metainfo.is_of_type = "para"; - comp_obj_heading_.metainfo.is_a = "heading"; - comp_obj_heading_.text = "Endnotes"; - comp_obj_heading_.metainfo.ocn = 0; - comp_obj_heading_.metainfo.identifier = ""; - comp_obj_heading_.metainfo.dummy_heading = false; - comp_obj_heading_.metainfo.object_number_off = false; - comp_obj_heading_.metainfo.object_number_type = 0; - comp_obj_heading_.tags.segment_anchor_tag_epub = "_part_endnotes"; - comp_obj_heading_.tags.anchor_tag_html = comp_obj_heading_.tags.segment_anchor_tag_epub; - comp_obj_heading_.tags.in_segment_html = "endnotes"; - comp_obj_heading_.tags.anchor_tags = ["section_endnotes"]; - comp_obj_heading_.metainfo.heading_lev_markup = 1; - comp_obj_heading_.metainfo.heading_lev_collapsed = 1; - comp_obj_heading_.metainfo.parent_ocn = 1; - comp_obj_heading_.metainfo.parent_lev_markup = 0; - the_endnotes_section ~= comp_obj_heading_; + comp_obj_heading_ = comp_obj_heading_.init; + comp_obj_heading_.metainfo.is_of_part = "backmatter"; + comp_obj_heading_.metainfo.is_of_section = "endnotes"; + comp_obj_heading_.metainfo.is_of_type = "para"; + comp_obj_heading_.metainfo.is_a = "heading"; + comp_obj_heading_.text = "Endnotes"; + comp_obj_heading_.metainfo.ocn = 0; + comp_obj_heading_.metainfo.identifier = ""; + comp_obj_heading_.metainfo.dummy_heading = false; + comp_obj_heading_.metainfo.object_number_off = false; + comp_obj_heading_.metainfo.object_number_type = 0; + comp_obj_heading_.tags.segment_anchor_tag_epub = "_part_endnotes"; + comp_obj_heading_.tags.anchor_tag_html = comp_obj_heading_.tags.segment_anchor_tag_epub; + comp_obj_heading_.tags.in_segment_html = "endnotes"; + comp_obj_heading_.tags.anchor_tags = ["section_endnotes"]; + comp_obj_heading_.metainfo.heading_lev_markup = 1; + comp_obj_heading_.metainfo.heading_lev_collapsed = 1; + comp_obj_heading_.metainfo.parent_ocn = 1; + comp_obj_heading_.metainfo.parent_lev_markup = 0; + the_endnotes_section ~= comp_obj_heading_; tag_assoc[comp_obj_heading_.tags.anchor_tag_html]["seg_lv4"] = comp_obj_heading_.tags.in_segment_html; tag_assoc[comp_obj_heading_.tags.segment_anchor_tag_epub]["seg_lv1_to_4"] = comp_obj_heading_.tags.segment_anchor_tag_epub; ++mkn; } { - comp_obj_heading_ = comp_obj_heading_.init; - comp_obj_heading_.metainfo.is_of_part = "backmatter"; - comp_obj_heading_.metainfo.is_of_section = "endnotes"; - comp_obj_heading_.metainfo.is_of_type = "para"; - comp_obj_heading_.metainfo.is_a = "heading"; - comp_obj_heading_.text = "Endnotes"; - comp_obj_heading_.metainfo.ocn = 0; - comp_obj_heading_.metainfo.identifier = ""; - comp_obj_heading_.metainfo.dummy_heading = true; - comp_obj_heading_.metainfo.object_number_off = true; - comp_obj_heading_.metainfo.object_number_type = 0; - comp_obj_heading_.tags.segment_anchor_tag_epub = "endnotes"; - comp_obj_heading_.tags.anchor_tag_html = comp_obj_heading_.tags.segment_anchor_tag_epub; - comp_obj_heading_.tags.in_segment_html = comp_obj_heading_.tags.anchor_tag_html; - comp_obj_heading_.metainfo.heading_lev_markup = 4; - comp_obj_heading_.metainfo.heading_lev_collapsed = 2; - comp_obj_heading_.metainfo.parent_ocn = 1; - comp_obj_heading_.metainfo.parent_lev_markup = 0; - comp_obj_heading_.tags.anchor_tags = ["endnotes"]; - the_endnotes_section ~= comp_obj_heading_; + comp_obj_heading_ = comp_obj_heading_.init; + comp_obj_heading_.metainfo.is_of_part = "backmatter"; + comp_obj_heading_.metainfo.is_of_section = "endnotes"; + comp_obj_heading_.metainfo.is_of_type = "para"; + comp_obj_heading_.metainfo.is_a = "heading"; + comp_obj_heading_.text = "Endnotes"; + comp_obj_heading_.metainfo.ocn = 0; + comp_obj_heading_.metainfo.identifier = ""; + comp_obj_heading_.metainfo.dummy_heading = true; + comp_obj_heading_.metainfo.object_number_off = true; + comp_obj_heading_.metainfo.object_number_type = 0; + comp_obj_heading_.tags.segment_anchor_tag_epub = "endnotes"; + comp_obj_heading_.tags.anchor_tag_html = comp_obj_heading_.tags.segment_anchor_tag_epub; + comp_obj_heading_.tags.in_segment_html = comp_obj_heading_.tags.anchor_tag_html; + comp_obj_heading_.metainfo.heading_lev_markup = 4; + comp_obj_heading_.metainfo.heading_lev_collapsed = 2; + comp_obj_heading_.metainfo.parent_ocn = 1; + comp_obj_heading_.metainfo.parent_lev_markup = 0; + comp_obj_heading_.tags.anchor_tags = ["endnotes"]; + the_endnotes_section ~= comp_obj_heading_; tag_assoc[comp_obj_heading_.tags.anchor_tag_html]["seg_lv4"] = comp_obj_heading_.tags.in_segment_html; tag_assoc[comp_obj_heading_.tags.segment_anchor_tag_epub]["seg_lv1_to_4"] = comp_obj_heading_.tags.segment_anchor_tag_epub; ++mkn; } } else { - comp_obj_heading_ = comp_obj_heading_.init; - comp_obj_heading_.metainfo.is_of_part = "empty"; - comp_obj_heading_.metainfo.is_of_section = "empty"; - comp_obj_heading_.metainfo.is_of_type = "para"; - comp_obj_heading_.metainfo.is_a = "heading"; - comp_obj_heading_.text = "(skip) there are no Endnotes"; - comp_obj_heading_.metainfo.ocn = 0; - comp_obj_heading_.metainfo.identifier = ""; - comp_obj_heading_.metainfo.dummy_heading = true; - comp_obj_heading_.metainfo.object_number_off = true; - comp_obj_heading_.metainfo.object_number_type = 0; - comp_obj_heading_.metainfo.heading_lev_markup = 1; - comp_obj_heading_.metainfo.heading_lev_collapsed = 1; - comp_obj_heading_.metainfo.parent_ocn = 1; - comp_obj_heading_.metainfo.parent_lev_markup = 0; - the_endnotes_section ~= comp_obj_heading_; + comp_obj_heading_ = comp_obj_heading_.init; + comp_obj_heading_.metainfo.is_of_part = "empty"; + comp_obj_heading_.metainfo.is_of_section = "empty"; + comp_obj_heading_.metainfo.is_of_type = "para"; + comp_obj_heading_.metainfo.is_a = "heading"; + comp_obj_heading_.text = "(skip) there are no Endnotes"; + comp_obj_heading_.metainfo.ocn = 0; + comp_obj_heading_.metainfo.identifier = ""; + comp_obj_heading_.metainfo.dummy_heading = true; + comp_obj_heading_.metainfo.object_number_off = true; + comp_obj_heading_.metainfo.object_number_type = 0; + comp_obj_heading_.metainfo.heading_lev_markup = 1; + comp_obj_heading_.metainfo.heading_lev_collapsed = 1; + comp_obj_heading_.metainfo.parent_ocn = 1; + comp_obj_heading_.metainfo.parent_lev_markup = 0; + the_endnotes_section ~= comp_obj_heading_; } if (opt_action.backmatter && opt_action.section_endnotes) { ObjGenericComposite comp_obj_endnote_; - comp_obj_endnote_ = comp_obj_endnote_.init; - comp_obj_endnote_.metainfo.is_of_part = "backmatter"; - comp_obj_endnote_.metainfo.is_of_section = "endnotes"; - comp_obj_endnote_.metainfo.is_of_type = "para"; - comp_obj_endnote_.metainfo.is_a = "endnote"; - comp_obj_endnote_.metainfo.ocn = 0; - comp_obj_endnote_.metainfo.identifier = ""; - // comp_obj_heading_.metainfo.dummy_heading = false; - comp_obj_heading_.metainfo.object_number_off = true; - comp_obj_heading_.metainfo.object_number_type = 0; - comp_obj_endnote_.attrib.indent_hang = 0; - comp_obj_endnote_.attrib.indent_base = 0; - comp_obj_endnote_.attrib.bullet = false; + comp_obj_endnote_ = comp_obj_endnote_.init; + comp_obj_endnote_.metainfo.is_of_part = "backmatter"; + comp_obj_endnote_.metainfo.is_of_section = "endnotes"; + comp_obj_endnote_.metainfo.is_of_type = "para"; + comp_obj_endnote_.metainfo.is_a = "endnote"; + comp_obj_endnote_.metainfo.ocn = 0; + comp_obj_endnote_.metainfo.identifier = ""; + // comp_obj_heading_.metainfo.dummy_heading = false; + comp_obj_heading_.metainfo.object_number_off = true; + comp_obj_heading_.metainfo.object_number_type = 0; + comp_obj_endnote_.attrib.indent_hang = 0; + comp_obj_endnote_.attrib.indent_base = 0; + comp_obj_endnote_.attrib.bullet = false; foreach (i, endnote; endnotes_["notes"]) { - auto m = endnote.matchFirst(rgx.note_ref); - string notenumber = m["ref"].to!string; - string anchor_tag = "note_" ~ notenumber; - comp_obj_endnote_.tags.anchor_tags = [ endnotes_["anchor"][i] ]; - comp_obj_endnote_.has.inline_links = true; - comp_obj_endnote_.text = endnote.inline_markup_faces.strip; - the_endnotes_section ~= comp_obj_endnote_; + auto m = endnote.matchFirst(rgx.note_ref); + string notenumber = m["ref"].to!string; + string anchor_tag = "note_" ~ notenumber; + comp_obj_endnote_.tags.anchor_tags = [ endnotes_["anchor"][i] ]; + comp_obj_endnote_.has.inline_links = true; + comp_obj_endnote_.text = endnote.inline_markup_faces.strip; + the_endnotes_section ~= comp_obj_endnote_; } } auto t = tuple(the_endnotes_section, obj_cite_digits); @@ -7092,7 +7092,7 @@ struct NotesSection { } #+END_SRC -**** bibliography :bibliography: +**** bibliography :bibliography: ***** { biblio struct #+NAME: meta_emitters_bibliography @@ -7147,9 +7147,9 @@ struct Bibliography { JSONValue j = parseJSON(bibent); if (!empty(j["fulltitle"].str)) { if (!empty(j["author_raw"].str)) { - j["deemed_author"]=j["author_arr"][0]; + j["deemed_author"] = j["author_arr"][0]; } else if (!empty(j["editor_raw"].str)) { - j["deemed_author"]=j["editor_arr"][0]; + j["deemed_author"] = j["editor_arr"][0]; } j["sortby_deemed_author_year_title"] = ( j["deemed_author"].str ~ @@ -7208,7 +7208,7 @@ struct Bibliography { } #+END_SRC -**** node structure metadata :structure:metadata:node: +**** node structure metadata :structure:metadata:node: ***** { metadata node struct #+NAME: meta_emitters_metadata @@ -7242,28 +7242,28 @@ struct NodeStructureMetadata { assert(is_ != "heading"); // should not be necessary assert(obj_cite_digits.object_number.to!int >= 0); // should not be necessary if (lv7 > eN.bi.off) { - p_["lev_markup_number"] = DocStructMarkupHeading.h_text_4; - p_["object_number"] = lv7; + p_["lev_markup_number"] = DocStructMarkupHeading.h_text_4; + p_["object_number"] = lv7; } else if (lv6 > eN.bi.off) { - p_["lev_markup_number"] = DocStructMarkupHeading.h_text_3; - p_["object_number"] = lv6; + p_["lev_markup_number"] = DocStructMarkupHeading.h_text_3; + p_["object_number"] = lv6; } else if (lv5 > eN.bi.off) { - p_["lev_markup_number"] = DocStructMarkupHeading.h_text_2; - p_["object_number"] = lv5; + p_["lev_markup_number"] = DocStructMarkupHeading.h_text_2; + p_["object_number"] = lv5; } else { - p_["lev_markup_number"] = DocStructMarkupHeading.h_text_1; - p_["object_number"] = lv4; + p_["lev_markup_number"] = DocStructMarkupHeading.h_text_1; + p_["object_number"] = lv4; } ObjGenericComposite comp_obj_location; - comp_obj_location = comp_obj_location.init; - comp_obj_location.metainfo.is_a = is_; - comp_obj_location.metainfo.ocn = obj_cite_digits.object_number; - comp_obj_location.metainfo.identifier = obj_cite_digits.identifier; - comp_obj_location.tags.anchor_tag_html = tag_in_seg["seg_lv4"]; - comp_obj_location.tags.segment_anchor_tag_epub = tag_in_seg["seg_lv1_to_4"]; - comp_obj_location.tags.heading_lev_anchor_tag = lev_anchor_tag; - comp_obj_location.metainfo.parent_ocn = p_["object_number"]; - comp_obj_location.metainfo.parent_lev_markup = p_["lev_markup_number"]; + comp_obj_location = comp_obj_location.init; + comp_obj_location.metainfo.is_a = is_; + comp_obj_location.metainfo.ocn = obj_cite_digits.object_number; + comp_obj_location.metainfo.identifier = obj_cite_digits.identifier; + comp_obj_location.tags.anchor_tag_html = tag_in_seg["seg_lv4"]; + comp_obj_location.tags.segment_anchor_tag_epub = tag_in_seg["seg_lv1_to_4"]; + comp_obj_location.tags.heading_lev_anchor_tag = lev_anchor_tag; + comp_obj_location.metainfo.parent_ocn = p_["object_number"]; + comp_obj_location.metainfo.parent_lev_markup = p_["lev_markup_number"]; debug(_node) { if (lev_markup_number.match(rgx.levels_numbered_headings)) { writeln("x ", _node.to!string); @@ -7328,14 +7328,14 @@ struct NodeStructureMetadata { case 0: lv = DocStructMarkupHeading.h_sect_A; lv0 = obj_cite_digit; - lv1=0; lv2=0; lv3=0; lv4=0; lv5=0; lv6=0; lv7=0; + lv1 = 0; lv2 = 0; lv3 = 0; lv4 = 0; lv5 = 0; lv6 = 0; lv7 = 0; p_["lev_markup_number"] = 0; p_["object_number"] = 0; break; case 1: lv = DocStructMarkupHeading.h_sect_B; lv1 = obj_cite_digit; - lv2=0; lv3=0; lv4=0; lv5=0; lv6=0; lv7=0; + lv2 = 0; lv3 = 0; lv4 = 0; lv5 = 0; lv6 = 0; lv7 = 0; p_["lev_markup_number"] = DocStructMarkupHeading.h_sect_A; p_["object_number"] = lv0; @@ -7343,15 +7343,15 @@ struct NodeStructureMetadata { case 2: lv = DocStructMarkupHeading.h_sect_C; lv2 = obj_cite_digit; - lv3=0; lv4=0; lv5=0; lv6=0; lv7=0; + lv3 = 0; lv4 = 0; lv5 = 0; lv6 = 0; lv7 = 0; p_["lev_markup_number"] = DocStructMarkupHeading.h_sect_B; p_["object_number"] = lv1; break; case 3: lv = DocStructMarkupHeading.h_sect_D; - lv3=obj_cite_digit; - lv4=0; lv5=0; lv6=0; lv7=0; + lv3 = obj_cite_digit; + lv4 = 0; lv5 = 0; lv6 = 0; lv7 = 0; p_["lev_markup_number"] = DocStructMarkupHeading.h_sect_C; p_["object_number"] = lv2; @@ -7359,7 +7359,7 @@ struct NodeStructureMetadata { case 4: lv = DocStructMarkupHeading.h_text_1; lv4 = obj_cite_digit; - lv5=0; lv6=0; lv7=0; + lv5 = 0; lv6 = 0; lv7 = 0; if (lv3 > eN.bi.off) { p_["lev_markup_number"] = DocStructMarkupHeading.h_sect_D; @@ -7381,7 +7381,7 @@ struct NodeStructureMetadata { case 5: lv = DocStructMarkupHeading.h_text_2; lv5 = obj_cite_digit; - lv6=0; lv7=0; + lv6 = 0; lv7 = 0; p_["lev_markup_number"] = DocStructMarkupHeading.h_text_1; p_["object_number"] = lv4; @@ -7389,7 +7389,7 @@ struct NodeStructureMetadata { case 6: lv = DocStructMarkupHeading.h_text_3; lv6 = obj_cite_digit; - lv7=0; + lv7 = 0; p_["lev_markup_number"] = DocStructMarkupHeading.h_text_2; p_["object_number"] = lv5; @@ -7405,35 +7405,35 @@ struct NodeStructureMetadata { break; } ObjGenericComposite _comp_obj_heading_; - _comp_obj_heading_ = _comp_obj_heading_.init; - _comp_obj_heading_.metainfo.is_of_part = "body"; - _comp_obj_heading_.metainfo.is_of_section = "body"; - _comp_obj_heading_.metainfo.is_of_type = "para"; - _comp_obj_heading_.metainfo.is_a = "heading"; - _comp_obj_heading_.text = _text.to!string.strip; - _comp_obj_heading_.metainfo.ocn = obj_cite_digits.object_number; - _comp_obj_heading_.metainfo.identifier = obj_cite_digits.identifier; - _comp_obj_heading_.metainfo.dummy_heading = (dummy_heading_status == "t") ? true: false; - _comp_obj_heading_.metainfo.object_number_off = obj_cite_digits.off; - // _comp_obj_heading_.metainfo.o_n_book_index = obj_cite_digits.bkidx; - _comp_obj_heading_.metainfo.object_number_type = obj_cite_digits.type; - _comp_obj_heading_.tags.segment_anchor_tag_epub = tag_in_seg["seg_lv1_to_4"]; - _comp_obj_heading_.tags.anchor_tag_html = tag_in_seg["seg_lv4"]; - _comp_obj_heading_.tags.in_segment_html = _comp_obj_heading_.tags.anchor_tag_html; - _comp_obj_heading_.tags.heading_lev_anchor_tag = lev_anchor_tag; - _comp_obj_heading_.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; - _comp_obj_heading_.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; - _comp_obj_heading_.metainfo.heading_lev_markup = (!(lev_markup_number.empty) ? lev_markup_number.to!int : 0); - _comp_obj_heading_.metainfo.heading_lev_collapsed = (!(lev_collapsed_number.empty) ? lev_collapsed_number.to!int : 0); - _comp_obj_heading_.metainfo.parent_ocn = p_["object_number"]; - _comp_obj_heading_.metainfo.parent_lev_markup = p_["lev_markup_number"]; - _comp_obj_heading_.tags.heading_ancestors_text = lv_ancestors_txt; - _comp_obj_heading_.ptr.doc_object = cntr_; - _comp_obj_heading_.ptr.html_segnames = ((lev_markup_number == "4") ? html_segnames_ptr : 0); - _comp_obj_heading_.ptr.heading = ptr_; - _comp_obj_heading_.has.inline_notes_reg = flag_notes_reg; - _comp_obj_heading_.has.inline_notes_star = flag_notes_star; - _comp_obj_heading_.has.inline_links = flag_links; + _comp_obj_heading_ = _comp_obj_heading_.init; + _comp_obj_heading_.metainfo.is_of_part = "body"; + _comp_obj_heading_.metainfo.is_of_section = "body"; + _comp_obj_heading_.metainfo.is_of_type = "para"; + _comp_obj_heading_.metainfo.is_a = "heading"; + _comp_obj_heading_.text = _text.to!string.strip; + _comp_obj_heading_.metainfo.ocn = obj_cite_digits.object_number; + _comp_obj_heading_.metainfo.identifier = obj_cite_digits.identifier; + _comp_obj_heading_.metainfo.dummy_heading = (dummy_heading_status == "t") ? true: false; + _comp_obj_heading_.metainfo.object_number_off = obj_cite_digits.off; + // _comp_obj_heading_.metainfo.o_n_book_index = obj_cite_digits.bkidx; + _comp_obj_heading_.metainfo.object_number_type = obj_cite_digits.type; + _comp_obj_heading_.tags.segment_anchor_tag_epub = tag_in_seg["seg_lv1_to_4"]; + _comp_obj_heading_.tags.anchor_tag_html = tag_in_seg["seg_lv4"]; + _comp_obj_heading_.tags.in_segment_html = _comp_obj_heading_.tags.anchor_tag_html; + _comp_obj_heading_.tags.heading_lev_anchor_tag = lev_anchor_tag; + _comp_obj_heading_.tags.html_segment_anchor_tag_is = tag_in_seg["seg_lv4"]; + _comp_obj_heading_.tags.epub_segment_anchor_tag_is = tag_in_seg["seg_lv1_to_4"]; + _comp_obj_heading_.metainfo.heading_lev_markup = (!(lev_markup_number.empty) ? lev_markup_number.to!int : 0); + _comp_obj_heading_.metainfo.heading_lev_collapsed = (!(lev_collapsed_number.empty) ? lev_collapsed_number.to!int : 0); + _comp_obj_heading_.metainfo.parent_ocn = p_["object_number"]; + _comp_obj_heading_.metainfo.parent_lev_markup = p_["lev_markup_number"]; + _comp_obj_heading_.tags.heading_ancestors_text = lv_ancestors_txt; + _comp_obj_heading_.ptr.doc_object = cntr_; + _comp_obj_heading_.ptr.html_segnames = ((lev_markup_number == "4") ? html_segnames_ptr : 0); + _comp_obj_heading_.ptr.heading = ptr_; + _comp_obj_heading_.has.inline_notes_reg = flag_notes_reg; + _comp_obj_heading_.has.inline_notes_star = flag_notes_star; + _comp_obj_heading_.has.inline_links = flag_links; tag_assoc[_comp_obj_heading_.tags.anchor_tag_html]["seg_lv4"] = _comp_obj_heading_.tags.in_segment_html; tag_assoc[_comp_obj_heading_.tags.segment_anchor_tag_epub]["seg_lv1_to_4"] = _comp_obj_heading_.tags.segment_anchor_tag_epub; debug(_node) { @@ -7489,8 +7489,8 @@ struct NodeStructureMetadata { } #+END_SRC -*** function assertions :assertions: -**** assertions on markup document structure :doc_structure: +*** function assertions :assertions: +**** assertions on markup document structure :doc_structure: #+NAME: abs_functions_assertions #+BEGIN_SRC d @@ -7715,18 +7715,18 @@ template ObjectSetter() { } #+END_SRC -** 1. initialize structs :struct: +** 1. initialize structs :struct: *** heading attribute #+BEGIN_SRC d struct HeadingAttrib { - string lev = "9"; - int heading_lev_markup = 9; - int heading_lev_collapsed = 9; - int[] closes_lev_collapsed = []; - int[] closes_lev_markup = []; - int array_ptr = 0; - int heading_array_ptr_segments = 0; + string lev = "9"; + int heading_lev_markup = 9; + int heading_lev_collapsed = 9; + int[] closes_lev_collapsed = []; + int[] closes_lev_markup = []; + int array_ptr = 0; + int heading_array_ptr_segments = 0; } #+END_SRC @@ -7735,54 +7735,54 @@ struct HeadingAttrib { #+NAME: meta_structs_init #+BEGIN_SRC d struct DocObj_MetaInfo_ { - string is_of_part = ""; // frontmatter, body, backmatter - string is_of_section = ""; // toc, body, glossary, biography, book index, blurb - string is_of_type = ""; // para, block ? - string is_a = ""; // heading, para, table, code block, group, verse/poem ... - alias of_part = is_of_part; - alias of_section = is_of_section; - alias is_of = is_of_type; - string attrib = ""; - string lang = ""; // blocks: group, block, quote; not codeblock; - string syntax = ""; // codeblock only + string is_of_part = ""; // frontmatter, body, backmatter + string is_of_section = ""; // toc, body, glossary, biography, book index, blurb + string is_of_type = ""; // para, block ? + string is_a = ""; // heading, para, table, code block, group, verse/poem ... + alias of_part = is_of_part; + alias of_section = is_of_section; + alias is_of = is_of_type; + string attrib = ""; + string lang = ""; // blocks: group, block, quote; not codeblock; + string syntax = ""; // codeblock only /+ o_n +/ - int o_n_substantive = 0; - int o_n_non_substantive = 0; - int o_n_glossary = 0; - int o_n_bibliography = 0; - int o_n_book_index = 0; - int o_n_blurb = 0; + int o_n_substantive = 0; + int o_n_non_substantive = 0; + int o_n_glossary = 0; + int o_n_bibliography = 0; + int o_n_book_index = 0; + int o_n_blurb = 0; @safe string object_number_substantive() const @property { - return (o_n_substantive==0) ? "" : o_n_substantive.to!string; + return (o_n_substantive == 0) ? "" : o_n_substantive.to!string; } @safe string object_number_non_substantive() const @property { - return (o_n_non_substantive==0) ? "" : o_n_non_substantive.to!string; + return (o_n_non_substantive == 0) ? "" : o_n_non_substantive.to!string; } @safe string object_number_glossary() const @property { - return (o_n_glossary==0) ? "" : o_n_glossary.to!string; + return (o_n_glossary == 0) ? "" : o_n_glossary.to!string; } @safe string object_number_bibliography() const @property { - return (o_n_bibliography==0) ? "" : o_n_bibliography.to!string; + return (o_n_bibliography == 0) ? "" : o_n_bibliography.to!string; } @safe string object_number_book_index() const @property { - return (o_n_book_index==0) ? "" : o_n_book_index.to!string; + return (o_n_book_index == 0) ? "" : o_n_book_index.to!string; } @safe string object_number_blurb() const @property { - return (o_n_blurb==0) ? "" : o_n_blurb.to!string; + return (o_n_blurb == 0) ? "" : o_n_blurb.to!string; } - bool object_number_off = false; - bool visible_object_number = false; - int object_number_type = 0; // { ocn, non, bkidx } + bool object_number_off = false; + bool visible_object_number = false; + int object_number_type = 0; // { ocn, non, bkidx } /+ node +/ string[string][string] node; - int ocn = 0; - string identifier = ""; + int ocn = 0; + string identifier = ""; @safe string object_number() const @property { - return (ocn==0) ? "" : ocn.to!string; + return (ocn == 0) ? "" : ocn.to!string; } - int o_n_type = 0; - int heading_lev_markup = 9; - int heading_lev_collapsed = 9; + int o_n_type = 0; + int heading_lev_markup = 9; + int heading_lev_collapsed = 9; @safe string marked_up_level() const @property { string _out; switch (heading_lev_markup) { @@ -7798,14 +7798,14 @@ struct DocObj_MetaInfo_ { } return _out; } - bool dummy_heading = false; - int[] markedup_ancestors = [ 0, 0, 0, 0, 0, 0, 0, 0,]; - int[] collapsed_ancestors = [ 0, 0, 0, 0, 0, 0, 0, 0,]; - int[] dom_structure_markedup_tags_status = [ 0, 0, 0, 0, 0, 0, 0, 0,]; - int[] dom_structure_collapsed_tags_status = [ 0, 0, 0, 0, 0, 0, 0, 0,]; - int parent_lev_markup = 0; - int parent_ocn = 0; - int last_decendant_ocn = 0; + bool dummy_heading = false; + int[] markedup_ancestors = [ 0, 0, 0, 0, 0, 0, 0, 0,]; + int[] collapsed_ancestors = [ 0, 0, 0, 0, 0, 0, 0, 0,]; + int[] dom_structure_markedup_tags_status = [ 0, 0, 0, 0, 0, 0, 0, 0,]; + int[] dom_structure_collapsed_tags_status = [ 0, 0, 0, 0, 0, 0, 0, 0,]; + int parent_lev_markup = 0; + int parent_ocn = 0; + int last_decendant_ocn = 0; } #+END_SRC -- cgit v1.2.3