diff options
author | Ralph Amissah <ralph.amissah@gmail.com> | 2020-04-24 13:59:28 -0400 |
---|---|---|
committer | Ralph Amissah <ralph.amissah@gmail.com> | 2020-05-20 11:27:26 -0400 |
commit | 681dd49c3e138942778266cc44210e47eea8b048 (patch) | |
tree | 14ba4e94ba6718d3c5a19daca652972706407aa0 /src/doc_reform | |
parent | backmatter, special sections, heading ocn fix (diff) |
html, harvests search form, minor misc
- harvests add search form to db option
- dark theme input background color
(follows cgi search form)
- html tidy
html tidy
Diffstat (limited to 'src/doc_reform')
-rw-r--r-- | src/doc_reform/io_out/metadata.d | 74 | ||||
-rw-r--r-- | src/doc_reform/io_out/xmls.d | 27 | ||||
-rw-r--r-- | src/doc_reform/io_out/xmls_css.d | 24 | ||||
-rw-r--r-- | src/doc_reform/meta/metadoc_harvests_authors.d | 78 | ||||
-rw-r--r-- | src/doc_reform/meta/metadoc_harvests_topics.d | 78 |
5 files changed, 262 insertions, 19 deletions
diff --git a/src/doc_reform/io_out/metadata.d b/src/doc_reform/io_out/metadata.d index 6c059ce..1d366b9 100644 --- a/src/doc_reform/io_out/metadata.d +++ b/src/doc_reform/io_out/metadata.d @@ -1,6 +1,39 @@ module doc_reform.io_out.metadata; template outputMetadata() { @safe void outputMetadata(T)( T doc_matters) { + @safe string inline_search_form(M)( + M doc_matters, + ) { + string o; + string _form; + if (doc_matters.opt.action.html_search_link) { + o = format(q"┃ + <div class="flex-menu-option"> + <!-- SiSU Spine Search --> + <form action="%s" target="_top" method="POST" accept-charset="UTF-8" id="search"> + <font size="2"> + <input type="text" name="sf" size="24" maxlength="255">%s + <input type="hidden" name="sml" value="1000"> + <input type="hidden" name="ec" value="on"> + <input type="hidden" name="url" value="on"> + <button type="submit" form="search" name="fn" value="%s">doc</button> + <button type="submit" form="search">db</button> + </font></form> + <!-- SiSU Spine Search --> + </div>┃", + doc_matters.conf_make_meta.conf.w_srv_cgi_action, + (doc_matters.conf_make_meta.conf.w_srv_db_sqlite.empty) + ? "" + : "\n <input type=\"hidden\" name=\"db\" value=\"" + ~ doc_matters.conf_make_meta.conf.w_srv_db_sqlite + ~ "\">", + doc_matters.src.filename_base, + ); + } else { + o = ""; + } + return o; + } import std.file, std.format; @@ -32,6 +65,10 @@ string theme_dark_0 = format(q"┃ color : #888888; text-decoration : underline; } + input { + color : #FFFFFF; + background-color : #777777; + } ┃"); string theme_light_0 = format(q"┃ body { @@ -58,6 +95,10 @@ string theme_light_0 = format(q"┃ color : #003399; text-decoration : underline; } + input { + color : #000000; + background-color : #FFFFFF; + } ┃"); string theme_dark_1 = format(q"┃ h1 { @@ -179,6 +220,35 @@ string theme_light_1 = format(q"┃ font-size : 80%%; margin-left : 6em; }%s + /* flex */ + .flex-menu-bar { + display : -webkit-flex; + display : flex; + -webkit-flex-wrap : wrap; + -webkit-align-items : center; + align-items : center; + width : 100%%; + margin-left : 0%%; + margin-right : 2%%; + background-color : inherited; + } + .flex-menu-option { + background-color : inherited; + margin-right : 4px; + } + .flex-list { + display : -webkit-flex; + display : flex; + -webkit-align-items : center; + display : block; + align-items : center; + width : 100%%; + background-color : inherited; + } + .flex-list-item { + background-color : inherited; + margin : 4px; + } </style> <link rel="shortcut icon" href="../_sisu/image/rb7.ico" /> </head> @@ -230,17 +300,17 @@ string theme_light_1 = format(q"┃ <a name="up" id="up"></a> <a name="start" id="start"></a> ┃"); + metadata_ ~= "<div class=\"flex-menu-bar\"><div class=\"flex-menu-option\">"; if (doc_matters.opt.action.html_harvest_link) { metadata_ ~= format(q"┃<p>[<a href="../../index.html"> HOME </a>] Metadata Harvest [<a href="../../authors.html"> Authors </a>] [<a href="../../topics.html"> Topics </a>]</p> - <hr /> ┃"); } else { metadata_ ~= format(q"┃<p>[<a href="../../index.html"> HOME </a>] - <hr /> ┃"); } + metadata_ ~= "</div>" ~ inline_search_form(doc_matters) ~ "</div><hr />"; if (!(doc_matters.conf_make_meta.meta.title_full.empty)) { metadata_ ~= "<p class=\"lev0\">Title: <b><a href=\"" ~ doc_matters.src.filename_base ~ "/toc.html\">" ~ doc_matters.conf_make_meta.meta.title_full ~ "</a></b></p>"; } else if (doc_matters.opt.action.debug_do || doc_matters.opt.action.very_verbose) { diff --git a/src/doc_reform/io_out/xmls.d b/src/doc_reform/io_out/xmls.d index ffcdcb6..b4c5e56 100644 --- a/src/doc_reform/io_out/xmls.d +++ b/src/doc_reform/io_out/xmls.d @@ -109,7 +109,7 @@ template outputXHTMLs() { <meta name="generator" content="%s" /> <link rel="generator" href="%s" /> <!-- spine DocReform header metadata -->┃", - doc_matters.conf_make_meta.meta.title_full, + doc_matters.conf_make_meta.meta.title_full.replaceAll(regex("\""), """), doc_matters.conf_make_meta.meta.creator_author, _publisher, doc_matters.conf_make_meta.meta.date_published, @@ -158,7 +158,6 @@ template outputXHTMLs() { o = format(q"┃ <div class="flex-menu-option"> <!-- SiSU Spine Search --> - <a name="search"></a> <form action="%s" target="_top" method="POST" accept-charset="UTF-8" id="search"> <font size="2"> <input type="text" name="sf" size="24" maxlength="255">%s @@ -282,7 +281,7 @@ template outputXHTMLs() { <body lang="%s"> <a name="top" id="top"></a>┃", html_simple, - doc_matters.conf_make_meta.meta.title_full, + doc_matters.conf_make_meta.meta.title_full.replaceAll(regex("\""), """), (doc_matters.conf_make_meta.meta.creator_author.empty) ? "" : ", " ~ doc_matters.conf_make_meta.meta.creator_author, doc_matters.conf_make_meta.meta.title_full, @@ -598,7 +597,7 @@ template outputXHTMLs() { toc = format(q"┃<a href="toc.html" target="_top"> <div class="toc-button menu"> <svg viewbox="0 0 100 100"> - <path d="M4,10h24c1.104,0,2-0.896,2-2s-0.896-2-2-2H4C2.896,6,2,6.896,2,8S2.896,10,4,10z M28,14H4c-1.104,0-2,0.896-2,2 s0.896,2,2,2h24c1.104,0,2-0.896,2-2S29.104,14,28,14z M28,22H4c-1.104,0-2,0.896-2,2s0.896,2,2,2h24c1.104,0,2-0.896,2-2 S29.104,22,28,22z"/> + <path d="M4,10h24c1.104,0,2-0.896,2-2s-0.896-2-2-2H4C2.896,6,2,6.896,2,8S2.896,10,4,10z M28,14H4c-1.104,0-2,0.896-2,2 s0.896,2,2,2h24c1.104,0,2-0.896,2-2S29.104,14,28,14z M28,22H4c-1.104,0-2,0.896-2,2s0.896,2,2,2h24c1.104,0,2-0.896,2-2 S29.104,22,28,22z" /> </svg> </div> </a>┃", @@ -610,7 +609,7 @@ template outputXHTMLs() { prev = format(q"┃<a href="%s.html" target="_top"> <div class="prev-next-button previous"> <svg viewbox="0 0 100 100"> - <path class="arrow" d="M 50,0 L 60,10 L 20,50 L 60,90 L 50,100 L 0,50 Z" transform=" translate(15,0)"> + <path class="arrow" d="M 50,0 L 60,10 L 20,50 L 60,90 L 50,100 L 0,50 Z" transform=" translate(15,0)" /> </svg> </div> </a>┃", @@ -623,18 +622,17 @@ template outputXHTMLs() { next = format(q"┃<a href="%s.html" target="_top"> <div class="prev-next-button next"> <svg viewbox="0 0 100 100"> - <path class="arrow" d="M 50,0 L 60,10 L 20,50 L 60,90 L 50,100 L 0,50 Z "transform="translate(85,100) rotate(180) "> + <path class="arrow" d="M 50,0 L 60,10 L 20,50 L 60,90 L 50,100 L 0,50 Z" transform="translate(85,100) rotate(180)" /> </svg> </div> </a>┃", obj.tags.segname_next, ); } - string _toc_pre_next = format(q"┃ <div class="nav-bar"> - %s - %s - %s - </div> + string _toc_pre_next = format(q"┃ <div class="nav-bar"> + %s + %s + %s </div> </div> </div>┃", @@ -642,10 +640,9 @@ template outputXHTMLs() { prev, next, ); - string _pre_next = format(q"┃ <div class="nav-bar"> - %s - %s - </div> + string _pre_next = format(q"┃ <div class="nav-bar"> + %s + %s </div> </div> </div>┃", diff --git a/src/doc_reform/io_out/xmls_css.d b/src/doc_reform/io_out/xmls_css.d index 88af237..e882b4d 100644 --- a/src/doc_reform/io_out/xmls_css.d +++ b/src/doc_reform/io_out/xmls_css.d @@ -466,6 +466,10 @@ template spineCss() { color : #003399; text-decoration : underline; } + input { + color : #000000; + background-color : #FFFFFF; + } div { margin-left : 0; margin-right : 0; @@ -1176,6 +1180,10 @@ template spineCss() { color : #888888; text-decoration : underline; } + input { + color : #FFFFFF; + background-color : #777777; + } div { margin-left : 0; margin-right : 0; @@ -1885,6 +1893,10 @@ template spineCss() { color : #003399; text-decoration : underline; } + input { + color : #000000; + background-color : #FFFFFF; + } div { margin-left : 0; margin-right : 0; @@ -2521,6 +2533,10 @@ template spineCss() { color : #888888; text-decoration : underline; } + input { + color : #FFFFFF; + background-color : #777777; + } div { margin-left : 0; margin-right : 0; @@ -3156,6 +3172,10 @@ template spineCss() { color : #003399; text-decoration : underline; } + input { + color : #000000; + background-color : #FFFFFF; + } div { margin-left : 0; margin-right : 0; @@ -3682,6 +3702,10 @@ template spineCss() { color : #888888; text-decoration : underline; } + input { + color : #FFFFFF; + background-color : #777777; + } div { margin-left : 0; margin-right : 0; diff --git a/src/doc_reform/meta/metadoc_harvests_authors.d b/src/doc_reform/meta/metadoc_harvests_authors.d index 132c0af..5555f9d 100644 --- a/src/doc_reform/meta/metadoc_harvests_authors.d +++ b/src/doc_reform/meta/metadoc_harvests_authors.d @@ -19,6 +19,37 @@ template spineMetaDocHarvestsAuthors() { M _make_and_meta_struct, O _opt_action, ) { + @safe string inline_search_form(M)( + M _make_and_meta_truct, + ) { + string o; + string _form; + if (_opt_action.html_search_link) { + o = format(q"┃ + <div class="flex-menu-option"> + <!-- SiSU Spine Search --> + <form action="%s" target="_top" method="POST" accept-charset="UTF-8" id="search"> + <font size="2"> + <input type="text" name="sf" size="24" maxlength="255">%s + <input type="hidden" name="sml" value="1000"> + <input type="hidden" name="ec" value="on"> + <input type="hidden" name="url" value="on"> + <button type="submit" form="search">db</button> + </font></form> + <!-- SiSU Spine Search --> + </div>┃", + _make_and_meta_struct.conf.w_srv_cgi_action, + (_make_and_meta_struct.conf.w_srv_db_sqlite.empty) + ? "" + : "\n <input type=\"hidden\" name=\"db\" value=\"" + ~ _make_and_meta_struct.conf.w_srv_db_sqlite + ~ "\">", + ); + } else { + o = ""; + } + return o; + } string theme_dark_0 = format(q"┃ body { color : #CCCCCC; @@ -60,6 +91,10 @@ string theme_dark_0 = format(q"┃ color : #FFFFFF; background : #777777; } + input { + color : #FFFFFF; + background-color : #777777; + } ┃"); string theme_light_0 = format(q"┃ body { @@ -100,6 +135,10 @@ string theme_light_0 = format(q"┃ a.lev3:hover { background : #BBBBBB; } + input { + color : #000000; + background-color : #FFFFFF; + } ┃"); string theme_dark_1 = format(q"┃ h1 { @@ -261,6 +300,35 @@ string theme_light_1 = format(q"┃ font-size : 80%%; margin-left : 6em; }%s + /* flex */ + .flex-menu-bar { + display : -webkit-flex; + display : flex; + -webkit-flex-wrap : wrap; + -webkit-align-items : center; + align-items : center; + width : 100%%; + margin-left : 0%%; + margin-right : 2%%; + background-color : inherited; + } + .flex-menu-option { + background-color : inherited; + margin-right : 4px; + } + .flex-list { + display : -webkit-flex; + display : flex; + -webkit-align-items : center; + display : block; + align-items : center; + width : 100%%; + background-color : inherited; + } + .flex-list-item { + background-color : inherited; + margin : 4px; + } </style> <link rel="shortcut icon" href="../_sisu/image/rb7.ico" /> </head> @@ -269,13 +337,21 @@ string theme_light_1 = format(q"┃ <a name="up" id="up"></a> <a name="start" id="start"></a> <h1>Metadata Harvest - Authors (output organised by language & filetype)</h1> -<p>[<a href="../../index.html"> HOME </a>] [<a href="topics.html"> Metadata Harvest - Topics </a>]</p> +<div class="flex-menu-bar"> +<div class="flex-menu-option"> +<p>[<a href="../../index.html"> HOME </a>] + [<a href="topics.html"> Metadata Harvest - Topics </a>] +</p> +</div> +%s +</div> <p></p> <hr /> <p><a href="#A">A</a>, <a href="#B">B</a>, <a href="#C">C</a>, <a href="#D">D</a>, <a href="#E">E</a>, <a href="#F">F</a>, <a href="#G">G</a>, <a href="#H">H</a>, <a href="#I">I</a>, <a href="#J">J</a>, <a href="#K">K</a>, <a href="#L">L</a>, <a href="#M">M</a>, <a href="#N">N</a>, <a href="#O">O</a>, <a href="#P">P</a>, <a href="#Q">Q</a>, <a href="#R">R</a>, <a href="#S">S</a>, <a href="#T">T</a>, <a href="#U">U</a>, <a href="#V">V</a>, <a href="#W">W</a>, <a href="#X">X</a>, <a href="#Y">Y</a>, <a href="#Z">Z</a>, ┃", _opt_action.css_theme_default ? theme_light_0 : theme_dark_0, _opt_action.css_theme_default ? theme_light_1 : theme_dark_1, + inline_search_form(_make_and_meta_struct), ) ~ "\n"; string[string] _au; string[] _auth_date_title; diff --git a/src/doc_reform/meta/metadoc_harvests_topics.d b/src/doc_reform/meta/metadoc_harvests_topics.d index aeb7cba..5332659 100644 --- a/src/doc_reform/meta/metadoc_harvests_topics.d +++ b/src/doc_reform/meta/metadoc_harvests_topics.d @@ -19,6 +19,37 @@ template spineMetaDocHarvestsTopics() { M _make_and_meta_struct, O _opt_action, ) { + @safe string inline_search_form(M)( + M _make_and_meta_truct, + ) { + string o; + string _form; + if (_opt_action.html_search_link) { + o = format(q"┃ + <div class="flex-menu-option"> + <!-- SiSU Spine Search --> + <form action="%s" target="_top" method="POST" accept-charset="UTF-8" id="search"> + <font size="2"> + <input type="text" name="sf" size="24" maxlength="255">%s + <input type="hidden" name="sml" value="1000"> + <input type="hidden" name="ec" value="on"> + <input type="hidden" name="url" value="on"> + <button type="submit" form="search">db</button> + </font></form> + <!-- SiSU Spine Search --> + </div>┃", + _make_and_meta_struct.conf.w_srv_cgi_action, + (_make_and_meta_struct.conf.w_srv_db_sqlite.empty) + ? "" + : "\n <input type=\"hidden\" name=\"db\" value=\"" + ~ _make_and_meta_struct.conf.w_srv_db_sqlite + ~ "\">", + ); + } else { + o = ""; + } + return o; + } auto min_repeat_number = 42; string[] _document_topic_register; string[] _topic_register; @@ -103,6 +134,10 @@ string theme_dark_0 = format(q"┃ color : #FFFFFF; background : #777777; } + input { + color : #FFFFFF; + background-color : #777777; + } ┃"); string theme_light_0 = format(q"┃ body { @@ -143,6 +178,10 @@ string theme_light_0 = format(q"┃ a.lev3:hover { background : #BBBBBB; } + input { + color : #000000; + background-color : #FFFFFF; + } ┃"); string theme_dark_1 = format(q"┃ h1 { @@ -302,6 +341,35 @@ string theme_light_1 = format(q"┃ font-size : 80%%; margin-left : 6em; }%s + /* flex */ + .flex-menu-bar { + display : -webkit-flex; + display : flex; + -webkit-flex-wrap : wrap; + -webkit-align-items : center; + align-items : center; + width : 100%%; + margin-left : 0%%; + margin-right : 2%%; + background-color : inherited; + } + .flex-menu-option { + background-color : inherited; + margin-right : 4px; + } + .flex-list { + display : -webkit-flex; + display : flex; + -webkit-align-items : center; + display : block; + align-items : center; + width : 100%%; + background-color : inherited; + } + .flex-list-item { + background-color : inherited; + margin : 4px; + } </style> <link rel="shortcut icon" href="../_sisu/image/rb7.ico" /> </head> @@ -310,13 +378,21 @@ string theme_light_1 = format(q"┃ <a name="up" id="up"></a> <a name="start" id="start"></a> <h1>Metadata Harvest - Topics (output organised by language & filetype)</h1> -<p>[<a href="../../index.html"> HOME </a>] [<a href="authors.html"> Metadata Harvest - Authors </a>]</p> +<div class="flex-menu-bar"> +<div class="flex-menu-option"> +<p>[<a href="../../index.html"> HOME </a>] + [<a href="authors.html"> Metadata Harvest - Authors </a>] +</p> +</div> + %s +</div> <p><a href="#A">A</a>, <a href="#B">B</a>, <a href="#C">C</a>, <a href="#D">D</a>, <a href="#E">E</a>, <a href="#F">F</a>, <a href="#G">G</a>, <a href="#H">H</a>, <a href="#I">I</a>, <a href="#J">J</a>, <a href="#K">K</a>, <a href="#L">L</a>, <a href="#M">M</a>, <a href="#N">N</a>, <a href="#O">O</a>, <a href="#P">P</a>, <a href="#Q">Q</a>, <a href="#R">R</a>, <a href="#S">S</a>, <a href="#T">T</a>, <a href="#U">U</a>, <a href="#V">V</a>, <a href="#W">W</a>, <a href="#X">X</a>, <a href="#Y">Y</a>, <a href="#Z">Z</a>, <p></p> <hr /> ┃", _opt_action.css_theme_default ? theme_light_0 : theme_dark_0, _opt_action.css_theme_default ? theme_light_1 : theme_dark_1, + inline_search_form(_make_and_meta_struct), ) ~ "\n"; char _prev_k = "_".to!char; int _kn; |