From 3668f9ec6b4dd096f2109557ca523b3d774ad6d1 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Tue, 22 Oct 2019 19:56:58 -0400 Subject: minor --- src/doc_reform/meta/conf_make_meta_json.d | 15 ++++-- src/doc_reform/meta/conf_make_meta_yaml.d | 35 ++++++++++---- src/doc_reform/meta/metadoc_from_src.d | 17 +++++-- src/doc_reform/meta/metadoc_harvests_authors.d | 36 +++++++++++++-- src/doc_reform/meta/metadoc_harvests_topics.d | 64 +++++++++++++++++++------- 5 files changed, 127 insertions(+), 40 deletions(-) (limited to 'src/doc_reform/meta') diff --git a/src/doc_reform/meta/conf_make_meta_json.d b/src/doc_reform/meta/conf_make_meta_json.d index 0a3c4c2..3d69a3c 100644 --- a/src/doc_reform/meta/conf_make_meta_json.d +++ b/src/doc_reform/meta/conf_make_meta_json.d @@ -393,16 +393,21 @@ static template contentJSONtoDocReformStruct() { = _struct_composite.meta.creator_author.split(rgx.arr_delimiter); auto _lastname = appender!(char[])(); foreach (author_raw; authors_raw_arr) { - author_arr ~= author_raw.replace(rgx.raw_author_munge, "$2 $1"); - authors_hash_arr["first"] ~= author_raw.replace(rgx.raw_author_munge, "$2"); - authors_hash_arr["last"] ~= author_raw.replace(rgx.raw_author_munge, "$1"); - authors_hash_arr["full"] ~= author_raw.replace(rgx.raw_author_munge, "$2 $1"); - authors_hash_arr["as_input"] ~= author_raw; if (auto m = author_raw.match(rgx.raw_author_munge)) { + author_arr ~= author_raw.replace(rgx.raw_author_munge, "$2 $1"); + authors_hash_arr["first"] ~= author_raw.replace(rgx.raw_author_munge, "$2"); + authors_hash_arr["last"] ~= author_raw.replace(rgx.raw_author_munge, "$1"); + authors_hash_arr["full"] ~= author_raw.replace(rgx.raw_author_munge, "$2 $1"); (m.captures[1]).map!toUpper.copy(_lastname); authors_hash_arr["last_first"] ~= _lastname.data.to!string ~ ", " ~ m.captures[2]; _lastname = appender!(char[])(); + } { + author_arr ~= author_raw; + authors_hash_arr["last"] ~= author_raw; + authors_hash_arr["full"] ~= author_raw; + authors_hash_arr["last_first"] ~= author_raw; } + authors_hash_arr["as_input"] ~= author_raw; } _struct_composite.meta.creator_author_arr = author_arr; _struct_composite.meta.creator_author = author_arr.join(", ").chomp.chomp; diff --git a/src/doc_reform/meta/conf_make_meta_yaml.d b/src/doc_reform/meta/conf_make_meta_yaml.d index 8b76a3e..a9c4434 100644 --- a/src/doc_reform/meta/conf_make_meta_yaml.d +++ b/src/doc_reform/meta/conf_make_meta_yaml.d @@ -451,16 +451,21 @@ static template contentYAMLtoDocReformStruct() { = _struct_composite.meta.creator_author.split(rgx.arr_delimiter); auto _lastname = appender!(char[])(); foreach (author_raw; authors_raw_arr) { - author_arr ~= author_raw.replace(rgx.raw_author_munge, "$2 $1"); - authors_hash_arr["first"] ~= author_raw.replace(rgx.raw_author_munge, "$2"); - authors_hash_arr["last"] ~= author_raw.replace(rgx.raw_author_munge, "$1"); - authors_hash_arr["full"] ~= author_raw.replace(rgx.raw_author_munge, "$2 $1"); - authors_hash_arr["as_input"] ~= author_raw; if (auto m = author_raw.match(rgx.raw_author_munge)) { + author_arr ~= author_raw.replace(rgx.raw_author_munge, "$2 $1"); + authors_hash_arr["first"] ~= author_raw.replace(rgx.raw_author_munge, "$2"); + authors_hash_arr["last"] ~= author_raw.replace(rgx.raw_author_munge, "$1"); + authors_hash_arr["full"] ~= author_raw.replace(rgx.raw_author_munge, "$2 $1"); (m.captures[1]).map!toUpper.copy(_lastname); authors_hash_arr["last_first"] ~= _lastname.data.to!string ~ ", " ~ m.captures[2]; _lastname = appender!(char[])(); + } else { + author_arr ~= author_raw; + authors_hash_arr["last"] ~= author_raw; + authors_hash_arr["full"] ~= author_raw; + authors_hash_arr["last_first"] ~= author_raw; } + authors_hash_arr["as_input"] ~= author_raw; } _struct_composite.meta.creator_author_arr = author_arr; _struct_composite.meta.creator_author = author_arr.join(", ").chomp.chomp; @@ -781,9 +786,15 @@ static template configParseYAMLreturnDocReformStruct() { CCm _make_and_meta_struct, M _manifested ){ - Node yaml_root = Loader.fromString(_document_struct.content).load(); - _make_and_meta_struct - = contentYAMLtoDocReformStruct!()(_make_and_meta_struct, yaml_root, _manifested, _document_struct.filename); // struct from yaml + Node yaml_root; + try { + yaml_root = Loader.fromString(_document_struct.content).load(); + _make_and_meta_struct + = contentYAMLtoDocReformStruct!()(_make_and_meta_struct, yaml_root, _manifested, _document_struct.filename); // struct from yaml + } catch { + import std.stdio; + writeln("ERROR failed to read content, not parsed as yaml"); + } return _make_and_meta_struct; } } @@ -812,8 +823,12 @@ static template docHeaderMakeAndMetaTupYamlExtractAndConvertToStruct() { ) { Node _yaml_root; if (header_src.match(rgx.yaml_header_meta_title)) { - import dyaml; - _yaml_root = Loader.fromString(header_src).load(); + try { + _yaml_root = Loader.fromString(header_src).load(); + } catch { + import std.stdio; + writeln("ERROR failed to read document header, not parsed as yaml"); + } } auto _header_and_make_and_meta_struct = contentYAMLtoDocReformStruct!()(_make_and_meta_struct, _yaml_root, _manifested, "header"); diff --git a/src/doc_reform/meta/metadoc_from_src.d b/src/doc_reform/meta/metadoc_from_src.d index f5e0b81..4eb7771 100644 --- a/src/doc_reform/meta/metadoc_from_src.d +++ b/src/doc_reform/meta/metadoc_from_src.d @@ -3855,11 +3855,18 @@ template DocReformDocAbstraction() { assertions_doc_structure(an_object, lv); // includes most of the logic for collapsed levels switch (an_object["lev"]) { case "A": // Title set - an_object[an_object_key]=(an_object[an_object_key]) - .replaceFirst(rgx.variable_doc_title, - (conf_make_meta.meta.title_full ~ ",")) - .replaceFirst(rgx.variable_doc_author, - conf_make_meta.meta.creator_author); + if (an_object[an_object_key].match(rgx.variable_doc_title) + && an_object[an_object_key].match(rgx.variable_doc_author)) { + an_object[an_object_key] = an_object[an_object_key] + .replaceFirst(rgx.variable_doc_title, + (conf_make_meta.meta.title_full ~ ", ")) + .replaceFirst(rgx.variable_doc_author, + conf_make_meta.meta.creator_author); + } else if (an_object[an_object_key].match(rgx.variable_doc_title)) { + an_object[an_object_key] = an_object[an_object_key] + .replaceFirst(rgx.variable_doc_title, + conf_make_meta.meta.title_full); + } collapsed_lev["h0"] = 0; an_object["lev_collapsed_number"] = collapsed_lev["h0"].to!string; diff --git a/src/doc_reform/meta/metadoc_harvests_authors.d b/src/doc_reform/meta/metadoc_harvests_authors.d index 1645d9b..29fcc72 100644 --- a/src/doc_reform/meta/metadoc_harvests_authors.d +++ b/src/doc_reform/meta/metadoc_harvests_authors.d @@ -44,6 +44,22 @@ string theme_dark_0 = format(q"┃ color : #888888; text-decoration : underline; } + a.lev0:hover { + color : #FFFFFF; + background-color : #000000; + } + a.lev1:hover { + color : #FFFFFF; + background : #333333; + } + a.lev2:hover { + color : #FFFFFF; + background : #555555; + } + a.lev3:hover { + color : #FFFFFF; + background : #777777; + } ┃"); string theme_light_0 = format(q"┃ body { @@ -70,6 +86,20 @@ string theme_light_0 = format(q"┃ color : #003399; text-decoration : underline; } + a.lev0:hover { + color : #000000; + background-color : #FFFFFF; + } + a.lev1:hover { + color : #FFFFFF; + background : #444444; + } + a.lev2:hover { + background : #888888; + } + a.lev3:hover { + background : #BBBBBB; + } ┃"); string theme_dark_1 = format(q"┃ h1 { @@ -141,7 +171,7 @@ string theme_light_1 = format(q"┃ - +