summaryrefslogtreecommitdiffstats
path: root/site/cleopatra/index.org
blob: 9bf2e68a137bfdef0dee00be0f29df747449387e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#+BEGIN_EXPORT html
<h1><code>cleopatra</code></h1>
#+END_EXPORT

The generation of [[https://soap.coffee/~lthms][my personal website]] is far from being trivial, and requires a
combination of —probably too— many tools. It turned out that some choices I have
made early on gave to the build toolchain I ended up writing a pretty nice
property: I could easily integrate its code to the very website it was conceived
to build, by means of [[http://www.literateprogramming.com/][literate programming]]!

The document you are reading is just that: the literate program of my home-grown
build toolchain ---called *~cleopatra~*---. The motivations behind this name are
twofold.

- I wanted to follow the example of [[https://soupault.neocities.org/][~soupault~]], named after [[https://fr.wikipedia.org/wiki/Philippe_Soupault][a famous personality]].
- My main objective when I started working on this “project” was to be able to
  easily use whatever format I wanted to author my contents. Did you know that
  Cleopatra was a reputed polyglot (at least according to [[https://fr.wikipedia.org/wiki/Polyglotte][Wikipedia France]])?

#+BEGIN_EXPORT html
<article class="index">
#+END_EXPORT

#+BEGIN_TODO
*~cleopatra~* is a literate program whose “program” part is working as
expected. Its “literate” part still requires some work, though.
#+END_TODO

- [[./Bootstrap.org][Bootstrapping an Extensible Toolchain]] ::
  *~cleopatra~* is an extensible toolchain that builds a static website /and/ it
  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)~]] ::

- [[./Theme.org][Theming and Templating ~(TODO)~]] ::

#+BEGIN_EXPORT html
</article>
#+END_EXPORT