module doc_reform.meta.metadoc_harvest; template spineMetaDocHarvest() { auto spineMetaDocHarvest(T,H)( T doc_matters, H hvst, ) @safe { import doc_reform.meta.defaults, doc_reform.meta.rgx; import std.array, std.exception, std.regex, std.stdio, std.string, std.typecons, std.uni, std.utf, std.conv : to; mixin InternalMarkup; auto markup = InlineMarkup(); import doc_reform.io_out.paths_output; auto pth_html_abs = spinePathsHTML!()(doc_matters.output_path, doc_matters.src.language); auto pth_html_rel = spineDocRootTreeHTML!()(doc_matters.src.language); hvst.harvest.title = doc_matters.conf_make_meta.meta.title_full; hvst.harvest.author = doc_matters.conf_make_meta.meta.creator_author; hvst.harvest.author_surname = doc_matters.conf_make_meta.meta.creator_author_surname; hvst.harvest.author_surname_fn = doc_matters.conf_make_meta.meta.creator_author_surname_fn; hvst.harvest.author_arr = doc_matters.conf_make_meta.meta.creator_author_arr; hvst.harvest.language_original = doc_matters.conf_make_meta.meta.original_language; hvst.harvest.language = doc_matters.src.language; hvst.harvest.uid = doc_matters.src.doc_uid; hvst.harvest.date_published = doc_matters.conf_make_meta.meta.date_published; hvst.harvest.topic_register_arr = doc_matters.conf_make_meta.meta.classify_topic_register_arr; hvst.harvest.path_html_metadata = pth_html_rel.fn_metadata(doc_matters.src.filename); hvst.harvest.path_html_scroll = pth_html_rel.fn_scroll(doc_matters.src.filename); hvst.harvest.path_html_segtoc = pth_html_rel.fn_seg(doc_matters.src.filename, "toc"); hvst.harvest.path_abs_html_scroll = pth_html_abs.fn_scroll(doc_matters.src.filename); hvst.harvest.path_abs_html_segtoc = pth_html_abs.fn_seg(doc_matters.src.filename, "toc"); return hvst.harvest; } }