diff options
Diffstat (limited to 'org/default_shared_snippets.org')
-rw-r--r-- | org/default_shared_snippets.org | 175 |
1 files changed, 175 insertions, 0 deletions
diff --git a/org/default_shared_snippets.org b/org/default_shared_snippets.org new file mode 100644 index 0000000..9c3d2cd --- /dev/null +++ b/org/default_shared_snippets.org @@ -0,0 +1,175 @@ +-*- mode: org -*- +#+TITLE: spine (doc_reform) shared +#+DESCRIPTION: documents - structuring, publishing in multiple formats & search +#+FILETAGS: :spine:default:shared: +#+AUTHOR: Ralph Amissah +#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]] +#+COPYRIGHT: Copyright (C) 2015 - 2023 Ralph Amissah +#+LANGUAGE: en +#+STARTUP: content hideblocks hidestars noindent entitiespretty +#+PROPERTY: header-args :exports code +#+PROPERTY: header-args+ :noweb yes +#+PROPERTY: header-args+ :results no +#+PROPERTY: header-args+ :cache no +#+PROPERTY: header-args+ :padline no +#+PROPERTY: header-args+ :mkdirp yes +#+OPTIONS: H:3 num:nil toc:t \n:t ::t |:t ^:nil -:t f:t *:t + +- [[./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: + +#+HEADER: :tangle "../src/doc_reform/share/defaults.d" +#+HEADER: :noweb yes +#+BEGIN_SRC d +<<doc_header_including_copyright_and_license>> +/++ + shared default settings ++/ +module doc_reform.share.defaults; +<<shared_messages>> +#+END_SRC + +** template: messages :messages: + +#+NAME: shared_messages +#+BEGIN_SRC d +template Msg() { + import std.stdio; + @safe auto Msg(I)(I doc_matters) { + struct Msg_ { + void v()(string message) { + if (doc_matters.opt.action.vox_gt1) { + writeln(message); + } + } + void vv()(string message) { + if (doc_matters.opt.action.vox_gt2) { + writeln(message); + } + } + } + return Msg_(); + } +} +#+END_SRC + +* document header including copyright & license + +#+NAME: doc_header_including_copyright_and_license +#+BEGIN_SRC txt +/+ +- Name: Spine, Doc Reform [a part of] + - Description: documents, structuring, processing, publishing, search + - static content generator + + - Author: Ralph Amissah + [ralph.amissah@gmail.com] + + - Copyright: (C) 2015 - 2023 Ralph Amissah, All Rights Reserved. + + - License: AGPL 3 or later: + + Spine (SiSU), a framework for document structuring, publishing and + search + + Copyright (C) Ralph Amissah + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU AFERO General Public License as published by the + Free Software Foundation, either version 3 of the License, or (at your + option) any later version. + + This program is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + more details. + + You should have received a copy of the GNU General Public License along with + this program. If not, see [https://www.gnu.org/licenses/]. + + If you have Internet connection, the latest version of the AGPL should be + available at these locations: + [https://www.fsf.org/licensing/licenses/agpl.html] + [https://www.gnu.org/licenses/agpl.html] + + - Spine (by Doc Reform, related to SiSU) uses standard: + - docReform markup syntax + - standard SiSU markup syntax with modified headers and minor modifications + - docReform object numbering + - standard SiSU object citation numbering & system + + - Homepages: + [https://www.doc_reform.org] + [https://www.sisudoc.org] + + - Git + [https://git.sisudoc.org/projects/?p=software/spine.git;a=summary] + ++/ +#+END_SRC + +* __END__ |