diff options
Diffstat (limited to 'org/doc_reform.org')
-rw-r--r-- | org/doc_reform.org | 38 |
1 files changed, 35 insertions, 3 deletions
diff --git a/org/doc_reform.org b/org/doc_reform.org index d7ea680..2fd11ac 100644 --- a/org/doc_reform.org +++ b/org/doc_reform.org @@ -69,7 +69,8 @@ version (Posix) { module doc_reform.sisu_document_parser; import doc_reform.conf.compile_time_info, - doc_reform.meta.metadoc; + doc_reform.meta.metadoc, + doc_reform.meta.metadochead; <<imports_doc_reform>> import std.algorithm; import std.parallelism; @@ -832,8 +833,39 @@ writeln("no recognized filename"); break; // terminate, stop #+END_SRC -* 2. _document abstraction functions_ :module:doc_reform:abstraction: -** 0. module template +* 2. pre-processing +** Harvest _get document head_ for harvest (separate thread) +*** 0 module template +- harvest, get document head + +#+BEGIN_SRC d :tangle "../src/doc_reform/meta/metadochead.d" +module doc_reform.meta.metadochead; +template DocReformHarvestGetFromHead() { // TODO + <<imports_doc_reform>> + <<doc_reform_mixin>> + enum headBody { header, body_content, insert_file_list, image_list } + enum makeMeta { make, meta } + enum docAbst { doc_abstraction, section_keys, segnames, segnames_0_4, images } + static auto rgx = Rgx(); + auto DocReformHarvestGetFromHead(E,O,M)( // TODO + E _env, + O _opt_action, + M _manifest + ){ + <<doc_reform_conf_files_in_toml>> + <<doc_reform_each_file_do_read_and_split_sisu_markup_file_content_into_header_and_body>> + <<doc_reform_each_file_do_split_sisu_markup_file_header_into_make_and_meta_structs>> + <<doc_reform_each_file_do_document_matters_abridged>> + auto t = tuple(doc_matters_shared, doc_matters_abridged_collected); + static assert(t.length==2); + return t; + } +} +#+END_SRC + +** Output _document abstraction functions_ :module:doc_reform:abstraction: +*** 0 module template +- abstraction template #+BEGIN_SRC d :tangle "../src/doc_reform/meta/metadoc.d" module doc_reform.meta.metadoc; |