aboutsummaryrefslogtreecommitdiffhomepage
path: root/org/sdp.org
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2016-06-25 06:37:22 -0400
committerRalph Amissah <ralph@amissah.com>2019-04-04 14:48:18 -0400
commitf0c845eba3718fd0c732aebf25eb33e689798e03 (patch)
treec2ea36e199950647b1d3cce153691bb8f4fec378 /org/sdp.org
parentstep5.1 headers sdlang (like native headers) converted to json for common int... (diff)
step6 headers (&config), native & sdlang to json internally
Diffstat (limited to 'org/sdp.org')
-rw-r--r--org/sdp.org106
1 files changed, 35 insertions, 71 deletions
diff --git a/org/sdp.org b/org/sdp.org
index 2d4b7b9..89cd588 100644
--- a/org/sdp.org
+++ b/org/sdp.org
@@ -28,7 +28,7 @@ struct Version {
int minor;
int patch;
}
-enum ver = Version(0, 5, 1);
+enum ver = Version(0, 6, 0);
#+END_SRC
** pre loop init
@@ -41,7 +41,7 @@ enum ver = Version(0, 5, 1);
[[./ao_read_source_files.org][ao_read_source_files]]
[[./output_hub.org][output hub]]
-**** sdp :import:sdp:
+**** sdp :import:sdp:
***** TODO src/sdp.d
├── src
@@ -61,6 +61,8 @@ import
ao_abstract_doc_source, // sdp/ao_abstract_doc_source.d
ao_defaults, // sdp/ao_defaults.d
ao_header_extract, // sdp/ao_header_extract.d
+ ao_header_extract_native, // sdp/ao_header_extract_native.d
+ ao_header_extract_sdlang, // sdp/ao_header_extract_sdlang.d
ao_read_config_files, // sdp/ao_read_config_files.d
ao_read_source_files, // sdp/ao_read_source_files.d
ao_output_debugs, // sdp/ao_output_debugs.d
@@ -70,14 +72,11 @@ import
// std.conv;
#+END_SRC
-**** sdlang :import:sdlang:
+**** sdlang :import:sdlang:
#+NAME: sdlang_imports_use
#+BEGIN_SRC d
/+ sdlang http://sdlang.org +/
import sdlang; // sdlang.d
- // sdlang.parser, // sdlang/parser.d
- // sdlang.exceptions; // sdp/ao_ansi_colors.d
- // // std.conv;
#+END_SRC
**** std :import:std:
@@ -163,7 +162,7 @@ struct SDPoutput {
}
#+END_SRC
-**** version.txt :version:
+**** version.txt :version:
#+NAME: sdp_version_mixin
#+BEGIN_SRC d
@@ -174,12 +173,11 @@ mixin(import("version.txt"));
#+NAME: sdp_args
#+BEGIN_SRC d
-mixin SiSUheaderSkel;
-mixin SiSUheaderExtractNative;
-mixin SiSUheaderExtractSDLang;
+mixin SiSUheaderRegister;
+mixin SiSUheaderExtractHub;
mixin SiSUbiblio;
mixin SiSUrgxInitFlags;
-mixin SiSUconfiguration;
+mixin SiSUconfigSDLangHub;
mixin SiSUmarkupRaw;
mixin SiSUdocAbstraction;
mixin SiSUoutputDebugs;
@@ -192,8 +190,7 @@ mixin ScreenTxtColors;
#+NAME: sdp_args
#+BEGIN_SRC d
auto raw = MarkupRaw();
-auto head_native = HeaderDocMetadataAndMakeNativeToJson();
-auto headsdl = HeaderExtractSDL();
+auto head = HeaderDocMetadataAndMake();
auto abs = Abstraction();
auto dbg = SDPoutputDebugs();
auto output = SDPoutput();
@@ -308,60 +305,13 @@ foreach(arg; args) {
}
#+END_SRC
-*** config files (load) :config:files:
-#+BEGIN_SRC text
-./.sisu ./_sisu ~/.sisu /etc/.sisu
-#+END_SRC
-
-#+BEGIN_SRC d
-// string[string] envVars = environment.toAA();
-// writeln(envVars);
-/+
-writefln(
- "pwd: %s; home: %s",
- environment["PWD"],
- environment["HOME"]
-);
-+/
-#+END_SRC
+*** TODO config files (load & read) (so far only SDLang) :config:files:
-**** config load
#+NAME: sdp_config_files
#+BEGIN_SRC d
-auto conf = Config();
-auto configuration = conf.readInConfigFile();
-#+END_SRC
-
-**** config read
-
-#+NAME: sdp_config_files
-#+BEGIN_SRC d
-/+ sdlang config +/
-Tag sdl_root_conf;
-try {
- sdl_root_conf = parseSource(configuration);
-}
-catch(SDLangParseException e) {
- stderr.writeln("SDLang problem with config.sdl content");
- // Error messages of the form:
- // myFile.sdl(5:28): Error: Invalid integer suffix.
- stderr.writeln(e.msg);
-}
-debug(sdlang) {
- // Value is a std.variant.Algebraic
- Value output_dir_structure_by = sdl_root_conf.tags["output_dir_structure_by"][0].values[0];
- assert(output_dir_structure_by.type == typeid(string));
- writeln(output_dir_structure_by);
-
- // Tag person = sdl_root_conf.namespaces["myNamespace"].tags["person"][0];
- // writeln("Name: ", person.attributes["name"][0].value);
- //
- // int age = person.tags["age"][0].values[0].get!int();
- // writeln("Age: ", age);
-
- writeln("config SDL:");
- writeln(sdl_root_conf.toSDLDocument());
-}
+auto conf = ConfigHub();
+auto sdl_root_configuration = conf.configSDLang("conf.sdl");
+auto sdl_root_document_make = conf.configSDLang("sisu_document_make");
#+END_SRC
** each file (loop) [+2] :loop:files:
@@ -412,10 +362,7 @@ debug(header_and_content) {
**** [#A] read doc header: metadata & make :doc:header:metadata:make:
#+NAME: sdp_each_file_do
#+BEGIN_SRC d
-// Tuple!(JSONValue[string], JSONValue[string]) header_make_and_meta_tuple;
-auto header_make_and_meta_tuple = (match(header, rgx.native_header_meta_title))
-? (head_native.headerContentJSON(header))
-: (headsdl.headerSDLangToJSON(header));
+auto header_make_and_meta_tuple = head.headerContentJSON(header);
static assert(!isTypeTuple!(header_make_and_meta_tuple));
JSONValue[string] dochead_make_json = header_make_and_meta_tuple[0];
JSONValue[string] dochead_meta_json = header_make_and_meta_tuple[1];
@@ -425,7 +372,7 @@ JSONValue[string] dochead_meta_json = header_make_and_meta_tuple[1];
#+NAME: sdp_each_file_do
#+BEGIN_SRC d
/+ ↓ process document, return abstraction as tuple +/
-auto t = abs.abstract_doc_source(sourcefile_content);
+auto t = abs.abstract_doc_source(sourcefile_content, dochead_make_json, dochead_meta_json);
static assert(!isTypeTuple!(t));
auto doc_ao_contents = t[0]; // contents ~ endnotes ~ bookindex;
// static assert(!isIterable!(doc_ao_contents));
@@ -444,8 +391,8 @@ debug(checkdoc) { // checkbook & dumpdoc
doc_ao_contents,
doc_ao_bookindex_unordered_hashes,
doc_ao_biblio,
- // doc_ao_make_json,
- // doc_ao_metadata_json,
+ dochead_make_json,
+ dochead_meta_json,
fn_src,
opt_action_bool
);
@@ -674,3 +621,20 @@ democratizing_innovation.eric_von_hippel.sst
└── di_evh.png
#+END_SRC
+
+** check
+#+BEGIN_SRC text
+./.sisu ./_sisu ~/.sisu /etc/.sisu
+#+END_SRC
+
+#+BEGIN_SRC d
+// string[string] envVars = environment.toAA();
+// writeln(envVars);
+/+
+writefln(
+ "pwd: %s; home: %s",
+ environment["PWD"],
+ environment["HOME"]
+);
++/
+#+END_SRC