diff options
| author | Ralph Amissah <ralph.amissah@gmail.com> | 2023-06-27 16:53:20 -0400 | 
|---|---|---|
| committer | Ralph Amissah <ralph.amissah@gmail.com> | 2023-06-28 16:20:33 -0400 | 
| commit | b861bbb5810c95fe7079c853453ea698ca01f336 (patch) | |
| tree | 7ddd70412a8c35cc994a50b5eecc883823f7a4ff /org/default_shared_snippets.org | |
| parent | "empty page" index.html, sort homepage link (diff) | |
icon chars, usability / cosmetic minor fix
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__ | 
