aboutsummaryrefslogtreecommitdiffhomepage
path: root/org
diff options
context:
space:
mode:
Diffstat (limited to 'org')
-rw-r--r--org/COPYRIGHT27
-rw-r--r--org/compile_time_info.org1
-rw-r--r--org/default_misc.org1
-rw-r--r--org/default_paths.org1
-rw-r--r--org/default_regex.org1
-rw-r--r--org/default_shared.org1
-rw-r--r--org/doc_reform.org61
-rw-r--r--org/dr_build_scaffold.org1406
-rw-r--r--org/dr_info.org158
-rw-r--r--org/imports.org1
-rw-r--r--org/meta_abstraction.org1
-rw-r--r--org/meta_conf_make_meta.org1
-rw-r--r--org/meta_debugs.org1
-rw-r--r--org/output_hub.org1
-rw-r--r--org/output_sqlite.org1
-rw-r--r--org/output_src_pod.org1
-rw-r--r--org/output_xmls.org1
-rw-r--r--org/output_xmls_css.org1
-rw-r--r--org/output_zip.org1
-rw-r--r--org/source_files_read.org1
20 files changed, 1667 insertions, 1 deletions
diff --git a/org/COPYRIGHT b/org/COPYRIGHT
new file mode 100644
index 0000000..3bd2d7c
--- /dev/null
+++ b/org/COPYRIGHT
@@ -0,0 +1,27 @@
+- Name: Doc Reform
+ - Description: documents, structuring, processing, publishing, search
+ - static content generator
+
+ - Author: Ralph Amissah
+ [ralph.amissah@gmail.com]
+
+ - Copyright: (C) 2015 - 2019 Ralph Amissah
+
+ - 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
+
+ - Hompages:
+ [http://www.doc_reform.org]
+ [http://www.sisudoc.org]
+
+ - Git
+ [http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=summary]
+ [http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob;f=lib/sisu/html.rb;hb=HEAD]
+
+- Doc Reform markup samples
+ Individual document content Copyright (Author) [as stated in document header]
+ Individual document content License (Author) [as stated in document header]
diff --git a/org/compile_time_info.org b/org/compile_time_info.org
index 2733994..215253f 100644
--- a/org/compile_time_info.org
+++ b/org/compile_time_info.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:compile:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/default_misc.org b/org/default_misc.org
index 769f4db..1540e30 100644
--- a/org/default_misc.org
+++ b/org/default_misc.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:default:misc:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/default_paths.org b/org/default_paths.org
index 55ee430..5ba5a43 100644
--- a/org/default_paths.org
+++ b/org/default_paths.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:paths:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/default_regex.org b/org/default_regex.org
index f95be72..849b9b0 100644
--- a/org/default_regex.org
+++ b/org/default_regex.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:regex:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/default_shared.org b/org/default_shared.org
index 9ec0387..7071eda 100644
--- a/org/default_shared.org
+++ b/org/default_shared.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:default:shared:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/doc_reform.org b/org/doc_reform.org
index 2fd11ac..d5027fb 100644
--- a/org/doc_reform.org
+++ b/org/doc_reform.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:hub:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
@@ -26,7 +27,7 @@ struct Version {
int minor;
int patch;
}
-enum _ver = Version(0, 5, 0);
+enum _ver = Version(0, 6, 0);
#+END_SRC
** compilation restrictions (supported compilers)
@@ -66,6 +67,7 @@ version (Posix) {
- by zip filename
#+BEGIN_SRC d :tangle "../src/doc_reform/doc_reform.d" :shebang #!/usr/bin/env rdmd
+<<doc_header_including_copyright_and_license>>
module doc_reform.sisu_document_parser;
import
doc_reform.conf.compile_time_info,
@@ -118,6 +120,63 @@ void main(string[] args) {
}
#+END_SRC
+*** document header including copyright & license
+
+#+NAME: doc_header_including_copyright_and_license
+#+BEGIN_SRC text
+/+
+- Name: Doc Reform
+ - Description: documents, structuring, processing, publishing, search
+ - static content generator
+
+ - Author: Ralph Amissah
+ [ralph.amissah@gmail.com]
+
+ - Copyright: (C) 2015 - 2019 Ralph Amissah, All Rights
+ Reserved.
+
+ - License: AGPL 3 or later:
+
+ Doc Reform (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 [http://www.gnu.org/licenses/].
+
+ If you have Internet connection, the latest version of the AGPL should be
+ available at these locations:
+ [http://www.fsf.org/licensing/licenses/agpl.html]
+ [http://www.gnu.org/licenses/agpl.html]
+
+ - 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
+
+ - Hompages:
+ [http://www.doc_reform.org]
+ [http://www.sisudoc.org]
+
+ - Git
+ [http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=summary]
+ [http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob;f=lib/sisu/html.rb;hb=HEAD]
+
++/
+#+END_SRC
+
** 1. pre-loop init :init:
*** init
**** imports :import:
diff --git a/org/dr_build_scaffold.org b/org/dr_build_scaffold.org
new file mode 100644
index 0000000..3a209a9
--- /dev/null
+++ b/org/dr_build_scaffold.org
@@ -0,0 +1,1406 @@
+#+TITLE: doc_reform (project) makefile
+#+DESCRIPTION: makefile for doc_reform
+#+FILETAGS: :doc_reform:makefile:
+#+AUTHOR: Ralph Amissah
+#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
+#+LANGUAGE: en
+#+STARTUP: indent content
+#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
+#+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
+#+OPTIONS: author:nil email:nil creator:nil timestamp:nil
+#+PROPERTY: header-args :padline no :exports code :noweb yes
+#+EXPORT_SELECT_TAGS: export
+#+EXPORT_EXCLUDE_TAGS: noexport
+#+TAGS: assert(a) class(c) debug(d) mixin(m) doc_reform(s) tangle(T) template(t) WEB(W) noexport(n)
+
+[[./org/doc_reform.org][doc_reform.org]] [[./org/][org/]]
+
+* makefile :makefile:
+** settings [+2] :settings:
+*** git version stamp :git:version:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+PROJECT_VERSION :=$(shell echo `git describe --long --tags | sed -e "s/^[ a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g"`)
+#+END_SRC
+
+*** dub (build tool) :dub:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+DUB=dub
+DUB_FLAGS=-v --force --compiler=
+#+END_SRC
+
+*** Project Details :project:sdp:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+PRG_NAME=doc-reform
+PRG_NICKAME=rad
+PRG_NAME_DIR=$(shell echo `echo $(PRG_NAME) | sed -e "s/-/_/g"`)
+PRG_SRC=$(PRG_NAME).d
+PRG_SRCDIR=./src
+PRG_BIN=$(PRG_NAME)
+PRG_BINDIR=./bin
+PRG_DOCDIR=./docs
+#+END_SRC
+
+*** Emacs Org settings :settings:emacs:org:tangle:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+EMACSLISP=/usr/share/emacs/site-lisp
+ORG_VER_AVAILABLE=$(shell echo `ls -d ~/.emacs.d/elpa/org-???????? | cut -d '-' -f2`)
+EMACSLISP_ORG=~/.emacs.d/elpa/org-$($(shell echo $(ORG_VER_AVAILABLE)))
+ORG_CONTRIB_VER_AVAILABLE=$(shell echo `ls -d ~/.emacs.d/elpa/org-plus-???????? | cut -d '-' -f2`)
+EMACSLISP_ORG_CONTRIB=~/.emacs.d/elpa/org-plus-contrib-$($(shell echo $(ORG_CONTRIB_VER_AVAILABLE)))
+ORGFILELIST=$(shell echo `ls -1 org/*.org`)
+ORGFILES=""
+ORGDIR :=$(shell echo `pwd`)
+#+END_SRC
+
+*** Markup Samples
+**** pods
+
+#+BEGIN_SRC makefile :tangle ../makefile
+SiSU_MARKUP_SAMPLES_FIND_PODS= \
+find data/pod -maxdepth 2 -name pod.manifest | cut -f 1-3 -d / | sort
+
+SiSU_MARKUP_SAMPLES_PODS_FOUND= \
+$(SiSU_MARKUP_SAMPLES_FIND_PODS) | xargs
+
+SiSU_MARKUP_SAMPLES_POD = \
+data/pod/accelerando.charles_stross \
+data/pod/alices_adventures_in_wonderland.lewis_carroll \
+data/pod/content.cory_doctorow \
+data/pod/democratizing_innovation.eric_von_hippel \
+data/pod/down_and_out_in_the_magic_kingdom.cory_doctorow \
+data/pod/for_the_win.cory_doctorow \
+data/pod/free_as_in_freedom_2.richard_stallman_and_the_free_software_revolution.sam_williams.richard_stallman \
+data/pod/free_culture.lawrence_lessig \
+data/pod/free_for_all.peter_wayner \
+data/pod/gpl2.fsf \
+data/pod/gpl3.fsf \
+data/pod/gullivers_travels.jonathan_swift \
+data/pod/little_brother.cory_doctorow \
+data/pod/live-manual \
+data/pod/sisu-manual \
+data/pod/the_autonomous_contract.ralph_amissah \
+data/pod/the_cathedral_and_the_bazaar.eric_s_raymond \
+data/pod/the_public_domain.james_boyle \
+data/pod/the_wealth_of_networks.yochai_benkler \
+data/pod/through_the_looking_glass.lewis_carroll \
+data/pod/two_bits.christopher_kelty \
+data/pod/un_contracts_international_sale_of_goods_convention_1980 \
+data/pod/viral_spiral.david_bollier
+#+END_SRC
+
+**** dir
+
+#+BEGIN_SRC makefile :tangle ../makefile
+SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND = \
+find data/sisudir/media/text -name *.ss[tm] | sort | xargs
+
+SiSU_MARKUP_SAMPLES_DIR = \
+data/sisudir/media/text/accelerando.charles_stross.sst \
+data/sisudir/media/text/alices_adventures_in_wonderland.lewis_carroll.sst \
+data/sisudir/media/text/content.cory_doctorow.sst \
+data/sisudir/media/text/democratizing_innovation.eric_von_hippel.sst \
+data/sisudir/media/text/down_and_out_in_the_magic_kingdom.cory_doctorow.sst \
+data/sisudir/media/text/ffa_tmp.sst \
+data/sisudir/media/text/for_the_win.cory_doctorow.sst \
+data/sisudir/media/text/free_as_in_freedom_2.richard_stallman_and_the_free_software_revolution.sam_williams.richard_stallman.sst \
+data/sisudir/media/text/free_culture.lawrence_lessig.sst \
+data/sisudir/media/text/free_for_all.peter_wayner.sst \
+data/sisudir/media/text/gpl2.fsf.sst \
+data/sisudir/media/text/gpl3.fsf.sst \
+data/sisudir/media/text/gullivers_travels.jonathan_swift.sst \
+data/sisudir/media/text/little_brother.cory_doctorow.sst \
+data/sisudir/media/text/sisu_markup.sst \
+data/sisudir/media/text/sisu_markup_stress_test.sst \
+data/sisudir/media/text/sisu_markup_test.sst \
+data/sisudir/media/text/table_special_markup.sst \
+data/sisudir/media/text/the_autonomous_contract.ralph_amissah.sst \
+data/sisudir/media/text/the_cathedral_and_the_bazaar.eric_s_raymond.sst \
+data/sisudir/media/text/the_public_domain.james_boyle.sst \
+data/sisudir/media/text/the_wealth_of_networks.yochai_benkler.sst \
+data/sisudir/media/text/through_the_looking_glass.lewis_carroll.sst \
+data/sisudir/media/text/two_bits.christopher_kelty.sst \
+data/sisudir/media/text/un_contracts_international_sale_of_goods_convention_1980.sst \
+data/sisudir/media/text/viral_spiral.david_bollier.sst
+#+END_SRC
+
+** _make_ commands [+2] :make:commands:
+
+- build commands
+ - build
+ - debug
+ - release
+- init, clean, distclean etc.
+ - init
+ - clean
+ - expunge
+ - distclean
+ - distclean_and_init
+- org babel tangle
+ - tangle
+- git snapshot
+ - gitsnapshot
+
+*** build commands [+1] :build:compile:
+**** _dub_ build rebuild :dub:
+***** all compiler builds :all:dmd:gdc:ldc:
+****** all builds
+******* default
+
+#+BEGIN_SRC makefile :tangle ../makefile
+default: ldc
+#+END_SRC
+
+******* sample markup file list
+
+#+BEGIN_SRC makefile :tangle ../makefile
+markup_samples:
+ find data/pod -name pod.manifest | cut -f 1-3 -d / | sort; \
+find data/sisudir/media/text -name *.ss[tm] | sort
+#+END_SRC
+
+#+BEGIN_SRC makefile :tangle ../makefile
+markup_pod_samples:
+ find data/pod -name pod.manifest | cut -f 1-3 -d / | sort
+#+END_SRC
+
+#+BEGIN_SRC makefile :tangle ../makefile
+markup_dir_samples:
+ find data/sisudir/media/text -name *.ss[tm] | sort
+#+END_SRC
+
+******* quick :quick:
+******** default :default:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+all: dmd ldc gdc
+#+END_SRC
+
+******** version :version:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+all_ver: dmd_ver ldc_ver gdc_ver
+#+END_SRC
+
+******** debug :debug:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+all_debug: dmd_debug gdc_debug ldc_debug
+#+END_SRC
+
+******** _meson_ build :meson:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+meson:
+ rm -r build && mkdir build
+ meson --buildtype=debugoptimized build
+ ninja -C build
+mesonredo:
+ rm -r build && mkdir build
+ meson --buildtype=debugoptimized build
+ ninja -C build
+mesonclean: clean skel tangle
+ meson --buildtype=debugoptimized build
+ ninja -C build
+#+END_SRC
+
+******* clean & tangle :clean:tangle:
+******** default :default:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+all_clean: clean tangle dmd ldc gdc
+#+END_SRC
+
+******** version :version:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+all_ver_clean: clean tangle dmd_ver ldc_ver gdc_ver
+#+END_SRC
+
+******** debug :debug:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+all_debug_ver: dmd_debug_ver gdc_debug_ver ldc_debug_ver
+all_debug_clean_ver: clean tangle dmd_debug_ver gdc_debug_ver ldc_debug_ver
+#+END_SRC
+
+***** individual compiler builds :each:
+****** dmd :dmd:
+******* quick :quick:
+******** default :default:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+dmd:
+ $(DUB) --compiler=dmd --config=dmd -b release
+#+END_SRC
+
+******** debug :debug:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+dmd_debug:
+ $(DUB) --compiler=dmd --config=dmd -b debug
+#+END_SRC
+
+******** version :version:
+
+- assumes git tags with program version
+
+#+BEGIN_SRC makefile :tangle ../makefile
+dmd_ver:
+ $(DUB) --compiler=dmd --config=dmd-version
+ mv bin/doc-reform-dmd-ver bin/doc-reform-dmd-$(PROJECT_VERSION)
+ notify-send -t 0 'D dmd compiled test release executable ready' 'doc-reform-dmd-$(PROJECT_VERSION)'
+dmd_clean_ver: clean tangle dmd_ver
+#+END_SRC
+
+******* clean & tangle :clean:tangle:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+dmd_rel: expunge skel tangle
+ $(DUB) --compiler=dmd --config=doc-reform-release
+dmd_rel_tangle: tangle
+ $(DUB) --compiler=dmd --config=doc-reform-dmd
+dmd_rel_expunge_tangle: expunge skel tangle dmd_rel_tangle
+dmd_debug_tangle: tangle
+ $(DUB) --compiler=dmd --config=doc-reform-dmd-debug
+#+END_SRC
+
+****** gdc :gdc:
+******* quick :quick:
+******** default :default:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+gdc:
+ $(DUB) --compiler=gdc --config=gdc -b release
+#+END_SRC
+
+******** debug :debug:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+gdc_debug:
+ $(DUB) --compiler=gdc --config=gdc -b debug
+#+END_SRC
+
+******** version :version:
+
+- assumes git tags with program version
+
+#+BEGIN_SRC makefile :tangle ../makefile
+gdc_ver:
+ $(DUB) --compiler=gdc --config=gdc-version
+ mv bin/doc-reform-gdc-ver bin/doc-reform-gdc-$(PROJECT_VERSION)
+ notify-send -t 0 'D gdc compiled test release executable ready' 'doc-reform-gdc-$(PROJECT_VERSION)'
+gdc_clean_ver: clean tangle gdc_ver
+#+END_SRC
+
+******* clean & tangle :clean:tangle:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+gdc_rel: expunge skel tangle
+ $(DUB) --compiler=gdc --config=doc-reform-release
+gdc_rel_tangle: tangle
+ $(DUB) --compiler=gdc --config=doc-reform-gdc
+gdc_rel_expunge_tangle: expunge skel tangle gdc_rel_tangle
+gdc_debug_tangle: tangle
+ $(DUB) --compiler=gdc --config=doc-reform-gdc-debug
+#+END_SRC
+
+****** ldc :ldc:
+******* quick :quick:
+******** default :default:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+ldc:
+ $(DUB) --compiler=ldc2 --config=ldc -b release
+#+END_SRC
+
+******** debug :debug:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+ldc_debug:
+ $(DUB) --compiler=ldc2 --config=ldc -b debug
+#+END_SRC
+
+******** version :version:
+
+- assumes git tags with program version
+
+#+BEGIN_SRC makefile :tangle ../makefile
+ldc_ver:
+ $(DUB) --compiler=ldc2 --config=ldc-version
+ mv bin/doc-reform-ldc-ver bin/doc-reform-ldc-$(PROJECT_VERSION)
+ notify-send -t 0 'D ldc2 compiled test release executable ready' 'doc-reform-ldc-$(PROJECT_VERSION)'
+ldc_clean_ver: clean tangle ldc_ver
+#+END_SRC
+
+******* clean & tangle :clean:tangle:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+ldc_rel: expunge skel tangle
+ $(DUB) --compiler=ldc2 --config=doc-reform-release
+ldc_rel_tangle: tangle
+ $(DUB) --compiler=ldc2 --config=doc-reform-ldc
+ldc_rel_expunge_tangle: expunge skel tangle ldc_rel_tangle
+ldc_debug_tangle: tangle
+ $(DUB) --compiler=ldc2 --config=doc-reform-ldc-debug
+#+END_SRC
+
+***** generic
+****** init clean distclean etc. :clean:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+reinit: clean skel tangle
+skel:
+ mkdir -p build; \
+ mkdir -p subprojects; \
+ mkdir -p views; \
+ mkdir -p data; \
+ mkdir -p util; \
+ mkdir -p $(PRG_SRCDIR)/$(PRG_NAME_DIR)/conf; \
+ mkdir -p $(PRG_SRCDIR)/$(PRG_NAME_DIR)/meta; \
+ mkdir -p $(PRG_SRCDIR)/$(PRG_NAME_DIR)/output; \
+ mkdir -p $(PRG_SRCDIR)/$(PRG_NAME_DIR)/share; \
+ mkdir -p $(PRG_SRCDIR)/$(PRG_NAME_DIR)/source; \
+ mkdir -p $(PRG_SRCDIR)/$(PRG_NAME_DIR); \
+ mkdir -p $(PRG_BINDIR);
+init: skel
+clean:
+ rm -rf build; \
+ rm -rf subprojects; \
+ rm -rf $(PRG_SRCDIR); \
+ rm -rf $(PRG_DOCDIR);
+clean_bin:
+ rm $(PRG_BINDIR)/*
+clean_src:
+ rm -rf $(PRG_SRCDIR);
+clean_docs:
+ rm -rf $(PRG_DOCDIR)
+expunge:
+ rm -f dub.selections.json; \
+ rm -rf build; \
+ rm -rf subprojects; \
+ rm -rf $(PRG_SRCDIR); \
+ rm -rf $(PRG_BINDIR); \
+ rm -rf $(PRG_DOCDIR);
+distclean: expunge
+distclean_and_init: expunge
+ mkdir -p views; \
+ mkdir -p util; \
+ mkdir -p $(PRG_SRCDIR)/$(PRG_NAME_DIR); \
+ mkdir -p $(PRG_BINDIR);
+#+END_SRC
+
+****** version :version:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+ver:
+ echo doc-reform-$(PROJECT_VERSION)
+#+END_SRC
+
+****** tangle build rebuild :clean:tangle:build:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+clean_tangle_build: clean tangle build
+tangle_build: tangle build
+build: $(PRG_SRCDIR)/$(PRG_SRC)
+ $(DC) $(DC_FLAGS) \
+ $(DC_FLAG_BINOF)$(PRG_BINDIR)/$(PRG_BIN) \
+ $(PRG_SRCDIR)/$(PRG_SRC)
+rebuild: $(PRG_SRCDIR)/$(PRG_SRC) $(PRG_BINDIR)/$(PRG_BIN).o clean build
+makefile_new:
+ make -k tangle_maker
+restart: clean tangle
+#+END_SRC
+
+*** testrun (program against document markup)
+**** pods
+****** find files
+
+#+BEGIN_SRC makefile :tangle ../makefile
+find_pods:
+ $(SiSU_MARKUP_SAMPLES_FIND_PODS)
+#+END_SRC
+
+***** dmd
+****** find files
+
+#+BEGIN_SRC makefile :tangle ../makefile
+dmd_testrun_find:
+ ./bin/doc-reform-dmd -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod \
+data/pod/sisu-manual
+dmd_testrun_find_pod_source:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+./bin/doc-reform-ldc -v --source --html --epub \
+--output-dir=tmp/program_output_pod
+dmd_testrun_find_pod_pod:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+./bin/doc-reform-dmd -v --pod \
+--output-dir=tmp/program_output_pod
+dmd_testrun_find_pod_html:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+./bin/doc-reform-dmd -v --html \
+--output-dir=tmp/program_output_pod
+dmd_testrun_find_pod_epub:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+./bin/doc-reform-dmd -v --epub \
+--output-dir=tmp/program_output_pod
+dmd_testrun_find_pod_all:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+./bin/doc-reform-dmd -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod
+#+END_SRC
+
+****** path list
+
+#+BEGIN_SRC makefile :tangle ../makefile
+dmd_testrun_paths_pod_source:
+ ./bin/doc-reform-dmd -v --source \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+dmd_testrun_paths_pod_pod:
+ ./bin/doc-reform-dmd -v --pod \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+dmd_testrun_paths_pod_html:
+ ./bin/doc-reform-dmd -v --html \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+dmd_testrun_paths_pod_epub:
+ ./bin/doc-reform-dmd -v --epub \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+dmd_testrun_paths_pod_all:
+ ./bin/doc-reform-dmd -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+#+END_SRC
+
+***** gdc
+****** find files
+
+#+BEGIN_SRC makefile :tangle ../makefile
+gdc_testrun_find:
+ ./bin/doc-reform-gdc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod \
+data/pod/sisu-manual
+gdc_testrun_find_pod_source:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+./bin/doc-reform-gdc -v --source \
+--output-dir=tmp/program_output_pod
+gdc_testrun_find_pod_pod:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+./bin/doc-reform-gdc -v --pod \
+--output-dir=tmp/program_output_pod
+gdc_testrun_find_pod_html:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+./bin/doc-reform-gdc -v --html \
+--output-dir=tmp/program_output_pod
+gdc_testrun_find_pod_epub:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+./bin/doc-reform-gdc -v --epub \
+--output-dir=tmp/program_output_pod
+gdc_testrun_find_pod_all:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+./bin/doc-reform-gdc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod
+#+END_SRC
+
+****** path list
+
+#+BEGIN_SRC makefile :tangle ../makefile
+gdc_testrun_paths:
+ ./bin/doc-reform-gdc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod \
+data/pod/sisu-manual
+gdc_testrun_paths_pod_source:
+ ./bin/doc-reform-gdc -v --source \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+gdc_testrun_paths_pod_pod:
+ ./bin/doc-reform-gdc -v --pod \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+gdc_testrun_paths_pod_html:
+ ./bin/doc-reform-gdc -v --html \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+gdc_testrun_paths_pod_epub:
+ ./bin/doc-reform-gdc -v --epub \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+gdc_testrun_paths_pod_all:
+ ./bin/doc-reform-gdc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+#+END_SRC
+
+***** ldc
+****** find files
+
+#+BEGIN_SRC makefile :tangle ../makefile
+ldc_testrun_find:
+ ./bin/doc-reform-ldc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod \
+data/pod/sisu-manual
+ldc_testrun_find_pod_source:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+ ./bin/doc-reform-ldc -v --source \
+--output-dir=tmp/program_output_pod
+ldc_testrun_find_pod_pod:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+ ./bin/doc-reform-ldc -v --pod \
+--output-dir=tmp/program_output_pod
+ldc_testrun_find_pod_html:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+ ./bin/doc-reform-ldc -v --html \
+--output-dir=tmp/program_output_pod
+ldc_testrun_find_pod_epub:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+ ./bin/doc-reform-ldc -v --epub \
+--output-dir=tmp/program_output_pod
+ldc_testrun_find_pod_all:
+ $(SiSU_MARKUP_SAMPLES_PODS_FOUND) \
+ ./bin/doc-reform-ldc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod
+#+END_SRC
+
+****** path list
+
+#+BEGIN_SRC makefile :tangle ../makefile
+ldc_testrun_paths:
+ ./bin/doc-reform-ldc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod \
+data/pod/sisu-manual
+ldc_testrun_paths_pod_source:
+ ./bin/doc-reform-ldc -v --source \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+ldc_testrun_paths_pod_pod:
+ ./bin/doc-reform-ldc -v --pod \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+ldc_testrun_paths_pod_html:
+ ./bin/doc-reform-ldc -v --html \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+ldc_testrun_paths_pod_epub:
+ ./bin/doc-reform-ldc -v --epub \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+ldc_testrun_paths_pod_all:
+ ./bin/doc-reform-ldc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_pod \
+$(SiSU_MARKUP_SAMPLES_POD)
+#+END_SRC
+
+**** dir
+***** dmd
+****** find files
+
+#+BEGIN_SRC makefile :tangle ../makefile
+dmd_testrun_find_dir_source:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-dmd -v --source \
+--output-dir=tmp/program_output_dir
+dmd_testrun_find_dir_pod:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-dmd -v --pod \
+--output-dir=tmp/program_output_dir
+dmd_testrun_find_dir_html:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-dmd -v --html \
+--output-dir=tmp/program_output_dir
+dmd_testrun_find_dir_epub:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-dmd -v --epub \
+--output-dir=tmp/program_output_dir
+dmd_testrun_find_dir_all:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-dmd -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_dir
+#+END_SRC
+
+****** file list
+
+#+BEGIN_SRC makefile :tangle ../makefile
+dmd_testrun_filelist_dir_source:
+ ./bin/doc-reform-dmd -v --source \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+dmd_testrun_filelist_dir_pod:
+ ./bin/doc-reform-dmd -v --pod \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+dmd_testrun_filelist_dir_html:
+ ./bin/doc-reform-dmd -v --html \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+dmd_testrun_filelist_dir_epub:
+ ./bin/doc-reform-dmd -v --epub \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+dmd_testrun_filelist_dir_all:
+ ./bin/doc-reform-dmd -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+#+END_SRC
+
+***** gdc
+****** find files
+
+#+BEGIN_SRC makefile :tangle ../makefile
+gdc_testrun_find_dir_source:
+ ./bin/doc-reform-gdc -v --source \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+gdc_testrun_find_dir_pod:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-gdc -v --pod \
+--output-dir=tmp/program_output_dir
+gdc_testrun_find_dir_html:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-gdc -v --html \
+--output-dir=tmp/program_output_dir
+gdc_testrun_find_dir_epub:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-gdc -v --epub \
+--output-dir=tmp/program_output_dir
+gdc_testrun_find_dir_all:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-gdc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_dir
+#+END_SRC
+
+****** file list
+
+#+BEGIN_SRC makefile :tangle ../makefile
+gdc_testrun_filelist_dir_source:
+ ./bin/doc-reform-gdc -v --source \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+gdc_testrun_filelist_dir_pod:
+ ./bin/doc-reform-gdc -v --pod \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+gdc_testrun_filelist_dir_html:
+ ./bin/doc-reform-gdc -v --html \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+gdc_testrun_filelist_dir_epub:
+ ./bin/doc-reform-gdc -v --epub \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+gdc_testrun_filelist_dir_all:
+ ./bin/doc-reform-gdc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+#+END_SRC
+
+***** ldc
+****** find files
+
+#+BEGIN_SRC makefile :tangle ../makefile
+ldc_testrun_find_dir_source:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-ldc -v --source \
+--output-dir=tmp/program_output_dir
+ldc_testrun_find_dir_pod:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-ldc -v --pod \
+--output-dir=tmp/program_output_dir
+ldc_testrun_find_dir_html:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-ldc -v --html \
+--output-dir=tmp/program_output_dir
+ldc_testrun_find_dir_epub:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-ldc -v --epub \
+--output-dir=tmp/program_output_dir
+ldc_testrun_find_dir_all:
+ $(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
+./bin/doc-reform-ldc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_dir
+#+END_SRC
+
+****** file list
+
+#+BEGIN_SRC makefile :tangle ../makefile
+ldc_testrun_filelist_dir_source:
+ ./bin/doc-reform-ldc -v --source \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+ldc_testrun_filelist_dir_pod:
+ ./bin/doc-reform-ldc -v --pod \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+ldc_testrun_filelist_dir_html:
+ ./bin/doc-reform-ldc -v --html \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+ldc_testrun_filelist_dir_epub:
+ ./bin/doc-reform-ldc -v --epub \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+ldc_testrun_filelist_dir_all:
+ ./bin/doc-reform-ldc -v --source --html --epub --sqlite-discrete \
+--sqlite-create --sqlite-update \
+--output-dir=tmp/program_output_dir \
+$(SiSU_MARKUP_SAMPLES_DIR)
+#+END_SRC
+
+*** org babel tangle batch process command :tangle:
+**** tangle: org babel tangle *.org
+
+#+BEGIN_SRC makefile :tangle ../makefile
+tangle: skel
+ for f in $(ORGFILELIST); do \
+ ORGFILES="$$ORGFILES \"$$f\""; \
+ done; \
+ emacs --batch -Q -q \
+ --eval "(progn \
+ (add-to-list 'load-path \
+ (expand-file-name \"$(EMACSLISP)\")) \
+ (add-to-list 'load-path \
+ (expand-file-name \"$(EMACSLISP_ORG)\" t)) \
+ (add-to-list 'load-path \
+ (expand-file-name \"$(EMACSLISP_ORG_CONTRIB)\" t)) \
+ (require 'org)(require 'ob)(require 'ob-tangle) \
+ (mapc (lambda (file) \
+ (find-file (expand-file-name file \"$(ORGDIR)\")) \
+ (setq-local org-src-preserve-indentation t) \
+ (org-babel-tangle) \
+ (kill-buffer)) '($$ORGFILES)))" 2>&1
+#+END_SRC
+
+**** tangle maker: org babel tangle maker.org, makefile new
+
+#+BEGIN_SRC makefile :tangle ../makefile
+tangle_maker:
+ for f in $(ORGFILELIST); do \
+ ORGFILES="\"org/dr_build_scaffold.org\""; \
+ done; \
+ emacs --batch -Q -q \
+ --eval "(progn \
+ (add-to-list 'load-path \
+ (expand-file-name \"$(EMACSLISP)\")) \
+ (add-to-list 'load-path \
+ (expand-file-name \"$(EMACSLISP_ORG)\" t)) \
+ (add-to-list 'load-path \
+ (expand-file-name \"$(EMACSLISP_ORG_CONTRIB)\" t)) \
+ (require 'org)(require 'ob)(require 'ob-tangle) \
+ (mapc (lambda (file) \
+ (find-file (expand-file-name file \".\")) \
+ (setq-local org-src-preserve-indentation t) \
+ (org-babel-tangle) \
+ (kill-buffer)) '($$ORGFILES)))" 2>&1
+#+END_SRC
+
+*** git snapshot
+
+#+BEGIN_SRC makefile :tangle ../makefile
+gitsnapshot: distclean tangle
+ git commit -a
+#+END_SRC
+
+** phony :phony:
+
+#+BEGIN_SRC makefile :tangle ../makefile
+.PHONY : all build rebuild debug release \
+ distclean init \
+ tangle gitsnapshot
+#+END_SRC
+
+* dub.sdl :dub:sdl:config:
+Every DUB package should contain a [[http://code.dlang.org/package-format?lang=json][dub.json]] (or [[http://code.dlang.org/package-format?lang=sdl][dub.sdl]])
+** header (including dependencies) :header:
+
+#+BEGIN_SRC sh :tangle ../dub.sdl
+name "doc-reform"
+description "sisu document parser"
+homepage "http://sisudoc.org"
+authors "Ralph Amissah"
+copyright "Copyright (C) 2016 - 2019 Ralph Amissah"
+license "AGPL-3.0+"
+targetPath "./bin"
+#sourcePath "./src/doc_reform"
+stringImportPaths "./views"
+buildRequirements "allowWarnings"
+targetType "executable"
+platforms "posix"
+dependency "archive" version="~>0.6.0" # http://code.dlang.org/packages/archive https://github.com/rcythr/archive
+dependency "d2sqlite3" version="~>0.16.2" # https://code.dlang.org/packages/d2sqlite3 http://biozic.github.io/d2sqlite3/d2sqlite3.html
+ subconfiguration "d2sqlite3" "all-included"
+dependency "imageformats" version="~>7.0.0" # https://code.dlang.org/packages/imageformats https://github.com/lgvz/imageformats
+dependency "toml" version="~>1.0.0-rc.3" # https://code.dlang.org/packages/toml https://github.com/toml-lang/toml/wiki
+dependency "toml:json" version="~>1.0.0-rc.3"
+#+END_SRC
+
+** default
+
+time (dub --compiler=dmd -b release)
+time (dub --compiler=ldc2 -b release)
+time (dub --compiler=gdc -b release)
+
+#+BEGIN_SRC sh :tangle ../dub.sdl
+configuration "default" {
+ targetName "doc-reform"
+ postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'doc-reform'"
+}
+#+END_SRC
+
+** dmd
+
+time (dub --compiler=dmd --config=dmd -b dmd)
+time (dub --compiler=dmd --config=dmd -b dmd-release)
+
+#+BEGIN_SRC sh :tangle ../dub.sdl
+configuration "dmd" {
+ targetName "doc-reform-dmd"
+ postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'doc-reform-dmd'"
+}
+buildType "dmd" {
+ dflags "-J=views" "-I=src/doc_reform"
+ buildOptions "verbose" "inline"
+ buildRequirements "allowWarnings"
+}
+buildType "dmd-release" {
+ dflags "-J=views" "-I=src/doc_reform"
+ buildOptions "verbose" "releaseMode" "optimize" "inline"
+}
+configuration "dmd-version" {
+ targetName "doc-reform-dmd-ver"
+ postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'doc-reform-dmd-ver'"
+}
+#+END_SRC
+
+** ldc
+
+time (dub --compiler=ldc2 --config=ldc -b ldc)
+time (dub --compiler=ldc2 --config=ldc -b ldc-release)
+
+#+BEGIN_SRC sh :tangle ../dub.sdl
+configuration "ldc" {
+ targetName "doc-reform-ldc"
+ postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'doc-reform-ldc'"
+}
+buildType "ldc" {
+ dflags "-O2" "-J=views" "-I=src/doc_reform"
+ buildOptions "verbose" "optimize" "inline"
+ buildRequirements "allowWarnings"
+}
+buildType "ldc-release" {
+ dflags "-O2" "-J=views" "-I=src/doc_reform"
+ buildOptions "verbose" "optimize" "inline" "releaseMode"
+}
+configuration "ldc-version" {
+ targetName "doc-reform-ldc-ver"
+ postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'doc-reform-ldc-ver'"
+}
+#+END_SRC
+
+** gdc
+
+time (dub --compiler=gdc --config=gdc -b gdc)
+time (dub --compiler=gdc --config=gdc -b gdc-release)
+
+#+BEGIN_SRC sh :tangle ../dub.sdl
+configuration "gdc" {
+ targetName "doc-reform-gdc"
+ postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'doc-reform-gdc'"
+}
+buildType "gdc" {
+ dflags "-O2" "-J=views" "-I=src/doc_reform"
+ lflags "-lz"
+ buildOptions "optimize" "inline"
+ buildRequirements "allowWarnings"
+}
+buildType "gdc-release" {
+ dflags "-O2" "-J=views" "-I=src/doc_reform"
+ lflags "-lz"
+ buildOptions "verbose" "optimize" "inline" "releaseMode"
+}
+configuration "gdc-version" {
+ targetName "doc-reform-gdc-ver"
+ postGenerateCommands "/usr/bin/notify-send -t 0 'D executable ready' 'doc-reform-gdc-ver'"
+}
+#+END_SRC
+
+*** generic :generic:
+**** build (sdp) :release:
+
+#+BEGIN_SRC sh
+configuration "build" {
+ name "build"
+ targetType "executable"
+ platforms "posix"
+ targetName "bin/doc-reform"
+ dflags "-J=views" "-I=src/doc_reform"
+ buildOptions "verbose" "releaseMode" "optimize" "inline"
+ postGenerateCommands "/usr/bin/notify-send -t 0 'D release executable ready' 'doc-reform'"
+}
+#+END_SRC
+
+* meson
+** notes
+
+http://mesonbuild.com/D.html
+http://mesonbuild.com/Dependencies.html#Dub
+- create and move to subdirectory
+ rm -r build; mkdir build && cd build
+
+- build
+
+ - regular build (faster compile time):
+ meson && ninja
+
+ - optimized build (faster program run time):
+ meson --buildtype=debugoptimized && ninja
+
+ - time build
+ time ( meson --buildtype=debugoptimized && ninja )
+
+- other
+ - flags
+ DFLAGS= DC=ldc2 meson ..
+
+*** projects
+
+#+BEGIN_SRC sh :tangle ../meson.build
+project('doc-reform', 'd',
+ license: 'GPL3',
+ version: '0.26.5',
+ meson_version: '>=0.46'
+)
+doc_reform_sources = [ 'src/doc_reform/doc_reform.d',
+ 'src/doc_reform/conf/compile_time_info.d',
+ 'src/doc_reform/meta/conf_make_meta_json.d',
+ 'src/doc_reform/meta/conf_make_meta_structs.d',
+ 'src/doc_reform/meta/conf_make_meta_toml.d',
+ 'src/doc_reform/meta/defaults.d',
+ 'src/doc_reform/meta/doc_debugs.d',
+ 'src/doc_reform/meta/metadoc.d',
+ 'src/doc_reform/meta/metadoc_from_src.d',
+ 'src/doc_reform/meta/metadoc_summary.d',
+ 'src/doc_reform/meta/object_setter.d',
+ 'src/doc_reform/meta/package.d',
+ 'src/doc_reform/meta/rgx.d',
+ 'src/doc_reform/output/create_zip_file.d',
+ 'src/doc_reform/output/defaults.d',
+ 'src/doc_reform/output/epub3.d',
+ 'src/doc_reform/output/html.d',
+ 'src/doc_reform/output/hub.d',
+ 'src/doc_reform/output/package.d',
+ 'src/doc_reform/output/paths_output.d',
+ 'src/doc_reform/output/rgx.d',
+ 'src/doc_reform/output/source_pod.d',
+ 'src/doc_reform/output/sqlite.d',
+ 'src/doc_reform/output/xmls_css.d',
+ 'src/doc_reform/output/xmls.d',
+ 'src/doc_reform/source/paths_source.d',
+ 'src/doc_reform/source/read_config_files.d',
+ 'src/doc_reform/source/read_source_files.d',
+]
+source_root = meson.source_root()
+sources_dir = include_directories('src/')
+# Dependencies
+dep_archive = dependency('archive', version: '>= 0.6.0', fallback: ['archived', 'archive_dep'])
+dep_d2sqlite3 = dependency('d2sqlite3', version: '>= 0.16.2', fallback: ['d2sqlite3', 'd2sqlite3_dep'])
+dep_imageformats = dependency('imageformats-d', version: '>= 7.0.0', fallback: ['imageformats-d', 'imageformats_dep'])
+dep_toml = dependency('toml-d', version: '>= 1.0.0', fallback: ['toml-d', 'toml_dep'])
+# executable
+doc_reform_exe = executable('rad',
+ [doc_reform_sources],
+ include_directories : [sources_dir],
+ d_import_dirs: [include_directories('views')],
+ dependencies : [
+ dep_archive,
+ dep_d2sqlite3,
+ dep_imageformats,
+ dep_toml
+ ],
+ install : true
+)
+#+END_SRC
+
+** subprojects
+
+#+BEGIN_SRC sh :tangle ../subprojects/README
+archive
+- dub
+ - https://code.dlang.org/packages/archive
+- upstream
+ - https://github.com/rcythr/archive
+- mathias
+ - https://github.com/ximion/archive.git
+
+d2sqlite3
+- dub
+ - https://code.dlang.org/packages/d2sqlite3
+- upstream
+ - https://github.com/biozic/d2sqlite3
+- mathias
+ - https://github.com/ximion/d2sqlite3.git
+
+imageformats
+- dub
+ - https://code.dlang.org/packages/imageformats
+- upstream
+ - https://github.com/lgvz/imageformats
+- mathias
+ - https://github.com/ximion/imageformats.git
+
+toml
+- dub
+ - https://code.dlang.org/packages/toml
+- upstream
+ - https://github.com/Kripth/toml
+- mathias
+ - https://github.com/ximion/toml.git
+#+END_SRC
+
+*** archived
+
+#+BEGIN_SRC sh :tangle ../subprojects/archived.wrap
+[wrap-git]
+directory = archived
+url = https://github.com/ximion/archive.git
+revision = head
+#+END_SRC
+
+*** d2sqlite3
+
+#+BEGIN_SRC sh :tangle ../subprojects/d2sqlite3.wrap
+[wrap-git]
+directory = d2sqlite3
+url = https://github.com/ximion/d2sqlite3.git
+revision = head
+#+END_SRC
+
+*** imageformats-d
+
+#+BEGIN_SRC sh :tangle ../subprojects/imageformats-d.wrap
+[wrap-git]
+directory = imageformats-d
+url = https://github.com/ximion/imageformats.git
+revision = head
+#+END_SRC
+
+*** toml-d
+
+#+BEGIN_SRC sh :tangle ../subprojects/toml-d.wrap
+[wrap-git]
+directory = toml-d
+url = https://github.com/ximion/toml.git
+revision = head
+#+END_SRC
+
+* .gitignore :gitignore:
+
+#+BEGIN_SRC sh :tangle ../.gitignore
+# git ls-files --others --exclude-from=.git/info/exclude
+#./.dub/**
+*
+!.gitignore
+!COPYRIGHT
+!README
+!makefile
+!version.txt
+!dub*.json
+!dub.sdl
+!meson.build
+!tangle
+!*.org
+!*.d
+!*.txt
+!*.rb
+!conf.sdl
+!org
+!util
+!src
+!src/doc_reform
+!src/doc_reform/*
+!data
+!data/*
+!data/src/**
+!data/pod/**
+!*.sst
+!*.ssm
+!**/*.sst
+!**/*.ssm
+!subprojects
+!**/*.wrap
+!subprojects/*.wrap
+!pod.manifest
+!sisu_document_make
+!config_local_site
+!sisu_document_make.toml
+!config_local_site.toml
+!sisudoc
+!views
+!docs/*.html
+.dub/**
+tmp/**
+*_.org
+*_.d
+*_.txt
+*_
+*~
+\#*
+*.\#*
+#!*/
+#*~
+#\#*
+#*.\#*
+#+END_SRC
+
+* sh script to batch process _emacs org babel tangle_ :shell_script:tangle:
+ [[http://orgmode.org/manual/Batch-execution.html]]
+creates a shell batch script called "tangle", that will tangle (emacs org
+babel tangle) org files in ./org/ to create .d source files in ./src/doc_reform/
+(similar functionality is contained within the "makefile" created by this
+"dr_build_scaffold.org" file make tangle)
+
+#+BEGIN_SRC sh :tangle ../tangle :tangle-mode (identity #o755) :shebang #!/bin/sh
+# -*- mode: shell-script -*-
+# tangle files with org-mode
+DIR=`pwd`
+ORGFILES=""
+EMACSLISP=/usr/share/emacs/site-lisp
+ORG_VER_AVAILABLE=$(shell echo `ls -d ~/.emacs.d/elpa/org-???????? | cut -d '-' -f2`)
+EMACSLISP_ORG=~/.emacs.d/elpa/org-$($(shell echo $(ORG_VER_AVAILABLE)))
+ORG_CONTRIB_VER_AVAILABLE=$(shell echo `ls -d ~/.emacs.d/elpa/org-plus-???????? | cut -d '-' -f2`)
+EMACSLISP_ORG_CONTRIB=~/.emacs.d/elpa/org-plus-contrib-$($(shell echo $(ORG_CONTRIB_VER_AVAILABLE)))
+# wrap each argument in the code required to call tangle on it
+for i in $@; do
+ ORGFILES="$ORGFILES \"$i\""
+done
+emacs --batch -Q -q \
+--eval "(progn
+(add-to-list 'load-path (expand-file-name \"$EMACSLISP\"))
+(add-to-list 'load-path (expand-file-name \"$EMACSLISP_ORG\" t))
+(add-to-list 'load-path (expand-file-name \"$EMACSLISP_ORG_CONTRIB\" t))
+(require 'org)(require 'ob)(require 'ob-tangle)
+(mapc (lambda (file)
+ (find-file (expand-file-name file \"$DIR\"))
+ (setq-local org-src-preserve-indentation t)
+ (org-babel-tangle)
+ (kill-buffer)) '($ORGFILES)))" 2>&1 #|grep tangled
+#+END_SRC
+
+* __END__
+** build
+*** dub
+
+#+BEGIN_SRC sh :tangle no
+dub build -h
+#+END_SRC
+
+#+BEGIN_SRC sh
+time (dub --compiler=dmd --config=doc-reform-dmd --debug=steps)
+time (dub --compiler=ldc2 --config=doc-reform-ldc --debug=steps)
+time (dub --compiler=gdc --config=doc-reform-gdc --debug=steps)
+
+time (dub --compiler=ldc2 --config=doc-reform-ldc --debug=checkdoc --debug=summary --debug=dumpdoc)
+time (dub --compiler=ldc2 --config=doc-reform-ldc --debug=io)
+time (dub --compiler=ldc2 --config=doc-reform-ldc --debug=checkdoc --debug=summary --debug=dumpdoc --debug=io)
+time (dub --compiler=ldc2 --config=doc-reform-ldc-debug --debug=io)
+time (dub --compiler=gdc --config=doc-reform-gdc-debug --debug=io)
+time (dub --compiler=dmd --config=doc-reform-dmd-debug --debug=io)
+#+END_SRC
+
+*** make
+
+#+BEGIN_SRC sh
+time make dmd
+time make gdc
+time make ldc
+time make gdc ldc
+time make all
+time make all_ver
+time make dmd_ver ldc_ver gdc_ver
+
+time make restart
+time make restart ldc
+time make tangle ldc
+
+time make ldc_testrun_find_pod_epub
+#+END_SRC
+
+** dub zfunc :zfunc:
+*** ,dubdmd :dmd:
+
+#+BEGIN_SRC sh :tangle no
+time dub --compiler=dmd -v --force
+#+END_SRC
+
+*** ,dubldc :ldc:
+
+#+BEGIN_SRC sh :tangle no
+time dub --compiler=ldc2 -v --force
+#+END_SRC
+
+*** ,dubgdc :gdc:
+
+#+BEGIN_SRC sh :tangle no
+time dub --compiler=gdc -v --force
+#+END_SRC
+
+** git
+*** project version
+
+echo $(git describe --long --tags | sed 's/^[ a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g')
+
+*** what files changed
+git whatchanged --since="1 day ago" --oneline --name-only --pretty=format: | sort -u
+git log --since="1 day ago" --name-only --pretty=format: | sort -u
+
+** test run
+*** e.g.
+time (./bin/doc-reform-ldc --source --html -v --output-dir=tmp/program-output data/pod/sisu-manual/media/text/en/sisu_markup.sst )
+
+time (./bin/doc-reform-ldc --source --html -v --output-dir=tmp/program-output data/pod/sisu-manual )
+time (./bin/doc-reform-ldc --source --html -v --output-dir=tmp/program-output data/pod/the_wealth_of_networks.yochai_benkler )
+time (./bin/doc-reform-ldc --source --html -v --output-dir=tmp/program-output data/pod/live-manual )
+
+time (~sdp2/bin/doc-reform-ldc --pod --source --html --epub --sqlite-create --sqlite-update -v sisudoc/media/text/en/sisu_markup_stress_test.sst sisudoc/media/text/en/the_wealth_of_networks.yochai_benkler.sst )
+
+can point to directory containing sisudoc.txt file (listing which files to process)
+
+time (~sdp2/bin/doc-reform-ldc --html -v sisudoc)
+# will process source files listed in sisudoc.txt for appropriate files and dir structure
+
+e.g. live-manual a multilingual document (with source file inserts .ssi)
+
+time (~sdp2/bin/doc-reform-ldc --html --lang=en,es -v sisudoc)
+
+time ( find data/pod -name pod.manifest | sort | xargs ./bin/doc-reform-ldc --source --html --epub -v --output-dir=tmp/program-output )
+
+time ( find data/pod -maxdepth 2 -name pod.manifest | sort | xargs ./bin/doc-reform-ldc --source --html --epub -v --output-dir=tmp/program-output )
+time ( find data/sisudir/media/text -name *.ss[tm] | sort | xargs ./bin/doc-reform-ldc --source --html --epub -v --output-dir=tmp/program-output )
+
+find data/pod -maxdepth 2 -name pod.manifest | sort | xargs
+
+find data/sisudir/media/text -name *.ss[tm] | sort | xargs
+
+*** list markup files
+find data/pod -name pod.manifest | sort
+find data/sisudir/media/text -name *.ss[tm] | sort
+
+time make ldc_testrun_paths_pod_pod
+time make ldc_testrun_paths_pod_pod | ag "^\".+\"|NOT found"
+time make ldc_testrun_find_pod_pod
+time make ldc_testrun_find_dir_pod
+time make ldc_testrun_filelist_dir_pod
+** misc
+*** compilers
+
+- [X] Set D_COMPILER (one of DMD LDC or GDC)
+- [X] Set debug flags (using DMD standard flag -deb
+
+[[http://wiki.dlang.org/Compilers][D Compilers wiki https://wiki.dlang.org/Compilers]]
+[[http://dlang.org/download.html][D Compilers download http://dlang.org/download.html]]
+
+*** dub :dub:
+
+https://github.com/dlang/dub/
+http://code.dlang.org/getting_started
+http://code.dlang.org/docs/commandline
+
+**** setup
+***** dub json or sdlang
+
+Every DUB package should contain a [[http://code.dlang.org/package-format?lang=json][dub.json]] or [[http://code.dlang.org/package-format?lang=sdl][dub.sdl]]
+https://code.dlang.org/package-format?lang=sdl
+https://code.dlang.org/packages/sdlang-d
+https://github.com/Abscissa/SDLang-D/blob/master/HOWTO.md
+
+https://code.dlang.org/docs/commandline
+
+***** dub dependencies
+
+dub list
+dub upgrade
+dub fetch sdlang-d
+dub fetch taggedalgebraic
+dub fetch libinputvisitor
+dub fetch unit-threaded ?
+
+sdp ~master: /home/ralph/grotto/repo/git.repo/utils/doc-reform-x/
+/home/ralph/.dub/packages/*
+
+**** build
+***** debug flags
+
+#+BEGIN_SRC sh
+biblio
+biblio_sorted
+bibliosorted
+block
+bookindex
+bookindexmatch
+bookindexraw
+check
+checkdoc
+code
+comment
+dumpdoc write out document contents, with object type and ocn
+endnotes
+endnotes_build
+footnotes
+footnotesdone
+group
+header
+header_and_content
+header1
+headerjson
+headermakejson
+headermetadatajson
+heading
+headings
+headingsfound
+insert
+io
+munge
+node
+objectrelated1
+objectrelated2
+objects
+ocnoff
+para
+parabullet
+parabulletindent
+paraindent
+paraindenthang
+parent
+poem
+quote
+raw
+sdlang
+source
+srclines
+structattrib
+summary
+table
+toc
+#+END_SRC
diff --git a/org/dr_info.org b/org/dr_info.org
new file mode 100644
index 0000000..a5dfed8
--- /dev/null
+++ b/org/dr_info.org
@@ -0,0 +1,158 @@
+#+TITLE: doc_reform information files
+#+DESCRIPTION: documents - structuring, various output representations & search
+#+FILETAGS: :doc_reform:info:
+#+AUTHOR: Ralph Amissah
+#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
+#+LANGUAGE: en
+#+STARTUP: indent content hideblocks hidestars
+#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
+#+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
+#+OPTIONS: author:nil email:nil creator:nil timestamp:nil
+#+PROPERTY: header-args :results silent :padline no :exports code :cache no :noweb yes
+#+EXPORT_SELECT_TAGS: export
+#+EXPORT_EXCLUDE_TAGS: noexport
+#+TAGS: assert(a) class(c) debug(d) mixin(m) doc_reform(s) tangle(T) template(t) WEB(W) noexport(n)
+
+* README
+
+#+BEGIN_SRC text :tangle "../README"
+- Name: Doc Reform
+ - Description: documents, structuring, processing, publishing, search
+ - static content generator
+
+ - Author: Ralph Amissah
+ [ralph.amissah@gmail.com]
+
+ - Copyright: (C) 2015 - 2019 Ralph Amissah, All Rights
+ Reserved.
+
+ - 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
+
+ - License: AGPL 3 or later
+
+ - Hompages:
+ [http://www.doc_reform.org]
+ [http://www.sisudoc.org]
+#+END_SRC
+
+* COPYRIGHT & LICENSE
+** notices
+*** project (project root) ./
+
+#+BEGIN_SRC text :tangle "../COPYRIGHT"
+<<doc_reform_copyright>>
+<<doc_reform_license_agpl3>>
+<<doc_reform_extra>>
+#+END_SRC
+
+*** code source ./src
+
+#+BEGIN_SRC text :tangle "../src/COPYRIGHT"
+<<doc_reform_copyright>>
+<<doc_reform_license_agpl3>>
+<<doc_reform_extra>>
+#+END_SRC
+
+*** code source ./src/doc_reform
+
+#+BEGIN_SRC text :tangle "../src/doc_reform/COPYRIGHT"
+<<doc_reform_copyright>>
+<<doc_reform_license_agpl3>>
+<<doc_reform_extra>>
+#+END_SRC
+
+*** org files ./org
+
+#+BEGIN_SRC text :tangle "./COPYRIGHT"
+<<doc_reform_copyright>>
+<<doc_reform_extra>>
+#+END_SRC
+
+*** data (markup samples) ./data
+
+#+BEGIN_SRC text :tangle "../data/COPYRIGHT"
+<<data>>
+#+END_SRC
+
+** incorporate
+*** copyright
+
+#+NAME: doc_reform_copyright
+#+BEGIN_SRC text
+- Name: Doc Reform
+ - Description: documents, structuring, processing, publishing, search
+ - static content generator
+
+ - Author: Ralph Amissah
+ [ralph.amissah@gmail.com]
+
+ - Copyright: (C) 2015 - 2019 Ralph Amissah
+
+#+END_SRC
+
+*** license
+
+#+NAME: doc_reform_license_agpl3
+#+BEGIN_SRC text
+ - code under src/
+ - License: AGPL 3 or later:
+
+ Doc Reform (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 [http://www.gnu.org/licenses/].
+
+ If you have Internet connection, the latest version of the AGPL should be
+ available at these locations:
+ [http://www.fsf.org/licensing/licenses/agpl.html]
+ [http://www.gnu.org/licenses/agpl.html]
+
+#+END_SRC
+
+*** tail
+
+#+NAME: doc_reform_extra
+#+BEGIN_SRC text
+ - 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
+
+ - Hompages:
+ [http://www.doc_reform.org]
+ [http://www.sisudoc.org]
+
+ - Git
+ [http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=summary]
+ [http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob;f=lib/sisu/html.rb;hb=HEAD]
+
+#+END_SRC
+*** data
+
+#+NAME: doc_reform_extra
+#+BEGIN_SRC text
+- Doc Reform markup samples
+ Individual document content Copyright (Author) [as stated in document header]
+ Individual document content License (Author) [as stated in document header]
+
+#+END_SRC
diff --git a/org/imports.org b/org/imports.org
index b3f366d..6c239fa 100644
--- a/org/imports.org
+++ b/org/imports.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:imports:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/meta_abstraction.org b/org/meta_abstraction.org
index 1121d15..87051c4 100644
--- a/org/meta_abstraction.org
+++ b/org/meta_abstraction.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:abstraction:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/meta_conf_make_meta.org b/org/meta_conf_make_meta.org
index 852f144..71f9124 100644
--- a/org/meta_conf_make_meta.org
+++ b/org/meta_conf_make_meta.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:config:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/meta_debugs.org b/org/meta_debugs.org
index 735085f..7aa01ad 100644
--- a/org/meta_debugs.org
+++ b/org/meta_debugs.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:debugs:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/output_hub.org b/org/output_hub.org
index 649ae34..0d709ab 100644
--- a/org/output_hub.org
+++ b/org/output_hub.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:output:hub:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/output_sqlite.org b/org/output_sqlite.org
index 5a1b090..5faf244 100644
--- a/org/output_sqlite.org
+++ b/org/output_sqlite.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:output:db:sql:sqlite:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/output_src_pod.org b/org/output_src_pod.org
index 13f0fb9..f6b17ed 100644
--- a/org/output_src_pod.org
+++ b/org/output_src_pod.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:output:source:pod:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/output_xmls.org b/org/output_xmls.org
index 4a40323..19d4f1e 100644
--- a/org/output_xmls.org
+++ b/org/output_xmls.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:output:xml:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/output_xmls_css.org b/org/output_xmls_css.org
index ec319a4..ac80b2f 100644
--- a/org/output_xmls_css.org
+++ b/org/output_xmls_css.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:output:xmls:css:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
diff --git a/org/output_zip.org b/org/output_zip.org
index 647a93c..de3adb5 100644
--- a/org/output_zip.org
+++ b/org/output_zip.org
@@ -1,6 +1,7 @@
#+TITLE: doc_reform output zip
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+DESCRIPTION: documents - structuring, publishing in multiple formats & search
#+KEYWORDS
#+LANGUAGE: en
diff --git a/org/source_files_read.org b/org/source_files_read.org
index e08355a..495b856 100644
--- a/org/source_files_read.org
+++ b/org/source_files_read.org
@@ -3,6 +3,7 @@
#+FILETAGS: :doc_reform:sourcefile:read:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2019 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: indent content hideblocks hidestars
#+OPTIONS: H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t