diff options
| author | Ralph Amissah <ralph@amissah.com> | 2017-01-29 11:21:19 -0500 | 
|---|---|---|
| committer | Ralph Amissah <ralph@amissah.com> | 2019-04-10 15:14:14 -0400 | 
| commit | 36d31d98dc47dd2bb8445b3e61596f098fdafa9f (patch) | |
| tree | 011e3df32cf317054a308d77f8d7fccf60feac7d /org | |
| parent | read src file and split into head and body, template (diff) | |
defaults org, reorganize
Diffstat (limited to 'org')
| -rw-r--r-- | org/ao_defaults.org | 643 | 
1 files changed, 321 insertions, 322 deletions
| diff --git a/org/ao_defaults.org b/org/ao_defaults.org index cdf8734..3184077 100644 --- a/org/ao_defaults.org +++ b/org/ao_defaults.org @@ -25,24 +25,12 @@ template SiSUregisters() {    <<ao_defaults_imports>>    <<ao_defaults_template_registers>>  } -template SiSUrgxInitFlags() { -  <<ao_defaults_template_init_flags>> -} -template SiSUnode() { -  <<ao_defaults_template_node>> -} -template SiSUbiblio() { -  <<ao_defaults_template_biblio>> -} -template SiSUpaths() { -  <<ao_defaults_template_paths>> -} -template InternalMarkup() { -  <<ao_defaults_template_markup>> -} -template SiSUlanguageCodes() { -  <<ao_defaults_template_language_codes>> -} +<<ao_defaults_template_init_flags>> +<<ao_defaults_template_node>> +<<ao_defaults_template_biblio>> +<<ao_defaults_template_paths>> +<<ao_defaults_template_markup>> +<<ao_defaults_template_language_codes>>  #+END_SRC  ** 2. rgx:                                                          :ao_rgx: @@ -64,7 +52,7 @@ template SiSUrgxInit() {  [[./sdp.org][sdp]] [[./][org/]]  ** template: imports -#+name: ao_defaults_template_imports +#+name: ao_defaults_imports  #+BEGIN_SRC d  private import    std.algorithm, @@ -417,89 +405,91 @@ header.  #+name: ao_defaults_template_language_codes  #+BEGIN_SRC d -/+ language codes +/ -struct Lang { -  string[string][string] codes() { -    auto _lang_codes = [ -      "am":    [ "c": "am",    "n": "Amharic",           "t": "Amharic",                   "xlp": "amharic"      ], -      "bg":    [ "c": "bg",    "n": "Bulgarian",         "t": "Български (Bəlgarski)",     "xlp": "bulgarian"    ], -      "bn":    [ "c": "bn",    "n": "Bengali",           "t": "Bengali",                   "xlp": "bengali"      ], -      "br":    [ "c": "br",    "n": "Breton",            "t": "Breton",                    "xlp": "breton"       ], -      "ca":    [ "c": "ca",    "n": "Catalan",           "t": "catalan",                   "xlp": "catalan"      ], -      "cs":    [ "c": "cs",    "n": "Czech",             "t": "česky",                     "xlp": "czech"        ], -      "cy":    [ "c": "cy",    "n": "Welsh",             "t": "Welsh",                     "xlp": "welsh"        ], -      "da":    [ "c": "da",    "n": "Danish",            "t": "dansk",                     "xlp": "danish"       ], -      "de":    [ "c": "de",    "n": "German",            "t": "Deutsch",                   "xlp": "german"       ], -      "el":    [ "c": "el",    "n": "Greek",             "t": "Ελληνικά (Ellinika)",       "xlp": "greek"        ], -      "en":    [ "c": "en",    "n": "English",           "t": "English",                   "xlp": "english"      ], -      "eo":    [ "c": "eo",    "n": "Esperanto",         "t": "Esperanto",                 "xlp": "esperanto"    ], -      "es":    [ "c": "es",    "n": "Spanish",           "t": "español",                   "xlp": "spanish"      ], -      "et":    [ "c": "et",    "n": "Estonian",          "t": "Estonian",                  "xlp": "estonian"     ], -      "eu":    [ "c": "eu",    "n": "Basque",            "t": "basque",                    "xlp": "basque"       ], -      "fi":    [ "c": "fi",    "n": "Finnish",           "t": "suomi",                     "xlp": "finnish"      ], -      "fr":    [ "c": "fr",    "n": "French",            "t": "français",                  "xlp": "french"       ], -      "ga":    [ "c": "ga",    "n": "Irish",             "t": "Irish",                     "xlp": "irish"        ], -      "gl":    [ "c": "gl",    "n": "Galician",          "t": "Galician",                  "xlp": "galician"     ], -      "he":    [ "c": "he",    "n": "Hebrew",            "t": "Hebrew",                    "xlp": "hebrew"       ], -      "hi":    [ "c": "hi",    "n": "Hindi",             "t": "Hindi",                     "xlp": "hindi"        ], -      "hr":    [ "c": "hr",    "n": "Croatian",          "t": "Croatian",                  "xlp": "croatian"     ], -      "hy":    [ "c": "hy",    "n": "Armenian",          "t": "Armenian",                  "xlp": "armenian"     ], -      "ia":    [ "c": "ia",    "n": "Interlingua",       "t": "Interlingua",               "xlp": "interlingua"  ], -      "is":    [ "c": "is",    "n": "Icelandic",         "t": "Icelandic",                 "xlp": "icelandic"    ], -      "it":    [ "c": "it",    "n": "Italian",           "t": "Italiano",                  "xlp": "italian"      ], -      "ja":    [ "c": "ja",    "n": "Japanese",          "t": "日本語 (Nihongo)",         "xlp": "japanese"      ], -      "ko":    [ "c": "ko",    "n": "Korean",            "t": "Korean",                    "xlp": "korean"       ], -      "la":    [ "c": "la",    "n": "Latin",             "t": "Latin",                     "xlp": "latin"        ], -      "lo":    [ "c": "lo",    "n": "Lao",               "t": "Lao",                       "xlp": "lao"          ], -      "lt":    [ "c": "lt",    "n": "Lithuanian",        "t": "Lithuanian",                "xlp": "lithuanian"   ], -      "lv":    [ "c": "lv",    "n": "Latvian",           "t": "Latvian",                   "xlp": "latvian"      ], -      "ml":    [ "c": "ml",    "n": "Malayalam",         "t": "Malayalam",                 "xlp": "malayalam"    ], -      "mr":    [ "c": "mr",    "n": "Marathi",           "t": "Marathi",                   "xlp": "marathi"      ], -      "nl":    [ "c": "nl",    "n": "Dutch",             "t": "Nederlands",                "xlp": "dutch"        ], -      "no":    [ "c": "no",    "n": "Norwegian",         "t": "norsk",                     "xlp": "norsk"        ], -      "nn":    [ "c": "nn",    "n": "Norwegian Nynorsk", "t": "nynorsk",                   "xlp": "nynorsk"      ], -      "oc":    [ "c": "oc",    "n": "Occitan",           "t": "Occitan",                   "xlp": "occitan"      ], -      "pl":    [ "c": "pl",    "n": "Polish",            "t": "polski",                    "xlp": "polish"       ], -      "pt":    [ "c": "pt",    "n": "Portuguese",        "t": "Português",                 "xlp": "portuges"     ], -      "pt_BR": [ "c": "pt_BR", "n": "Portuguese Brazil", "t": "Brazilian Português",       "xlp": "brazilian"    ], -      "ro":    [ "c": "ro",    "n": "Romanian",          "t": "română",                    "xlp": "romanian"     ], -      "ru":    [ "c": "ru",    "n": "Russian",           "t": "Русский (Russkij)",         "xlp": "russian"      ], -      "sa":    [ "c": "sa",    "n": "Sanskrit",          "t": "Sanskrit",                  "xlp": "sanskrit"     ], -      "se":    [ "c": "se",    "n": "Sami",              "t": "Samin",                     "xlp": "samin"        ], -      "sk":    [ "c": "sk",    "n": "Slovak",            "t": "slovensky",                 "xlp": "slovak"       ], -      "sl":    [ "c": "sl",    "n": "Slovenian",         "t": "Slovenian",                 "xlp": "slovenian"    ], -      "sq":    [ "c": "sq",    "n": "Albanian",          "t": "Albanian",                  "xlp": "albanian"     ], -      "sr":    [ "c": "sr",    "n": "Serbian",           "t": "Serbian",                   "xlp": "serbian"      ], -      "sv":    [ "c": "sv",    "n": "Swedish",           "t": "svenska",                   "xlp": "swedish"      ], -      "ta":    [ "c": "ta",    "n": "Tamil",             "t": "Tamil",                     "xlp": "tamil"        ], -      "te":    [ "c": "te",    "n": "Telugu",            "t": "Telugu",                    "xlp": "telugu"       ], -      "th":    [ "c": "th",    "n": "Thai",              "t": "Thai",                      "xlp": "thai"         ], -      "tk":    [ "c": "tk",    "n": "Turkmen",           "t": "Turkmen",                   "xlp": "turkmen"      ], -      "tr":    [ "c": "tr",    "n": "Turkish",           "t": "Türkçe",                    "xlp": "turkish"      ], -      "uk":    [ "c": "uk",    "n": "Ukranian",          "t": "українська (ukrajins\"ka)", "xlp": "ukrainian"    ], -      "ur":    [ "c": "ur",    "n": "Urdu",              "t": "Urdu",                      "xlp": "urdu"         ], -      "us":    [ "c": "en",    "n": "English (American)","t": "English",                   "xlp": "english"      ], -      "vi":    [ "c": "vi",    "n": "Vietnamese",        "t": "Vietnamese",                "xlp": "vietnamese"   ], -      "zh":    [ "c": "zh",    "n": "Chinese",           "t": "中文",                     "xlp": "chinese"       ], -      "en":    [ "c": "en",    "n": "English",           "t": "English",                   "xlp": "english"      ], -      "xx":    [ "c": "xx",    "n": "Default",           "t": "English",                   "xlp": "english"      ], -    ]; -    return _lang_codes; -  } -  string[] code_arr_ptr() { -    auto _lang_codes = ["am", "bg", "bn", "br", "ca", "cs", "cy", "da", "de", "el", "en", "eo", "es", "et", "eu", "fi", "fr", "ga", "gl", "he", "hi", "hr", "hy", "ia", "is", "it", "ja", "ko", "la", "lo", "lt", "lv", "ml", "mr", "nl", "no", "nn", "oc", "pl", "pt", "pt_BR", "ro", "ru", "sa", "se", "sk", "sl", "sq", "sr", "sv", "ta", "te", "th", "tk", "tr", "uk", "ur", "us", "vi", "zh", "en", "xx",]; -    return _lang_codes; -  } -  string[] code_arr() { -    auto _lang_codes = ["am", "bg", "bn", "br", "ca", "cs", "cy", "da", "de", "el", "en", "eo", "es", "et", "eu", "fi", "fr", "ga", "gl", "he", "hi", "hr", "hy", "ia", "is", "it", "ja", "ko", "la", "lo", "lt", "lv", "ml", "mr", "nl", "no", "nn", "oc", "pl", "pt", "pt_BR", "ro", "ru", "sa", "se", "sk", "sl", "sq", "sr", "sv", "ta", "te", "th", "tk", "tr", "uk", "ur", "vi", "zh"]; -    return _lang_codes; -  } -  auto codes_() { -    // return join(code_arr,"|"); -    return "(" ~ join(code_arr,"|") ~ ")"; -  } -  auto codes_regex() { -    return regex(codes_); +template SiSUlanguageCodes() { +  /+ language codes +/ +  struct Lang { +    string[string][string] codes() { +      auto _lang_codes = [ +        "am":    [ "c": "am",    "n": "Amharic",           "t": "Amharic",                   "xlp": "amharic"      ], +        "bg":    [ "c": "bg",    "n": "Bulgarian",         "t": "Български (Bəlgarski)",     "xlp": "bulgarian"    ], +        "bn":    [ "c": "bn",    "n": "Bengali",           "t": "Bengali",                   "xlp": "bengali"      ], +        "br":    [ "c": "br",    "n": "Breton",            "t": "Breton",                    "xlp": "breton"       ], +        "ca":    [ "c": "ca",    "n": "Catalan",           "t": "catalan",                   "xlp": "catalan"      ], +        "cs":    [ "c": "cs",    "n": "Czech",             "t": "česky",                     "xlp": "czech"        ], +        "cy":    [ "c": "cy",    "n": "Welsh",             "t": "Welsh",                     "xlp": "welsh"        ], +        "da":    [ "c": "da",    "n": "Danish",            "t": "dansk",                     "xlp": "danish"       ], +        "de":    [ "c": "de",    "n": "German",            "t": "Deutsch",                   "xlp": "german"       ], +        "el":    [ "c": "el",    "n": "Greek",             "t": "Ελληνικά (Ellinika)",       "xlp": "greek"        ], +        "en":    [ "c": "en",    "n": "English",           "t": "English",                   "xlp": "english"      ], +        "eo":    [ "c": "eo",    "n": "Esperanto",         "t": "Esperanto",                 "xlp": "esperanto"    ], +        "es":    [ "c": "es",    "n": "Spanish",           "t": "español",                   "xlp": "spanish"      ], +        "et":    [ "c": "et",    "n": "Estonian",          "t": "Estonian",                  "xlp": "estonian"     ], +        "eu":    [ "c": "eu",    "n": "Basque",            "t": "basque",                    "xlp": "basque"       ], +        "fi":    [ "c": "fi",    "n": "Finnish",           "t": "suomi",                     "xlp": "finnish"      ], +        "fr":    [ "c": "fr",    "n": "French",            "t": "français",                  "xlp": "french"       ], +        "ga":    [ "c": "ga",    "n": "Irish",             "t": "Irish",                     "xlp": "irish"        ], +        "gl":    [ "c": "gl",    "n": "Galician",          "t": "Galician",                  "xlp": "galician"     ], +        "he":    [ "c": "he",    "n": "Hebrew",            "t": "Hebrew",                    "xlp": "hebrew"       ], +        "hi":    [ "c": "hi",    "n": "Hindi",             "t": "Hindi",                     "xlp": "hindi"        ], +        "hr":    [ "c": "hr",    "n": "Croatian",          "t": "Croatian",                  "xlp": "croatian"     ], +        "hy":    [ "c": "hy",    "n": "Armenian",          "t": "Armenian",                  "xlp": "armenian"     ], +        "ia":    [ "c": "ia",    "n": "Interlingua",       "t": "Interlingua",               "xlp": "interlingua"  ], +        "is":    [ "c": "is",    "n": "Icelandic",         "t": "Icelandic",                 "xlp": "icelandic"    ], +        "it":    [ "c": "it",    "n": "Italian",           "t": "Italiano",                  "xlp": "italian"      ], +        "ja":    [ "c": "ja",    "n": "Japanese",          "t": "日本語 (Nihongo)",         "xlp": "japanese"      ], +        "ko":    [ "c": "ko",    "n": "Korean",            "t": "Korean",                    "xlp": "korean"       ], +        "la":    [ "c": "la",    "n": "Latin",             "t": "Latin",                     "xlp": "latin"        ], +        "lo":    [ "c": "lo",    "n": "Lao",               "t": "Lao",                       "xlp": "lao"          ], +        "lt":    [ "c": "lt",    "n": "Lithuanian",        "t": "Lithuanian",                "xlp": "lithuanian"   ], +        "lv":    [ "c": "lv",    "n": "Latvian",           "t": "Latvian",                   "xlp": "latvian"      ], +        "ml":    [ "c": "ml",    "n": "Malayalam",         "t": "Malayalam",                 "xlp": "malayalam"    ], +        "mr":    [ "c": "mr",    "n": "Marathi",           "t": "Marathi",                   "xlp": "marathi"      ], +        "nl":    [ "c": "nl",    "n": "Dutch",             "t": "Nederlands",                "xlp": "dutch"        ], +        "no":    [ "c": "no",    "n": "Norwegian",         "t": "norsk",                     "xlp": "norsk"        ], +        "nn":    [ "c": "nn",    "n": "Norwegian Nynorsk", "t": "nynorsk",                   "xlp": "nynorsk"      ], +        "oc":    [ "c": "oc",    "n": "Occitan",           "t": "Occitan",                   "xlp": "occitan"      ], +        "pl":    [ "c": "pl",    "n": "Polish",            "t": "polski",                    "xlp": "polish"       ], +        "pt":    [ "c": "pt",    "n": "Portuguese",        "t": "Português",                 "xlp": "portuges"     ], +        "pt_BR": [ "c": "pt_BR", "n": "Portuguese Brazil", "t": "Brazilian Português",       "xlp": "brazilian"    ], +        "ro":    [ "c": "ro",    "n": "Romanian",          "t": "română",                    "xlp": "romanian"     ], +        "ru":    [ "c": "ru",    "n": "Russian",           "t": "Русский (Russkij)",         "xlp": "russian"      ], +        "sa":    [ "c": "sa",    "n": "Sanskrit",          "t": "Sanskrit",                  "xlp": "sanskrit"     ], +        "se":    [ "c": "se",    "n": "Sami",              "t": "Samin",                     "xlp": "samin"        ], +        "sk":    [ "c": "sk",    "n": "Slovak",            "t": "slovensky",                 "xlp": "slovak"       ], +        "sl":    [ "c": "sl",    "n": "Slovenian",         "t": "Slovenian",                 "xlp": "slovenian"    ], +        "sq":    [ "c": "sq",    "n": "Albanian",          "t": "Albanian",                  "xlp": "albanian"     ], +        "sr":    [ "c": "sr",    "n": "Serbian",           "t": "Serbian",                   "xlp": "serbian"      ], +        "sv":    [ "c": "sv",    "n": "Swedish",           "t": "svenska",                   "xlp": "swedish"      ], +        "ta":    [ "c": "ta",    "n": "Tamil",             "t": "Tamil",                     "xlp": "tamil"        ], +        "te":    [ "c": "te",    "n": "Telugu",            "t": "Telugu",                    "xlp": "telugu"       ], +        "th":    [ "c": "th",    "n": "Thai",              "t": "Thai",                      "xlp": "thai"         ], +        "tk":    [ "c": "tk",    "n": "Turkmen",           "t": "Turkmen",                   "xlp": "turkmen"      ], +        "tr":    [ "c": "tr",    "n": "Turkish",           "t": "Türkçe",                    "xlp": "turkish"      ], +        "uk":    [ "c": "uk",    "n": "Ukranian",          "t": "українська (ukrajins\"ka)", "xlp": "ukrainian"    ], +        "ur":    [ "c": "ur",    "n": "Urdu",              "t": "Urdu",                      "xlp": "urdu"         ], +        "us":    [ "c": "en",    "n": "English (American)","t": "English",                   "xlp": "english"      ], +        "vi":    [ "c": "vi",    "n": "Vietnamese",        "t": "Vietnamese",                "xlp": "vietnamese"   ], +        "zh":    [ "c": "zh",    "n": "Chinese",           "t": "中文",                     "xlp": "chinese"       ], +        "en":    [ "c": "en",    "n": "English",           "t": "English",                   "xlp": "english"      ], +        "xx":    [ "c": "xx",    "n": "Default",           "t": "English",                   "xlp": "english"      ], +      ]; +      return _lang_codes; +    } +    string[] code_arr_ptr() { +      auto _lang_codes = ["am", "bg", "bn", "br", "ca", "cs", "cy", "da", "de", "el", "en", "eo", "es", "et", "eu", "fi", "fr", "ga", "gl", "he", "hi", "hr", "hy", "ia", "is", "it", "ja", "ko", "la", "lo", "lt", "lv", "ml", "mr", "nl", "no", "nn", "oc", "pl", "pt", "pt_BR", "ro", "ru", "sa", "se", "sk", "sl", "sq", "sr", "sv", "ta", "te", "th", "tk", "tr", "uk", "ur", "us", "vi", "zh", "en", "xx",]; +      return _lang_codes; +    } +    string[] code_arr() { +      auto _lang_codes = ["am", "bg", "bn", "br", "ca", "cs", "cy", "da", "de", "el", "en", "eo", "es", "et", "eu", "fi", "fr", "ga", "gl", "he", "hi", "hr", "hy", "ia", "is", "it", "ja", "ko", "la", "lo", "lt", "lv", "ml", "mr", "nl", "no", "nn", "oc", "pl", "pt", "pt_BR", "ro", "ru", "sa", "se", "sk", "sl", "sq", "sr", "sv", "ta", "te", "th", "tk", "tr", "uk", "ur", "vi", "zh"]; +      return _lang_codes; +    } +    auto codes_() { +      // return join(code_arr,"|"); +      return "(" ~ join(code_arr,"|") ~ ")"; +    } +    auto codes_regex() { +      return regex(codes_); +    }    }  }  #+END_SRC @@ -508,87 +498,90 @@ struct Lang {  #+name: ao_defaults_template_init_flags  #+BEGIN_SRC d -/+ regex flags +/ -int[string] flags_type_init() { -  int[string] flags_type_init = [ -    "make_headings"        : 0, -    "header_make"          : 0, -    "header_meta"          : 0, -    "heading"              : 0, -    "biblio_section"       : 0, -    "glossary_section"     : 0, -    "blurb_section"        : 0, -    "para"                 : 0, -    "blocks"               : 0, // 0..2 generic -    "code"                 : 0, // 0..2 -    "poem"                 : 0, // 0..2 -    "table"                : 0, // 0..2 -    "group"                : 0, // 0..2 -    "block"                : 0, // 0..2 -    "quote"                : 0, // 0..2 -    "verse_new"            : 0, -    "curly_code"           : 0, -    "curly_poem"           : 0, -    "curly_table"          : 0, -    "curly_group"          : 0, -    "curly_block"          : 0, -    "curly_quote"          : 0, -    "tic_code"             : 0, -    "tic_poem"             : 0, -    "tic_table"            : 0, -    "tic_group"            : 0, -    "tic_block"            : 0, -    "tic_quote"            : 0, -    "ocn_status"           : 0, // 0 obj_cite_number; 1 no obj_cite_number; 2 no obj_cite_number & dummy headings -    "ocn_status_multi_obj" : 0, // 0 obj_cite_number; 1 no obj_cite_number; 2 no obj_cite_number & dummy headings -    "book_index"           : 0, -  ]; -  return flags_type_init; +template SiSUrgxInitFlags() { +  /+ regex flags +/ +  int[string] flags_type_init() { +    int[string] flags_type_init = [ +      "make_headings"        : 0, +      "header_make"          : 0, +      "header_meta"          : 0, +      "heading"              : 0, +      "biblio_section"       : 0, +      "glossary_section"     : 0, +      "blurb_section"        : 0, +      "para"                 : 0, +      "blocks"               : 0, // 0..2 generic +      "code"                 : 0, // 0..2 +      "poem"                 : 0, // 0..2 +      "table"                : 0, // 0..2 +      "group"                : 0, // 0..2 +      "block"                : 0, // 0..2 +      "quote"                : 0, // 0..2 +      "verse_new"            : 0, +      "curly_code"           : 0, +      "curly_poem"           : 0, +      "curly_table"          : 0, +      "curly_group"          : 0, +      "curly_block"          : 0, +      "curly_quote"          : 0, +      "tic_code"             : 0, +      "tic_poem"             : 0, +      "tic_table"            : 0, +      "tic_group"            : 0, +      "tic_block"            : 0, +      "tic_quote"            : 0, +      "ocn_status"           : 0, // 0 obj_cite_number; 1 no obj_cite_number; 2 no obj_cite_number & dummy headings +      "ocn_status_multi_obj" : 0, // 0 obj_cite_number; 1 no obj_cite_number; 2 no obj_cite_number & dummy headings +      "book_index"           : 0, +    ]; +    return flags_type_init; +  }  }  #+END_SRC  #+name: ao_defaults_template_node  #+BEGIN_SRC d -string[string] node_metadata_heading_str() { -  auto _node = [ -      "is"                            : "", -      "ocn"                           : "", -      "marked_up_lev"                 : "", -      "segment_anchor_tag"            : "", -      "attrib"                        : "", -  ]; -  return _node; -} -int[string] node_metadata_heading_int() { -  auto _node = [ -      "ocn"                           : 0, // decide whether to use or keep? -      "ptr_doc_object"                : 0, -      "ptr_html_segnames"             : 0, -      "ptr_heading"                   : 0, -      "heading_lev_markup"            : 9, -      "heading_lev_collapsed"         : 9, -      "parent_ocn"                    : 0, -      "parent_lev_markup"             : 9, -  ]; -  return _node; -} -string[string] node_metadata_para_str() { -  auto _node = [ -      "is"                            : "", -      "ocn"                           : "", -      "attrib"                        : "", -      // "segment_anchor_tag"            : "", -  ]; -  return _node; -} -int[string] node_metadata_para_int() { -  auto _node = [ -      "ocn"                           : 0, -      "indent_base"                   : 0, -      "indent_hang"                   : 0, -      "bullet"                        : 0, // bool (0|1) -  ]; -  return _node; +template SiSUnode() { +  string[string] node_metadata_heading_str() { +    auto _node = [ +        "is"                            : "", +        "ocn"                           : "", +        "marked_up_lev"                 : "", +        "segment_anchor_tag"            : "", +        "attrib"                        : "", +    ]; +    return _node; +  } +  int[string] node_metadata_heading_int() { +    auto _node = [ +        "ocn"                           : 0, +        "ptr_doc_object"                : 0, +        "ptr_html_segnames"             : 0, +        "ptr_heading"                   : 0, +        "heading_lev_markup"            : 9, +        "heading_lev_collapsed"         : 9, +        "parent_ocn"                    : 0, +        "parent_lev_markup"             : 9, +    ]; +    return _node; +  } +  string[string] node_metadata_para_str() { +    auto _node = [ +        "is"                            : "", +        "ocn"                           : "", +        "attrib"                        : "", +    ]; +    return _node; +  } +  int[string] node_metadata_para_int() { +    auto _node = [ +        "ocn"                           : 0, +        "indent_base"                   : 0, +        "indent_hang"                   : 0, +        "bullet"                        : 0, // bool (0|1) +    ]; +    return _node; +  }  }  #+END_SRC @@ -596,39 +589,41 @@ int[string] node_metadata_para_int() {  #+name: ao_defaults_template_biblio  #+BEGIN_SRC d -// required: deemed_author (author || editor); year; fulltitle; -struct BibJsnStr { -  auto biblio_entry_tags_jsonstr() { -    string x =  `{ -      "is"                               : "", -      "sortby_deemed_author_year_title"  : "", -      "deemed_author"                    : "", -      "author_raw"                       : "", -      "author"                           : "", -      "author_arr"                       : [ "" ], -      "editor_raw"                       : "", -      "editor"                           : "", -      "editor_arr"                       : [ "" ], -      "title"                            : "", -      "subtitle"                         : "", -      "fulltitle"                        : "", -      "language"                         : "", -      "trans"                            : "", -      "src"                              : "", -      "journal"                          : "", -      "in"                               : "", -      "volume"                           : "", -      "edition"                          : "", -      "year"                             : "", -      "place"                            : "", -      "publisher"                        : "", -      "url"                              : "", -      "pages"                            : "", -      "note"                             : "", -      "short_name"                       : "", -      "id"                               : "" -    }`; // is: book, article, magazine, newspaper, blog, other -    return x; +template SiSUbiblio() { +  // required: deemed_author (author || editor); year; fulltitle; +  struct BibJsnStr { +    auto biblio_entry_tags_jsonstr() { +      string x =  `{ +        "is"                               : "", +        "sortby_deemed_author_year_title"  : "", +        "deemed_author"                    : "", +        "author_raw"                       : "", +        "author"                           : "", +        "author_arr"                       : [ "" ], +        "editor_raw"                       : "", +        "editor"                           : "", +        "editor_arr"                       : [ "" ], +        "title"                            : "", +        "subtitle"                         : "", +        "fulltitle"                        : "", +        "language"                         : "", +        "trans"                            : "", +        "src"                              : "", +        "journal"                          : "", +        "in"                               : "", +        "volume"                           : "", +        "edition"                          : "", +        "year"                             : "", +        "place"                            : "", +        "publisher"                        : "", +        "url"                              : "", +        "pages"                            : "", +        "note"                             : "", +        "short_name"                       : "", +        "id"                               : "" +      }`; // is: book, article, magazine, newspaper, blog, other +      return x; +    }    }  }  #+END_SRC @@ -637,103 +632,105 @@ struct BibJsnStr {  #+name: ao_defaults_template_paths  #+BEGIN_SRC d -string _base_filename(string fn_src) { -  string _fn_base = ""; -  if (extension(fn_src) == ".sst") { -    _fn_base = baseName(fn_src, ".sst"); -  } else if (extension(fn_src) == ".ssm") { -    _fn_base = baseName(fn_src, ".ssm"); -  } -  return _fn_base; -} -struct DirPaths { -  string base_filename(string fn_src) { -    return _base_filename(fn_src); -  } -} -struct SiSUpodPaths { -  string base_filename(string fn_src) { -    return _base_filename(fn_src); -  } -  string base(string fn_src) { -    return chainPath("sisupod", _base_filename(fn_src)).array; -  } -  string doc(string fn_src) { -    return chainPath(base(fn_src), "doc").array; -  } -  string doc_lng(string fn_src, string lng) { -    return chainPath(doc(fn_src), lng).array; -  } -  string image(string fn_src) { -    return chainPath(base(fn_src), "image").array; -  } -  string conf(string fn_src) { -    return chainPath(base(fn_src), "conf").array; -  } -  string css(string fn_src) { -    return chainPath(base(fn_src), "css").array; -  } -  string fn_doc(string fn_src, string lng) { -    return chainPath((doc_lng(fn_src, lng)), baseName(fn_src)).array; -  } -} -struct HtmlPaths { -  string base_filename(string fn_src) { -    return _base_filename(fn_src); -  } -  string base() { -    return chainPath("en", "html").array; -  } -  string seg(string fn_src) { -    return chainPath(base, _base_filename(fn_src)).array; -  } -  string fn_scroll(string fn_src) { -    return chainPath(base, _base_filename(fn_src) ~ ".html").array; -  } -  string fn_seg(string fn_src, string seg_filename) { -    return chainPath(seg(fn_src), seg_filename ~ ".html").array; -  } -  // string fn_css(string fn_src) { -  //   // // return chainPath(seg(fn_src), "html.css").array; -  // } -} -struct EpubPaths { -  string base_filename(string fn_src) { -    return _base_filename(fn_src); -  } -  string base() { -    return chainPath("en", "epub").array; -  } -  string doc(string fn_src) { -    return chainPath(base, _base_filename(fn_src)).array; -    // return chainPath(base, base_fn).array; -  } -  string doc_meta_inf(string fn_src) { -    return chainPath(doc(fn_src), "META-INF").array; -  } -  string doc_oebps(string fn_src) { -    return chainPath(doc(fn_src), "OEBPS").array; -  } -  string doc_oebps_css(string fn_src) { -    return chainPath(doc_oebps(fn_src), "css").array; -  } -  string doc_oebps_image(string fn_src) { -    return chainPath(doc_oebps(fn_src), "image").array; -  } -  string fn_mimetypes(string fn_src) { -    return chainPath(doc(fn_src), "mimetypes").array; +template SiSUpaths() { +  string _base_filename(string fn_src) { +    string _fn_base = ""; +    if (extension(fn_src) == ".sst") { +      _fn_base = baseName(fn_src, ".sst"); +    } else if (extension(fn_src) == ".ssm") { +      _fn_base = baseName(fn_src, ".ssm"); +    } +    return _fn_base;    } -  string fn_dmi_container_xml(string fn_src) { -    return chainPath(doc_meta_inf(fn_src), "container.xml").array; +  struct DirPaths { +    string base_filename(string fn_src) { +      return _base_filename(fn_src); +    }    } -  string fn_oebps_toc_ncx(string fn_src) { -    return chainPath(doc_oebps(fn_src), "toc.ncx").array; +  struct SiSUpodPaths { +    string base_filename(string fn_src) { +      return _base_filename(fn_src); +    } +    string base(string fn_src) { +      return chainPath("sisupod", _base_filename(fn_src)).array; +    } +    string doc(string fn_src) { +      return chainPath(base(fn_src), "doc").array; +    } +    string doc_lng(string fn_src, string lng) { +      return chainPath(doc(fn_src), lng).array; +    } +    string image(string fn_src) { +      return chainPath(base(fn_src), "image").array; +    } +    string conf(string fn_src) { +      return chainPath(base(fn_src), "conf").array; +    } +    string css(string fn_src) { +      return chainPath(base(fn_src), "css").array; +    } +    string fn_doc(string fn_src, string lng) { +      return chainPath((doc_lng(fn_src, lng)), baseName(fn_src)).array; +    }    } -  string fn_oebps_content_opf(string fn_src) { -    return chainPath(doc_oebps(fn_src), "content.opf").array; +  struct HtmlPaths { +    string base_filename(string fn_src) { +      return _base_filename(fn_src); +    } +    string base() { +      return chainPath("en", "html").array; +    } +    string seg(string fn_src) { +      return chainPath(base, _base_filename(fn_src)).array; +    } +    string fn_scroll(string fn_src) { +      return chainPath(base, _base_filename(fn_src) ~ ".html").array; +    } +    string fn_seg(string fn_src, string seg_filename) { +      return chainPath(seg(fn_src), seg_filename ~ ".html").array; +    } +    // string fn_css(string fn_src) { +    //   // // return chainPath(seg(fn_src), "html.css").array; +    // }    } -  string fn_oebps_content_xhtml(string fn_src, string seg_filename) { -    return chainPath(doc_oebps(fn_src), seg_filename ~ ".xhtml").array; +  struct EpubPaths { +    string base_filename(string fn_src) { +      return _base_filename(fn_src); +    } +    string base() { +      return chainPath("en", "epub").array; +    } +    string doc(string fn_src) { +      return chainPath(base, _base_filename(fn_src)).array; +      // return chainPath(base, base_fn).array; +    } +    string doc_meta_inf(string fn_src) { +      return chainPath(doc(fn_src), "META-INF").array; +    } +    string doc_oebps(string fn_src) { +      return chainPath(doc(fn_src), "OEBPS").array; +    } +    string doc_oebps_css(string fn_src) { +      return chainPath(doc_oebps(fn_src), "css").array; +    } +    string doc_oebps_image(string fn_src) { +      return chainPath(doc_oebps(fn_src), "image").array; +    } +    string fn_mimetypes(string fn_src) { +      return chainPath(doc(fn_src), "mimetypes").array; +    } +    string fn_dmi_container_xml(string fn_src) { +      return chainPath(doc_meta_inf(fn_src), "container.xml").array; +    } +    string fn_oebps_toc_ncx(string fn_src) { +      return chainPath(doc_oebps(fn_src), "toc.ncx").array; +    } +    string fn_oebps_content_opf(string fn_src) { +      return chainPath(doc_oebps(fn_src), "content.opf").array; +    } +    string fn_oebps_content_xhtml(string fn_src, string seg_filename) { +      return chainPath(doc_oebps(fn_src), seg_filename ~ ".xhtml").array; +    }    }  }  #+END_SRC @@ -742,24 +739,26 @@ struct EpubPaths {  #+name: ao_defaults_template_markup  #+BEGIN_SRC d -struct InlineMarkup { -  auto en_a_o = "【";      auto en_a_c = "】";   // endnote en_a_o: '~{'; en_a_c: '}~'; -  auto en_b_o = "〖";      auto en_b_c = "〗";   // endnote en_b_o: '~['; en_b_c: ']~'; -  auto lnk_o = "┥";        auto lnk_c = "┝"; -  auto url_o = "┤";        auto url_c = "├"; -  auto mark_internal_site_lnk = "¤"; -  auto nbsp = "░"; -  auto br_line = "┘"; -  auto br_nl = "┙"; -  auto br_paragraph = "┚"; -  auto br_obj = "break_obj"; -  auto br_page_line = "┼"; -  auto br_page = "┿"; -  auto br_page_new = "╂"; -  string indent_by_spaces_provided(int indent) { -    auto _indent_spaces ="░░";   // auto nbsp = "░"; -    _indent_spaces = replicate(_indent_spaces, indent); -    return _indent_spaces; +template InternalMarkup() { +  struct InlineMarkup { +    auto en_a_o = "【";      auto en_a_c = "】";   // endnote en_a_o: '~{'; en_a_c: '}~'; +    auto en_b_o = "〖";      auto en_b_c = "〗";   // endnote en_b_o: '~['; en_b_c: ']~'; +    auto lnk_o = "┥";        auto lnk_c = "┝"; +    auto url_o = "┤";        auto url_c = "├"; +    auto mark_internal_site_lnk = "¤"; +    auto nbsp = "░"; +    auto br_line = "┘"; +    auto br_nl = "┙"; +    auto br_paragraph = "┚"; +    auto br_obj = "break_obj"; +    auto br_page_line = "┼"; +    auto br_page = "┿"; +    auto br_page_new = "╂"; +    string indent_by_spaces_provided(int indent) { +      auto _indent_spaces ="░░";   // auto nbsp = "░"; +      _indent_spaces = replicate(_indent_spaces, indent); +      return _indent_spaces; +    }    }  }  #+END_SRC | 
