-*- mode: org -*-
#+TITLE:       Doc Reform ≅ (doc-reform) hub, spine
#+DESCRIPTION: documents - structuring, various output representations & search
#+FILETAGS:    :spine:hub:
#+AUTHOR:      Ralph Amissah
#+EMAIL:       [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
#+COPYRIGHT:   Copyright (C) 2015 - 2022 Ralph Amissah
#+LANGUAGE:    en
#+STARTUP:     content hideblocks hidestars noindent entitiespretty
#+OPTIONS:     H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t
#+PROPERTY:    header-args  :exports code
#+PROPERTY:    header-args+ :noweb yes
##+PROPERTY:    header-args+ :eval yes
#+PROPERTY:    header-args+ :results no
#+PROPERTY:    header-args+ :cache no
#+PROPERTY:    header-args+ :padline no

- [[./doc-reform.org][doc-reform.org]]  [[./][org/]]
- [[./spine_build_scaffold.org][make/build]] VERSION

* spine (sisu document parser) :spine:
** org dir

- directory listing from ./org where program is developed in emacs org-mode

#+NAME: listdir
#+HEADER: :results output replace
#+HEADER: :wrap src text
#+BEGIN_SRC sh
ls -1 *\.org
#+END_SRC

#+RESULTS: listdir
#+begin_src text
cgi_spine_search.org
compile_time_info.org
config_d_cfte.org
config_dub.org
config_git.org
config_make.org
config_meson.org
config_misc.org
config_nix.org
default_imports.org
default_misc.org
default_paths.org
default_regex.org
default_shared.org
doc-reform.org
in_source_files.org
meta_conf_make_meta.org
meta_debugs.org
metaverse.org
out_curate_metadata.org
out_latex.org
out_metadata.org
out_odt.org
output_hub.org
output_show.org
out_sqlite.org
out_src_pod.org
out_xmls_css.org
out_xmls.org
out_zip.org
spine_info.org
spine_markup_sample.org
spine.org
util_cgi_rb_fcgi_sqlite_search.org
util_spine_markup_conversion_from_sisu.org
util_spine_syntax_highlighting_emacs.org
util_spine_syntax_highlighting_vim.org
#+end_src

** spine
*** spine.org :spine:

- program entry point, takes in command line request and decides how to process
  - input files are sent to metaverse for processing
  - output files are sent to the output hub and the requested outputs called

#+NAME: listdir_spine
#+HEADER: :results output replace
#+HEADER: :wrap src text
#+BEGIN_SRC sh
ls -1 spine\.org
#+END_SRC

#+RESULTS: listdir_spine
#+begin_src text
spine.org
#+end_src

*** spine.org calls
**** 0. shared defaults

- regular expressions
- directory paths

misc and shared look at

#+NAME: listdir_default
#+HEADER: :results output replace
#+HEADER: :wrap src text
#+BEGIN_SRC sh
ls -1 default_*\.org
#+END_SRC

#+RESULTS: listdir_default
#+begin_src text
default_imports.org
default_misc.org
default_paths.org
default_regex.org
default_shared.org
#+end_src

**** 1. input file

- rg "\.readText"

#+NAME: listdir_in
#+HEADER: :results output replace
#+HEADER: :wrap src text
#+BEGIN_SRC sh
ls -1 in_*\.org
#+END_SRC

#+RESULTS: listdir_in
#+begin_src text
in_source_files.org
#+end_src

**** 2. meta - intermediate processing

- create the internal document representation for downstream processing

#+NAME: listdir_meta
#+HEADER: :results output replace
#+HEADER: :wrap src text
#+BEGIN_SRC sh
ls -1 metaverse\.org meta_*\.org
#+END_SRC

#+RESULTS: listdir_meta
#+begin_src text
meta_conf_make_meta.org
meta_debugs.org
metaverse.org
#+end_src

**** 3. outputs

#+NAME: listdir_out
#+HEADER: :results output replace
#+HEADER: :wrap src text
#+BEGIN_SRC sh
ls -1 output_*\.org out_*\.org
#+END_SRC

#+RESULTS: listdir_out
#+begin_src text
out_curate_metadata.org
out_latex.org
out_metadata.org
out_odt.org
output_hub.org
output_show.org
out_sqlite.org
out_src_pod.org
out_xmls_css.org
out_xmls.org
out_zip.org
#+end_src

** misc
*** spine misc

#+NAME: listdir_spine_misc
#+HEADER: :results output replace
#+HEADER: :wrap src text
#+BEGIN_SRC sh
ls -1 spine_*\.org
#+END_SRC

#+RESULTS: listdir_spine_misc
#+begin_src text
spine_info.org
spine_markup_sample.org
#+end_src

*** config

- configure various things related to the project and its build

#+NAME: listdir_config
#+HEADER: :results output replace
#+HEADER: :wrap src text
#+BEGIN_SRC sh
ls -1 config_*\.org
#+END_SRC

#+RESULTS: listdir_config
#+begin_src text
config_d_cfte.org
config_dub.org
config_git.org
config_make.org
config_meson.org
config_misc.org
config_nix.org
#+end_src
*** utils

#+NAME: listdir_util
#+HEADER: :results output replace
#+HEADER: :wrap src text
#+BEGIN_SRC sh
ls -1 util_*\.org
#+END_SRC

#+RESULTS: listdir_util
#+begin_src text
util_cgi_rb_fcgi_sqlite_search.org
util_spine_markup_conversion_from_sisu.org
util_spine_syntax_highlighting_emacs.org
util_spine_syntax_highlighting_vim.org
#+end_src

** cgi spine search

#+NAME: listdir_cgi_search
#+HEADER: :results output replace
#+HEADER: :wrap src text
#+BEGIN_SRC sh
ls -1 cgi_spine_*\.org
#+END_SRC

#+RESULTS: listdir_cgi_search
#+begin_src text
cgi_spine_search.org
#+end_src