-*- 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 <> 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"┃

⟰    ≅ 

┃", 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, "
") .replaceAll(rgx.br_line_inline, "
") .replaceAll(rgx.br_line_spaced, "
\n
") .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 <> /++ shared default settings +/ module doc_reform.share.defaults; <> #+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__