aboutsummaryrefslogtreecommitdiffhomepage
path: root/org/output_show.org
diff options
context:
space:
mode:
Diffstat (limited to 'org/output_show.org')
-rw-r--r--org/output_show.org464
1 files changed, 464 insertions, 0 deletions
diff --git a/org/output_show.org b/org/output_show.org
new file mode 100644
index 0000000..0c54c5f
--- /dev/null
+++ b/org/output_show.org
@@ -0,0 +1,464 @@
+-*- mode: org -*-
+#+TITLE: metadata (multidocument) harvests
+#+DESCRIPTION: documents - structuring, various output representations & search
+#+FILETAGS: :doc_reform:hub:
+#+AUTHOR: Ralph Amissah
+#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 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 :results silent :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) doc_reform(s) tangle(T) template(t) WEB(W) noexport(n)
+
+* document abstraction _summary_ :module:doc_reform:metadoc_show_summary:
+** 0. module template metadoc summary
+- document summary from abstraction
+
+#+BEGIN_SRC d :tangle "../src/doc_reform/meta/metadoc_show_summary.d"
+module doc_reform.meta.metadoc_show_summary;
+template DocReformMetaDocSummary() {
+ void DocReformMetaDocSummary(S,T)(
+ const S doc_abstraction,
+ T doc_matters,
+ ) {
+ <<metadoc_show_summary_imports>>
+ <<metadoc_show_imports_shared>>
+ mixin InternalMarkup;
+ <<metadoc_show_initialize>>
+ if (doc_matters.opt.action.verbose
+ || doc_matters.opt.action.show_summary) {
+ <<meta_metadoc_show_summary_document>>
+ }
+ }
+}
+#+END_SRC
+
+** (last ocn)
+
+#+name: meta_metadoc_show_summary_document
+#+BEGIN_SRC d
+string[string] check = [
+ "last_object_number" : "NA [debug \"checkdoc\" not run]",
+ "last_object_number_body" : "0",
+ "last_object_number_book_index" : "0",
+];
+foreach (k; doc_matters.has.keys_seq.seg) {
+ foreach (obj; doc_abstraction[k]) {
+ if (obj.metainfo.is_of_part != "empty") {
+ if (!empty(obj.metainfo.object_number)) {
+ if (k == "body") {
+ check["last_object_number_body"] = obj.metainfo.object_number;
+ }
+ if (!(obj.metainfo.object_number.empty)) {
+ check["last_object_number"] = obj.metainfo.object_number;
+ }
+ }
+ if (k == "bookindex") {
+ if (obj.metainfo.object_number_type == 2) {
+ check["last_object_number_book_index"] = obj.metainfo.object_number_book_index;
+ }
+ }
+ }
+ }
+}
+#+END_SRC
+
+** document summary
+
+#+name: meta_metadoc_show_summary_document
+#+BEGIN_SRC d
+writefln(
+ "%s\n\"%s\", %s\n%s [%s]\n%s\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%30-s%10-d\n%s",
+ markup.repeat_character_by_number_provided("-", char_repeat_number),
+ doc_matters.conf_make_meta.meta.title_full,
+ doc_matters.conf_make_meta.meta.creator_author,
+ doc_matters.src.filename,
+ doc_matters.src.language,
+ markup.repeat_character_by_number_provided("-", char_repeat_number),
+ "- toc arr length:",
+ to!int(doc_abstraction["toc"].length),
+ "- doc_abstraction arr length:",
+ to!int(doc_abstraction["body"].length),
+ " doc body last obj on.#:",
+ to!int(check["last_object_number_body"]),
+ " - number of tables:",
+ doc_matters.has.tables,
+ " - number of codeblocks:",
+ doc_matters.has.codeblocks,
+ " - number of poems:",
+ doc_matters.has.poems,
+ " - number of blocks:",
+ doc_matters.has.blocks,
+ " - number of groups:",
+ doc_matters.has.groups,
+ " - number of images:",
+ doc_matters.has.images,
+ "- endnotes length:", // subtract headings
+ (doc_abstraction["endnotes"].length > 2)
+ ? (to!int(doc_abstraction["endnotes"].length - 2))
+ : 0,
+ "- glossary length:",
+ (doc_abstraction["glossary"].length > 1)
+ ? (to!int(doc_abstraction["glossary"].length))
+ : 0,
+ "- biblio length:",
+ (doc_abstraction["bibliography"].length > 1)
+ ? (to!int(doc_abstraction["bibliography"].length))
+ : 0,
+ "- bookindex length:",
+ (doc_abstraction["bookindex"].length > 1)
+ ? (to!int(doc_abstraction["bookindex"].length))
+ : 0,
+ " book idx last obj on.#:",
+ to!int(check["last_object_number_book_index"]),
+ "- blurb length:",
+ (doc_abstraction["blurb"].length > 1)
+ ? (to!int(doc_abstraction["blurb"].length))
+ : 0,
+ "* last obj on.#:",
+ to!int(check["last_object_number"]),
+ "number of segments:",
+ (doc_matters.has.segnames_lv4.length > 1)
+ ? (to!int(doc_matters.has.segnames_lv4.length))
+ : 0,
+ markup.repeat_character_by_number_provided("-", min_repeat_number),
+);
+#+END_SRC
+
+* show config
+** 0. module template show config
+--show-config (show config)
+
+#+BEGIN_SRC d :tangle "../src/doc_reform/meta/metadoc_show_config.d"
+module doc_reform.meta.metadoc_show_config;
+template DocReformShowConfig() {
+ void DocReformShowConfig(T)(
+ T doc_matters,
+ ) {
+ <<metadoc_show_summary_imports>>
+ <<metadoc_show_imports_shared>>
+ mixin InternalMarkup;
+ <<metadoc_show_initialize>>
+ if (doc_matters.opt.action.show_config
+ && doc_matters.opt.action.debug_do
+ ) {
+ writeln(doc_matters.conf_make_meta.conf);
+ }
+ if (doc_matters.opt.action.show_config) {
+ <<meta_metadoc_show_config>>
+ }
+ }
+}
+#+END_SRC
+
+** show config
+
+#+name: meta_metadoc_show_config
+#+BEGIN_SRC d
+writefln(
+ "%s\n\"%s\", %s\n%s\n%s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n",
+ markup.repeat_character_by_number_provided("-", char_repeat_number),
+ doc_matters.conf_make_meta.meta.title_full,
+ doc_matters.conf_make_meta.meta.creator_author,
+ doc_matters.src.filename,
+ markup.repeat_character_by_number_provided("-", char_repeat_number),
+ "- webserv url domain:",
+ doc_matters.conf_make_meta.conf.webserv_url_domain,
+ "- webserv doc root:",
+ doc_matters.conf_make_meta.conf.webserv_url_doc_root,
+ "- webserv doc path:",
+ doc_matters.conf_make_meta.conf.webserv_url_doc_path,
+ "- webserv images (location):",
+ doc_matters.conf_make_meta.conf.webserv_images,
+ "- webserv cgi:",
+ doc_matters.conf_make_meta.conf.webserv_cgi,
+ "- webserv cgi host:",
+ doc_matters.conf_make_meta.conf.webserv_cgi_host,
+ "- webserv cgi host path:",
+ doc_matters.conf_make_meta.conf.webserv_cgi_host_path,
+ "- webserv cgi port:",
+ doc_matters.conf_make_meta.conf.webserv_cgi_port,
+ "- webserv cgi user:",
+ doc_matters.conf_make_meta.conf.webserv_cgi_user,
+ "- webserv cgi file links:",
+ doc_matters.conf_make_meta.conf.webserv_cgi_file_links,
+ "- output path:",
+ doc_matters.conf_make_meta.conf.output_path,
+ "- processing concordance max:",
+ doc_matters.conf_make_meta.conf.processing_concord_max,
+ "- flag act0:",
+ doc_matters.conf_make_meta.conf.flag_act0,
+ "- flag act1:",
+ doc_matters.conf_make_meta.conf.flag_act1,
+ "- flag act2:",
+ doc_matters.conf_make_meta.conf.flag_act2,
+ "- flag act3:",
+ doc_matters.conf_make_meta.conf.flag_act3,
+ "- flag act4:",
+ doc_matters.conf_make_meta.conf.flag_act4,
+ "- flag act5:",
+ doc_matters.conf_make_meta.conf.flag_act5,
+ "- flag act6:",
+ doc_matters.conf_make_meta.conf.flag_act6,
+ "- flag act7:",
+ doc_matters.conf_make_meta.conf.flag_act7,
+ "- flag act8:",
+ doc_matters.conf_make_meta.conf.flag_act8,
+ "- flag act9:",
+ doc_matters.conf_make_meta.conf.flag_act9,
+ "- default papersize:",
+ doc_matters.conf_make_meta.conf.default_papersize,
+ "- default text wrap:",
+ doc_matters.conf_make_meta.conf.default_text_wrap,
+ "- default emphasis markup symbol:",
+ doc_matters.conf_make_meta.conf.default_emphasis,
+ "- default language:",
+ doc_matters.conf_make_meta.conf.default_language,
+ "- default hash digest:",
+ doc_matters.conf_make_meta.conf.default_digest,
+ "- search flag:",
+ doc_matters.conf_make_meta.conf.search_flag,
+ "- search action:",
+ doc_matters.conf_make_meta.conf.search_action,
+ "- search db:",
+ doc_matters.conf_make_meta.conf.search_db,
+ "- search title:",
+ doc_matters.conf_make_meta.conf.search_title,
+);
+#+END_SRC
+
+* show make
+** 0. module template show make
+--show-make (show document make)
+
+#+BEGIN_SRC d :tangle "../src/doc_reform/meta/metadoc_show_make.d"
+module doc_reform.meta.metadoc_show_make;
+template DocReformShowMake() {
+ void DocReformShowMake(T)(
+ T doc_matters,
+ ) {
+ <<metadoc_show_summary_imports>>
+ <<metadoc_show_imports_shared>>
+ mixin InternalMarkup;
+ <<metadoc_show_initialize>>
+ if (doc_matters.opt.action.show_make
+ && doc_matters.opt.action.debug_do
+ ) {
+ writeln(doc_matters.conf_make_meta.make);
+ }
+ if (doc_matters.opt.action.show_make) {
+ <<meta_metadoc_show_make>>
+ }
+ }
+}
+#+END_SRC
+
+** show make
+
+#+name: meta_metadoc_show_make
+#+BEGIN_SRC d
+writefln(
+ "%s\n\"%s\", %s\n%s\n%s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n",
+ markup.repeat_character_by_number_provided("-", char_repeat_number),
+ doc_matters.conf_make_meta.meta.title_full,
+ doc_matters.conf_make_meta.meta.creator_author,
+ doc_matters.src.filename,
+ markup.repeat_character_by_number_provided("-", char_repeat_number),
+ "- bold:",
+ doc_matters.conf_make_meta.make.bold,
+ "- breaks:",
+ doc_matters.conf_make_meta.make.breaks,
+ "- cover image:",
+ doc_matters.conf_make_meta.make.cover_image,
+ "- css:",
+ doc_matters.conf_make_meta.make.css,
+ "- emphasis:",
+ doc_matters.conf_make_meta.make.emphasis,
+ "- css:",
+ doc_matters.conf_make_meta.make.css,
+ "- footer:",
+ doc_matters.conf_make_meta.make.footer,
+ "- headings:",
+ doc_matters.conf_make_meta.make.headings,
+ "- home button image:",
+ doc_matters.conf_make_meta.make.home_button_image,
+ "- home button text:",
+ doc_matters.conf_make_meta.make.home_button_text,
+ "- italics:",
+ doc_matters.conf_make_meta.make.italics,
+ "- auto num top at level:",
+ doc_matters.conf_make_meta.make.auto_num_top_at_level,
+ "- auto num top level:",
+ doc_matters.conf_make_meta.make.auto_num_top_lv,
+ "- auto num depth:",
+ doc_matters.conf_make_meta.make.auto_num_depth,
+ "- texpdf font:",
+ doc_matters.conf_make_meta.make.texpdf_font,
+);
+#+END_SRC
+
+
+* show metadata
+** 0. module template show metadata
+--show-metadata (show document metadata)
+
+#+BEGIN_SRC d :tangle "../src/doc_reform/meta/metadoc_show_metadata.d"
+module doc_reform.meta.metadoc_show_metadata;
+template DocReformShowMetaData() {
+ void DocReformShowMetaData(T)(
+ T doc_matters,
+ ) {
+ <<metadoc_show_summary_imports>>
+ <<metadoc_show_imports_shared>>
+ mixin InternalMarkup;
+ <<metadoc_show_initialize>>
+ if (doc_matters.opt.action.show_metadata
+ && doc_matters.opt.action.debug_do
+ ) {
+ writeln(doc_matters.conf_make_meta.meta);
+ }
+ if (doc_matters.opt.action.show_metadata) {
+ <<meta_metadoc_show_metadata>>
+ }
+ }
+}
+#+END_SRC
+
+** show metadata
+
+#+name: meta_metadoc_show_metadata
+#+BEGIN_SRC d
+writefln(
+ "%s\n\"%s\", %s\n%s\n%s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n%30-s%10-s\n",
+ markup.repeat_character_by_number_provided("-", char_repeat_number),
+ doc_matters.conf_make_meta.meta.title_full,
+ doc_matters.conf_make_meta.meta.creator_author,
+ doc_matters.src.filename,
+ markup.repeat_character_by_number_provided("-", char_repeat_number),
+ "- author:",
+ doc_matters.conf_make_meta.meta.creator_author,
+ "- author array:",
+ doc_matters.conf_make_meta.meta.creator_author_arr,
+ "- author surname:",
+ doc_matters.conf_make_meta.meta.creator_author_surname,
+ "- author email:",
+ doc_matters.conf_make_meta.meta.creator_author_email,
+ "- illustrator:",
+ doc_matters.conf_make_meta.meta.creator_illustrator,
+ "- translator:",
+ doc_matters.conf_make_meta.meta.creator_translator,
+ "- title full:",
+ doc_matters.conf_make_meta.meta.title_full,
+ "- title main:",
+ doc_matters.conf_make_meta.meta.title_main,
+ "- title sub:",
+ doc_matters.conf_make_meta.meta.title_subtitle,
+ "- title edition:",
+ doc_matters.conf_make_meta.meta.title_edition,
+ "- title language:",
+ doc_matters.conf_make_meta.meta.title_language,
+ "- title note:",
+ doc_matters.conf_make_meta.meta.title_note,
+ "- classify dewey:",
+ doc_matters.conf_make_meta.meta.classify_dewey,
+ "- classify library of congress:",
+ doc_matters.conf_make_meta.meta.classify_loc,
+ "- classify keywords:",
+ doc_matters.conf_make_meta.meta.classify_keywords,
+ "- classify topic register:",
+ doc_matters.conf_make_meta.meta.classify_topic_register,
+ "- date added to site:",
+ doc_matters.conf_make_meta.meta.date_added_to_site,
+ "- date available:",
+ doc_matters.conf_make_meta.meta.date_available,
+ "- date created:",
+ doc_matters.conf_make_meta.meta.date_created,
+ "- date issued:",
+ doc_matters.conf_make_meta.meta.date_issued,
+ "- date modified:",
+ doc_matters.conf_make_meta.meta.date_modified,
+ "- date published:",
+ doc_matters.conf_make_meta.meta.date_published,
+ "- date valid:",
+ doc_matters.conf_make_meta.meta.date_valid,
+ // links
+ "- notes abstract:",
+ doc_matters.conf_make_meta.meta.notes_abstract,
+ "- notes description:",
+ doc_matters.conf_make_meta.meta.notes_description,
+ "- original language:",
+ doc_matters.conf_make_meta.meta.original_language,
+ "- original language character:",
+ doc_matters.conf_make_meta.meta.original_language_char,
+ "- original source:",
+ doc_matters.conf_make_meta.meta.original_source,
+ "- original title:",
+ doc_matters.conf_make_meta.meta.original_title,
+ // publisher
+ "- rights copyright:",
+ doc_matters.conf_make_meta.meta.rights_copyright,
+ "- rights copyright text:",
+ doc_matters.conf_make_meta.meta.rights_copyright_text,
+ "- rights copyright audio:",
+ doc_matters.conf_make_meta.meta.rights_copyright_audio,
+ "- rights copyright cover:",
+ doc_matters.conf_make_meta.meta.rights_copyright_cover,
+ "- rights copyright illustrations:",
+ doc_matters.conf_make_meta.meta.rights_copyright_illustrations,
+ "- rights copyright photographs:",
+ doc_matters.conf_make_meta.meta.rights_copyright_photographs,
+ "- rights copyright translation:",
+ doc_matters.conf_make_meta.meta.rights_copyright_translation,
+ "- rights copyright video:",
+ doc_matters.conf_make_meta.meta.rights_copyright_video,
+ "- rights license:",
+ doc_matters.conf_make_meta.meta.rights_license,
+);
+#+END_SRC
+
+* shared init ?
+** init
+
+*** imports
+
+#+name: metadoc_show_imports_shared
+#+BEGIN_SRC d
+import
+ std.array,
+ std.exception,
+ std.regex,
+ std.stdio,
+ std.string,
+ std.traits,
+ std.typecons,
+ std.uni,
+ std.utf,
+ std.conv : to;
+#+END_SRC
+
+*** imports
+
+#+name: metadoc_show_summary_imports
+#+BEGIN_SRC d
+import
+ doc_reform.meta.defaults,
+ doc_reform.meta.rgx;
+#+END_SRC
+
+*** initialize :report:
+
+#+name: metadoc_show_initialize
+#+BEGIN_SRC d
+auto markup = InlineMarkup();
+auto min_repeat_number = 66;
+auto char_repeat_number = (doc_matters.conf_make_meta.meta.title_full.length
+ + doc_matters.conf_make_meta.meta.creator_author.length + 4);
+char_repeat_number = (char_repeat_number > min_repeat_number)
+? char_repeat_number
+: min_repeat_number;
+#+END_SRC