diff options
Diffstat (limited to 'org')
-rw-r--r-- | org/ao_abstract_doc_source.org | 40 | ||||
-rw-r--r-- | org/ao_conf_make_meta.org (renamed from org/ao_header_extract.org) | 0 | ||||
-rw-r--r-- | org/ao_defaults.org | 48 | ||||
-rw-r--r-- | org/ao_output_debugs.org | 20 | ||||
-rw-r--r-- | org/ao_read_source_files.org | 12 | ||||
-rw-r--r-- | org/compile_time_info.org | 4 | ||||
-rw-r--r-- | org/output.org | 10 | ||||
-rw-r--r-- | org/sdp.org | 8 |
8 files changed, 111 insertions, 31 deletions
diff --git a/org/ao_abstract_doc_source.org b/org/ao_abstract_doc_source.org index 1942b5e..75c581d 100644 --- a/org/ao_abstract_doc_source.org +++ b/org/ao_abstract_doc_source.org @@ -47,14 +47,11 @@ mixin InternalMarkup; #+name: abs_init_struct #+BEGIN_SRC d /+ initialize +/ - auto rgx = Rgx(); ObjComposite[] contents_the_objects; - string[string] an_object, processing; auto set_abstract_object = ObjectAbstractSet(); auto note_section = NotesSection(); - /+ enum +/ enum State { off, on } enum TriState { off, on, closing } // make aware, possibility of third state @@ -71,33 +68,27 @@ enum DocStructMarkupHeading { content_non_header } // header section A-D; header text 1-4 enum DocStructCollapsedHeading { lv0, lv1, lv2, lv3, lv4, lv5, lv6, lv7 } // not yet used - /+ biblio variables +/ string biblio_tag_name, biblio_tag_entry, st; string[] biblio_arr_json; JSONValue[] bib_arr_json; int bib_entry; - /+ counters +/ long counter, previous_count; int[string] line_occur; int verse_line, heading_pointer; - /+ paragraph attributes +/ string[string] indent; bool bullet = true; string content_non_header = "8"; - auto obj_im = ObjInlineMarkup(); auto obj_att = ObjAttrib(); - /+ ocn +/ int obj_cite_number, obj_cite_number_; auto object_citation_number = OCNemitter(); int obj_cite_number_emit(int obj_cite_number_status_flag) { return object_citation_number.obj_cite_number_emitter(obj_cite_number_status_flag); } - /+ book index variables +/ string book_idx_tmp; string[][string][string] bookindex_unordered_hashes; @@ -105,7 +96,6 @@ auto bookindex_extract_hash = BookIndexNuggetHash(); string[][string][string] bkidx_hash(string bookindex_section, int obj_cite_number) { return bookindex_extract_hash.bookindex_nugget_hash(bookindex_section, obj_cite_number); } - /+ node +/ string node; auto node_construct = NodeStructureMetadata(); @@ -400,6 +390,7 @@ if (matchFirst(line, rgx.block_open)) { #+END_SRC ******* asserts :assert: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d assert( @@ -424,7 +415,9 @@ if (matchFirst(line, rgx.block_open)) { ); } #+END_SRC + ******* book index :bookindex: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d if ((matchFirst(line, rgx.book_index)) @@ -435,12 +428,15 @@ if (matchFirst(line, rgx.block_open)) { #+END_SRC ******* not book index [+1] + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d } else { /+ not book_index +/ #+END_SRC + ******** matched: comment :comment:match: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d if (auto m = matchFirst(line, rgx.comment)) { @@ -455,7 +451,9 @@ if (matchFirst(line, rgx.block_open)) { processing.remove("verse"); ++counter; #+END_SRC + ******** flag not set & line not exist: heading or para :heading:paragraph: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d } else if (((line_occur["para"] == State.off) @@ -488,6 +486,7 @@ if (matchFirst(line, rgx.block_open)) { #+END_SRC ******** line exist: heading :heading: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d } else if (line_occur["heading"] > State.off) { @@ -498,7 +497,9 @@ if (matchFirst(line, rgx.block_open)) { an_object["obj"] ~= line ~= "\n"; ++line_occur["heading"]; #+END_SRC + ******** line exist: para :para: + #+name: abs_in_loop_body_not_block_obj #+BEGIN_SRC d } else if (line_occur["para"] > State.off) { @@ -511,6 +512,7 @@ if (matchFirst(line, rgx.block_open)) { } } #+END_SRC + ****** line empty, with block flag #+name: abs_in_loop_body_not_block_obj @@ -1996,7 +1998,6 @@ auto book_index( } #+END_SRC - ** heading or paragraph :heading:paragraph: *** heading found :heading: @@ -3467,6 +3468,7 @@ struct NodeStructureMetadata { #+END_SRC **** metadata (check) + #+name: ao_emitters #+BEGIN_SRC d string node_emitter_heading( @@ -3867,6 +3869,7 @@ auto assertions_flag_types_block_status_none_or_closed(int[string] type) { set abstracted objects for downstream processing ** structs :struct: + #+name: ao_structs #+BEGIN_SRC d struct HeadingAttrib { @@ -4026,16 +4029,12 @@ auto contents_block_obj_cite_number_string( template SiSUdocAbstraction() { private: struct Abstraction { - /+ ↓ abstraction imports +/ <<abs_imports>> - /+ ↓ abstraction mixins +/ <<abs_mixins>> - /+ ↓ abstraction struct init +/ <<abs_init_struct>> - /+ ↓ abstract marked up document +/ auto abstract_doc_source( char[][] markup_sourcefile_content, @@ -4045,11 +4044,9 @@ template SiSUdocAbstraction() { /+ ↓ abstraction init +/ <<abs_init_rest>> /+ abstraction init ↑ +/ - /+ ↓ loop markup document/text line by line +/ srcDocLoop: foreach (line; markup_sourcefile_content) { - /+ ↓ markup document/text line by line +/ <<abs_in_loop_body_00>> <<abs_in_loop_body_non_code_obj>> @@ -4059,29 +4056,23 @@ template SiSUdocAbstraction() { <<abs_in_loop_body_00_closed>> <<abs_in_loop_body_01>> } /+ ← closed: loop markup document/text line by line +/ - /+ ↓ post loop markup document/text +/ <<abs_post>> /+ post loop markup document/text ↑ +/ - } /+ ← closed: abstract doc source +/ - /+ ↓ abstraction functions +/ <<abs_functions>> /+ abstraction functions ↑ +/ - /+ ↓ abstraction function emitters +/ <<ao_emitters>> /+ abstraction functions emitters ↑ +/ - /+ ↓ abstraction functions assertions +/ <<abs_functions_assertions>> /+ abstraction functions assertions ↑ +/ - } /+ ← closed: struct Abstraction +/ - } /+ ← closed: template SiSUdocAbstraction +/ #+END_SRC + ** ao_object_setter: :ao_object_setter.d: #+BEGIN_SRC d :tangle ../src/sdp/ao_object_setter.d @@ -4092,7 +4083,6 @@ template SiSUdocAbstraction() { template ObjectSetter() { /+ structs +/ <<ao_structs>> - /+ structs setter +/ struct ObjectAbstractSet { import std.conv : to; diff --git a/org/ao_header_extract.org b/org/ao_conf_make_meta.org index f660147..f660147 100644 --- a/org/ao_header_extract.org +++ b/org/ao_conf_make_meta.org diff --git a/org/ao_defaults.org b/org/ao_defaults.org index 3412ae8..a6baeb4 100644 --- a/org/ao_defaults.org +++ b/org/ao_defaults.org @@ -343,6 +343,7 @@ header. #+END_SRC ** template: flags regex initialize :regex_flags: + #+name: ao_defaults_templates #+BEGIN_SRC d /+ regex flags +/ @@ -383,7 +384,9 @@ template SiSUrgxInitFlags() { } } #+END_SRC + ** template: bibliography :biblio: + #+name: ao_defaults_templates #+BEGIN_SRC d template SiSUbiblio() { @@ -419,7 +422,9 @@ template SiSUbiblio() { }`; // is: book, article, magazine, newspaper, blog, other } #+END_SRC + ** template: internal markup :markup: + #+name: ao_defaults_templates #+BEGIN_SRC d template InternalMarkup() { @@ -502,7 +507,9 @@ template InternalMarkup() { * regex ctRegex :regex: [[./sdp.org][sdp]] [[./][org/]] + ** misc :misc: + #+name: ao_rgx #+BEGIN_SRC d /+ misc +/ @@ -525,7 +532,9 @@ static levels_markup = ctRegex!(`^[A-D1-4]$`); static levels_numbered = ctRegex!(`^[0-9]$`); static levels_numbered_headings = ctRegex!(`^[0-7]$`); #+END_SRC + ** filename (and path) matching (including markup insert file) :insert:file:path:filename: + #+name: ao_rgx #+BEGIN_SRC d static src_pth = ctRegex!(`^(?P<path>[a-zA-Z0-9._-]+/)*(?P<filename>[a-zA-Z0-9._-]+[.]ss[tm])$`); @@ -541,14 +550,18 @@ static insert_src_fn_ssi_or_sst = ctRegex!(`^<<\s*(?P<path>[a-zA-Z0-9._-]+/)*(? /+ insert markup file +/ // static insert_src_fn_ssi_or_sst = ctRegex!(`^<<\s*([a-zA-Z0-9._-]+/)*(?P<filename>[a-zA-Z0-9._-]+[.]ss[ti])$`); #+END_SRC + ** comments :comment: + #+name: ao_rgx #+BEGIN_SRC d /+ comments +/ static comment = ctRegex!(`^%+ `); static comments = ctRegex!(`^%+ |^%+$`); #+END_SRC + ** native header :native:header: + #+name: ao_rgx #+BEGIN_SRC d /+ header +/ @@ -565,7 +578,9 @@ static native_header_meta_title = ctRegex!(`^@title:\s`, "m"); static variable_doc_title = ctRegex!(`@title`); static variable_doc_author = ctRegex!(`@author`); #+END_SRC + ** subheader :native:subheader: + #+name: ao_rgx #+BEGIN_SRC d /+ head +/ @@ -580,7 +595,9 @@ static native_subhead_notes = ctRegex!(`^(?:abstract|description)$`, static native_subhead_publisher = ctRegex!(`^(?:name)$`, "m"); static native_subhead_make = ctRegex!(`^(?:cover_image|home_button_image|home_button_text|footer|headings|num_top|breaks|substitute|bold|italics|emphasis|texpdf_font|css)$`, "m"); #+END_SRC + ** heading & paragraph operators :paragraph:operator: + #+name: ao_rgx #+BEGIN_SRC d /+ heading & paragraph operators +/ @@ -599,6 +616,7 @@ static para_attribs = ctRegex!(`^_(([0-9])(_([0-9]))?|_([1-9])?[*]) `); #+END_SRC ** blocked markup :block:tic: + #+name: ao_rgx #+BEGIN_SRC d /+ blocked markup +/ @@ -606,7 +624,9 @@ static block_open = ctRegex!("^((code|poem|group|block|quote|tabl // static block_open_less_code = ctRegex!("^(((poem|group|block|quote|table)[{].*?$)|`{3} (poem|group|block|quote|table))"); static block_poem_open = ctRegex!("^((poem[{].*?$)|`{3} poem)"); #+END_SRC + ** blocked markup tics :block:tic: + #+name: ao_rgx #+BEGIN_SRC d /+ blocked markup tics +/ @@ -620,7 +640,9 @@ static block_tic_quote_open = ctRegex!("^`{3} (quote)"); static block_tic_table_open = ctRegex!("^`{3} (table)"); static block_tic_close = ctRegex!("^(`{3})$","m"); #+END_SRC + ** blocked markup curly :block:curly: + #+name: ao_rgx #+BEGIN_SRC d /+ blocked markup curly +/ @@ -639,7 +661,9 @@ static block_curly_quote_close = ctRegex!(`^([}]quote)`); static block_curly_table_open = ctRegex!(`^(table[{].*?$)`); static block_curly_table_close = ctRegex!(`^([}]table)`); #+END_SRC + ** inline markup font face mod :inline:font:face: + #+name: ao_rgx #+BEGIN_SRC d /+ inline markup font face mod +/ @@ -652,7 +676,9 @@ static inline_strike = ctRegex!(`-\{(?P<text>.+?)\}-`); static inline_insert = ctRegex!(`\+\{(?P<text>.+?)\}\+`); static inline_mono = ctRegex!(`#\{(?P<text>.+?)\}#`); #+END_SRC + ** inline markup footnotes :inline:footnote: + #+name: ao_rgx #+BEGIN_SRC d /+ inline markup footnotes +/ @@ -667,10 +693,8 @@ static inline_al_delimiter_close_regular = ctRegex!(`】`, "m"); static inline_al_delimiter_open_and_close_regular = ctRegex!(`【|】`, "m"); static inline_notes_delimiter_al_regular = ctRegex!(`【(.+?)】`, "m"); static inline_notes_delimiter_al_regular_number_note = ctRegex!(`【(\d+)\s+(.+?)】`, "m"); - static inline_al_delimiter_open_asterisk = ctRegex!(`【\*`, "m"); static inline_al_delimiter_open_plus = ctRegex!(`【\+`, "m"); - static inline_curly_delimiter_open_regular = ctRegex!(`~\{\s*`, "m"); static inline_curly_delimiter_close_regular = ctRegex!(`\s*\}~`, "m"); static inline_curly_delimiter_open_and_close_regular = ctRegex!(`~\{\s*|\s*\}~`, "m"); @@ -694,7 +718,9 @@ static inline_text_and_note_square_sp = ctRegex!(`(.+?)~\[[*+]+\s+(.+?)\] static inline_text_and_note_square = ctRegex!(`(.+?)~\[\s*(.+?)\]~`, "mg"); static inline_note_square_delimiters = ctRegex!(`(~\[\s*)(.+?)(\]~)`, "mg"); #+END_SRC + ** inline markup book index :inline:bookindex: + #+name: ao_rgx #+BEGIN_SRC d /+ inline markup book index +/ @@ -702,7 +728,9 @@ static book_index = ctRegex!(`^=\{\s*(.+?)\}$`, "m"); static book_index_open = ctRegex!(`^=\{\s*([^}]+?)$`); static book_index_close = ctRegex!(`^(.*?)\}$`, "m"); // strip #+END_SRC + ** no obj_cite_number object :ocn:off:object: + #+name: ao_rgx #+BEGIN_SRC d /+ no obj_cite_number object +/ @@ -710,7 +738,9 @@ static obj_cite_number_off = ctRegex!(`~#$`, "m"); static obj_cite_number_off_dh = ctRegex!(`-#$`, "m"); static obj_cite_number_off_all = ctRegex!(`[~-]#$`, "m"); #+END_SRC + ** no obj_cite_number block :ocn:off:block: + #+name: ao_rgx #+BEGIN_SRC d /+ no obj_cite_number block +/ @@ -720,13 +750,17 @@ static obj_cite_number_off_block_close = ctRegex!(`^--\+#$`); // static auto_obj_cite_number_ignore = ctRegex!(`^[+~*$-]{3,}$`); // reminder static obj_cite_number_block_marks = ctRegex!(`^--[+~-]#$`); #+END_SRC + ** ignore outside code blocks :block:code: + #+name: ao_rgx #+BEGIN_SRC d /+ ignore outside code blocks +/ static skip_code_block_from_regular_parse = ctRegex!(`^(--[+~-]#|-[\\]{2}-|=[.\\]{2}=)$`); // not structural info #+END_SRC + ** line & page breaks :break: + #+name: ao_rgx #+BEGIN_SRC d /+ line & page breaks +/ @@ -739,13 +773,17 @@ static break_string = ctRegex!(`』`); // ancestry, parent static parent = ctRegex!(`([0-7]):([0-9]+)`); #+END_SRC + ** json :json: + #+name: ao_rgx #+BEGIN_SRC d /+ json +/ static tailing_comma = ctRegex!(`,$`, "m"); #+END_SRC + ** biblio tags :biblio:tags: + #+name: ao_rgx #+BEGIN_SRC d /+ biblio tags +/ @@ -753,7 +791,9 @@ static biblio_tags = ctRegex!(`^(is|au|author_raw|author|author_ar static biblio_abbreviations = ctRegex!(`^(au|ed|ti|lng|jo|vol|edn|yr|pl|pb|pub|pg|pgs|sn)$`); // static biblio_tags = ctRegex!(`^(is|author_raw|author|author_arr|editor_raw|editor_arr|title|subtitle|fulltitle|language|trans|src|journal|in|volume|edition|year|place|publisher|url|pages|note|short_name|id):\s+(.+)`); #+END_SRC + ** bookindex split :bookindex:split: + #+name: ao_rgx #+BEGIN_SRC d /+ bookindex split +/ @@ -764,6 +804,7 @@ static bi_term_and_obj_cite_numbers_match = ctRegex!(`^(.+?)\+(\d+)`); #+END_SRC * set colors for terminal :colors:terminal: + #+name: ao_ansi_colors #+BEGIN_SRC d string[string] scr_txt_color = [ @@ -838,6 +879,7 @@ string[string] scr_txt_marker = [ * tangles (code structure) :tangle: ** defaults: :ao_defaults.d: + #+name: tangle_ao_defaults #+BEGIN_SRC d :tangle ../src/sdp/ao_defaults.d /+ @@ -848,6 +890,7 @@ string[string] scr_txt_marker = [ #+END_SRC ** rgx: :ao_rgx.d: + #+name: tangle_ao_rgx #+BEGIN_SRC d :tangle ../src/sdp/ao_rgx.d /+ @@ -860,6 +903,7 @@ template RgxInit() { } } #+END_SRC + ** ansi_colors: :ao_ansi_colors.d: #+BEGIN_SRC d :tangle ../src/sdp/ao_ansi_colors.d diff --git a/org/ao_output_debugs.org b/org/ao_output_debugs.org index 7b84fdd..0f001e1 100644 --- a/org/ao_output_debugs.org +++ b/org/ao_output_debugs.org @@ -15,6 +15,7 @@ * output debugs :debug:output: [[./sdp.org][sdp]] [[./][org/]] ** (parent) :parent: + #+name: ao_output_debugs #+BEGIN_SRC d debug(parent) { @@ -40,7 +41,9 @@ debug(parent) { } } #+END_SRC + ** (dumpdoc) :objects: + #+name: ao_output_debugs #+BEGIN_SRC d debug(dumpdoc) { @@ -62,7 +65,9 @@ debug(dumpdoc) { } } #+END_SRC + ** (objects) :objects: + #+name: ao_output_debugs #+BEGIN_SRC d debug(objects) { @@ -86,7 +91,9 @@ debug(objects) { } } #+END_SRC + ** (headermakejson) :json:header: + #+name: ao_output_debugs #+BEGIN_SRC d debug(headermakejson) { @@ -116,7 +123,9 @@ debug(headermakejson) { } } #+END_SRC + ** (headermetadatajson) :json:header: + #+name: ao_output_debugs #+BEGIN_SRC d debug(headermetadatajson) { @@ -242,7 +251,9 @@ debug(headermetadatajson) { } } #+END_SRC + ** (bookindex) :bookindex: + #+name: ao_output_debugs #+BEGIN_SRC d debug(bookindex) { @@ -256,7 +267,9 @@ debug(bookindex) { bookindex.bookindex_report_sorted(bookindex_unordered_hashes); } #+END_SRC + ** (summary) [+1] :summary: + #+name: ao_output_debugs #+BEGIN_SRC d debug(summary) { @@ -264,7 +277,9 @@ debug(summary) { "last_obj_cite_number" : "NA [debug \"checkdoc\" not run]", ]; #+END_SRC + *** (checkdoc) :checkdoc: + #+name: ao_output_debugs_summary #+BEGIN_SRC d debug(checkdoc) { @@ -277,7 +292,9 @@ debug(checkdoc) { } } #+END_SRC + *** (headings) :headings: + #+name: ao_output_debugs_summary #+BEGIN_SRC d debug(headings) { @@ -316,7 +333,9 @@ writefln( __LINE__, ); #+END_SRC + *** compare number of obj_cite_number for known sisu markup output (checkdoc) + #+name: ao_output_debugs_summary #+BEGIN_SRC d debug(checkdoc) { @@ -450,6 +469,7 @@ debug(checkdoc) { * tangles :tangle: ** code structure: :ao_output_debugs.d: + #+name: tangle_ao_output_debugs #+BEGIN_SRC d :tangle ../src/sdp/ao_output_debugs.d /+ diff --git a/org/ao_read_source_files.org b/org/ao_read_source_files.org index c3c68ad..d61b677 100644 --- a/org/ao_read_source_files.org +++ b/org/ao_read_source_files.org @@ -17,6 +17,7 @@ ** [#A] read config file, source string :string: *** config file (conf.sdl & sisu_document_make) :file:config: + #+name: ao_config_file_in #+BEGIN_SRC d final private string readInConfigFile(string conf_sdl) { @@ -104,6 +105,7 @@ private auto configSDLangRootTag(string configuration, string conf_sdl_filename) #+END_SRC *** config file (conf.sdl & sisu_document_make) :file:config:hub: + #+name: ao_config_file_sdlang_hub #+BEGIN_SRC d final private auto configSDLang(string conf_sdl) { @@ -118,6 +120,7 @@ final private auto configSDLang(string conf_sdl) { * get markup source, read file :source:markup: ** [#A] read file, source string :string: + #+name: ao_markup_source_raw #+BEGIN_SRC d final private string readInMarkupSource(in string fn_src) { @@ -182,6 +185,7 @@ catch (ErrnoException ex) { } ** array[0..1]: split header content :array: + #+name: ao_markup_source_raw #+BEGIN_SRC d final private char[][] header0Content1(in string src_text) { @@ -193,6 +197,7 @@ final private char[][] header0Content1(in string src_text) { #+END_SRC ** source line array :array: + #+name: ao_markup_source_raw #+BEGIN_SRC d final private char[][] markupSourceLineArray(in char[] src_text) { @@ -242,6 +247,7 @@ final char[][] markupSourceContentRawLineArray(in string fn_src, Regex!(char) rg ** scan inserts (sub-document) source :scan_insert_src: *** scan subdoc source + #+name: ao_inserts_scan #+BEGIN_SRC d char[][] contents_insert; @@ -251,6 +257,7 @@ auto markup_src_file_path = fn_pth_full.captures[1]; #+END_SRC *** loop insert (sub-document) + #+name: ao_inserts_scan_loop #+BEGIN_SRC d if (type1["curly_code"] == 1) { @@ -328,6 +335,7 @@ if (type1["curly_code"] == 1) { #+END_SRC *** post loop + #+name: ao_inserts_scan_post #+BEGIN_SRC d return contents_insert; @@ -335,6 +343,7 @@ return contents_insert; ** scan document source :scan_src: *** scan doc source + #+name: ao_master_doc_scan_for_insert_filenames #+BEGIN_SRC d char[][] contents; @@ -342,7 +351,9 @@ auto type = flags_type_init; auto fn_pth_full = match(fn_src, rgx.src_pth); auto markup_src_file_path = fn_pth_full.captures[1]; #+END_SRC + *** loop master scan for inserts (insert documents) + #+name: ao_master_doc_scan_for_insert_filenames_loop #+BEGIN_SRC d if (type["curly_code"] == 1) { @@ -405,6 +416,7 @@ if (type["curly_code"] == 1) { #+END_SRC *** post loop + #+name: ao_master_doc_scan_for_insert_filenames_post #+BEGIN_SRC d debug(insert) { // insert file diff --git a/org/compile_time_info.org b/org/compile_time_info.org index 1c3ab0d..9fb5830 100644 --- a/org/compile_time_info.org +++ b/org/compile_time_info.org @@ -23,6 +23,7 @@ version(Windows) {} else { ... } OS type shows during compilation **** set os flags + #+name: sdp_compile_time_info #+BEGIN_SRC d version(Windows) { @@ -58,6 +59,7 @@ version(Windows) { OS type compiled in and shows during program run **** report os flag (set) (not used here) + #+BEGIN_SRC d static if(sysWindows) { writeln("Windows"); @@ -79,6 +81,7 @@ static if(sysWindows) { #+END_SRC *** 64 bit compilation? + #+name: sdp_compile_time_info #+BEGIN_SRC d version(D_LP64) { @@ -90,6 +93,7 @@ version(D_LP64) { * tangles :tangle: ** compile_time_info: :compile_time_info.d: + #+begin_src d :tangle ../src/sdp/compile_time_info.d /+ compile_time_info diff --git a/org/output.org b/org/output.org index e8187d6..69779f2 100644 --- a/org/output.org +++ b/org/output.org @@ -23,6 +23,7 @@ struct SDPoutputHTML { #+END_SRC *** css + #+name: output_html #+BEGIN_SRC d auto html_css() { @@ -1333,6 +1334,7 @@ struct SDPoutputHTML { *** html **** html functions + #+name: output_html #+BEGIN_SRC d auto html_toc(O)( @@ -1392,6 +1394,7 @@ struct SDPoutputHTML { #+END_SRC **** html scroll head & tail + #+name: output_html #+BEGIN_SRC d auto scroll_head() { @@ -1441,6 +1444,7 @@ struct SDPoutputHTML { #+END_SRC **** html scroll + #+name: output_html #+BEGIN_SRC d auto scroll(C)( @@ -1527,6 +1531,7 @@ struct SDPoutputHTML { ** pgsql :pgsql: * tangles :tangle: ** code structure: :output.d: + #+BEGIN_SRC d :tangle ../src/sdp/output_hub.d /+ output hub @@ -1537,7 +1542,8 @@ template SiSUoutputHub() { } #+END_SRC -** head +** example head + <!DOCTYPE html> <html> <head> @@ -1568,8 +1574,6 @@ template SiSUoutputHub() { <body lang="en"> <a name="top" id="top"></a> - - <a name="bottom" id="bottom"></a> <a name="end" id="end"></a> </div> diff --git a/org/sdp.org b/org/sdp.org index 613e374..599d1c0 100644 --- a/org/sdp.org +++ b/org/sdp.org @@ -85,6 +85,7 @@ import [[./output_hub.org][output hub]] **** sdlang :import:sdlang: + #+NAME: imports_sdlang #+BEGIN_SRC d /+ sdlang http://sdlang.org +/ @@ -97,6 +98,7 @@ sdlang.exceptions; // std.conv; **** std :import:std: + #+NAME: imports_std #+BEGIN_SRC d /+ std +/ @@ -263,7 +265,6 @@ look into using getopt #+NAME: sdp_args #+BEGIN_SRC d - bool[string] opt_action_bool = [ "assertions" : false, "concordance" : false, @@ -341,6 +342,7 @@ auto conf_doc_make_aa = confsdl.documentMakeSDLangToAAmake(sdl_root_doc_make); ** each file (loop) [+2] :loop:files: *** filename provided [+1] :file:process: **** loop scope :scope: + #+NAME: sdp_each_file_do #+BEGIN_SRC d scope(success) { @@ -384,6 +386,7 @@ debug(header_and_content) { #+END_SRC **** [#A] read doc header: metadata & make :doc:header:metadata:make: + #+NAME: sdp_each_file_do #+BEGIN_SRC d auto header_make_and_meta_tuple = head.headerContentAA(header, conf_doc_make_aa); @@ -393,6 +396,7 @@ string[string][string] dochead_meta_aa = header_make_and_meta_tuple[1]; #+END_SRC **** [#A] processing: document abstraction, tuple :processing: + #+NAME: sdp_each_file_do #+BEGIN_SRC d /+ ↓ process document, return abstraction as tuple +/ @@ -407,6 +411,7 @@ auto doc_ao_biblio = t[2]; **** TODO debug :debug: ***** [#A] debug document parts (checkdoc) :checkdoc: + #+NAME: sdp_each_file_do #+BEGIN_SRC d /+ ↓ document parts +/ @@ -440,6 +445,7 @@ output.hub( #+END_SRC **** on exit :scope:exit: + #+NAME: sdp_each_file_do #+BEGIN_SRC d scope(exit) { |