diff options
| -rw-r--r-- | org/spine.org | 135 | ||||
| -rwxr-xr-x | src/doc_reform/spine.d | 134 | 
2 files changed, 136 insertions, 133 deletions
| diff --git a/org/spine.org b/org/spine.org index f530703..8341b67 100644 --- a/org/spine.org +++ b/org/spine.org @@ -345,7 +345,6 @@ scope(failure) {  #+END_SRC  *** getopt args for loop                                        :args:getopt: -  **** set getopt options  - set getopt options @@ -421,71 +420,71 @@ string[string] settings = [  ];  auto helpInfo = getopt(args,    std.getopt.config.passThrough, -  "abstraction",                "--abstraction document abstraction ",                                      &opts["abstraction"], -  "assert",                     "--assert set optional assertions on",                                      &opts["assertions"], -  "cgi-search-form-codegen",    "--cgi-search-form-codegen pre-compiled d code search of specified db",     &opts["cgi-search-form-codegen"], -  "cgi-sqlite-search-filename", "--cgi-sqlite-search-filename=[filename]",                                  &settings["cgi-sqlite-search-filename"], -  "concordance",                "--concordance file for document",                                          &opts["concordance"], -  "config",                     "--config=/path/to/config/file/including/filename",                         &settings["config"], -  "dark",                       "--dark alternative dark theme",                                            &opts["dark"], -  "debug",                      "--debug",                                                                  &opts["debug"], -  "digest",                     "--digest hash digest for each object",                                     &opts["digest"], -  "epub",                       "--epub process epub output",                                               &opts["epub"], -  "harvest",                    "--harvest extract info on authors & topics from document header metadata", &opts["harvest"], -  "harvest-authors",            "--harvest-authors extract info on authors from document header metadata",  &opts["harvest-authors"], -  "harvest-topics",             "--harvest-topics extract info on topics from document header metadata",    &opts["harvest-topics"], -  "html",                       "--html process html output",                                               &opts["html"], -  "html-link-harvest",          "--html-link-harvest place links back to harvest in segmented html",        &opts["html-link-harvest"], -  "html-link-search",           "--html-link-search html embedded search submission",                       &opts["html-link-search"], -  "html-seg",                   "--html-seg process html output",                                           &opts["html-seg"], -  "html-scroll",                "--html-seg process html output",                                           &opts["html-scroll"], -  "lang",                       "--lang=[lang code e.g. =en or =en,es]",                                    &settings["lang"], -  "latex",                      "--latex output for pdfs",                                                  &opts["latex"], -  "latex-color-links",          "--latex-color-links mono or color links for pdfs",                         &opts["latex-color-links"], -  "light",                      "--light default light theme",                                              &opts["light"], -  "manifest",                   "--manifest process manifest output",                                       &opts["manifest"], -  "hide-ocn",                   "--hide-ocn object cite numbers",                                           &opts["hide-ocn"], -  "ocn-off",                    "--ocn-off object cite numbers",                                            &opts["ocn-off"], -  "odf",                        "--odf open document format text (--odt)",                                  &opts["odf"], -  "odt",                        "--odt open document format text",                                          &opts["odt"], -  "output",                     "--output=/path/to/output/dir specify where to place output",               &settings["output"], -  "parallel",                   "--parallel parallelisation",                                               &opts["parallel"], -  "parallel-subprocesses",      "--parallel-subprocesses nested parallelisation",                           &opts["parallel-subprocesses"], -  "quiet|q",                    "--quiet output to terminal",                                               &opts["quiet"], -  "pdf",                        "--pdf latex output for pdfs",                                              &opts["pdf"], -  "pdf-color-links",            "--pdf-color-links mono or color links for pdfs",                           &opts["pdf-color-links"], -  "pod",                        "--pod spine (doc reform) pod source content bundled",                      &opts["pod"], -  "serial",                     "--serial serial processing",                                               &opts["serial"], -  "show-summary",               "--show-summary",                                                           &opts["show-summary"], -  "show-make",                  "--show-make",                                                              &opts["show-make"], -  "show-metadata",              "--show-metadata",                                                          &opts["show-metadata"], -  "show-config",                "--show-config",                                                            &opts["show-config"], -  "source",                     "--source markup source text content",                                      &opts["source"], -  "sqlite-discrete",            "--sqlite process discrete sqlite output",                                  &opts["sqlite-discrete"], -  "sqlite-db-create",           "--sqlite-db-create create db, create tables",                              &opts["sqlite-db-create"], -  "sqlite-db-drop",             "--sqlite-db-drop drop tables & db",                                        &opts["sqlite-db-drop"], -  "sqlite-db-recreate",         "--sqlite-db-recreate create db, create tables",                            &opts["sqlite-db-recreate"], -  "sqlite-delete",              "--sqlite-delete process sqlite output",                                    &opts["sqlite-delete"], -  "sqlite-insert",              "--sqlite-insert process sqlite output",                                    &opts["sqlite-insert"], -  "sqlite-update",              "--sqlite-update process sqlite output",                                    &opts["sqlite-update"], -  "text",                       "--text process text output",                                               &opts["text"], -  "txt",                        "--txt process text output",                                                &opts["text"], -  "verbose|v",                  "--verbose output to terminal",                                             &opts["verbose"], -  "very-verbose",               "--very-verbose output to terminal",                                        &opts["very-verbose"], -  "xhtml",                      "--xhtml process xhtml output",                                             &opts["xhtml"], -  "section-toc",                "--section-toc process table of contents (default)",                        &opts["section_toc"], -  "section-body",               "--section-body process document body (default)",                           &opts["section_body"], -  "section-endnotes",           "--section-endnotes process document endnotes (default)",                   &opts["section_endnotes"], -  "section-glossary",           "--section-glossary process document glossary (default)",                   &opts["section_glossary"], -  "section-biblio",             "--section-biblio process document biblio (default)",                       &opts["section_biblio"], -  "section-bookindex",          "--section-bookindex process document bookindex (default)",                 &opts["section_bookindex"], -  "section-blurb",              "--section-blurb process document blurb (default)",                         &opts["section_blurb"], -  "sqlite-db-filename",         "--sqlite-db-filename=[filename].sql.db",                                      &settings["sqlite-filename"], -  "backmatter",                 "--section-backmatter process document backmatter (default)",               &opts["backmatter"], -  "skip-output",                "--skip-output",                                                            &opts["skip-output"], -  "theme-dark",                 "--theme-dark alternative dark theme",                                      &opts["theme-dark"], -  "theme-light",                "--theme-light default light theme",                                        &opts["theme-light"], -  "workon",                     "--workon (reserved for some matters under development & testing)",         &opts["workon"], +  "abstraction",                "document abstraction ",                                          &opts["abstraction"], +  "assert",                     "set optional assertions on",                                     &opts["assertions"], +  "cgi-search-form-codegen",    "generates (pre-compiled) d code for search of specified db",     &opts["cgi-search-form-codegen"], +  "cgi-sqlite-search-filename", "=[filename]",                                                    &settings["cgi-sqlite-search-filename"], +  "concordance",                "file for document",                                              &opts["concordance"], +  "config",                     "=/path/to/config/file/including/filename",                       &settings["config"], +  "dark",                       "alternative dark theme",                                         &opts["dark"], +  "debug",                      "debug",                                                          &opts["debug"], +  "digest",                     "hash digest for each object",                                    &opts["digest"], +  "epub",                       "process epub output",                                            &opts["epub"], +  "harvest",                    "extract info on authors & topics from document header metadata", &opts["harvest"], +  "harvest-authors",            "extract info on authors from document header metadata",          &opts["harvest-authors"], +  "harvest-topics",             "extract info on topics from document header metadata",           &opts["harvest-topics"], +  "hide-ocn",                   "object cite numbers",                                            &opts["hide-ocn"], +  "html",                       "process html output",                                            &opts["html"], +  "html-link-harvest",          "place links back to harvest in segmented html",                  &opts["html-link-harvest"], +  "html-link-search",           "html embedded search submission",                                &opts["html-link-search"], +  "html-seg",                   "process html output",                                            &opts["html-seg"], +  "html-scroll",                "process html output",                                            &opts["html-scroll"], +  "lang",                       "=[lang code e.g. =en or =en,es]",                                &settings["lang"], +  "latex",                      "output for pdfs",                                                &opts["latex"], +  "latex-color-links",          "mono or color links for pdfs",                                   &opts["latex-color-links"], +  "light",                      "default light theme",                                            &opts["light"], +  "manifest",                   "process manifest output",                                        &opts["manifest"], +  "ocn-off",                    "object cite numbers",                                            &opts["ocn-off"], +  "odf",                        "open document format text (--odt)",                              &opts["odf"], +  "odt",                        "open document format text",                                      &opts["odt"], +  "output",                     "=/path/to/output/dir specify where to place output",             &settings["output"], +  "parallel",                   "parallelisation",                                                &opts["parallel"], +  "parallel-subprocesses",      "nested parallelisation",                                         &opts["parallel-subprocesses"], +  "pdf",                        "latex output for pdfs",                                          &opts["pdf"], +  "pdf-color-links",            "mono or color links for pdfs",                                   &opts["pdf-color-links"], +  "pod",                        "spine (doc reform) pod source content bundled",                  &opts["pod"], +  "quiet|q",                    "output to terminal",                                             &opts["quiet"], +  "section-backmatter",          "document backmatter (default)",                                 &opts["backmatter"], +  "section-biblio",             "document biblio (default)",                                      &opts["section_biblio"], +  "section-blurb",              "document blurb (default)",                                       &opts["section_blurb"], +  "section-body",               "document body (default)",                                        &opts["section_body"], +  "section-bookindex",          "document bookindex (default)",                                   &opts["section_bookindex"], +  "section-endnotes",           "document endnotes (default)",                                    &opts["section_endnotes"], +  "section-glossary",           "document glossary (default)",                                    &opts["section_glossary"], +  "section-toc",                "table of contents (default)",                                    &opts["section_toc"], +  "serial",                     "serial processing",                                              &opts["serial"], +  "skip-output",                "skip output",                                                    &opts["skip-output"], +  "show-config",                "show config",                                                    &opts["show-config"], +  "show-make",                  "show make",                                                      &opts["show-make"], +  "show-metadata",              "show metadata",                                                  &opts["show-metadata"], +  "show-summary",               "show summary",                                                   &opts["show-summary"], +  "source",                     "document markup source",                                         &opts["source"], +  "sqlite-discrete",            "process discrete sqlite output",                                 &opts["sqlite-discrete"], +  "sqlite-db-create",           "create db, create tables",                                       &opts["sqlite-db-create"], +  "sqlite-db-drop",             "drop tables & db",                                               &opts["sqlite-db-drop"], +  "sqlite-db-recreate",         "create db, create tables",                                       &opts["sqlite-db-recreate"], +  "sqlite-delete",              "sqlite output",                                                  &opts["sqlite-delete"], +  "sqlite-db-filename",         "=[filename].sql.db",                                             &settings["sqlite-db-filename"], +  "sqlite-insert",              "sqlite output",                                                  &opts["sqlite-insert"], +  "sqlite-update",              "sqlite output",                                                  &opts["sqlite-update"], +  "text",                       "text output",                                                    &opts["text"], +  "theme-dark",                 "alternative dark theme",                                         &opts["theme-dark"], +  "theme-light",                "default light theme",                                            &opts["theme-light"], +  "txt",                        "text output",                                                    &opts["text"], +  "verbose|v",                  "output to terminal",                                             &opts["verbose"], +  "very-verbose",               "output to terminal",                                             &opts["very-verbose"], +  "workon",                     "(reserved for some matters under development & testing)",        &opts["workon"], +  "xhtml",                      "xhtml output",                                                   &opts["xhtml"],  );  if (helpInfo.helpWanted) {    defaultGetoptPrinter("Some information about the program.", helpInfo.options); @@ -679,7 +678,9 @@ struct OptActions {      return settings["cgi-sqlite-search-filename"];    }    auto cgi_sqlite_search_filename_d() { -    return (settings["cgi-sqlite-search-filename"].translate(['-' : "_"]) ~ ".d"); +    return (settings["cgi-sqlite-search-filename"].length > 0) +    ? (settings["cgi-sqlite-search-filename"].translate(['-' : "_"]) ~ ".d") +    : "";    }    @trusted bool parallelise() {      bool _is; diff --git a/src/doc_reform/spine.d b/src/doc_reform/spine.d index 7539149..d6a2f07 100755 --- a/src/doc_reform/spine.d +++ b/src/doc_reform/spine.d @@ -181,71 +181,71 @@ string program_name = "spine";    ];    auto helpInfo = getopt(args,      std.getopt.config.passThrough, -    "abstraction",                "--abstraction document abstraction ",                                      &opts["abstraction"], -    "assert",                     "--assert set optional assertions on",                                      &opts["assertions"], -    "cgi-search-form-codegen",    "--cgi-search-form-codegen pre-compiled d code search of specified db",     &opts["cgi-search-form-codegen"], -    "cgi-sqlite-search-filename", "--cgi-sqlite-search-filename=[filename]",                                  &settings["cgi-sqlite-search-filename"], -    "concordance",                "--concordance file for document",                                          &opts["concordance"], -    "config",                     "--config=/path/to/config/file/including/filename",                         &settings["config"], -    "dark",                       "--dark alternative dark theme",                                            &opts["dark"], -    "debug",                      "--debug",                                                                  &opts["debug"], -    "digest",                     "--digest hash digest for each object",                                     &opts["digest"], -    "epub",                       "--epub process epub output",                                               &opts["epub"], -    "harvest",                    "--harvest extract info on authors & topics from document header metadata", &opts["harvest"], -    "harvest-authors",            "--harvest-authors extract info on authors from document header metadata",  &opts["harvest-authors"], -    "harvest-topics",             "--harvest-topics extract info on topics from document header metadata",    &opts["harvest-topics"], -    "html",                       "--html process html output",                                               &opts["html"], -    "html-link-harvest",          "--html-link-harvest place links back to harvest in segmented html",        &opts["html-link-harvest"], -    "html-link-search",           "--html-link-search html embedded search submission",                       &opts["html-link-search"], -    "html-seg",                   "--html-seg process html output",                                           &opts["html-seg"], -    "html-scroll",                "--html-seg process html output",                                           &opts["html-scroll"], -    "lang",                       "--lang=[lang code e.g. =en or =en,es]",                                    &settings["lang"], -    "latex",                      "--latex output for pdfs",                                                  &opts["latex"], -    "latex-color-links",          "--latex-color-links mono or color links for pdfs",                         &opts["latex-color-links"], -    "light",                      "--light default light theme",                                              &opts["light"], -    "manifest",                   "--manifest process manifest output",                                       &opts["manifest"], -    "hide-ocn",                   "--hide-ocn object cite numbers",                                           &opts["hide-ocn"], -    "ocn-off",                    "--ocn-off object cite numbers",                                            &opts["ocn-off"], -    "odf",                        "--odf open document format text (--odt)",                                  &opts["odf"], -    "odt",                        "--odt open document format text",                                          &opts["odt"], -    "output",                     "--output=/path/to/output/dir specify where to place output",               &settings["output"], -    "parallel",                   "--parallel parallelisation",                                               &opts["parallel"], -    "parallel-subprocesses",      "--parallel-subprocesses nested parallelisation",                           &opts["parallel-subprocesses"], -    "quiet|q",                    "--quiet output to terminal",                                               &opts["quiet"], -    "pdf",                        "--pdf latex output for pdfs",                                              &opts["pdf"], -    "pdf-color-links",            "--pdf-color-links mono or color links for pdfs",                           &opts["pdf-color-links"], -    "pod",                        "--pod spine (doc reform) pod source content bundled",                      &opts["pod"], -    "serial",                     "--serial serial processing",                                               &opts["serial"], -    "show-summary",               "--show-summary",                                                           &opts["show-summary"], -    "show-make",                  "--show-make",                                                              &opts["show-make"], -    "show-metadata",              "--show-metadata",                                                          &opts["show-metadata"], -    "show-config",                "--show-config",                                                            &opts["show-config"], -    "source",                     "--source markup source text content",                                      &opts["source"], -    "sqlite-discrete",            "--sqlite process discrete sqlite output",                                  &opts["sqlite-discrete"], -    "sqlite-db-create",           "--sqlite-db-create create db, create tables",                              &opts["sqlite-db-create"], -    "sqlite-db-drop",             "--sqlite-db-drop drop tables & db",                                        &opts["sqlite-db-drop"], -    "sqlite-db-recreate",         "--sqlite-db-recreate create db, create tables",                            &opts["sqlite-db-recreate"], -    "sqlite-delete",              "--sqlite-delete process sqlite output",                                    &opts["sqlite-delete"], -    "sqlite-insert",              "--sqlite-insert process sqlite output",                                    &opts["sqlite-insert"], -    "sqlite-update",              "--sqlite-update process sqlite output",                                    &opts["sqlite-update"], -    "text",                       "--text process text output",                                               &opts["text"], -    "txt",                        "--txt process text output",                                                &opts["text"], -    "verbose|v",                  "--verbose output to terminal",                                             &opts["verbose"], -    "very-verbose",               "--very-verbose output to terminal",                                        &opts["very-verbose"], -    "xhtml",                      "--xhtml process xhtml output",                                             &opts["xhtml"], -    "section-toc",                "--section-toc process table of contents (default)",                        &opts["section_toc"], -    "section-body",               "--section-body process document body (default)",                           &opts["section_body"], -    "section-endnotes",           "--section-endnotes process document endnotes (default)",                   &opts["section_endnotes"], -    "section-glossary",           "--section-glossary process document glossary (default)",                   &opts["section_glossary"], -    "section-biblio",             "--section-biblio process document biblio (default)",                       &opts["section_biblio"], -    "section-bookindex",          "--section-bookindex process document bookindex (default)",                 &opts["section_bookindex"], -    "section-blurb",              "--section-blurb process document blurb (default)",                         &opts["section_blurb"], -    "sqlite-db-filename",         "--sqlite-db-filename=[filename].sql.db",                                      &settings["sqlite-filename"], -    "backmatter",                 "--section-backmatter process document backmatter (default)",               &opts["backmatter"], -    "skip-output",                "--skip-output",                                                            &opts["skip-output"], -    "theme-dark",                 "--theme-dark alternative dark theme",                                      &opts["theme-dark"], -    "theme-light",                "--theme-light default light theme",                                        &opts["theme-light"], -    "workon",                     "--workon (reserved for some matters under development & testing)",         &opts["workon"], +    "abstraction",                "document abstraction ",                                          &opts["abstraction"], +    "assert",                     "set optional assertions on",                                     &opts["assertions"], +    "cgi-search-form-codegen",    "generates (pre-compiled) d code for search of specified db",     &opts["cgi-search-form-codegen"], +    "cgi-sqlite-search-filename", "=[filename]",                                                    &settings["cgi-sqlite-search-filename"], +    "concordance",                "file for document",                                              &opts["concordance"], +    "config",                     "=/path/to/config/file/including/filename",                       &settings["config"], +    "dark",                       "alternative dark theme",                                         &opts["dark"], +    "debug",                      "debug",                                                          &opts["debug"], +    "digest",                     "hash digest for each object",                                    &opts["digest"], +    "epub",                       "process epub output",                                            &opts["epub"], +    "harvest",                    "extract info on authors & topics from document header metadata", &opts["harvest"], +    "harvest-authors",            "extract info on authors from document header metadata",          &opts["harvest-authors"], +    "harvest-topics",             "extract info on topics from document header metadata",           &opts["harvest-topics"], +    "hide-ocn",                   "object cite numbers",                                            &opts["hide-ocn"], +    "html",                       "process html output",                                            &opts["html"], +    "html-link-harvest",          "place links back to harvest in segmented html",                  &opts["html-link-harvest"], +    "html-link-search",           "html embedded search submission",                                &opts["html-link-search"], +    "html-seg",                   "process html output",                                            &opts["html-seg"], +    "html-scroll",                "process html output",                                            &opts["html-scroll"], +    "lang",                       "=[lang code e.g. =en or =en,es]",                                &settings["lang"], +    "latex",                      "output for pdfs",                                                &opts["latex"], +    "latex-color-links",          "mono or color links for pdfs",                                   &opts["latex-color-links"], +    "light",                      "default light theme",                                            &opts["light"], +    "manifest",                   "process manifest output",                                        &opts["manifest"], +    "ocn-off",                    "object cite numbers",                                            &opts["ocn-off"], +    "odf",                        "open document format text (--odt)",                              &opts["odf"], +    "odt",                        "open document format text",                                      &opts["odt"], +    "output",                     "=/path/to/output/dir specify where to place output",             &settings["output"], +    "parallel",                   "parallelisation",                                                &opts["parallel"], +    "parallel-subprocesses",      "nested parallelisation",                                         &opts["parallel-subprocesses"], +    "pdf",                        "latex output for pdfs",                                          &opts["pdf"], +    "pdf-color-links",            "mono or color links for pdfs",                                   &opts["pdf-color-links"], +    "pod",                        "spine (doc reform) pod source content bundled",                  &opts["pod"], +    "quiet|q",                    "output to terminal",                                             &opts["quiet"], +    "section-backmatter",          "document backmatter (default)",                                 &opts["backmatter"], +    "section-biblio",             "document biblio (default)",                                      &opts["section_biblio"], +    "section-blurb",              "document blurb (default)",                                       &opts["section_blurb"], +    "section-body",               "document body (default)",                                        &opts["section_body"], +    "section-bookindex",          "document bookindex (default)",                                   &opts["section_bookindex"], +    "section-endnotes",           "document endnotes (default)",                                    &opts["section_endnotes"], +    "section-glossary",           "document glossary (default)",                                    &opts["section_glossary"], +    "section-toc",                "table of contents (default)",                                    &opts["section_toc"], +    "serial",                     "serial processing",                                              &opts["serial"], +    "skip-output",                "skip output",                                                    &opts["skip-output"], +    "show-config",                "show config",                                                    &opts["show-config"], +    "show-make",                  "show make",                                                      &opts["show-make"], +    "show-metadata",              "show metadata",                                                  &opts["show-metadata"], +    "show-summary",               "show summary",                                                   &opts["show-summary"], +    "source",                     "document markup source",                                         &opts["source"], +    "sqlite-discrete",            "process discrete sqlite output",                                 &opts["sqlite-discrete"], +    "sqlite-db-create",           "create db, create tables",                                       &opts["sqlite-db-create"], +    "sqlite-db-drop",             "drop tables & db",                                               &opts["sqlite-db-drop"], +    "sqlite-db-recreate",         "create db, create tables",                                       &opts["sqlite-db-recreate"], +    "sqlite-delete",              "sqlite output",                                                  &opts["sqlite-delete"], +    "sqlite-db-filename",         "=[filename].sql.db",                                             &settings["sqlite-db-filename"], +    "sqlite-insert",              "sqlite output",                                                  &opts["sqlite-insert"], +    "sqlite-update",              "sqlite output",                                                  &opts["sqlite-update"], +    "text",                       "text output",                                                    &opts["text"], +    "theme-dark",                 "alternative dark theme",                                         &opts["theme-dark"], +    "theme-light",                "default light theme",                                            &opts["theme-light"], +    "txt",                        "text output",                                                    &opts["text"], +    "verbose|v",                  "output to terminal",                                             &opts["verbose"], +    "very-verbose",               "output to terminal",                                             &opts["very-verbose"], +    "workon",                     "(reserved for some matters under development & testing)",        &opts["workon"], +    "xhtml",                      "xhtml output",                                                   &opts["xhtml"],    );    if (helpInfo.helpWanted) {      defaultGetoptPrinter("Some information about the program.", helpInfo.options); @@ -432,7 +432,9 @@ string program_name = "spine";        return settings["cgi-sqlite-search-filename"];      }      auto cgi_sqlite_search_filename_d() { -      return (settings["cgi-sqlite-search-filename"].translate(['-' : "_"]) ~ ".d"); +      return (settings["cgi-sqlite-search-filename"].length > 0) +      ? (settings["cgi-sqlite-search-filename"].translate(['-' : "_"]) ~ ".d") +      : "";      }      @trusted bool parallelise() {        bool _is; | 
