diff options
Diffstat (limited to 'org')
| -rw-r--r-- | org/ao_abstract_doc_source.org | 257 | 
1 files changed, 209 insertions, 48 deletions
diff --git a/org/ao_abstract_doc_source.org b/org/ao_abstract_doc_source.org index 6bdd46b..6fa984e 100644 --- a/org/ao_abstract_doc_source.org +++ b/org/ao_abstract_doc_source.org @@ -185,6 +185,8 @@ auto heading_match_rgx = [    "h_3": regex(r"^(none)"),    "h_4": regex(r"^(none)")  ]; +string _anchor_tag; +string toc_txt_;  an_object["glossary_nugget"] = "";  an_object["blurb_nugget"] = "";  auto toc_head = @@ -702,7 +704,7 @@ if ((type["heading"] == State.on)      an_object,      dochead_make_aa,      segment_object_belongs_to, -    obj_cite_number, +    _anchor_tag,      the_table_of_contents_section,    );    _node = @@ -846,22 +848,6 @@ debug(objectrelated2) { // check  #+END_SRC  *** document sections -**** DONE [#B] toc, table of contents section (scroll & seg)       :contents: - -#+name: abs_post -#+BEGIN_SRC d -debug(toc) { -  writefln( -    "%s %s", -    __LINE__, -    the_table_of_contents_section["seg"].length -  ); -  foreach (toc_linked_heading; the_table_of_contents_section["seg"]) { -    writeln(toc_linked_heading.object); -  } -} -#+END_SRC -  **** DONE endnotes section (scroll & seg)                          :endnotes:  #+name: abs_post @@ -883,7 +869,7 @@ debug(endnotes) {  }  #+END_SRC -**** TODO glossary section? +**** DONE glossary section?  #+name: abs_post  #+BEGIN_SRC d @@ -909,32 +895,6 @@ debug(glossary) {  }  #+END_SRC -**** TODO blurb section? - -#+name: abs_post -#+BEGIN_SRC d -if (an_object["blurb_nugget"].length == 0) { -  writeln("no blurb"); -  the_blurb_section ~= -    set_abstract_object.contents_heading( -      "(skip) there is no Blurb section",   // nugget/object -      "",               // attrib -      0,                // obj_cite_number -      [""],             // anchor tag -      "B",              // lev -      1,                // lev_markup_number -      1,                // lev_collapsed_number -    ); -} else { -  writeln("blurb"); -} -debug(blurb) { -  foreach (blurb; the_blurb_section) { -    writeln(blurb.object); -  } -} -#+END_SRC -  **** DONE [#B] bibliography section (objects)                  :bibliography:  #+name: abs_post @@ -1077,6 +1037,207 @@ debug(bookindex) {                         // bookindex  }  #+END_SRC +**** DONE blurb section? + +#+name: abs_post +#+BEGIN_SRC d +if (an_object["blurb_nugget"].length == 0) { +  writeln("no blurb"); +  the_blurb_section ~= +    set_abstract_object.contents_heading( +      "(skip) there is no Blurb section",   // nugget/object +      "",               // attrib +      0,                // obj_cite_number +      [""],             // anchor tag +      "B",              // lev +      1,                // lev_markup_number +      1,                // lev_collapsed_number +    ); +} else { +  writeln("blurb"); +} +debug(blurb) { +  foreach (blurb; the_blurb_section) { +    writeln(blurb.object); +  } +} +#+END_SRC + +**** DONE [#B] toc, table of contents section (scroll & seg)       :contents: + +#+name: abs_post +#+BEGIN_SRC d + +indent=[ +  "hang_position" : 1, +  "base_position" : 1, +]; +if (the_endnotes_section["seg"].length > 1) { +  toc_txt_ = format( +    "{ %s }../%s.fn_suffix", +    "Endnotes", +    "endnotes",            // segment_object_belongs_to +  ); +  the_table_of_contents_section["seg"] ~= +    set_abstract_object.contents_para( +      "toc", +      toc_txt_, +      "",                   // attrib +      0, +      indent, +      false +    ); +} +if (the_endnotes_section["scroll"].length > 1) { +  toc_txt_ = format( +    "{ %s }#%s", +    "Endnotes", +    "endnotes",            // _anchor_tag +  ); +  the_table_of_contents_section["scroll"] ~= +    set_abstract_object.contents_para( +      "toc", +      toc_txt_, +      "",                  // attrib +      0, +      indent, +      false +    ); +} +if (the_glossary_section.length > 1) { +  toc_txt_ = format( +    "{ %s }../%s.fn_suffixs", +    "Glossary", +    "glossary",  // segment_object_belongs_to +  ); +  the_table_of_contents_section["seg"] ~= +    set_abstract_object.contents_para( +      "toc", +      toc_txt_, +      "",                   // attrib +      0, +      indent, +      false +    ); +  toc_txt_ = format( +    "{ %s }#%s", +    "Glossary", +    "glossary",            // _anchor_tag +  ); +  the_table_of_contents_section["scroll"] ~= +    set_abstract_object.contents_para( +      "toc", +      toc_txt_, +      "",                   // attrib +      0, +      indent, +      false +    ); +} +if (the_bibliography_section.length > 1){ +  toc_txt_ = format( +    "{ %s }../%s.fn_suffix", +    "Bibliography", +    "bibliography",        // segment_object_belongs_to +  ); +  the_table_of_contents_section["seg"] ~= +    set_abstract_object.contents_para( +      "toc", +      toc_txt_, +      "",                   // attrib +      0, +      indent, +      false +    ); +  toc_txt_ = format( +    "{ %s }#%s", +    "Bibliography", +    "bibliography",          // _anchor_tag +  ); +  the_table_of_contents_section["scroll"] ~= +    set_abstract_object.contents_para( +      "toc", +      toc_txt_, +      "",                   // attrib +      0, +      indent, +      false +    ); +} +if (the_bookindex_section["seg"].length > 1) { +  toc_txt_ = format( +    "{ %s }../%s.fn_suffix", +    "Book Index", +    "bookindex",          // segment_object_belongs_to +  ); +  the_table_of_contents_section["seg"] ~= +    set_abstract_object.contents_para( +      "toc", +      toc_txt_, +      "",                   // attrib +      0, +      indent, +      false +    ); +} +if (the_bookindex_section["scroll"].length > 1) { +  toc_txt_ = format( +    "{ %s }#%s", +    "Book Index", +    "bookindex",            // _anchor_tag +  ); +  the_table_of_contents_section["scroll"] ~= +    set_abstract_object.contents_para( +      "toc", +      toc_txt_, +      "",                   // attrib +      0, +      indent, +      false +    ); +} +if (the_blurb_section.length > 1) { +  toc_txt_ = format( +    "{ %s }../%s.fn_suffix", +    "Blurb", +    "blurb",                // segment_object_belongs_to +  ); +  the_table_of_contents_section["seg"] ~= +    set_abstract_object.contents_para( +      "toc", +      toc_txt_, +      "",                   // attrib +      0, +      indent, +      false +    ); +  toc_txt_ = format( +    "{ %s }#%s", +    "Blurb", +    "blurb",                // _anchor_tag +  ); +  the_table_of_contents_section["scroll"] ~= +    set_abstract_object.contents_para( +      "toc", +      toc_txt_, +      "",                   // attrib +      0, +      indent, +      false +    ); +} +debug(toc) { +  writefln( +    "%s %s", +    __LINE__, +    the_table_of_contents_section["seg"].length +  ); +  foreach (toc_linked_heading; the_table_of_contents_section["seg"]) { +    writeln(toc_linked_heading.object); +  } +} +#+END_SRC +  *** [#B] the document                                              :document:  #+name: abs_post @@ -2918,7 +3079,7 @@ struct ObjInlineMarkup {      string[string] obj_,      string[string][string] dochead_make_aa,      string segment_object_belongs_to, -    int obj_cite_number, +    string _anchor_tag,      ObjComposite[][string] the_table_of_contents_section,    )    in { } @@ -2933,7 +3094,7 @@ struct ObjInlineMarkup {        toc_txt_ = format(          "{ %s }#%s",          heading_toc_, -        obj_cite_number, +        _anchor_tag,        );        indent=[          "hang_position" : to!int(obj_["lev_markup_number"]), @@ -2942,7 +3103,7 @@ struct ObjInlineMarkup {        toc_txt_ = format(          "{ %s }#%s",          heading_toc_, -        obj_cite_number, +        _anchor_tag,        );        the_table_of_contents_section["scroll"] ~=          set_abstract_object.contents_para( @@ -3028,7 +3189,7 @@ struct ObjInlineMarkup {          "{ %s }../%s.fn_suffix#%s",          heading_toc_,          segment_object_belongs_to, -        obj_cite_number, +        _anchor_tag,        );        indent=[          "hang_position" : to!int(obj_["lev_markup_number"]),  | 
