aboutsummaryrefslogtreecommitdiffhomepage
path: root/org/metaverse.org
diff options
context:
space:
mode:
Diffstat (limited to 'org/metaverse.org')
-rw-r--r--org/metaverse.org407
1 files changed, 203 insertions, 204 deletions
diff --git a/org/metaverse.org b/org/metaverse.org
index 0483473..c1d4442 100644
--- a/org/metaverse.org
+++ b/org/metaverse.org
@@ -4,16 +4,15 @@
#+FILETAGS: :spine:abstraction:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
-#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
+#+COPYRIGHT: Copyright (C) 2015 - 2020 Ralph Amissah
#+LANGUAGE: en
-#+STARTUP: indent content hideblocks hidestars
-#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
-#+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
-#+OPTIONS: author:nil email:nil creator:nil timestamp:nil
-#+PROPERTY: header-args :padline no :exports code :cache no :noweb yes
-#+EXPORT_SELECT_TAGS: export
-#+EXPORT_EXCLUDE_TAGS: noexport
-#+TAGS: assert(a) class(c) debug(d) mixin(m) spine(s) tangle(T) template(t) WEB(W) noexport(n)
+#+STARTUP: content hideblocks hidestars noindent entitiespretty
+#+PROPERTY: header-args :exports code
+#+PROPERTY: header-args+ :noweb yes
+#+PROPERTY: header-args+ :eval no
+#+PROPERTY: header-args+ :results no
+#+PROPERTY: header-args+ :cache no
+#+PROPERTY: header-args+ :padline no
- [[./spine.org][spine]] [[./][org/]]
@@ -142,7 +141,7 @@ template docAbstraction() {
*** imports :imports:
[[./meta_defaults.org][meta_defaults]]
-#+name: abs_top_imports
+#+NAME: abs_top_imports
#+BEGIN_SRC d
import doc_reform.meta;
import
@@ -159,7 +158,7 @@ import
*** mixins :mixins:
-#+name: abs_top_mixins
+#+NAME: abs_top_mixins
#+BEGIN_SRC d
mixin ObjectSetter;
mixin InternalMarkup;
@@ -169,7 +168,7 @@ mixin spineRgxInit;
*** initialize :initialize:
**** initialize general
-#+name: abs_top_init_struct
+#+NAME: abs_top_init_struct
#+BEGIN_SRC d
/+ initialize +/
ObjGenericComposite[] the_table_of_contents_section;
@@ -265,7 +264,7 @@ enum DomTags { none, open, close, close_and_open, open_still, }
**** method heading ancestors
-#+name: abs_top_init_struct
+#+NAME: abs_top_init_struct
#+BEGIN_SRC d
@safe pure ObjGenericComposite obj_heading_ancestors()(
ObjGenericComposite obj,
@@ -324,7 +323,7 @@ enum DomTags { none, open, close, close_and_open, open_still, }
**** method dom markup tags
-#+name: abs_top_init_struct
+#+NAME: abs_top_init_struct
#+BEGIN_SRC d
@safe pure ObjGenericComposite obj_dom_structure_set_markup_tags()(
ObjGenericComposite obj,
@@ -374,7 +373,7 @@ enum DomTags { none, open, close, close_and_open, open_still, }
**** method dom collapsed tags
-#+name: abs_top_init_struct
+#+NAME: abs_top_init_struct
#+BEGIN_SRC d
@safe pure ObjGenericComposite obj_dom_set_collapsed_tags()(
ObjGenericComposite obj,
@@ -424,7 +423,7 @@ enum DomTags { none, open, close, close_and_open, open_still, }
**** method ocn emit
-#+name: abs_top_init_struct
+#+NAME: abs_top_init_struct
#+BEGIN_SRC d
@safe static auto ocn_emit(int ocn_status_flag) {
return object_citation_number.ocn_emitter(ocn_status_flag);
@@ -491,7 +490,7 @@ enum sObj { content, anchor_tag, notes_reg, notes_star, links, image_no_dimensio
*** inline para tag associations
-#+name: abs_inline_para_tag_associations
+#+NAME: abs_inline_para_tag_associations
#+BEGIN_SRC d
@safe string[string][string] inline_para_link_anchor()(
string[string] an_object,
@@ -513,7 +512,7 @@ enum sObj { content, anchor_tag, notes_reg, notes_star, links, image_no_dimensio
*** scope
-#+name: abs_init_rest
+#+NAME: abs_init_rest
#+BEGIN_SRC d
scope(success) {
}
@@ -534,7 +533,7 @@ scope(exit) {
*** init rest
-#+name: abs_init_rest
+#+NAME: abs_init_rest
#+BEGIN_SRC d
mixin spineRgxInitFlags;
mixin spineNode;
@@ -649,7 +648,7 @@ int cnt1 = 1; int cnt2 = 1; int cnt3 = 1;
*** make tests
-#+name: make_tests
+#+NAME: make_tests
#+BEGIN_SRC d
enum Substitute { match, markup, }
debug (substitutions) {
@@ -681,7 +680,7 @@ debug (substitutions) {
** 2. ↻ *LOOP* _loop: process document body_ [+6] :loop:
*** Loop scope :scope:
-#+name: abs_in_loop_body_00
+#+NAME: abs_in_loop_body_00
#+BEGIN_SRC d
/+ scope +/
scope(exit) {
@@ -709,7 +708,7 @@ debug(srclines) {
*** check whether object_number is on or turned off :ocn:
-#+name: abs_in_loop_body_00
+#+NAME: abs_in_loop_body_00
#+BEGIN_SRC d
if (!line.empty) {
obj_type_status = line._check_ocn_status_(obj_type_status);
@@ -719,7 +718,7 @@ if (!line.empty) {
*** separate _code blocks_ from _other markup text_ [+5] [#A]
**** _code blocks_ :block:code:
-#+name: abs_in_loop_body_00_code_block
+#+NAME: abs_in_loop_body_00_code_block
#+BEGIN_SRC d
/+ block object: code +/
line.flow_txt_block_code(an_object, obj_type_status);
@@ -729,7 +728,7 @@ continue;
**** _non code objects_ (non-code blocks & regular text: by line) [+4] :non_code:
***** inline fontface markup
-#+name: abs_in_loop_body_non_code_obj
+#+NAME: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
line = line.inline_markup_faces; // by text line (rather than by text object), linebreaks in para problematic
#+END_SRC
@@ -737,7 +736,7 @@ line = line.inline_markup_faces; // by text line (rather than by text object), l
***** in section (biblio, glossary, blurb) +(block group)+ [+1] :block:active:
****** in section: biblio :biblio:
-#+name: abs_in_loop_body_non_code_obj
+#+NAME: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
if ((line.matchFirst(rgx.heading_biblio)
&& obj_type_status["para"] != State.on
@@ -773,7 +772,7 @@ if there is a glossary section you need to:
- need indentation and regular paragraph inline markup
- reconstitute the document with the glossary section following the endnotes
-#+name: abs_in_loop_body_non_code_obj
+#+NAME: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
} else if ((line.matchFirst(rgx.heading_glossary)
&& obj_type_status["para"] != State.on
@@ -887,7 +886,7 @@ if there is a blurb section you need to:
- need regular paragraph inline markup
- reconstitute the document with the blurb section at the very end of the doucment
-#+name: abs_in_loop_body_non_code_obj
+#+NAME: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
} else if ((line.matchFirst(rgx.heading_blurb)
&& obj_type_status["para"] != State.on
@@ -1048,7 +1047,7 @@ if there is a blurb section you need to:
***** in blocks [+1] :block:active:
****** in block: quote :quote:
-#+name: abs_in_loop_body_non_code_obj
+#+NAME: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
} else if (obj_type_status["quote"] == TriState.on) { /+ within block object: quote +/
line = line
@@ -1060,7 +1059,7 @@ if there is a blurb section you need to:
****** in block: group :group:
-#+name: abs_in_loop_body_non_code_obj
+#+NAME: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
/+ within block object: group +/
} else if (obj_type_status["group"] == TriState.on) { /+ within block object: group +/
@@ -1074,7 +1073,7 @@ if there is a blurb section you need to:
****** in block: block :block:
-#+name: abs_in_loop_body_non_code_obj
+#+NAME: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
} else if (obj_type_status["block"] == TriState.on) { /+ within block object: block +/
line = line
@@ -1090,7 +1089,7 @@ if there is a blurb section you need to:
****** in block: poem :poem:
-#+name: abs_in_loop_body_non_code_obj
+#+NAME: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
} else if (obj_type_status["poem"] == TriState.on) { /+ within block object: poem +/
an_object = line.flow_txt_block_poem(an_object, obj_type_status, cntr, object_number_poem, conf_make_meta, tag_in_seg);
@@ -1099,7 +1098,7 @@ if there is a blurb section you need to:
****** in block: table :table:
-#+name: abs_in_loop_body_non_code_obj
+#+NAME: abs_in_loop_body_non_code_obj
#+BEGIN_SRC d
} else if (obj_type_status["table"] == TriState.on) { /+ within block object: table +/
an_object = line.flow_txt_block_table(an_object, obj_type_status, conf_make_meta);
@@ -1109,7 +1108,7 @@ if there is a blurb section you need to:
***** not identified as being within block group (could still be, or not) [+3]
****** assert
-#+name: abs_in_loop_body_open_block_obj_assert
+#+NAME: abs_in_loop_body_open_block_obj_assert
#+BEGIN_SRC d
assert(
(obj_type_status["blocks"] == TriState.off)
@@ -1121,7 +1120,7 @@ assertions_flag_types_block_status_none_or_closed(obj_type_status);
****** catch misc +block open+
-#+name: abs_in_loop_body_open_block_obj
+#+NAME: abs_in_loop_body_open_block_obj
#+BEGIN_SRC d
if (line.matchFirst(rgx.block_poem_open)) { /+ poem to verse exceptions! +/
object_reset(an_object);
@@ -1135,7 +1134,7 @@ continue;
****** line not empty [+2]
******* asserts :assert:
-#+name: abs_in_loop_body_not_block_obj
+#+NAME: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
assert(
!line.empty,
@@ -1163,7 +1162,7 @@ if (obj_type_status["blocks"] == TriState.closing) {
******* book index :bookindex:
-#+name: abs_in_loop_body_not_block_obj
+#+NAME: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
if (line.matchFirst(rgx.book_index)
|| line.matchFirst(rgx.book_index_open)
@@ -1173,14 +1172,14 @@ if (line.matchFirst(rgx.book_index)
******* not book index [+1]
-#+name: abs_in_loop_body_not_block_obj
+#+NAME: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
} else { /+ not book_index +/
#+END_SRC
******** matched: comment :comment:match:
-#+name: abs_in_loop_body_not_block_obj
+#+NAME: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
an_object_key="body_nugget";
if (auto m = line.matchFirst(rgx.comment)) { /+ matched comment +/
@@ -1202,7 +1201,7 @@ if (line.matchFirst(rgx.book_index)
******** flag !set & line !exist: heading or para :heading:paragraph:
-#+name: abs_in_loop_body_not_block_obj
+#+NAME: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
} else if (((line_occur["para"] == State.off)
&& (line_occur["heading"] == State.off))
@@ -1239,7 +1238,7 @@ if (line.matchFirst(rgx.book_index)
******** line exist: heading :heading:
-#+name: abs_in_loop_body_not_block_obj
+#+NAME: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
} else if (line_occur["heading"] > State.off) { /+ heading +/
debug(heading) {
@@ -1251,7 +1250,7 @@ if (line.matchFirst(rgx.book_index)
******** line exist: para :para:
-#+name: abs_in_loop_body_not_block_obj
+#+NAME: abs_in_loop_body_not_block_obj
#+BEGIN_SRC d
} else if (line_occur["para"] > State.off) { /+ paragraph +/
debug(para) {
@@ -1268,7 +1267,7 @@ if (line.matchFirst(rgx.book_index)
****** line empty, with block flag
-#+name: abs_in_loop_body_not_block_obj_line_empty_blocks_flags
+#+NAME: abs_in_loop_body_not_block_obj_line_empty_blocks_flags
#+BEGIN_SRC d
an_object = line.flow_block_flag_line_empty_(
an_object,
@@ -1288,7 +1287,7 @@ an_object = line.flow_block_flag_line_empty_(
****** line empty [+1]
******* assert line empty :assert:
-#+name: abs_in_loop_body_not_block_obj_line_empty
+#+NAME: abs_in_loop_body_not_block_obj_line_empty
#+BEGIN_SRC d
assert(
line.empty,
@@ -1303,7 +1302,7 @@ assert(
******* heading object :heading:object:
-#+name: abs_in_loop_body_not_block_obj_line_empty
+#+NAME: abs_in_loop_body_not_block_obj_line_empty
#+BEGIN_SRC d
if (_new_doc) {
tag_assoc = tag_assoc.init;
@@ -1436,7 +1435,7 @@ if ((obj_type_status["heading"] == State.on)
******* paragraph object :paragraph:object:
-#+name: abs_in_loop_body_not_block_obj_line_empty
+#+NAME: abs_in_loop_body_not_block_obj_line_empty
#+BEGIN_SRC d
} else if ((obj_type_status["para"] == State.on)
&& (line_occur["para"] > State.off)) {
@@ -1504,7 +1503,7 @@ if ((obj_type_status["heading"] == State.on)
*** regular _text objects_ identified :text:paragraph:
-#+name: abs_in_loop_body_01
+#+NAME: abs_in_loop_body_01
#+BEGIN_SRC d
/+ unless (the_document_body_section.length == 0) ? +/
if (the_document_body_section.length > 0) {
@@ -1568,7 +1567,7 @@ if (the_document_body_section.length > 0) {
*** tie up preparation of document sections
**** endnotes section (scroll & seg) :endnotes:
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
auto en_tuple
= note_section.endnote_objects(obj_cite_digits, opt_action);
@@ -1588,7 +1587,7 @@ debug(endnotes) {
**** no glossary section? :glossary:
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
if (an_object["glossary_nugget"].length == 0) {
comp_obj_heading_ = comp_obj_heading_.init;
@@ -1617,7 +1616,7 @@ debug(glossary) {
**** bibliography section (objects) :bibliography:
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
auto biblio_unsorted_incomplete = biblio_arr_json.dup;
auto biblio = Bibliography();
@@ -1625,7 +1624,7 @@ auto biblio_ordered
= biblio.flow_bibliography_(biblio_unsorted_incomplete, bib_arr_json);
#+END_SRC
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
if (biblio_ordered.length > 0) {
{
@@ -1698,7 +1697,7 @@ if (biblio_ordered.length > 0) {
***** format biblio string
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
string out_;
foreach (entry; biblio_ordered) {
@@ -1733,7 +1732,7 @@ foreach (entry; biblio_ordered) {
}
#+END_SRC
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
debug(bibliosection) {
foreach (o; the_bibliography_section) {
@@ -1778,7 +1777,7 @@ JSONValue biblio_entry_tags_jsonstr = `{
**** bookindex section (scroll & seg) :book:index:
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
auto bi = BookIndexReportSection();
auto bi_tuple
@@ -1799,7 +1798,7 @@ debug(bookindex) {
**** no blurb section? :blurb:
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
if (an_object["blurb_nugget"].length == 0) {
comp_obj_heading_ = comp_obj_heading_.init;
@@ -1830,7 +1829,7 @@ debug(blurb) {
**** toc backmatter, table of contents backmatter (scroll & seg) :contents:
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
indent=[
"hang_position" : 1,
@@ -1931,7 +1930,7 @@ debug(toc) {
**** doc head (separate document head from body, make space for toc)
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
the_document_head_section ~= the_document_body_section[0];
the_document_body_section=the_document_body_section[1..$];
@@ -1955,7 +1954,7 @@ NOTE there are issues attempting to do this on first pass as:
***** Methods
****** get ancestors markup
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
@safe int[] _get_ancestors_markup(O)(O obj, ref int[] _ancestors_markup) {
if (obj.metainfo.is_a == "heading") {
@@ -2048,7 +2047,7 @@ NOTE there are issues attempting to do this on first pass as:
****** get ancestors collapsed
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
@safe int[] _get_ancestors_collapsed(O)(O obj, ref int[] _ancestors_collapsed) {
if (obj.metainfo.is_a == "heading") {
@@ -2141,7 +2140,7 @@ NOTE there are issues attempting to do this on first pass as:
- substantive object numbers already exist
- number un-numbered non-substantive text
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
/+ multiple 1~ levels, loop through document body +/
if (the_document_body_section.length > 1) {
@@ -2169,7 +2168,7 @@ if (the_document_body_section.length > 1) {
***** ↻ Loop section: endnotes [en]
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
if (the_endnotes_section.length > 1) {
segnames["html"] ~= "endnotes";
@@ -2190,7 +2189,7 @@ if (the_endnotes_section.length > 1) {
***** ↻ Loop section: glossary [gl]
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
if (the_glossary_section.length > 1) {
segnames["html"] ~= "glossary";
@@ -2211,7 +2210,7 @@ if (the_glossary_section.length > 1) {
***** ↻ Loop section: bibliography [bb]
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
if (the_bibliography_section.length > 1) {
segnames["html"] ~= "bibliography";
@@ -2232,7 +2231,7 @@ if (the_bibliography_section.length > 1) {
***** ↻ Loop section: book index [bi]
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
if (the_bookindex_section.length > 1) {
segnames["html"] ~= "bookindex";
@@ -2253,7 +2252,7 @@ if (the_bookindex_section.length > 1) {
***** ↻ Loop section: blurb [bl]
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
if (the_blurb_section.length > 1) {
segnames["html"] ~= "blurb";
@@ -2313,7 +2312,7 @@ Build here:
***** Methods
****** decendants
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
@safe auto get_decendants()(ObjGenericComposite[] document_sections) {
int[string] _heading_ocn_decendants;
@@ -2366,7 +2365,7 @@ Build here:
****** images: extract
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
string[] _images;
@safe string[] extract_images()(string content_block) {
@@ -2381,7 +2380,7 @@ string[] segnames_0_to_4;
****** images: dimensions
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
@system auto _image_dimensions(O,M)(O obj, M manifested) {
if (obj.has.image_without_dimensions) {
@@ -2434,7 +2433,7 @@ string[] segnames_0_to_4;
- book index
- footnotes and footnote numbers
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
@safe auto _links(O)(O obj) {
if (auto m = obj.text.match(rgx.inline_link_stow_uri)) {
@@ -2459,7 +2458,7 @@ string[] segnames_0_to_4;
***** ↻ Loop section: head
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
foreach (ref obj; the_document_head_section) {
if (obj.metainfo.is_a == "heading") {
@@ -2491,7 +2490,7 @@ foreach (ref obj; the_document_head_section) {
***** ↻ Loop section: toc [to]
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
if (the_table_of_contents_section.length > 1) {
/+ scroll +/
@@ -2521,7 +2520,7 @@ if (the_table_of_contents_section.length > 1) {
***** ↻ Loop section: document body [bd]
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
/+ multiple 1~ levels, loop through document body +/
if (the_document_body_section.length > 1) {
@@ -2572,7 +2571,7 @@ auto image_list = (_images.sort()).uniq;
- endnotes have their own number, (also use in node) and they belong to calling object
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
/+ optional only one 1~ level +/
if (the_endnotes_section.length > 1) {
@@ -2615,7 +2614,7 @@ if (the_endnotes_section.length > 1) {
- add glossary numbering, (also use in node) no need to show in text
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
/+ optional only one 1~ level +/
if (the_glossary_section.length > 1) {
@@ -2658,7 +2657,7 @@ if (the_glossary_section.length > 1) {
- add bibliography numbering, (also use in node) no need to show in text
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
/+ optional only one 1~ level +/
if (the_bibliography_section.length > 1) {
@@ -2701,7 +2700,7 @@ if (the_bibliography_section.length > 1) {
- add book index numbering?, (also use in node) no need to show in text
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
/+ optional only one 1~ level +/
int ocn_ = obj_cite_digits.object_number;
@@ -2754,7 +2753,7 @@ if (the_bookindex_section.length > 1) { /
***** ↻ Loop section: blurb [bl]
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
/+ optional only one 1~ level +/
if (the_blurb_section.length > 1) {
@@ -2795,7 +2794,7 @@ if (the_blurb_section.length > 1) {
***** ↻ Loop sections: get decendants
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
if (the_document_body_section.length > 1) {
auto pairs = get_decendants(
@@ -2893,7 +2892,7 @@ if (the_document_body_section.length > 1) {
**** TODO update BUG?
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
/+ TODO
- note create/insert heading object sole purpose eof close all open tags
@@ -2931,7 +2930,7 @@ comp_obj_heading_ = comp_obj_heading_.obj_heading_ancestors(lv_ancestors_txt);
** 4. _return document tuple_ :post:
*** _the document_ :document:
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
ObjGenericComposite[][string] document_the = [
"head": the_document_head_section,
@@ -2951,7 +2950,7 @@ ObjGenericComposite[][string] document_the = [
*** document _section keys_ sequence
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
string[][string] document_section_keys_sequenced = [
"scroll": ["head", "toc", "body",],
@@ -2999,7 +2998,7 @@ if ((opt_action.html)
*** dup
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
string[] segnames_4 = segnames["html"].dup;
string[] segnames_lv1_to_4 = segnames["epub"].dup;
@@ -3011,7 +3010,7 @@ debug(segnames) {
*** clean out structure
-#+name: abs_post
+#+NAME: abs_post
#+BEGIN_SRC d
destroy(the_document_head_section);
destroy(the_table_of_contents_section);
@@ -3038,7 +3037,7 @@ dom_structure_collapsed_tags_status_buffer = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,];
*** doc_has struct
-#+name: abs_struct_doc_has
+#+NAME: abs_struct_doc_has
#+BEGIN_SRC d
@safe auto doc_has() {
struct DocHas_ {
@@ -3094,7 +3093,7 @@ dom_structure_collapsed_tags_status_buffer = [ 0, 0, 0, 0, 0, 0, 0, 0, 0,];
*** _return the document tuple_ [#A] :return:tuple:
-#+name: abs_return_tuple
+#+NAME: abs_return_tuple
#+BEGIN_SRC d
auto t = tuple(
document_the,
@@ -3110,7 +3109,7 @@ functions used in document abstraction
*** set & resets :reset:
**** object reset: remove (clean) :object:remove:
-#+name: abs_functions_object_reset
+#+NAME: abs_functions_object_reset
#+BEGIN_SRC d
@safe static string[string] object_reset()(string[string] an_object) {
an_object.remove("body_nugget");
@@ -3124,7 +3123,7 @@ functions used in document abstraction
**** set, initialize or re-initialize :set:
-#+name: abs_functions_header_set_common
+#+NAME: abs_functions_header_set_common
#+BEGIN_SRC d
@system void flow_common_reset_()(
return ref int[string] line_occur,
@@ -3141,7 +3140,7 @@ functions used in document abstraction
*** check object_number status in document :ocn:
-#+name: abs_functions_ocn_status
+#+NAME: abs_functions_ocn_status
#+BEGIN_SRC d
@safe static int[string] _check_ocn_status_()(
char[] line,
@@ -3207,7 +3206,7 @@ functions used in document abstraction
*** make substitutions
**** project
-#+name: abs_functions_substitutions
+#+NAME: abs_functions_substitutions
#+BEGIN_SRC d
@safe char[] _doc_header_and_make_substitutions_(CMM)(
char[] line,
@@ -3228,7 +3227,7 @@ functions used in document abstraction
**** fontface
-#+name: abs_functions_substitutions
+#+NAME: abs_functions_substitutions
#+BEGIN_SRC d
@safe char[] _doc_header_and_make_substitutions_fontface_(CMM)(
char[] line,
@@ -3261,7 +3260,7 @@ functions used in document abstraction
**** block start (open) block :start:
***** { block starts function
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
@safe void flow_txt_block_start()(
char[] line,
@@ -3273,14 +3272,14 @@ functions used in document abstraction
****** block (various) curly open :curly:
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
static auto rgx = Rgx();
#+END_SRC
******* code
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
if (auto m = line.matchFirst(rgx.block_curly_code_open)) {
dochas["codeblock"]++;
@@ -3300,7 +3299,7 @@ functions used in document abstraction
******* poem
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_curly_poem_open)) {
dochas["poem"]++;
@@ -3322,7 +3321,7 @@ functions used in document abstraction
******* group
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_curly_group_open)) {
dochas["group"]++;
@@ -3342,7 +3341,7 @@ functions used in document abstraction
******* block
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_curly_block_open)) {
dochas["block"]++;
@@ -3362,7 +3361,7 @@ functions used in document abstraction
******* quote
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_curly_quote_open)) {
dochas["quote"]++;
@@ -3382,7 +3381,7 @@ functions used in document abstraction
******* table
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_curly_table_open)) { /+ curly table open +/
debug(table) { // table (curly) open
@@ -3401,7 +3400,7 @@ functions used in document abstraction
******* table special
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_curly_table_special_markup)) { /+ table: special table block markup syntax! +/
dochas["table"]++;
@@ -3415,7 +3414,7 @@ functions used in document abstraction
****** block (various) tic open :tic:
******* code
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_tic_code_open)) {
dochas["codeblock"]++;
@@ -3435,7 +3434,7 @@ functions used in document abstraction
******* poem
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_tic_poem_open)) {
dochas["poem"]++;
@@ -3457,7 +3456,7 @@ functions used in document abstraction
******* group
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_tic_group_open)) {
dochas["group"]++;
@@ -3477,7 +3476,7 @@ functions used in document abstraction
******* block
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_tic_block_open)) {
dochas["block"]++;
@@ -3497,7 +3496,7 @@ functions used in document abstraction
******* quote
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_tic_quote_open)) {
dochas["quote"]++;
@@ -3517,7 +3516,7 @@ functions used in document abstraction
******* table
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
} else if (auto m = line.matchFirst(rgx.block_tic_table_open)) { /+ tic table open +/
debug(table) { // table (tic) open
@@ -3537,7 +3536,7 @@ functions used in document abstraction
***** }
-#+name: abs_functions_block
+#+NAME: abs_functions_block
#+BEGIN_SRC d
}
#+END_SRC
@@ -3545,7 +3544,7 @@ functions used in document abstraction
**** block continue (an open block) :continue:
***** _code block_ (special status, deal with first) :code:
-#+name: abs_functions_block_code
+#+NAME: abs_functions_block_code
#+BEGIN_SRC d
@safe void flow_txt_block_code()(
char[] line,
@@ -3594,7 +3593,7 @@ functions used in document abstraction
***** biblio block :biblio:
****** biblio tag map
-#+name: abs_functions_block_biblio
+#+NAME: abs_functions_block_biblio
#+BEGIN_SRC d
@safe final string biblio_tag_map()(string abr) {
auto btm = [
@@ -3619,7 +3618,7 @@ functions used in document abstraction
******* +consider+
-#+name: none
+#+NAME: none
#+BEGIN_SRC d
final string biblio_tag_map_()(string abr) {
string name;
@@ -3646,7 +3645,7 @@ final string biblio_tag_map_()(string abr) {
****** biblio block
-#+name: abs_functions_block_biblio
+#+NAME: abs_functions_block_biblio
#+BEGIN_SRC d
@system void flow_txt_block_biblio(
char[] line,
@@ -3781,7 +3780,7 @@ final string biblio_tag_map_()(string abr) {
***** quote block :quote:
-#+name: abs_functions_block_quote
+#+NAME: abs_functions_block_quote
#+BEGIN_SRC d
@safe string[string] flow_txt_block_quote()(
char[] line,
@@ -3829,7 +3828,7 @@ final string biblio_tag_map_()(string abr) {
- apply inline markup
- discard leading and newline whitespace
-#+name: abs_functions_block_group
+#+NAME: abs_functions_block_group
#+BEGIN_SRC d
@safe string[string] flow_txt_block_group()(
char[] line,
@@ -3878,7 +3877,7 @@ final string biblio_tag_map_()(string abr) {
- keep whitespace indentation
- keep newlines
-#+name: abs_functions_block_block
+#+NAME: abs_functions_block_block
#+BEGIN_SRC d
@safe string[string] flow_txt_block_block()(
char[] line,
@@ -3925,7 +3924,7 @@ final string biblio_tag_map_()(string abr) {
why extra object stuff only in poem/verse?
-#+name: abs_functions_block_poem
+#+NAME: abs_functions_block_poem
#+BEGIN_SRC d
@safe string[string] flow_txt_block_poem(CMM)(
char[] line,
@@ -4189,7 +4188,7 @@ you need:
- show table walls, bool
- table content marked up in uniform way
-#+name: abs_functions_block_table
+#+NAME: abs_functions_block_table
#+BEGIN_SRC d
@system string[string] flow_txt_block_table(CMM)(
char[] line,
@@ -4259,7 +4258,7 @@ process and use an_object["table_head"] (then empty it)
- table_column_widths, int[] column widths (as given or calculate average)
- show table walls, bool
-#+name: abs_functions_block_line_status_empty
+#+NAME: abs_functions_block_line_status_empty
#+BEGIN_SRC d
@system void flow_table_closed_make_special_notation_table_(N,CMM)(
char[] line,
@@ -4308,7 +4307,7 @@ process and use an_object["table_head"] (then empty it)
***** { line empty, _make block_
-#+name: abs_functions_block_line_status_empty
+#+NAME: abs_functions_block_line_status_empty
#+BEGIN_SRC d
@system string[string] flow_block_flag_line_empty_(B,N,CMM,Ts)(
char[] line,
@@ -4339,7 +4338,7 @@ process and use an_object["table_head"] (then empty it)
****** make: quote block
-#+name: abs_functions_block_line_status_empty
+#+NAME: abs_functions_block_line_status_empty
#+BEGIN_SRC d
if (obj_type_status["quote"] == TriState.closing) {
obj_cite_digits = ocn_emit(obj_type_status["ocn_status"]);
@@ -4396,7 +4395,7 @@ process and use an_object["table_head"] (then empty it)
****** make: group block
-#+name: abs_functions_block_line_status_empty
+#+NAME: abs_functions_block_line_status_empty
#+BEGIN_SRC d
} else if (obj_type_status["group"] == TriState.closing) {
obj_cite_digits = ocn_emit(obj_type_status["ocn_status"]);
@@ -4453,7 +4452,7 @@ process and use an_object["table_head"] (then empty it)
****** make: block
-#+name: abs_functions_block_line_status_empty
+#+NAME: abs_functions_block_line_status_empty
#+BEGIN_SRC d
} else if (obj_type_status["block"] == TriState.closing) {
obj_cite_digits = ocn_emit(obj_type_status["ocn_status"]);
@@ -4509,7 +4508,7 @@ process and use an_object["table_head"] (then empty it)
****** make: poem
-#+name: abs_functions_block_line_status_empty
+#+NAME: abs_functions_block_line_status_empty
#+BEGIN_SRC d
} else if (obj_type_status["poem"] == TriState.closing) {
an_object["bookindex_nugget"]
@@ -4552,7 +4551,7 @@ process and use an_object["table_head"] (then empty it)
****** make: code block
-#+name: abs_functions_block_line_status_empty
+#+NAME: abs_functions_block_line_status_empty
#+BEGIN_SRC d
} else if (obj_type_status["code"] == TriState.closing) {
obj_cite_digits = ocn_emit(obj_type_status["ocn_status"]);
@@ -4609,7 +4608,7 @@ process and use an_object["table_head"] (then empty it)
****** make: table
-#+name: abs_functions_block_line_status_empty
+#+NAME: abs_functions_block_line_status_empty
#+BEGIN_SRC d
} else if (obj_type_status["table"] == TriState.closing) {
comp_obj_block = comp_obj_block.init;
@@ -4658,7 +4657,7 @@ process and use an_object["table_head"] (then empty it)
***** }
-#+name: abs_functions_block_line_status_empty
+#+NAME: abs_functions_block_line_status_empty
#+BEGIN_SRC d
return an_object;
}
@@ -4666,7 +4665,7 @@ process and use an_object["table_head"] (then empty it)
*** book index :bookindex:
-#+name: abs_functions_book_index
+#+NAME: abs_functions_book_index
#+BEGIN_SRC d
@system string[string] flow_book_index_(B)(
char[] line,
@@ -4723,7 +4722,7 @@ process and use an_object["table_head"] (then empty it)
*** heading or paragraph :heading:paragraph:
**** heading found :heading:
-#+name: abs_functions_heading
+#+NAME: abs_functions_heading
#+BEGIN_SRC d
@safe string[string] flow_heading_found_()(
char[] line,
@@ -4810,7 +4809,7 @@ process and use an_object["table_head"] (then empty it)
**** heading make set :heading:
-#+name: abs_functions_heading
+#+NAME: abs_functions_heading
#+BEGIN_SRC d
@safe char[] flow_heading_make_set_()(
char[] line,
@@ -4872,7 +4871,7 @@ process and use an_object["table_head"] (then empty it)
**** heading match :heading:
-#+name: abs_functions_heading
+#+NAME: abs_functions_heading
#+BEGIN_SRC d
@safe string[string] flow_heading_matched_(CMM)(
char[] line,
@@ -5031,7 +5030,7 @@ process and use an_object["table_head"] (then empty it)
**** para match :para:
-#+name: abs_functions_para
+#+NAME: abs_functions_para
#+BEGIN_SRC d
@safe string[string] flow_para_match_()(
char[] line,
@@ -5090,7 +5089,7 @@ process and use an_object["table_head"] (then empty it)
**** text font face
-#+name: abs_functions_para
+#+NAME: abs_functions_para
#+BEGIN_SRC d
@safe char[] font_faces_line()(
char[] textline,
@@ -5127,7 +5126,7 @@ process and use an_object["table_head"] (then empty it)
***** table instructions
-#+name: abs_functions_table
+#+NAME: abs_functions_table
#+BEGIN_SRC d
@safe ObjGenericComposite flow_table_instructions(H)(
return ref ObjGenericComposite table_object,
@@ -5158,7 +5157,7 @@ process and use an_object["table_head"] (then empty it)
***** table array munge
-#+name: abs_functions_table
+#+NAME: abs_functions_table
#+BEGIN_SRC d
@safe ObjGenericComposite flow_table_array_munge(T)(
return ref ObjGenericComposite table_object,
@@ -5288,7 +5287,7 @@ process and use an_object["table_head"] (then empty it)
***** table substantive munge
-#+name: abs_functions_table
+#+NAME: abs_functions_table
#+BEGIN_SRC d
@system ObjGenericComposite flow_table_substantive_munge(T)(
return ref ObjGenericComposite table_object,
@@ -5310,7 +5309,7 @@ process and use an_object["table_head"] (then empty it)
***** table substantive munge special
-#+name: abs_functions_table
+#+NAME: abs_functions_table
#+BEGIN_SRC d
@system ObjGenericComposite flow_table_substantive_munge_special(T)(
return ref ObjGenericComposite table_object,
@@ -5334,7 +5333,7 @@ process and use an_object["table_head"] (then empty it)
**** object :object:
***** ocn :ocn:
-#+name: meta_emitters_ocn
+#+NAME: meta_emitters_ocn
#+BEGIN_SRC d
@safe pure struct OCNemitter {
int ocn_digit, ocn_object_number, ocn_on_, ocn_off_, ocn_bkidx, ocn_bkidx_;
@@ -5390,7 +5389,7 @@ process and use an_object["table_head"] (then empty it)
****** { struct, inline markup munge
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe static struct ObjInlineMarkupMunge {
string[string] obj_txt;
@@ -5408,7 +5407,7 @@ process and use an_object["table_head"] (then empty it)
}
#+END_SRC
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe static auto images()(string obj_txt_in) {
static auto mng = InlineMarkup();
@@ -5444,7 +5443,7 @@ process and use an_object["table_head"] (then empty it)
******* footnotes endnotes markup
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe TxtPlusHasFootnotes footnotes_endnotes_markup_and_number_or_stars()(string obj_txt_in, bool reset_note_numbers) {
/+ endnotes (regular) +/
@@ -5514,7 +5513,7 @@ process and use an_object["table_head"] (then empty it)
******* object notes and links
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe private TxtPlusHasFootnotesUrlsImages object_notes_and_links_()(
string obj_txt_in,
@@ -5585,7 +5584,7 @@ process and use an_object["table_head"] (then empty it)
- identified text by heading level marker followed by text until two new lines
- general markup
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe auto munge_heading()(
string obj_txt_in,
@@ -5616,7 +5615,7 @@ process and use an_object["table_head"] (then empty it)
- footnotes/endnotes
- links
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe auto munge_para()(string obj_txt_in) {
obj_txt["munge"]=(obj_txt_in)
@@ -5635,7 +5634,7 @@ process and use an_object["table_head"] (then empty it)
******* quote
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe string munge_quote()(string obj_txt_in) {
obj_txt["munge"]=obj_txt_in;
@@ -5654,7 +5653,7 @@ process and use an_object["table_head"] (then empty it)
- links
- newlines detected and kept?
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe auto munge_group(string obj_txt_in) {
obj_txt["munge"]=obj_txt_in;
@@ -5674,7 +5673,7 @@ process and use an_object["table_head"] (then empty it)
- links
- newlines detected and kept?
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe auto munge_block()(string obj_txt_in) {
obj_txt["munge"]=obj_txt_in;
@@ -5694,7 +5693,7 @@ process and use an_object["table_head"] (then empty it)
- footnotes/endnotes
- links?
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe auto munge_verse()(string obj_txt_in) {
obj_txt["munge"]=obj_txt_in;
@@ -5713,7 +5712,7 @@ process and use an_object["table_head"] (then empty it)
- no general markup
- one special character represented by mkup.nbsp ░
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe string munge_code()(string obj_txt_in) {
obj_txt_in = obj_txt_in.replaceAll(rgx.space, mkup.nbsp);
@@ -5728,7 +5727,7 @@ process and use an_object["table_head"] (then empty it)
- table block identified by open an close tags
- table markup
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe string munge_table()(string obj_txt_in) {
obj_txt["munge"]=obj_txt_in;
@@ -5740,7 +5739,7 @@ process and use an_object["table_head"] (then empty it)
******* comment
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe string munge_comment()(string obj_txt_in) {
obj_txt["munge"]=obj_txt_in;
@@ -5752,7 +5751,7 @@ process and use an_object["table_head"] (then empty it)
****** }
-#+name: meta_emitters_obj_inline_markup_munge
+#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
}
#+END_SRC
@@ -5760,7 +5759,7 @@ process and use an_object["table_head"] (then empty it)
***** toc, tags, object inline markup :markup:inline:
****** {
-#+name: meta_emitters_obj_inline_markup
+#+NAME: meta_emitters_obj_inline_markup
#+BEGIN_SRC d
static struct ObjInlineMarkup {
static auto rgx = Rgx();
@@ -5771,7 +5770,7 @@ static struct ObjInlineMarkup {
******* object inline markup and anchor tags :markup:inline:
-#+name: meta_emitters_obj_inline_markup_and_anchor_tags_and_misc
+#+NAME: meta_emitters_obj_inline_markup_and_anchor_tags_and_misc
#+BEGIN_SRC d
@safe TxtAndAnchorTagPlusHasFootnotesUrlsImages obj_inline_markup_and_anchor_tags_and_misc(CMM)(
string[string] obj_,
@@ -5870,7 +5869,7 @@ static struct ObjInlineMarkup {
******* toc (table of contents), build, gather headings :markup:inline:
-#+name: meta_emitters_obj_inline_markup_table_of_contents
+#+NAME: meta_emitters_obj_inline_markup_table_of_contents
#+BEGIN_SRC d
@safe auto _clean_heading_toc_()(
char[] heading_toc_,
@@ -5971,14 +5970,14 @@ static struct ObjInlineMarkup {
******* private:
-#+name: meta_emitters_obj_inline_markup_private
+#+NAME: meta_emitters_obj_inline_markup_private
#+BEGIN_SRC d
private:
#+END_SRC
******** make heading number & segment anchor tags if instructed :markup:inline:segment:anchor:tags:
-#+name: meta_emitters_obj_inline_markup_heading_numbering_segment_anchor_tags
+#+NAME: meta_emitters_obj_inline_markup_heading_numbering_segment_anchor_tags
#+BEGIN_SRC d
static int[] heading_num = [ 0, 0, 0, 0 ];
static string heading_number_auto_composite = "";
@@ -6131,7 +6130,7 @@ private:
******** make segment anchor tags if not provided :markup:inline:segment:anchor:tags:
-#+name: meta_emitters_obj_inline_markup_heading_numbering_segment_anchor_tags
+#+NAME: meta_emitters_obj_inline_markup_heading_numbering_segment_anchor_tags
#+BEGIN_SRC d
static int heading_num_lev1 = 0;
@safe static string _make_segment_anchor_tags_if_none_provided()(
@@ -6171,7 +6170,7 @@ private:
****** }
-#+name: meta_emitters_obj_inline_markup_close
+#+NAME: meta_emitters_obj_inline_markup_close
#+BEGIN_SRC d
}
#+END_SRC
@@ -6179,7 +6178,7 @@ private:
***** object attrib :attributes:
****** { attributes structure open, public
-#+name: meta_emitters_obj_attributes
+#+NAME: meta_emitters_obj_attributes
#+BEGIN_SRC d
struct ObjAttributes {
string[string] _obj_attrib;
@@ -6187,7 +6186,7 @@ struct ObjAttributes {
******* emitter obj attributes, public
-#+name: meta_emitters_obj_attributes_public
+#+NAME: meta_emitters_obj_attributes_public
#+BEGIN_SRC d
@safe string obj_attributes()(
string obj_is_,
@@ -6254,7 +6253,7 @@ struct ObjAttributes {
******* private
-#+name: meta_emitters_obj_attributes_private
+#+NAME: meta_emitters_obj_attributes_private
#+BEGIN_SRC d
private:
string _obj_attributes;
@@ -6262,7 +6261,7 @@ struct ObjAttributes {
******** para & blocks
-#+name: meta_emitters_obj_attributes_private_an_attribute
+#+NAME: meta_emitters_obj_attributes_private_an_attribute
#+BEGIN_SRC d
@safe string txt_para_and_blocks()(string obj_txt_in) {
if (obj_txt_in.matchFirst(rgx.para_bullet)) {
@@ -6292,7 +6291,7 @@ struct ObjAttributes {
******** heading
-#+name: meta_emitters_obj_attributes_private_an_attribute
+#+NAME: meta_emitters_obj_attributes_private_an_attribute
#+BEGIN_SRC d
@safe string txt_heading()(string obj_txt_in) {
_obj_attributes = " \"use\": \"content\","
@@ -6306,7 +6305,7 @@ struct ObjAttributes {
******** para
-#+name: meta_emitters_obj_attributes_private_an_attribute
+#+NAME: meta_emitters_obj_attributes_private_an_attribute
#+BEGIN_SRC d
@safe string txt_para()(string obj_txt_in) {
_obj_attributes = " \"use\": \"content\","
@@ -6320,7 +6319,7 @@ struct ObjAttributes {
******** quote
-#+name: meta_emitters_obj_attributes_private_an_attribute
+#+NAME: meta_emitters_obj_attributes_private_an_attribute
#+BEGIN_SRC d
@safe string txt_quote()(string obj_txt_in) {
_obj_attributes = " \"use\": \"content\","
@@ -6334,7 +6333,7 @@ struct ObjAttributes {
******** group
-#+name: meta_emitters_obj_attributes_private_an_attribute
+#+NAME: meta_emitters_obj_attributes_private_an_attribute
#+BEGIN_SRC d
@safe string txt_group()(string obj_txt_in) {
_obj_attributes = " \"use\": \"content\","
@@ -6348,7 +6347,7 @@ struct ObjAttributes {
******** block
-#+name: meta_emitters_obj_attributes_private_an_attribute
+#+NAME: meta_emitters_obj_attributes_private_an_attribute
#+BEGIN_SRC d
@safe string txt_block()(string obj_txt_in) {
_obj_attributes = " \"use\": \"content\","
@@ -6362,7 +6361,7 @@ struct ObjAttributes {
******** verse
-#+name: meta_emitters_obj_attributes_private_an_attribute
+#+NAME: meta_emitters_obj_attributes_private_an_attribute
#+BEGIN_SRC d
@safe string txt_verse()(string obj_txt_in) {
_obj_attributes = " \"use\": \"content\","
@@ -6376,7 +6375,7 @@ struct ObjAttributes {
******** code
-#+name: meta_emitters_obj_attributes_private_an_attribute
+#+NAME: meta_emitters_obj_attributes_private_an_attribute
#+BEGIN_SRC d
@safe string txt_code()(string obj_txt_in) {
_obj_attributes = " \"use\": \"content\","
@@ -6390,7 +6389,7 @@ struct ObjAttributes {
******** table
-#+name: meta_emitters_obj_attributes_private_an_attribute
+#+NAME: meta_emitters_obj_attributes_private_an_attribute
#+BEGIN_SRC d
@safe string txt_table()(string obj_txt_in) {
_obj_attributes = " \"use\": \"content\","
@@ -6404,7 +6403,7 @@ struct ObjAttributes {
******** comment
-#+name: meta_emitters_obj_attributes_private_an_attribute
+#+NAME: meta_emitters_obj_attributes_private_an_attribute
#+BEGIN_SRC d
@safe string txt_comment()(string obj_txt_in) {
_obj_attributes = " \"use\": \"comment\","
@@ -6418,7 +6417,7 @@ struct ObjAttributes {
******** set additional attribute values, parse as json
-#+name: meta_emitters_obj_attributes_private_json
+#+NAME: meta_emitters_obj_attributes_private_json
#+BEGIN_SRC d
@safe string _set_additional_values_parse_as_json()(
string _obj_attrib,
@@ -6447,7 +6446,7 @@ struct ObjAttributes {
****** }
-#+name: meta_emitters_obj_attributes_private_close
+#+NAME: meta_emitters_obj_attributes_private_close
#+BEGIN_SRC d
}
#+END_SRC
@@ -6455,7 +6454,7 @@ struct ObjAttributes {
**** book index :book:index:
***** book index nugget hash :hash:nugget:
-#+name: meta_emitters_book_index_nugget
+#+NAME: meta_emitters_book_index_nugget
#+BEGIN_SRC d
struct BookIndexNuggetHash {
string main_term, sub_term, sub_term_bits;
@@ -6535,7 +6534,7 @@ struct BookIndexNuggetHash {
***** book index (sort &) report indented :report:indented:
-#+name: meta_emitters_book_index_report_indented
+#+NAME: meta_emitters_book_index_report_indented
#+BEGIN_SRC d
struct BookIndexReportIndent {
int mkn, skn;
@@ -6568,7 +6567,7 @@ struct BookIndexReportIndent {
***** book index (sort &) report section :report:section:
****** { book index struct open
-#+name: meta_emitters_book_index_report_section
+#+NAME: meta_emitters_book_index_report_section
#+BEGIN_SRC d
struct BookIndexReportSection {
int mkn, skn;
@@ -6578,7 +6577,7 @@ struct BookIndexReportSection {
******* bookindex write section
-#+name: meta_emitters_book_index_report_section
+#+NAME: meta_emitters_book_index_report_section
#+BEGIN_SRC d
@safe void bookindex_write_section()(
string[][string][string] bookindex_unordered_hashes
@@ -6613,7 +6612,7 @@ struct BookIndexReportSection {
******* book index (sort &) build section :report:section:
-#+name: meta_emitters_book_index_report_section
+#+NAME: meta_emitters_book_index_report_section
#+BEGIN_SRC d
@system auto bookindex_build_abstraction_section(N,B)(
string[][string][string] bookindex_unordered_hashes,
@@ -6776,14 +6775,14 @@ struct BookIndexReportSection {
****** }
-#+name: meta_emitters_book_index_report_section
+#+NAME: meta_emitters_book_index_report_section
#+BEGIN_SRC d
}
#+END_SRC
**** (end)notes section :endnotes:section:
-#+name: meta_emitters_endnotes
+#+NAME: meta_emitters_endnotes
#+BEGIN_SRC d
struct NotesSection {
string[string] object_notes;
@@ -6794,7 +6793,7 @@ struct NotesSection {
***** { gather notes for endnote section struct open
-#+name: meta_emitters_endnotes
+#+NAME: meta_emitters_endnotes
#+BEGIN_SRC d
@safe private auto gather_notes_for_endnote_section(
ObjGenericComposite[] contents_am,
@@ -6880,7 +6879,7 @@ struct NotesSection {
****** gathered notes
-#+name: meta_emitters_endnotes
+#+NAME: meta_emitters_endnotes
#+BEGIN_SRC d
@safe private auto gathered_notes() {
string[][string] endnotes_;
@@ -6897,7 +6896,7 @@ struct NotesSection {
****** endnote objects
-#+name: meta_emitters_endnotes
+#+NAME: meta_emitters_endnotes
#+BEGIN_SRC d
@safe private auto endnote_objects(N,O)(
N obj_cite_digits,
@@ -7013,7 +7012,7 @@ struct NotesSection {
***** }
-#+name: meta_emitters_endnotes
+#+NAME: meta_emitters_endnotes
#+BEGIN_SRC d
}
#+END_SRC
@@ -7021,14 +7020,14 @@ struct NotesSection {
**** bibliography :bibliography:
***** { biblio struct
-#+name: meta_emitters_bibliography
+#+NAME: meta_emitters_bibliography
#+BEGIN_SRC d
struct Bibliography {
#+END_SRC
****** biblio
-#+name: meta_emitters_bibliography
+#+NAME: meta_emitters_bibliography
#+BEGIN_SRC d
@system public JSONValue[] flow_bibliography_()(
return ref string[] biblio_unsorted_incomplete,
@@ -7059,7 +7058,7 @@ struct Bibliography {
****** biblio unsorted complete
-#+name: meta_emitters_bibliography
+#+NAME: meta_emitters_bibliography
#+BEGIN_SRC d
@system final private JSONValue[] biblio_make_unsorted_array_of_json_objects()(
string[] biblio_unordered,
@@ -7093,7 +7092,7 @@ struct Bibliography {
****** biblio sort
-#+name: meta_emitters_bibliography
+#+NAME: meta_emitters_bibliography
#+BEGIN_SRC d
@system final private JSONValue[] biblio_sort()(JSONValue[] biblio_unordered) {
JSONValue[] biblio_sorted_;
@@ -7114,7 +7113,7 @@ struct Bibliography {
****** biblio debug
-#+name: meta_emitters_bibliography
+#+NAME: meta_emitters_bibliography
#+BEGIN_SRC d
@system void biblio_debug()(JSONValue[] biblio_sorted) {
debug(biblio0) {
@@ -7129,7 +7128,7 @@ struct Bibliography {
***** }
-#+name: meta_emitters_bibliography
+#+NAME: meta_emitters_bibliography
#+BEGIN_SRC d
}
#+END_SRC
@@ -7137,7 +7136,7 @@ struct Bibliography {
**** node structure metadata :structure:metadata:node:
***** { metadata node struct
-#+name: meta_emitters_metadata
+#+NAME: meta_emitters_metadata
#+BEGIN_SRC d
struct NodeStructureMetadata {
int lv, lv0, lv1, lv2, lv3, lv4, lv5, lv6, lv7;
@@ -7148,7 +7147,7 @@ struct NodeStructureMetadata {
****** node metadata emitter
-#+name: meta_emitters_metadata
+#+NAME: meta_emitters_metadata
#+BEGIN_SRC d
@safe ObjGenericComposite node_location_emitter(La,Ta,N)(
string lev_markup_number,
@@ -7208,7 +7207,7 @@ struct NodeStructureMetadata {
****** node metadata emitter heading, (including most segnames & their pointers)
-#+name: meta_emitters_metadata
+#+NAME: meta_emitters_metadata
#+BEGIN_SRC d
@safe ObjGenericComposite node_emitter_heading(Hd,TaL,TA,N,fNr,fNs,fL)(
string _text,
@@ -7410,7 +7409,7 @@ struct NodeStructureMetadata {
***** }
-#+name: meta_emitters_metadata
+#+NAME: meta_emitters_metadata
#+BEGIN_SRC d
}
#+END_SRC
@@ -7418,7 +7417,7 @@ struct NodeStructureMetadata {
*** function assertions :assertions:
**** assertions on markup document structure :doc_structure:
-#+name: abs_functions_assertions
+#+NAME: abs_functions_assertions
#+BEGIN_SRC d
@safe pure void assertions_doc_structure()(
string[string] an_object,
@@ -7599,7 +7598,7 @@ struct NodeStructureMetadata {
**** assertions on blocks :blocks:
-#+name: abs_functions_assertions
+#+NAME: abs_functions_assertions
#+BEGIN_SRC d
@safe pure void assertions_flag_types_block_status_none_or_closed()(int[string] obj_type_status) {
assert(
@@ -7627,7 +7626,7 @@ struct NodeStructureMetadata {
*** doc sect keys seq
-#+name: template_doc_sect_keys_seq
+#+NAME: template_doc_sect_keys_seq
#+BEGIN_SRC d
template docSectKeysSeq() {
@safe auto docSectKeysSeq(string[][string] document_section_keys_sequenced) {
@@ -7686,7 +7685,7 @@ struct HeadingAttrib {
*** _composite object_ [#A]
-#+name: meta_structs_init
+#+NAME: meta_structs_init
#+BEGIN_SRC d
struct DocObj_MetaInfo_ {
string is_of_part = ""; // frontmatter, body, backmatter
@@ -7765,7 +7764,7 @@ struct DocObj_MetaInfo_ {
**** object text attributes
-#+name: meta_structs_init
+#+NAME: meta_structs_init
#+BEGIN_SRC d
struct DocObj_TxtAttrib_ {
int indent_base = 0;
@@ -7777,7 +7776,7 @@ struct DocObj_TxtAttrib_ {
**** object has within it
-#+name: meta_structs_init
+#+NAME: meta_structs_init
#+BEGIN_SRC d
struct DocObj_Has_ {
bool inline_links = false;
@@ -7790,7 +7789,7 @@ struct DocObj_Has_ {
**** table attributes
-#+name: meta_structs_init
+#+NAME: meta_structs_init
#+BEGIN_SRC d
struct DocObj_Table_ {
int number_of_columns = 0;
@@ -7803,7 +7802,7 @@ struct DocObj_Table_ {
**** code attributes
-#+name: meta_structs_init
+#+NAME: meta_structs_init
#+BEGIN_SRC d
struct DocObj_CodeBlock_ {
string syntax = "";
@@ -7813,7 +7812,7 @@ struct DocObj_CodeBlock_ {
**** stow (things to be protected from regular text transformations, so far links)
-#+name: meta_structs_init
+#+NAME: meta_structs_init
#+BEGIN_SRC d
struct DocObj_Stow_ {
string[] link = [];
@@ -7822,7 +7821,7 @@ struct DocObj_Stow_ {
**** pointers
-#+name: meta_structs_init
+#+NAME: meta_structs_init
#+BEGIN_SRC d
struct DocObj_Pointer_ {
int doc_object = 0;
@@ -7833,7 +7832,7 @@ struct DocObj_Pointer_ {
**** tags
-#+name: meta_structs_init
+#+NAME: meta_structs_init
#+BEGIN_SRC d
struct DocObj_Tags_ {
string[] heading_ancestors_text = [ "", "", "", "", "", "", "", "", ];
@@ -7852,7 +7851,7 @@ struct DocObj_Tags_ {
**** composite object the parts
-#+name: meta_structs_init
+#+NAME: meta_structs_init
#+BEGIN_SRC d
struct ObjGenericComposite {
string text = "";
@@ -7869,7 +7868,7 @@ struct ObjGenericComposite {
*** The Objects: generic composite object array
-#+name: meta_structs_init
+#+NAME: meta_structs_init
#+BEGIN_SRC d
struct TheObjects {
ObjGenericComposite[] oca;