From e3b6ddeea3e7fa568f1d9ecd1fbbed4773702fe4 Mon Sep 17 00:00:00 2001
From: Adrian Kummerlaender
Date: Sun, 20 Jul 2014 16:44:30 +0200
Subject: Implemented new "layered" site generation architecture * "source"
directory contains layers as subdirectories ** ordered by their name ** e.g.
layer 0 is "00_content" and contains the content alongside some metadata *
transformations contained within the "source" layers are processed
sequentally * transformations define their requirements in a "meta" variable
** the "meta" variable is interpreted by the core transformation
"generate.xsl" * requirements are currently datasources and target
information ** every transformation may have one datasource of type "main"
*** this data source offers e.g. the option to iterate over it ** every
transformation may have a arbitrary number of "support" datasources *** e.g.
"meta" is a support datasource ** the target node may provide a fixed target
path or a Xpath to be evaluated * the result of each transformation is
written to the appropriate layer of the "result" directory * this approach to
XSLT based static site generation should be quite flexible and offer good
expandability ** e.g. adding new datasource options and types
---
source/00_content/meta.xml | 5 ++++
source/00_content/pages/about.md | 9 +++++++
source/00_content/pages/contact.md | 5 ++++
source/01_files/source.xsl | 51 ++++++++++++++++++++++++++++++++++++++
source/02_data/pages.xsl | 44 ++++++++++++++++++++++++++++++++
source/03_result/page.xsl | 35 ++++++++++++++++++++++++++
source/pages/about.md | 9 -------
source/pages/contact.md | 5 ----
8 files changed, 149 insertions(+), 14 deletions(-)
create mode 100644 source/00_content/meta.xml
create mode 100644 source/00_content/pages/about.md
create mode 100644 source/00_content/pages/contact.md
create mode 100644 source/01_files/source.xsl
create mode 100644 source/02_data/pages.xsl
create mode 100644 source/03_result/page.xsl
delete mode 100644 source/pages/about.md
delete mode 100644 source/pages/contact.md
(limited to 'source')
diff --git a/source/00_content/meta.xml b/source/00_content/meta.xml
new file mode 100644
index 0000000..8c1af22
--- /dev/null
+++ b/source/00_content/meta.xml
@@ -0,0 +1,5 @@
+
+
+
/home/adrian
+ /home/common/projects/dev/static_site_generator/target/03_result
+
diff --git a/source/00_content/pages/about.md b/source/00_content/pages/about.md
new file mode 100644
index 0000000..827b612
--- /dev/null
+++ b/source/00_content/pages/about.md
@@ -0,0 +1,9 @@
+# About
+
+Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
+
+* Lorem ipsum dolor sit amet
+* consetetur sadipscing elitr
+* sed diam nonumy eirmod tempor
+
+Invidunt ut *labore* et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
diff --git a/source/00_content/pages/contact.md b/source/00_content/pages/contact.md
new file mode 100644
index 0000000..a9d8be1
--- /dev/null
+++ b/source/00_content/pages/contact.md
@@ -0,0 +1,5 @@
+# Contact
+
+Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
+
+Invidunt ut *labore* et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
diff --git a/source/01_files/source.xsl b/source/01_files/source.xsl
new file mode 100644
index 0000000..d13e3bd
--- /dev/null
+++ b/source/01_files/source.xsl
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ [source/00_content]
+
+
+
+
+
diff --git a/source/02_data/pages.xsl b/source/02_data/pages.xsl
new file mode 100644
index 0000000..4f3002f
--- /dev/null
+++ b/source/02_data/pages.xsl
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ /usr/bin/markdown
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/source/03_result/page.xsl b/source/03_result/page.xsl
new file mode 100644
index 0000000..f6113f3
--- /dev/null
+++ b/source/03_result/page.xsl
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/source/pages/about.md b/source/pages/about.md
deleted file mode 100644
index 827b612..0000000
--- a/source/pages/about.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# About
-
-Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
-
-* Lorem ipsum dolor sit amet
-* consetetur sadipscing elitr
-* sed diam nonumy eirmod tempor
-
-Invidunt ut *labore* et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
diff --git a/source/pages/contact.md b/source/pages/contact.md
deleted file mode 100644
index a9d8be1..0000000
--- a/source/pages/contact.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Contact
-
-Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
-
-Invidunt ut *labore* et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
--
cgit v1.2.3