summaryrefslogtreecommitdiffstats
path: root/site/posts
diff options
context:
space:
mode:
authorThomas Letan <lthms@soap.coffee>2020-02-22 17:01:34 +0100
committerThomas Letan <lthms@soap.coffee>2020-02-22 17:01:34 +0100
commitc8a860b8b01e2b0c5a14560ae853cfa3ac598b3f (patch)
tree1cb3575d2567ce82241f83e5c7cd185ea9aed493 /site/posts
parentIncrease the width of the log file header generated by cleopatra (diff)
List current generation processes and document how to add one
Diffstat (limited to 'site/posts')
-rw-r--r--site/posts/meta/Bootstrap.org35
-rw-r--r--site/posts/meta/Contents/Org.org2
2 files changed, 28 insertions, 9 deletions
diff --git a/site/posts/meta/Bootstrap.org b/site/posts/meta/Bootstrap.org
index 74436dd..e038f0b 100644
--- a/site/posts/meta/Bootstrap.org
+++ b/site/posts/meta/Bootstrap.org
@@ -160,7 +160,8 @@ for a rule to generate it.
#+END_SRC
~&:~ is used in place of ~:~ to separate the target from its dependencies in
-this rule to tell to ~make~ that the commands run will generate all these files.
+this rule to tell to ~make~ that the runned commands will generate all these
+files.
#+BEGIN_TODO
Introduce ~noweb~ and ~extends~.
@@ -206,20 +207,36 @@ modify ~bootstrap.mk~ accordingly.
* Generation Processes
-*~cleopatra~* has been designed with extensibility in mind. In particular, it
-should be fairly easy to extend it to support additional input format. In this
-section, we explain how this is achieved.
+Thanks to ~<<extends>>~, *~cleopatra~* is easily extensible. In this section, we
+enumerate the generation processes that are currently used to generate the
+website you are reading.
** Authoring Contents
-- Using Coq :: [[/posts/meta/Contents/Coq/][Learn more]]
-- Using Org :: [[/posts/meta/Contents/Org/][Learn more]]
+The fact that *~cleopatra~* is a literate program which gradually generates
+itself was not intended: it is a consequence of my desire to be able to easily
+use whatever format I so desire for writing my contents, and Org documents in
+particular.
-#+BEGIN_SRC makefile :tangle bootstrap.mk :noweb tangle :exports none
-<<extends(MK="coq.mk", IN="Contents/Coq.org", GS="site/style/coq.sass")>>
-#+END_SRC
+In the present website, contents can be written in the following format:
+
+- Regular Coq files ::
+ Coq is a system which allows to write machine-checked proofs, and it comes
+ with a source “prettifier” called ~coqdoc~.
+ [[/posts/meta/Contents/Coq/][Learn more about the generation process for Coq files​]]
+- Org documents ::
+ Emacs comes with a powerful editing mode called [[https://orgmode.org/][Org mode]], and Org documents
+ are really pleasant to work with.
+ [[/posts/meta/Contents/Org/][Learn more about the generation process for Org documents]]
+
+If you want *~cleopatra~* to support more input formats, you have to
+
+1. Create a org file which, once tangled, provide a dedicated makefile
+2. Edit this file (~Bootstrap.org~) here, and use ~<<extends>>~ to make sure it
+ is actually tangled when necessary
#+BEGIN_SRC makefile :tangle bootstrap.mk :noweb tangle :exports none
+<<extends(MK="coq.mk", IN="Contents/Coq.org", GS="site/style/coq.sass")>>
<<extends(MK="org.mk", IN="Contents/Org.org", GF="scripts/export-org.el emacs.d", GS="site/style/org.sass")>>
#+END_SRC
diff --git a/site/posts/meta/Contents/Org.org b/site/posts/meta/Contents/Org.org
index 6bf9207..f28d1cc 100644
--- a/site/posts/meta/Contents/Org.org
+++ b/site/posts/meta/Contents/Org.org
@@ -69,6 +69,8 @@ EXPORT := --batch --load="${ROOT}/scripts/export-org.el" 2>> build.log
.section-number-2:after, .section-number-3:after, .section-number-4:after
content: ". "
+dl dt
+ font-weight: bold
dl dd p
margin-top: 0
#+END_SRC