summaryrefslogtreecommitdiffstats
path: root/site/cleopatra
diff options
context:
space:
mode:
authorThomas Letan <lthms@soap.coffee>2020-02-29 13:32:50 +0100
committerThomas Letan <lthms@soap.coffee>2020-02-29 13:32:50 +0100
commitcb70df7c2a61a7e46475114b1cda1c91f1a4c0b5 (patch)
tree741497c42a2129918ed60ff7760cf4af705ff9d7 /site/cleopatra
parentFix several typos in News (diff)
Continue the Series on cleopatra
Diffstat (limited to 'site/cleopatra')
-rw-r--r--site/cleopatra/Soupault.org39
-rw-r--r--site/cleopatra/index.org7
2 files changed, 36 insertions, 10 deletions
diff --git a/site/cleopatra/Soupault.org b/site/cleopatra/Soupault.org
index 56ebd00..f718c25 100644
--- a/site/cleopatra/Soupault.org
+++ b/site/cleopatra/Soupault.org
@@ -29,10 +29,24 @@ generation process.
* ~soupault~ General Settings
-#+BEGIN_TODO
-The list of ignored extensions should be programmatically generated with the
-help of *~cleopatra~*.
-#+END_TODO
+The general ~settings~ section of ~soupault.conf~ is fairly basic, and there is
+little to say that the
+[[https://soupault.neocities.org/reference-manual/#getting-started][“Getting
+Started”]] already discuss in length.
+
+We emphasize three things:
+
+- The ~build_dir~ is set to ~<<build-dir>>/<<prefix>>~ in place of simply
+ ~<<build-dir>>~.
+- The ~ignore_extensions~ shall be updated to take into account artifacts
+ produces by other *~cleopatra~* generation processes.
+- We disable the “clean URLs” feature of ~soupault. This option renames
+ a HTML files ~foo/bar.html~ into ~foo/bar/index.html~, which means when served
+ by a HTTP server, the ~foo/bar~ URL will work. The issue we have with this
+ feature is that the internal links within your websiste needs to take their
+ /final/ URL into account, rather than their actual name. If one day ~soupault~
+ starts rewriting internal URLs when ~clean_url~ is enabled, we might
+ reconsider using it.
#+BEGIN_SRC toml :tangle soupault.conf :noweb tangle
[settings]
@@ -56,6 +70,11 @@ doctype = "<!DOCTYPE html>"
clean_urls = false
#+END_SRC
+#+BEGIN_TODO
+The list of ignored extensions should be programmatically generated with the
+help of *~cleopatra~*.
+#+END_TODO
+
* Widgets
** Setting Page Title
@@ -97,10 +116,14 @@ selector = "head"
** Generating Table of Contents
+The ~toc~ widget allows for generating a table of contents for HTML files which
+contains a node matching a given ~selector~ (in the case of this document,
+~#generate-toc~).
+
#+BEGIN_SRC toml :tangle soupault.conf
[widgets.table-of-contents]
widget = "toc"
-selector = "div#generate-toc"
+selector = "#generate-toc"
action = "replace_element"
min_level = 2
numbered_list = true
@@ -445,9 +468,9 @@ jset "$(jset "{}" "file" "\"${file}\"")" \
#+END_SRC
The last missing pieces are the definitions of the three JSON operators. We use
-[[https://stedolan.github.io/jq/][~jq~]] to manipulate JSON data. Since ~jq~ processes JSON from its standard input,
-we first define a helper (similar to =_git=) to deal with JSON from variables
-seamlessly.
+[[https://stedolan.github.io/jq/][~jq~]] to manipulate JSON data. Since ~jq~
+processes JSON from its standard input, we first define a helper (similar to
+=_git=) to deal with JSON from variables seamlessly.
#+BEGIN_SRC bash :tangle scripts/history.sh
function _jq () {
diff --git a/site/cleopatra/index.org b/site/cleopatra/index.org
index 03ce34d..9bf2e68 100644
--- a/site/cleopatra/index.org
+++ b/site/cleopatra/index.org
@@ -31,12 +31,15 @@ expected. Its “literate” part still requires some work, though.
is part of this very website. This means *~cleopatra~* is bootstrapped: it
generates iteself.
+- [[./Soupault.org][~soupault~ Configuration]] ::
+ ~soupault~ is a HTML processor, and it can be used as a static website
+ generator. This is the approach used for this very website, and this document
+ is the literate program of the dedicated *~cleopatra~* generation process.
+
- [[./Contents/Org.org][Generating Contents from Org Documents ~(TODO)~]] ::
- [[./Contents/Coq.org][Generating Contents from Coq Documents ~(TODO)~]] ::
-- [[./Soupault.org][Soupault Configuration ~(WIP)~]] ::
-
- [[./Theme.org][Theming and Templating ~(TODO)~]] ::
#+BEGIN_EXPORT html