summaryrefslogtreecommitdiff
path: root/soupault.toml
diff options
context:
space:
mode:
Diffstat (limited to 'soupault.toml')
-rw-r--r--soupault.toml98
1 files changed, 98 insertions, 0 deletions
diff --git a/soupault.toml b/soupault.toml
new file mode 100644
index 0000000..c17e5ca
--- /dev/null
+++ b/soupault.toml
@@ -0,0 +1,98 @@
+# Configuration file for the soupault static site generator (https://soupault.app)
+
+[settings]
+ # Enable build progress (info level) logs
+ verbose = true
+
+ # Enable debug level logs
+ debug = true
+
+ # Fail on page processing errors
+ strict = true
+
+ default_template_file = "templates/main.html"
+
+ # CSS selector of the element inside the template
+ # where page content is inserted
+ default_content_selector = "div#content"
+
+[preprocessors]
+ # Preprocess *.md Markdown pages with cmark (github.com/commonmark/cmark) before parsing.
+ # --smart = smart punctuation, --unsafe = don't remove HTML tags
+ md = "cmark --smart --unsafe"
+
+[widgets]
+
+# Moves all elements with class="footnote" or tag name <fn> to <div id="footnotes">
+# and replaces them with numbered links.
+[widgets.footnotes]
+ widget = "footnotes"
+ selector = "div#footnotes"
+ footnote_selector = [".footnote", "fn"]
+ footnote_link_class = "footnote"
+ back_links = true
+ link_id_prepend = "footnote-"
+ back_link_id_append = "-ref"
+
+# Inserts the banner in main page only
+[widgets.insert-banner]
+ widget = "include"
+ page = "index.html"
+ file = "templates/banner.html"
+ selector = "main"
+ action = "insert_before"
+
+# Inserts a scary warning banner in preview versions
+[widgets.insert-staging-warning]
+ widget = "include"
+ file = "templates/staging-warning.html"
+ selector = "header"
+ action = "prepend_child"
+ profile = "staging"
+
+[widgets.disallow-indexing-on-staging]
+ widget = "create-file"
+ name = "robots.txt"
+ content = """
+User-agent: *
+Disallow: /
+"""
+ profile = "staging"
+
+# Generates a list of available snapshots from S3
+[widgets.list-snapshots]
+ widget = "exec"
+ command = "scripts/list-snapshots.py"
+ selector = "div#content"
+ action = "append_child"
+
+ page = "get/snapshots.md"
+ profile = "live"
+
+## Nightly build image listing generator ##
+
+# Inserts containers for current and equuleus lists
+# This is done here rather than inside the page so that
+# we can change the branches by editing just the config.
+[widgets.insert-nightly-build-containers]
+ widget = "insert_html"
+ html = """
+ <div id="rolling-current">
+ <h3>Current/sagitta (future 1.4.0)</h3>
+ </div>
+ """
+ selector = "div#content"
+ action = "append_child"
+ page = "get/nightly-builds.md"
+ profile = "live"
+
+# Generates a list of the "current" branch builds from S3
+[widgets.list-nightly-builds-current]
+ widget = "exec"
+ command = "scripts/list-nightly-builds.py rolling/current"
+ selector = "div#rolling-current"
+ action = "append_child"
+
+ page = "get/nightly-builds.md"
+ after = "insert-nightly-build-containers"
+