initial
This commit is contained in:
26
compile.zp
Normal file
26
compile.zp
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
(load "mustache/mustache")
|
||||||
|
(load "pandoc/pandoc")
|
||||||
|
|
||||||
|
(import-all "mustache")
|
||||||
|
(import-all "pandoc")
|
||||||
|
|
||||||
|
(define tpl (read-contents "layout.html"))
|
||||||
|
(define poem-dir "poems/")
|
||||||
|
|
||||||
|
(define (all-poems)
|
||||||
|
(let* ((ls (os:ls poem-dir))
|
||||||
|
(ls (filter ($ (not (in? ["." ".."] %))) ls)))
|
||||||
|
(map (curry ++ poem-dir) ls)))
|
||||||
|
|
||||||
|
(define (from-path file)
|
||||||
|
(regex:sub r/.md$/ "" (list:last (string:split file "/"))))
|
||||||
|
|
||||||
|
(define (render targets)
|
||||||
|
(let* ((strs (map read-contents targets))
|
||||||
|
(args (make-hash
|
||||||
|
"poems" (map (curry pandoc:convert "markdown" "html") strs))))
|
||||||
|
(with-output-file "index.html"
|
||||||
|
(curry write (mustache:template tpl args)))))
|
||||||
|
|
||||||
|
(let ((targets (all-poems)))
|
||||||
|
(render targets))
|
50
index.html
Normal file
50
index.html
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>Veit's Poems</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="./style.css">
|
||||||
|
<script defer src="nav.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="poem">
|
||||||
|
<p>Hoffnung ist ein verdammtes Ding, das sich zwischen zwei ersten Sonnenstrahlen versteckt.<br />
|
||||||
|
Ein lärmiges Gefühl in der Langzeile, dessen Positivismus mich erbrechen macht;<br />
|
||||||
|
palindrome Gleichheit der Winkel, die nicht überraschend ist -</p>
|
||||||
|
<p>hündische Liebelei mit ungeborener Zeit.</p>
|
||||||
|
<p>Vielleicht gastrisches Rauschen in der Ödnis oder eine Ewigkeit;<br />
|
||||||
|
wenn ihr mich danach fragt, weiss ich von nichts.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="poem">
|
||||||
|
<p>Es liegt im Ziehen der Fäden, Schilf.<br />
|
||||||
|
Licht und Gelände.<br />
|
||||||
|
Faserig, als wäre das Land zerkaut</p>
|
||||||
|
<p>Inzidentes Geflirr,<br />
|
||||||
|
jeder Gast wird zum Galgen.<br />
|
||||||
|
In fernen Stimmen wuchert der Schilf, scheint's.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="poem">
|
||||||
|
<p>Eine Dunkelheit wie zerlaufenes Plastik,<br />
|
||||||
|
gleissendes Licht und links nur weisses Rauschen;</p>
|
||||||
|
<p>ein Blinzeln, tagscheu, erhellt mir den Pathos:<br />
|
||||||
|
das unter dem Ahorn im Garten möchte ich Orakel nennen<br />
|
||||||
|
oder vergessene Sprüche<br />
|
||||||
|
von längst nach Süden gezogenen Vögeln.<br />
|
||||||
|
Wie verschwommene Gesten durch keine Sonne erhellt.</p>
|
||||||
|
<p>So vergehen Stunden unter dem Unlicht des regnerischen Sommers.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="bottom">
|
||||||
|
<span class="nav" id="bck">
|
||||||
|
«
|
||||||
|
</span>
|
||||||
|
<span class="nav" id="fwd">
|
||||||
|
»
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
24
layout.html
Normal file
24
layout.html
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>Veit's Poems</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="./style.css">
|
||||||
|
<script defer src="nav.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
{{#poems}}
|
||||||
|
<div class="poem">
|
||||||
|
{{{.}}}
|
||||||
|
</div>
|
||||||
|
{{/poems}}
|
||||||
|
<div id="bottom">
|
||||||
|
<span class="nav" id="bck">
|
||||||
|
«
|
||||||
|
</span>
|
||||||
|
<span class="nav" id="fwd">
|
||||||
|
»
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
20
nav.js
Normal file
20
nav.js
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
(function(){
|
||||||
|
var idx = 0;
|
||||||
|
var bck = document.getElementById("bck");
|
||||||
|
var fwd = document.getElementById("fwd");
|
||||||
|
|
||||||
|
bck.addEventListener('click', function() { idx--; show(); });
|
||||||
|
fwd.addEventListener('click', function() { idx++; show(); });
|
||||||
|
|
||||||
|
function show() {
|
||||||
|
var poems = document.getElementsByClassName("poem");
|
||||||
|
|
||||||
|
if (idx < 0) idx = poems.length-1;
|
||||||
|
if (idx >= poems.length) idx = 0;
|
||||||
|
|
||||||
|
for (var i = 0; i < poems.length; i++) poems[i].style.display = "none";
|
||||||
|
|
||||||
|
poems[idx].style.display = "block";
|
||||||
|
}
|
||||||
|
show(idx);
|
||||||
|
})();
|
8
poems/100.md
Normal file
8
poems/100.md
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
Hoffnung ist ein verdammtes Ding, das sich zwischen zwei ersten Sonnenstrahlen versteckt.
|
||||||
|
Ein lärmiges Gefühl in der Langzeile, dessen Positivismus mich erbrechen macht;
|
||||||
|
palindrome Gleichheit der Winkel, die nicht überraschend ist -
|
||||||
|
|
||||||
|
hündische Liebelei mit ungeborener Zeit.
|
||||||
|
|
||||||
|
Vielleicht gastrisches Rauschen in der Ödnis oder eine Ewigkeit;
|
||||||
|
wenn ihr mich danach fragt, weiss ich von nichts.
|
7
poems/101.md
Normal file
7
poems/101.md
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
Es liegt im Ziehen der Fäden, Schilf.
|
||||||
|
Licht und Gelände.
|
||||||
|
Faserig, als wäre das Land zerkaut
|
||||||
|
|
||||||
|
Inzidentes Geflirr,
|
||||||
|
jeder Gast wird zum Galgen.
|
||||||
|
In fernen Stimmen wuchert der Schilf, scheint's.
|
10
poems/99.md
Normal file
10
poems/99.md
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
Eine Dunkelheit wie zerlaufenes Plastik,
|
||||||
|
gleissendes Licht und links nur weisses Rauschen;
|
||||||
|
|
||||||
|
ein Blinzeln, tagscheu, erhellt mir den Pathos:
|
||||||
|
das unter dem Ahorn im Garten möchte ich Orakel nennen
|
||||||
|
oder vergessene Sprüche
|
||||||
|
von längst nach Süden gezogenen Vögeln.
|
||||||
|
Wie verschwommene Gesten durch keine Sonne erhellt.
|
||||||
|
|
||||||
|
So vergehen Stunden unter dem Unlicht des regnerischen Sommers.
|
34
style.css
Normal file
34
style.css
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: 'charterregular';
|
||||||
|
src: url('http://blog.veitheller.de/charter_regular-webfont.eot');
|
||||||
|
src: url('http://blog.veitheller.de/charter_regular-webfont.woff') format('woff');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
* {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.poem {
|
||||||
|
margin: auto;
|
||||||
|
max-width: 900px;
|
||||||
|
height: 100vh;
|
||||||
|
font-size: 23px;
|
||||||
|
font-family: 'charterregular';
|
||||||
|
padding-top: 3em;
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
#bottom {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 10px;
|
||||||
|
margin-left: calc(50vw - 70px);
|
||||||
|
border-top: 3px solid;
|
||||||
|
}
|
||||||
|
.nav {
|
||||||
|
font-size: 50px;
|
||||||
|
padding: 10px;
|
||||||
|
font-family: 'charterregular';
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
Reference in New Issue
Block a user