diff options
Diffstat (limited to 'org')
-rw-r--r-- | org/default_shared_snippets.org (renamed from org/default_shared.org) | 62 | ||||
-rw-r--r-- | org/out_curate_metadata.org | 45 | ||||
-rw-r--r-- | org/out_metadata.org | 66 | ||||
-rw-r--r-- | org/out_xmls.org | 73 | ||||
-rw-r--r-- | org/out_xmls_css.org | 28 |
5 files changed, 187 insertions, 87 deletions
diff --git a/org/default_shared.org b/org/default_shared_snippets.org index 8e3cbca..9c3d2cd 100644 --- a/org/default_shared.org +++ b/org/default_shared_snippets.org @@ -17,6 +17,68 @@ - [[./doc-reform.org][doc-reform.org]] [[./][org/]] +* html snippet +** _module template_ :module: + +#+HEADER: :tangle "../src/doc_reform/io_out/html_snippet.d" +#+HEADER: :noweb yes +#+BEGIN_SRC d +<<doc_header_including_copyright_and_license>> +module doc_reform.io_out.html_snippet; +template htmlSnippet() { + import + std.file, + std.outbuffer, + std.format, + std.uri, + std.conv : to; + import + doc_reform.io_out.rgx, + doc_reform.meta.rgx_files, + doc_reform.io_out.rgx_xhtml; + auto format_html_blank_page_guide_home()( + string css_style, + string home_url, + string collection_home_path + ) { + auto html_blank_default = format(q"┃<!DOCTYPE html> +<html> + <head> + <meta http-equiv="Content-Type" content="text/plain; charset=UTF-8" /> + <link href="%s" rel="stylesheet" /> + </head> + <body> + <p class="icons"> + <a href="%s" class="lnkicon">⟰ </a> + <a href="%s" class="lnkicon"> ≅ </a> + </p> + </body> +</html>┃", + css_style, + home_url, + collection_home_path + ); + return html_blank_default; + } + @safe string special_characters_text(string _txt) { + mixin spineRgxOut; + mixin spineRgxXHTML; + static auto rgx = RgxO(); + static auto rgx_xhtml = RgxXHTML(); + _txt = _txt + .replaceAll(rgx_xhtml.ampersand, "&") // "&" + .replaceAll(rgx_xhtml.quotation, """) // """ + .replaceAll(rgx_xhtml.less_than, "<") // "<" + .replaceAll(rgx_xhtml.greater_than, ">") // ">" + .replaceAll(rgx.br_line, "<br />") + .replaceAll(rgx.br_line_inline, "<br />") + .replaceAll(rgx.br_line_spaced, "<br />\n<br />") + .replaceAll(rgx.nbsp_char, " "); + return _txt; + } +} +#+END_SRC + * shared ** _module template_ :module:shared: diff --git a/org/out_curate_metadata.org b/org/out_curate_metadata.org index 0dd74cd..8f94577 100644 --- a/org/out_curate_metadata.org +++ b/org/out_curate_metadata.org @@ -233,13 +233,13 @@ foreach(k, doc_curate; hvst.curates) { <h1>⌘ Curated metadata - ⌘ Topics (output organised by language & filetype)</h1> <div class="flex-menu-bar"> <div class="flex-menu-option"> -<p>[<a href="../../index.html"> ⟰ HOME </a> | <a href="../index.html"> ≅ Collection </a>] - [<a href="authors.html"> ⌘ Curated metadata - 🖋 Authors </a>] +<p class="icons">[<a href="../../index.html" class="lnkicon"> ⟰ HOME </a> | <a href="../index.html" class="lnkicon"> ≅ Collection </a>] + [<a href="authors.html" class="lnkicon"> ⌘ Curated metadata - 🖋 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><a href="#A" class="lnkicon">A</a>, <a href="#B" class="lnkicon">B</a>, <a href="#C" class="lnkicon">C</a>, <a href="#D" class="lnkicon">D</a>, <a href="#E" class="lnkicon">E</a>, <a href="#F" class="lnkicon">F</a>, <a href="#G" class="lnkicon">G</a>, <a href="#H" class="lnkicon">H</a>, <a href="#I" class="lnkicon">I</a>, <a href="#J" class="lnkicon">J</a>, <a href="#K" class="lnkicon">K</a>, <a href="#L" class="lnkicon">L</a>, <a href="#M" class="lnkicon">M</a>, <a href="#N" class="lnkicon">N</a>, <a href="#O" class="lnkicon">O</a>, <a href="#P" class="lnkicon">P</a>, <a href="#Q" class="lnkicon">Q</a>, <a href="#R" class="lnkicon">R</a>, <a href="#S" class="lnkicon">S</a>, <a href="#T" class="lnkicon">T</a>, <a href="#U" class="lnkicon">U</a>, <a href="#V" class="lnkicon">V</a>, <a href="#W" class="lnkicon">W</a>, <a href="#X" class="lnkicon">X</a>, <a href="#Y" class="lnkicon" class="lnkicon">Y</a>, <a href="#Z" class="lnkicon">Z</a>, <p></p> <hr /> #+END_SRC @@ -528,14 +528,14 @@ template spineMetaDocCuratesAuthors() { <h1>⌘ Curated metadata - 🖋 Authors (output organised by language & filetype)</h1> <div class="flex-menu-bar"> <div class="flex-menu-option"> -<p>[<a href="../../index.html"> ⟰ HOME </a> | <a href="../index.html"> ≅ Collection </a>] - [<a href="topics.html"> ⌘ Curated metadata - ⌘ Topics </a>] </p> +<p class="icons">[<a href="../../index.html" class="lnkicon"> ⟰ HOME </a> | <a href="../index.html" class="lnkicon"> ≅ Collection </a>] + [<a href="topics.html" class="lnkicon"> ⌘ Curated metadata - ⌘ 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>, +<p><a href="#A" class="lnkicon">A</a>, <a href="#B" class="lnkicon">B</a>, <a href="#C" class="lnkicon">C</a>, <a href="#D" class="lnkicon">D</a>, <a href="#E" class="lnkicon">E</a>, <a href="#F" class="lnkicon">F</a>, <a href="#G" class="lnkicon">G</a>, <a href="#H" class="lnkicon">H</a>, <a href="#I" class="lnkicon">I</a>, <a href="#J" class="lnkicon">J</a>, <a href="#K" class="lnkicon">K</a>, <a href="#L" class="lnkicon">L</a>, <a href="#M" class="lnkicon">M</a>, <a href="#N" class="lnkicon">N</a>, <a href="#O" class="lnkicon">O</a>, <a href="#P" class="lnkicon">P</a>, <a href="#Q" class="lnkicon">Q</a>, <a href="#R" class="lnkicon">R</a>, <a href="#S" class="lnkicon">S</a>, <a href="#T" class="lnkicon">T</a>, <a href="#U" class="lnkicon">U</a>, <a href="#V" class="lnkicon">V</a>, <a href="#W" class="lnkicon">W</a>, <a href="#X" class="lnkicon">X</a>, <a href="#Y" class="lnkicon">Y</a>, <a href="#Z" class="lnkicon">Z</a>, #+END_SRC *** curated authors html theme inserts @@ -675,6 +675,18 @@ string theme_dark_0 = format(q"┃ color : #FFFFFF; background : #777777; } + a.lnkicon:link { + text-decoration : none; + } + a.lnkicon:visited { + text-decoration : none; + } + a.lnkicon:hover { + font-size : 160%%; + } + a:hover img { + background-color : #FFFFFF; + } input, select, textarea { font-size : 150%%; } @@ -722,6 +734,18 @@ string theme_light_0 = format(q"┃ a.lev3:hover { background : #BBBBBB; } + a.lnkicon:link { + text-decoration : none; + } + a.lnkicon:visited { + text-decoration : none; + } + a.lnkicon:hover { + font-size : 160%%; + } + a:hover img { + background-color : #FFFFFF; + } input, select, textarea { font-size : 150%%; } @@ -908,6 +932,15 @@ string theme_light_1 = format(q"┃ margin-right : 6px; text-align : left; } + p.icons, .icons_center { + font-size : 100%%; + margin-top : 0px; + margin-bottom : 0px; + margin-right : 6px; + } + p.icons { + text-align : left; + } p.lev0 { font-size : 120%%; margin-left : 1em; diff --git a/org/out_metadata.org b/org/out_metadata.org index 457fbd1..7002117 100644 --- a/org/out_metadata.org +++ b/org/out_metadata.org @@ -90,9 +90,9 @@ metadata_ ~= format(q"┃<body lang="en" xml:lang="en"> ┃"); metadata_ ~= "<div class=\"flex-menu-bar\"><div class=\"flex-menu-option\">"; if (doc_matters.opt.action.html_link_curate) { - metadata_ ~= format(q"┃<p>[<a href="%s"> <b>⟰</b> HOME </a> | <a href="../../index.html"> ≅ Collection </a>] [ - <a href="../../authors.html"> 🖋 Authors </a> | - <a href="../../topics.html"> ⌘ Topics </a>]</p> + metadata_ ~= format(q"┃<p class="icons">[<a href="%s" class="lnkicon"> <b>⟰</b> HOME </a> | <a href="../../index.html" class="lnkicon"> ≅ Collection </a>] [ + <a href="../../authors.html" class="lnkicon"> 🖋 Authors </a> | + <a href="../../topics.html" class="lnkicon"> ⌘ Topics </a>]</p> ┃", (doc_matters.opt.action.webserver_url_doc_root.length > 0) ? doc_matters.opt.action.webserver_url_doc_root @@ -100,7 +100,7 @@ if (doc_matters.opt.action.html_link_curate) { , // HOME index.html equivalent _cfg.www_url_doc_root, ); } else { - metadata_ ~= format(q"┃<p>[<a href="../../../index.html"> ≅ <b>HOME</b> </a> <a href="../../index.html"> ≅ Collection </a>] + metadata_ ~= format(q"┃<p class="icons">[<a href="../../../index.html" class="lnkicon"> ≅ <b>HOME</b> </a> <a href="../../index.html" class="lnkicon"> ≅ Collection </a>] ┃"); } metadata_ ~= "</div>" ~ inline_search_form(doc_matters) ~ "</div><hr />"; @@ -138,35 +138,35 @@ if (!(doc_matters.conf_make_meta.meta.notes_summary.empty)) { } metadata_ ~= "<hr /><p class=\"lev1\">source: " ~ doc_matters.src.filename_base ~ "</p>"; if (doc_matters.opt.action.html_link_markup_source) { - metadata_ ~= "<p class=\"lev1\">● markup source: the pod [<a href=\"../../" ~ pth_pod.internal_base ~ "/" ~ doc_matters.src.filename_base ~ ".zip\">" + metadata_ ~= "<p class=\"lev1\">● markup source: the pod [<a href=\"../../" ~ pth_pod.internal_base ~ "/" ~ doc_matters.src.filename_base ~ ".zip\" class=\"lnkicon\">" ~ " 🫛 zipped </a>| " - ~ "<a href=\"../../" ~ pth_pod.internal_base ~ "/" ~ doc_matters.src.filename_base ~ "/\">" + ~ "<a href=\"../../" ~ pth_pod.internal_base ~ "/" ~ doc_matters.src.filename_base ~ "/\" class=\"lnkicon\">" ~ " 🫛 tree </a>] "; } -metadata_ ~= "<p class=\"lev1\">● outputs: [ html: <a href=\"" ~ doc_matters.src.filename_base ~ ".html\">" +metadata_ ~= "<p class=\"lev1\">● outputs: [ html: <a href=\"" ~ doc_matters.src.filename_base ~ ".html\" class=\"lnkicon\">" ~ " ▤ scroll </a> " - ~ "|<a href=\"" ~ doc_matters.src.filename_base ~ "/toc.html\">" + ~ "|<a href=\"" ~ doc_matters.src.filename_base ~ "/toc.html\" class=\"lnkicon\">" ~ " ※ seg </a>] " - ~ "[<a href=\"../../" ~ pth_epub.internal_base ~ "/" ~ doc_matters.src.filename_base ~ "." ~ doc_matters.src.language ~ ".epub\">" + ~ "[<a href=\"../../" ~ pth_epub.internal_base ~ "/" ~ doc_matters.src.filename_base ~ "." ~ doc_matters.src.language ~ ".epub\" class=\"lnkicon\">" ~ " ◆ epub </a>] "; if ((doc_matters.opt.action.html_link_pdf) || (doc_matters.opt.action.html_link_pdf_a4)) { metadata_ ~= "[ pdf: <a href=\"../../pdf/" ~ doc_matters.src.filename_base - ~ "." ~ doc_matters.src.language ~ ".a4.portrait.pdf\">" + ~ "." ~ doc_matters.src.language ~ ".a4.portrait.pdf\" class=\"lnkicon\">" ~ " □ a4 </a> " ~ "|<a href=\"../../pdf/" ~ doc_matters.src.filename_base - ~ "." ~ doc_matters.src.language ~ ".letter.portrait.pdf\">" + ~ "." ~ doc_matters.src.language ~ ".letter.portrait.pdf\" class=\"lnkicon\">" ~ " □ U.S. letter </a>] "; } else if (doc_matters.opt.action.html_link_pdf_a4) { metadata_ ~= "[<a href=\"../../pdf/" ~ doc_matters.src.filename_base - ~ "." ~ doc_matters.src.language ~ ".a4.portrait.pdf\">" + ~ "." ~ doc_matters.src.language ~ ".a4.portrait.pdf\" class=\"lnkicon\">" ~ " □ pdf (a4) </a>] "; } else if (doc_matters.opt.action.html_link_pdf_letter) { metadata_ ~= "[<a href=\"../../pdf/" ~ doc_matters.src.filename_base - ~ "." ~ doc_matters.src.language ~ ".letter.portrait.pdf\">" + ~ "." ~ doc_matters.src.language ~ ".letter.portrait.pdf\" class=\"lnkicon\">" ~ " □ pdf (U.S. letter) </a>] "; } metadata_ ~= "</p>"; @@ -337,6 +337,18 @@ string theme_dark_0 = format(q"┃ color : #888888; text-decoration : underline; } + a.lnkicon:link { + text-decoration : none; + } + a.lnkicon:visited { + text-decoration : none; + } + a.lnkicon:hover { + font-size : 160%%; + } + a:hover img { + background-color : #FFFFFF; + } input { color : #FFFFFF; background-color : #777777; @@ -367,6 +379,18 @@ string theme_light_0 = format(q"┃ color : #003399; text-decoration : underline; } + a.lnkicon:link { + text-decoration : none; + } + a.lnkicon:visited { + text-decoration : none; + } + a.lnkicon:hover { + font-size : 160%%; + } + a:hover img { + background-color : #FFFFFF; + } input { color : #000000; background-color : #FFFFFF; @@ -491,6 +515,15 @@ string theme_light_1 = format(q"┃ margin-right : 6px; text-align : left; } + p.icons, .icons_center { + font-size : 100%%; + margin-top : 0px; + margin-bottom : 0px; + margin-right : 6px; + } + p.icons { + text-align : left; + } p.lev0 { font-size : 120%%; margin-left : 1em; @@ -589,7 +622,7 @@ string theme_light_1 = format(q"┃ <div class="flex-menu-option"> <!-- SiSU Spine Search --> <form action="%s" target="_top" method="POST" accept-charset="UTF-8" id="searchtxt"> - <font size="2">🔎 + <font size="2">%s <input type="text" name="sf" size="24" maxlength="255">%s <input type="hidden" name="sml" value="1000"> <input type="hidden" name="ec" value="on"> @@ -615,6 +648,11 @@ string theme_light_1 = format(q"┃ doc_matters.conf_make_meta.conf.w_srv_cgi_action, (doc_matters.conf_make_meta.conf.w_srv_db_sqlite_filename.empty) ? "" + : "\n <a href=\"" + ~ doc_matters.conf_make_meta.conf.w_srv_cgi_action + ~ "\">🔎 </a>", + (doc_matters.conf_make_meta.conf.w_srv_db_sqlite_filename.empty) + ? "" : "\n <input type=\"hidden\" name=\"db\" value=\"" ~ doc_matters.conf_make_meta.conf.w_srv_db_sqlite_filename ~ "\">", diff --git a/org/out_xmls.org b/org/out_xmls.org index 7cec142..06fd5d8 100644 --- a/org/out_xmls.org +++ b/org/out_xmls.org @@ -23,67 +23,6 @@ 2023 #+END_SRC -* html snippet -** _module template_ :module: - -#+HEADER: :tangle "../src/doc_reform/io_out/html_snippet.d" -#+HEADER: :noweb yes -#+BEGIN_SRC d -<<doc_header_including_copyright_and_license>> -module doc_reform.io_out.html_snippet; -template htmlSnippet() { - import - std.file, - std.outbuffer, - std.format, - std.uri, - std.conv : to; - import - doc_reform.io_out.rgx, - doc_reform.meta.rgx_files, - doc_reform.io_out.rgx_xhtml; - auto format_html_blank_page_guide_home()( - string css_style, - string home_url, - string collection_home_path - ) { - auto html_blank_default = format(q"┃<!DOCTYPE html> -<html> - <head> - <meta http-equiv="Content-Type" content="text/plain; charset=UTF-8" /> - <link href="%s" rel="stylesheet" /> - </head> - <body> - <p class="heading"> - <a href="%s">⟰ </a> - <a href="%s"> ≅ </a> - </p> - </body> -</html>┃", - css_style, - home_url, - collection_home_path - ); - return html_blank_default; - } - @safe string special_characters_text(string _txt) { - mixin spineRgxOut; - mixin spineRgxXHTML; - static auto rgx = RgxO(); - static auto rgx_xhtml = RgxXHTML(); - _txt = _txt - .replaceAll(rgx_xhtml.ampersand, "&") // "&" - .replaceAll(rgx_xhtml.quotation, """) // """ - .replaceAll(rgx_xhtml.less_than, "<") // "<" - .replaceAll(rgx_xhtml.greater_than, ">") // ">" - .replaceAll(rgx.br_line, "<br />") - .replaceAll(rgx.br_line_inline, "<br />") - .replaceAll(rgx.br_line_spaced, "<br />\n<br />") - .replaceAll(rgx.nbsp_char, " "); - return _txt; - } -} -#+END_SRC * xml offspring (xhtml html epub) ** format xhtml objects :format: @@ -406,13 +345,13 @@ import _locations = (doc_matters.conf_make_meta.make.home_button_text) .replaceAll( rgx.inline_link, - ("<p class=\"tiny_left\"><a href=\"$2\">$1</a></p>")) + ("<p class=\"tiny_left\"><a href=\"$2\" class=\"lnkicon\">$1</a></p>")) .replaceAll( rgx.br_line, "") .replaceAll( rgx.br_line_inline, ""); } else { - _locations = "<p class=\"tiny_left\"><a href=\"https://www.doc-reform.org\">spine</a></p>\n<p class=\"tiny_left\"><a href=\"https://git.sisudoc.org/software/spine/\">sources / git</a></p>\n<p class=\"tiny_left\"><a href=\"https://www.sisudoc.org\">www.sisudoc.org</a></p>"; + _locations = "<p class=\"icons\"><a href=\"https://www.doc-reform.org\" class=\"lnkicon\">spine</a></p>\n<p class=\"icons\"><a href=\"https://git.sisudoc.org/software/spine/\" class=\"lnkicon\">sources / git</a></p>\n<p class=\"icons\"><a href=\"https://www.sisudoc.org\" class=\"lnkicon\">www.sisudoc.org</a></p>"; } string o; o = format(q"┃<div class="flex-menu-option"> @@ -501,7 +440,7 @@ import ) { string o; string metadata_links = ((doc_matters.opt.action.html_link_curate) - ? format(q"┃<p class="small"><a href="%s">⟰ </a> [<a href="%s"> %s </a><a href="%sepub/%s.%s.epub"> ◆ </a>%s%s<a href="%smetadata.%s.html"> ℹ </a>] <a href="%s../../index.html"> ≅ </a>|<a href="%s../../authors.html"> 🖋 </a>|<a href="%s../../topics.html"> ⌘ </a>|</p>┃", + ? format(q"┃<p class="icons"><a href="%s" class="lnkicon">⟰ </a> [<a href="%s" class="lnkicon"> %s </a><a href="%sepub/%s.%s.epub" class="lnkicon"> ◆ </a>%s%s<a href="%smetadata.%s.html" class="lnkicon"> ℹ </a>] <a href="%s../../index.html" class="lnkicon"> ≅ </a>|<a href="%s../../authors.html" class="lnkicon"> 🖋 </a>|<a href="%s../../topics.html" class="lnkicon"> ⌘ </a>|</p>┃", (doc_matters.opt.action.webserver_url_doc_root.length > 0) ? doc_matters.opt.action.webserver_url_doc_root : doc_matters.conf_make_meta.conf.w_srv_data_root_url @@ -520,7 +459,7 @@ import ~ doc_matters.src.filename_base ~ "." ~ doc_matters.src.lng - ~ ".a4.portrait.pdf\"> □ </a>") + ~ ".a4.portrait.pdf\" class=\"lnkicon\"> □ </a>") : "", (doc_matters.opt.action.html_link_pdf || doc_matters.opt.action.html_link_pdf_letter) ? ("<a href=\"" @@ -529,7 +468,7 @@ import ~ doc_matters.src.filename_base ~ "." ~ doc_matters.src.lng - ~ ".letter.portrait.pdf\"> □ </a>") + ~ ".letter.portrait.pdf\" class=\"lnkicon\"> □ </a>") : "", (type == "seg") ? "../" : "", doc_matters.src.filename_base, @@ -686,7 +625,7 @@ import <hr /> <div class="generator"> <p class="small_center" id="sisu_spine"><a name="sisu_spine"></a> - <a href="https://sisudoc.org">≅ SiSU Spine ፨</a> (object numbering & object search) + <a href="https://sisudoc.org" class="lnkicon">≅ SiSU Spine ፨</a> (object numbering & object search) </p> <p class="small_center" id="sisu_spine"><a name="sisu_spine"></a> (web 1993, object numbering 1997, object search 2002 ...) <<year>> diff --git a/org/out_xmls_css.org b/org/out_xmls_css.org index db73643..5c050eb 100644 --- a/org/out_xmls_css.org +++ b/org/out_xmls_css.org @@ -226,6 +226,15 @@ a.lnkocn:hover { color : #777777; font-size : 1.8rem; } +a.lnkicon:link { + text-decoration : none; +} +a.lnkicon:visited { + text-decoration : none; +} +a.lnkicon:hover { + font-size : 160%%; +} a:hover img { background-color : #FFFFFF; } @@ -545,6 +554,15 @@ p.tiny_center { margin-right : 0px; text-align : center; } +p.icons, .icons_center { + font-size : 100%%; + margin-top : 0px; + margin-bottom : 0px; + margin-right : 6px; +} +p.icons { + text-align : left; +} p.concordance_word { line-height : 150%%; font-weight : bold; @@ -1150,6 +1168,16 @@ a.lnkocn:hover { color : #BBBBBB; font-size : 1.8rem; } +a.lnkicon:link { + text-decoration : none; +} +a.lnkicon:visited { + text-decoration : none; +} +a.lnkicon:hover { + color : #BBBBBB; + font-size : 120%%; +} a:hover img { background-color : #000000; } |