summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/README.markdown14
-rw-r--r--examples/brochure/about.rst17
-rw-r--r--examples/brochure/code.lhs21
-rw-r--r--examples/brochure/css/default.css27
-rw-r--r--examples/brochure/css/syntax.css18
-rw-r--r--examples/brochure/hakyll.hs22
-rw-r--r--examples/brochure/index.markdown27
-rw-r--r--examples/brochure/templates/default.html21
-rw-r--r--examples/feedblog/css/default.css17
-rw-r--r--examples/feedblog/hakyll.hs68
-rw-r--r--examples/feedblog/posts/2009-11-05-a-first-post.markdown23
-rw-r--r--examples/feedblog/posts/2009-11-10-another-post.markdown17
-rw-r--r--examples/feedblog/posts/2009-11-28-a-third-post.markdown21
-rw-r--r--examples/feedblog/posts/2009-12-04-this-blog-aint-dead.markdown14
-rw-r--r--examples/feedblog/posts/2009-12-23-almost-christmas.markdown15
-rw-r--r--examples/feedblog/templates/default.html23
-rw-r--r--examples/feedblog/templates/index.html14
-rw-r--r--examples/feedblog/templates/post.html5
-rw-r--r--examples/feedblog/templates/postitem.html4
-rw-r--r--examples/feedblog/templates/posts.html4
-rw-r--r--examples/hakyll/about.markdown36
-rw-r--r--examples/hakyll/changelog.markdown137
-rw-r--r--examples/hakyll/css/default.css118
-rw-r--r--examples/hakyll/css/syntax.css18
-rw-r--r--examples/hakyll/examples.markdown27
-rw-r--r--examples/hakyll/examples/brochure.zipbin9388 -> 0 bytes
-rw-r--r--examples/hakyll/examples/feedblog.zipbin6359 -> 0 bytes
-rw-r--r--examples/hakyll/examples/morepages.zipbin4222 -> 0 bytes
-rw-r--r--examples/hakyll/examples/simpleblog.zipbin6097 -> 0 bytes
-rw-r--r--examples/hakyll/examples/tagblog.zipbin6656 -> 0 bytes
-rw-r--r--examples/hakyll/hakyll.hs53
-rw-r--r--examples/hakyll/images/brochure-files.pngbin125321 -> 0 bytes
-rw-r--r--examples/hakyll/images/hakyll-system-1.pngbin34950 -> 0 bytes
-rw-r--r--examples/hakyll/images/hakyll-system-2.pngbin29373 -> 0 bytes
-rw-r--r--examples/hakyll/images/hakyll-system-3.pngbin28774 -> 0 bytes
-rw-r--r--examples/hakyll/images/lambda.pngbin878 -> 0 bytes
-rw-r--r--examples/hakyll/index.markdown43
-rw-r--r--examples/hakyll/philosophy.markdown28
-rw-r--r--examples/hakyll/reference.markdown10
-rw-r--r--examples/hakyll/sidebar.markdown9
-rw-r--r--examples/hakyll/templates/default.html72
-rw-r--r--examples/hakyll/templates/tutorial.html10
-rw-r--r--examples/hakyll/templates/tutorialitem.html3
-rw-r--r--examples/hakyll/templates/tutorials.html14
-rw-r--r--examples/hakyll/tutorial.markdown351
-rw-r--r--examples/morepages/about.markdown28
-rw-r--r--examples/morepages/css/default.css28
-rw-r--r--examples/morepages/footer.markdown19
-rw-r--r--examples/morepages/hakyll.hs29
-rw-r--r--examples/morepages/index.markdown25
-rw-r--r--examples/morepages/products.markdown24
-rw-r--r--examples/morepages/templates/default.html24
-rw-r--r--examples/simpleblog/css/default.css17
-rw-r--r--examples/simpleblog/hakyll.hs55
-rw-r--r--examples/simpleblog/posts/2009-11-05-a-first-post.markdown21
-rw-r--r--examples/simpleblog/posts/2009-11-10-another-post.markdown15
-rw-r--r--examples/simpleblog/posts/2009-11-28-a-third-post.markdown19
-rw-r--r--examples/simpleblog/posts/2009-12-04-this-blog-aint-dead.markdown12
-rw-r--r--examples/simpleblog/posts/2009-12-23-almost-christmas.markdown13
-rw-r--r--examples/simpleblog/templates/default.html19
-rw-r--r--examples/simpleblog/templates/index.html14
-rw-r--r--examples/simpleblog/templates/post.html5
-rw-r--r--examples/simpleblog/templates/postitem.html4
-rw-r--r--examples/simpleblog/templates/posts.html4
-rw-r--r--examples/tagblog/css/default.css17
-rw-r--r--examples/tagblog/hakyll.hs99
-rw-r--r--examples/tagblog/posts/2009-11-05-a-first-post.markdown22
-rw-r--r--examples/tagblog/posts/2009-11-10-another-post.markdown16
-rw-r--r--examples/tagblog/posts/2009-11-28-a-third-post.markdown20
-rw-r--r--examples/tagblog/posts/2009-12-04-this-blog-aint-dead.markdown13
-rw-r--r--examples/tagblog/posts/2009-12-23-almost-christmas.markdown14
-rw-r--r--examples/tagblog/templates/default.html23
-rw-r--r--examples/tagblog/templates/index.html19
-rw-r--r--examples/tagblog/templates/post.html7
-rw-r--r--examples/tagblog/templates/postitem.html4
-rw-r--r--examples/tagblog/templates/posts.html4
76 files changed, 0 insertions, 1954 deletions
diff --git a/examples/README.markdown b/examples/README.markdown
deleted file mode 100644
index e253e9d..0000000
--- a/examples/README.markdown
+++ /dev/null
@@ -1,14 +0,0 @@
-Hakyll examples
-===============
-
-In order of increasing complexity:
-
- brochure/ A very simple brochure site
- morepages/ Slightly more complicated brochure site with partials
- simpleblog/ A simple blog
- feedblog/ Adds an RSS feed to the simple blog
- tagblog/ Adds tags to the simple blog
-
-In no real category:
-
- hakyll/ The hakyll website (some custom pandoc options)
diff --git a/examples/brochure/about.rst b/examples/brochure/about.rst
deleted file mode 100644
index 99af9e2..0000000
--- a/examples/brochure/about.rst
+++ /dev/null
@@ -1,17 +0,0 @@
----
-title: About
----
-Nullam imperdiet sodales orci vitae molestie. Nunc quam orci, pharetra a
-rhoncus vitae, eleifend id felis. Suspendisse potenti. Etiam vitae urna orci.
-Quisque pellentesque dignissim felis, egestas tempus urna luctus vitae. In hac
-habitasse platea dictumst. Morbi fringilla mattis odio, et mattis tellus
-accumsan vitae.
-
-1. Amamus Unicode 碁
-2. Interdum nex magna.
-
-Vivamus eget mauris sit amet nulla laoreet lobortis. Nulla in diam elementum
-risus convallis commodo. Cras vehicula varius dui vitae facilisis. Proin
-elementum libero eget leo aliquet quis euismod orci vestibulum. Duis rhoncus
-lorem consequat tellus vestibulum aliquam. Quisque orci orci, malesuada porta
-blandit et, interdum nec magna.
diff --git a/examples/brochure/code.lhs b/examples/brochure/code.lhs
deleted file mode 100644
index e98ec85..0000000
--- a/examples/brochure/code.lhs
+++ /dev/null
@@ -1,21 +0,0 @@
----
-title: Code
----
-Etiam condimentum auctor semper. Donec lobortis, magna id sodales sollicitudin,
-lectus mi egestas nulla, pulvinar lobortis nunc eros id nisl. Curabitur
-imperdiet, erat at accumsan vulputate.
-
-> reverse' [] = []
-> reverse' (x:xs) = (reverse' xs) ++ [x]
-
-Purus nunc blandit nulla, dictum.
-
-vestibulum sem lorem eget ipsum. Nunc tincidunt, turpis ut fermentum dapibus,
-justo tortor bibendum sem, at facilisis justo odio luctus lectus. Quisque nec
-ligula ipsum. Nunc augue lacus, ullamcorper vel dapibus in, mattis eget elit.
-
-> main = print $ reverse' [1 .. 10]
-
-Integer ut dui eu felis mollis vestibulum. Etiam at nibh id diam aliquet
-vestibulum sit amet a nibh. Aliquam erat volutpat. Etiam vitae nulla at dolor
-fringilla tempor ut a nunc. Pellentesque elementum elit lorem.
diff --git a/examples/brochure/css/default.css b/examples/brochure/css/default.css
deleted file mode 100644
index 3bfeeaf..0000000
--- a/examples/brochure/css/default.css
+++ /dev/null
@@ -1,27 +0,0 @@
-body {
- width: 600px;
- margin: 0px auto 0px auto;
-}
-
-div#navigation {
- text-align: center;
- border-bottom: 4px solid black;
-}
-
-div#navigation a {
- color: white;
- text-decoration: none;
- background-color: black;
- padding: 3px 10px 3px 10px;
- margin: 0px 10px 0px 10px;
-}
-
-div.figure {
- float: right;
- margin: 20px 0px 20px 20px;
-}
-
-div.figure p.caption {
- text-align: center;
- font-style: italic;
-}
diff --git a/examples/brochure/css/syntax.css b/examples/brochure/css/syntax.css
deleted file mode 100644
index 1aed859..0000000
--- a/examples/brochure/css/syntax.css
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Generated by pandoc. */
-table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode, table.sourceCode pre
- { margin: 0; padding: 0; border: 0; vertical-align: baseline; border: none; }
-td.lineNumbers { border-right: 1px solid #AAAAAA; text-align: right; color: #AAAAAA; padding-right: 5px; padding-left: 5px; }
-td.sourceCode { padding-left: 5px; }
-pre.sourceCode span.kw { color: #007020; font-weight: bold; }
-pre.sourceCode span.dt { color: #902000; }
-pre.sourceCode span.dv { color: #40a070; }
-pre.sourceCode span.bn { color: #40a070; }
-pre.sourceCode span.fl { color: #40a070; }
-pre.sourceCode span.ch { color: #4070a0; }
-pre.sourceCode span.st { color: #4070a0; }
-pre.sourceCode span.co { color: #60a0b0; font-style: italic; }
-pre.sourceCode span.ot { color: #007020; }
-pre.sourceCode span.al { color: red; font-weight: bold; }
-pre.sourceCode span.fu { color: #06287e; }
-pre.sourceCode span.re { }
-pre.sourceCode span.er { color: red; font-weight: bold; }
diff --git a/examples/brochure/hakyll.hs b/examples/brochure/hakyll.hs
deleted file mode 100644
index f33b37d..0000000
--- a/examples/brochure/hakyll.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
-import Control.Arrow ((>>>))
-
-import Hakyll
-
-main :: IO ()
-main = hakyll $ do
- match "images/*" $ do
- route idRoute
- compile copyFileCompiler
-
- match "css/*" $ do
- route idRoute
- compile compressCssCompiler
-
- match "templates/*" $ compile templateCompiler
-
- match (list ["about.rst", "index.markdown", "code.lhs"]) $ do
- route $ setExtension "html"
- compile $ pageCompiler
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
diff --git a/examples/brochure/index.markdown b/examples/brochure/index.markdown
deleted file mode 100644
index 96b63bd..0000000
--- a/examples/brochure/index.markdown
+++ /dev/null
@@ -1,27 +0,0 @@
----
-title: Home
----
-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce tempor, urna et
-auctor tincidunt, eros mauris facilisis purus, eget sollicitudin leo massa sit
-amet ipsum. Vivamus eu massa in urna vehicula rutrum eget sit amet purus.
-
-![Haskell logo](/images/haskell-logo.png)
-
-- Mauris sit amet justo mi.
-- Curabitur vel quam felis.
-- In hac habitasse platea dictumst.
-
-Etiam nec consequat risus. Donec consequat est vitae neque fermentum
-feugiat nec ac nibh. Nulla rhoncus, odio quis scelerisque rutrum, metus sem
-tempor ante, a ornare ipsum felis sed ligula. Morbi urna lectus, scelerisque
-non pharetra in, rutrum quis ligula. Phasellus semper ullamcorper arcu eu
-auctor.
-
-Aliquam sagittis tincidunt libero ut elementum. Ut sit amet vestibulum metus.
-Ut aliquet congue neque eu tincidunt. Integer eu elit sed massa sollicitudin
-vehicula nec ut sem. Cras euismod enim eget purus lacinia non feugiat urna
-imperdiet. Aliquam justo sem, viverra eu vehicula vitae, imperdiet vel magna.
-
-Pellentesque enim dui, interdum elementum vehicula luctus, feugiat vitae arcu.
-Vestibulum ut felis justo. Quisque vestibulum mauris eget ipsum luctus
-consequat.
diff --git a/examples/brochure/templates/default.html b/examples/brochure/templates/default.html
deleted file mode 100644
index 44d1cd0..0000000
--- a/examples/brochure/templates/default.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <title>MyAweSomeCompany - $title$</title>
- <link rel="stylesheet" type="text/css" href="/css/default.css" />
- <link rel="stylesheet" type="text/css" href="/css/syntax.css" />
- </head>
- <body>
- <h1>MyAweSomeCompany - $title$</h1>
- <div id="navigation">
- <a href="/">Home</a>
- <a href="/about.html">About</a>
- <a href="/code.html">Code</a>
- </div>
-
- $body$
- </body>
-</html>
diff --git a/examples/feedblog/css/default.css b/examples/feedblog/css/default.css
deleted file mode 100644
index 9ed2b01..0000000
--- a/examples/feedblog/css/default.css
+++ /dev/null
@@ -1,17 +0,0 @@
-body {
- width: 600px;
- margin: 0px auto 0px auto;
-}
-
-div#navigation {
- text-align: center;
- border-bottom: 4px solid black;
-}
-
-div#navigation a {
- color: white;
- text-decoration: none;
- background-color: black;
- padding: 3px 10px 3px 10px;
- margin: 0px 10px 0px 10px;
-}
diff --git a/examples/feedblog/hakyll.hs b/examples/feedblog/hakyll.hs
deleted file mode 100644
index 4aa8ed9..0000000
--- a/examples/feedblog/hakyll.hs
+++ /dev/null
@@ -1,68 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
-module Main where
-
-import Prelude hiding (id)
-import Control.Category (id)
-import Control.Arrow ((>>>), (***), arr)
-import Data.Monoid (mempty, mconcat)
-
-import Hakyll
-
-main :: IO ()
-main = hakyll $ do
- -- Compress CSS
- match "css/*" $ do
- route idRoute
- compile compressCssCompiler
-
- -- Render posts
- match "posts/*" $ do
- route $ setExtension ".html"
- compile $ pageCompiler
- >>> applyTemplateCompiler "templates/post.html"
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Render posts list
- match "posts.html" $ route idRoute
- create "posts.html" $ constA mempty
- >>> arr (setField "title" "All posts")
- >>> requireAllA "posts/*" addPostList
- >>> applyTemplateCompiler "templates/posts.html"
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Index
- match "index.html" $ route idRoute
- create "index.html" $ constA mempty
- >>> arr (setField "title" "Home")
- >>> requireAllA "posts/*" (id *** arr (take 3 . reverse . sortByBaseName) >>> addPostList)
- >>> applyTemplateCompiler "templates/index.html"
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Render RSS feed
- match "rss.xml" $ route idRoute
- create "rss.xml" $
- requireAll_ "posts/*" >>> renderRss feedConfiguration
-
- -- Read templates
- match "templates/*" $ compile templateCompiler
-
--- | Auxiliary compiler: generate a post list from a list of given posts, and
--- add it to the current page under @$posts@
---
-addPostList :: Compiler (Page String, [Page String]) (Page String)
-addPostList = setFieldA "posts" $
- arr (reverse . sortByBaseName)
- >>> require "templates/postitem.html" (\p t -> map (applyTemplate t) p)
- >>> arr mconcat
- >>> arr pageBody
-
-feedConfiguration :: FeedConfiguration
-feedConfiguration = FeedConfiguration
- { feedTitle = "SimpleBlog RSS feed."
- , feedDescription = "A simple demo of an RSS feed created with Hakyll."
- , feedAuthorName = "Jasper Van der Jeugt"
- , feedRoot = "http://example.com"
- }
diff --git a/examples/feedblog/posts/2009-11-05-a-first-post.markdown b/examples/feedblog/posts/2009-11-05-a-first-post.markdown
deleted file mode 100644
index 7351eb4..0000000
--- a/examples/feedblog/posts/2009-11-05-a-first-post.markdown
+++ /dev/null
@@ -1,23 +0,0 @@
----
-title: A first post
-author: Julius Caesar
-date: November 5, 2009
-description: Lorem ipsum dolor sit amet, consectetur adipiscing elit.
----
-
-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus pretium leo
-adipiscing lectus iaculis lobortis. Vivamus scelerisque velit dignissim metus
-gravida sit amet dapibus ligula tempor. Quisque sit amet viverra nunc.
-Suspendisse cursus elementum ante, ut venenatis nisi dictum eu. Nulla diam
-ligula, eleifend in varius quis, malesuada a nibh. Vivamus consequat
-pellentesque erat non blandit. Nunc sit amet eros vel massa semper ullamcorper
-quis iaculis magna. Vestibulum ullamcorper urna sit amet est elementum
-pulvinar. Vestibulum consequat lacus ac quam hendrerit tincidunt. Praesent
-bibendum vehicula diam, nec sagittis risus tempus a. Nulla quis odio sit amet
-odio vehicula cursus ut id odio. Curabitur semper magna euismod magna mollis
-venenatis. Nunc eget eleifend velit. Mauris sed posuere sem. Fusce id nunc
-nisi, a aliquam orci. Suspendisse laoreet justo non enim laoreet eget consequat
-velit porttitor. Aenean faucibus sodales metus at tincidunt. Donec vestibulum
-leo pulvinar erat auctor ac ultrices massa euismod. Phasellus blandit cursus
-magna, eget lacinia mi lobortis sed. Suspendisse ultricies enim ligula, vel
-scelerisque mauris.
diff --git a/examples/feedblog/posts/2009-11-10-another-post.markdown b/examples/feedblog/posts/2009-11-10-another-post.markdown
deleted file mode 100644
index c4e07b6..0000000
--- a/examples/feedblog/posts/2009-11-10-another-post.markdown
+++ /dev/null
@@ -1,17 +0,0 @@
----
-title: Another post
-author: Marcus Tullius Cicero
-date: November 10, 2009
-description: Vestibulum in ultrices urna. Etiam tempor enim dui, nec malesuada elit.
----
-
-Vestibulum in ultrices urna. Etiam tempor enim dui, nec malesuada elit. Donec
-tempor ligula et quam volutpat quis fermentum eros congue. Sed ut pulvinar sem.
-Sed aliquam ipsum id purus sollicitudin vulputate. Cras et mauris dui, vel
-hendrerit leo. Ut metus ipsum, fermentum ac malesuada id, tempus pharetra quam.
-Donec diam felis, consequat ac scelerisque cursus, gravida non lectus. Sed
-faucibus elit dapibus diam elementum id varius nisi tristique. Proin consequat
-faucibus neque in aliquam. Vestibulum ligula odio, pulvinar vel hendrerit
-vitae, egestas ut nibh. Praesent ut velit elit, in consequat dolor. Praesent
-sem enim, commodo in gravida sed, adipiscing vel eros. Lorem ipsum dolor sit
-amet, consectetur adipiscing elit. Proin non aliquam nunc.
diff --git a/examples/feedblog/posts/2009-11-28-a-third-post.markdown b/examples/feedblog/posts/2009-11-28-a-third-post.markdown
deleted file mode 100644
index b7df45d..0000000
--- a/examples/feedblog/posts/2009-11-28-a-third-post.markdown
+++ /dev/null
@@ -1,21 +0,0 @@
----
-title: A third post
-author: Publius Ovidius Naso
-date: November 28, 2009
-description: Pellentesque tempor blandit elit, vel ultricies arcu congue egestas.
----
-
-Pellentesque tempor blandit elit, vel ultricies arcu congue egestas. Fusce
-vitae rutrum nisl. Fusce id mauris libero, a venenatis tellus. Fusce iaculis,
-lorem et ornare molestie, mauris risus mollis nisi, non fermentum lacus lacus
-sit amet ipsum. Praesent lobortis ullamcorper dolor, eget convallis ligula
-dignissim a. Suspendisse nulla nisi, congue et pharetra vel, convallis non
-libero. Ut a nulla ipsum. Phasellus cursus velit id neque viverra ut
-pellentesque justo posuere. Curabitur laoreet enim et velit tempor consectetur.
-Donec eu pretium urna. Suspendisse vitae nisi at metus vestibulum aliquam in
-sit amet nisl. Donec convallis lacinia odio, vestibulum molestie nunc feugiat
-a. Suspendisse vehicula, sapien id aliquet consectetur, sem sapien ullamcorper
-arcu, scelerisque porttitor elit ipsum posuere ligula. Nulla at velit eu metus
-tincidunt auctor ut sit amet enim. Donec placerat dapibus nisi id facilisis.
-Maecenas pellentesque pulvinar auctor. Curabitur gravida quam sit amet purus
-consectetur blandit.
diff --git a/examples/feedblog/posts/2009-12-04-this-blog-aint-dead.markdown b/examples/feedblog/posts/2009-12-04-this-blog-aint-dead.markdown
deleted file mode 100644
index 17de991..0000000
--- a/examples/feedblog/posts/2009-12-04-this-blog-aint-dead.markdown
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: This blog ain't dead
-author: Marcus Antonius
-date: December 4, 2009
-description: Etiam non felis aliquet tellus dictum vestibulum.
----
-
-Etiam non felis aliquet tellus dictum vestibulum. Aliquam accumsan mauris non
-lacus ultricies nec lacinia enim rhoncus. Curabitur vel tortor massa, elementum
-tincidunt elit. Maecenas venenatis luctus arcu ut ullamcorper. Donec interdum
-dolor eu enim tristique vel vehicula risus mollis. Nunc nec tortor quam. Nulla
-a mauris arcu. Phasellus venenatis tortor vel odio tincidunt consequat. Integer
-venenatis nibh vitae lectus laoreet eu feugiat nunc pretium. Integer nec turpis
-metus, in fermentum lorem.
diff --git a/examples/feedblog/posts/2009-12-23-almost-christmas.markdown b/examples/feedblog/posts/2009-12-23-almost-christmas.markdown
deleted file mode 100644
index 214f147..0000000
--- a/examples/feedblog/posts/2009-12-23-almost-christmas.markdown
+++ /dev/null
@@ -1,15 +0,0 @@
----
-title: Almost Christmas!
-author: Publius Vergilius Maro
-date: December 23, 2009
-description: Morbi tincidunt eleifend ante, eu gravida ante rutrum vel.
----
-
-Morbi tincidunt eleifend ante, eu gravida ante rutrum vel. Nunc bibendum nulla
-tellus, eget egestas sapien. Nam rhoncus interdum libero, eget congue orci
-imperdiet eu. Quisque pellentesque fringilla urna, ac venenatis ante ultricies
-et. Pellentesque habitant morbi tristique senectus et netus et malesuada fames
-ac turpis egestas. Mauris eleifend sagittis ultrices. Quisque ultrices accumsan
-nisl, sed pellentesque metus porta vitae. Nulla facilisi. In et nibh tincidunt
-mi volutpat pellentesque vitae nec sapien. Integer massa ipsum, pellentesque in
-elementum at, cursus sit amet diam.
diff --git a/examples/feedblog/templates/default.html b/examples/feedblog/templates/default.html
deleted file mode 100644
index 7aac5d5..0000000
--- a/examples/feedblog/templates/default.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <title>SimpleBlog - $title$</title>
- <link rel="stylesheet" type="text/css" href="/css/default.css" />
- <link rel="alternate"
- type="application/rss+xml"
- title="SimpleBlog"
- href="/rss.xml" />
- </head>
- <body>
- <h1>SimpleBlog - $title$</h1>
- <div id="navigation">
- <a href="/">Home</a>
- <a href="/posts.html">All posts</a>
- </div>
-
- $body$
- </body>
-</html>
diff --git a/examples/feedblog/templates/index.html b/examples/feedblog/templates/index.html
deleted file mode 100644
index f20adb1..0000000
--- a/examples/feedblog/templates/index.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<div id="posts">
- <h1>Recent posts</h1>
- <ul>
- $posts$
- </ul>
- <p><a href="/posts.html">All posts&hellip;</a></p>
-</div>
-
-<div class="about">
- <h1>About</h1>
- <p>
- This is a sample blog for educational purposes.
- </p>
-</div>
diff --git a/examples/feedblog/templates/post.html b/examples/feedblog/templates/post.html
deleted file mode 100644
index dd0db95..0000000
--- a/examples/feedblog/templates/post.html
+++ /dev/null
@@ -1,5 +0,0 @@
-<h1>$title$</h1>
-
-<p>by <em>$author$</em> on <strong>$date$</strong></p>
-
-$body$
diff --git a/examples/feedblog/templates/postitem.html b/examples/feedblog/templates/postitem.html
deleted file mode 100644
index ccbb58e..0000000
--- a/examples/feedblog/templates/postitem.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<li>
- <a href="$url$">$title$</a>
- - <em>$date$</em> - by <em>$author$</em>
-</li>
diff --git a/examples/feedblog/templates/posts.html b/examples/feedblog/templates/posts.html
deleted file mode 100644
index 2bec161..0000000
--- a/examples/feedblog/templates/posts.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<h1>All posts</h1>
-<ul>
- $posts$
-</ul>
diff --git a/examples/hakyll/about.markdown b/examples/hakyll/about.markdown
deleted file mode 100644
index 108663b..0000000
--- a/examples/hakyll/about.markdown
+++ /dev/null
@@ -1,36 +0,0 @@
----
-title: About
----
-
-## Code
-
-The code for Hakyll is freely available on
-[github](http://github.com/jaspervdj/Hakyll/). Patches and suggestions are
-always very welcome.
-
-## Inspiration
-
-Hakyll is not the only static site generator out there. It was inspired by the
-following awesome projects:
-
-- [yst](http://github.com/jgm/yst)
-- [nanoc](http://nanoc.stoneship.org/)
-- [Jekyll](http://jekyllrb.com/)
-
-## License
-
-Hakyll is available under a BSD license. Note, however, that pandoc is
-released under a GPL license. Since you'll probably use Hakyll with pandoc,
-you will have to license your code under a GPL-compatible license.
-
-## Authors
-
-Hakyll was originally written by [Jasper Van der Jeugt](http://jaspervdj.be),
-who still maintains the package. Contributors:
-
-- [seschwar](http://github.com/seschwar)
-- [JD Marble](http://github.com/jdmarble)
-- [sargon](http://github.com/sargon)
-- [Paolo Veronelli](http://github.com/paolino)
-- [Benedict Eastaugh](http://extralogical.net/)
-- [Nicolas Wu](http://zenzike.com/)
diff --git a/examples/hakyll/changelog.markdown b/examples/hakyll/changelog.markdown
deleted file mode 100644
index 9c6c2cf..0000000
--- a/examples/hakyll/changelog.markdown
+++ /dev/null
@@ -1,137 +0,0 @@
----
-title: Changelog
----
-
-## Hakyll 3.1.1
-
-- Allow `group` in rules DSL
-
-## Hakyll 3.1
-
-- New `match` function in rules DSL
-- More expressive `Pattern`s
-
-## Hakyll 3
-
-- Complete rewrite
-
-## Hakyll 2.4.1
-
-- Add a number of utility functions
-- Fix bug in `enableIndexUrl` mode
-
-## Hakyll 2.4
-
-- Arrow based interface to pandoc
-- Easier custom fields
-
-## Hakyll 2.3
-
-- Ability to choose between preview modes.
-- Simple static configuration available.
-- Support hamlet templates.
-
-## Hakyll 2.2.2
-
-- Cabal dependency fixes.
-
-## Hakyll 2.2.1
-
-- Allow custom time locale for `renderDate`.
-- Render RSS feeds with `CDATA` sections.
-
-## Hakyll 2.2
-
-- Allow markup languages in templates.
-
-## Hakyll 2.1.1
-
-- Fix issues in autocompilation/preview mode.
-
-## Hakyll 2.1
-
-May 21, 2010
-
-- Expose pandoc options to HakyllConfiguration.
-- Allow dashes in pages.
-- Some typo's and bugs fixed.
-
-## Hakyll 2.0
-
-March 31, 2010
-
-- Rewrite of the API to a clean, Arrow based API.
-- Added built-in support for RSS and Atom.
-- Added more documentation.
-- Added pagination.
-- Many bugfixes.
-
-## Hakyll 1.4
-
-February 17, 2010
-
-- Added an autocompilation feature.
-- Support for index URL's (`enableIndexUrl`).
-
-## Hakyll 1.3
-
-January 30, 2010
-
-- Added categories in addition to tags.
-- Added `createListing` and `createListingWith` function for a more high-level
- way to create listings.
-
-## Hakyll 1.2
-
-January 27, 2010
-
-- `Data.Binary` is now used for serialization.
-- Rewrite of the caching system.
-- Specialized data structure for templates.
-- Caching of pages and templates.
-
-## Hakyll 1.1
-
-January 19, 2010
-
-- Switched to a custom `Hakyll` monad stack instead of the `IO` monad.
-- Page sections.
-- Combining renderables.
-- `renderAndConcat` can now use multiple templates.
-
-## Hakyll 1.0
-
-January 14, 2009
-
-- First stable release.
-- Custom templating system.
-- Added `$root` key for relative URL's.
-
-## Hakyll 0.4
-
-January 8, 2010
-
-- Added examples.
-- Added `ContextManipulation` type.
-
-## Hakyll 0.3
-
-December 28, 2009
-
-- Added a general `directory` function.
-- Added CSS compression.
-- Added tag support.
-- Added a simple HTTP server for testing purposes.
-
-## Hakyll 0.2
-
-December 16, 2010
-
-- Abstracted `Renderable` type.
-- Added simple caching and dependency checking.
-
-## Hakyll 0.1
-
-December 5, 2009
-
-- Initial release.
diff --git a/examples/hakyll/css/default.css b/examples/hakyll/css/default.css
deleted file mode 100644
index 06f664c..0000000
--- a/examples/hakyll/css/default.css
+++ /dev/null
@@ -1,118 +0,0 @@
-html {
- padding: 0px;
- margin: 0px;
- background-color: white;
- color: black;
- font-family: sans-serif;
- line-height: 160%;
-}
-
-body {
- padding: 0px 0px 60px 0px;
- margin: 0px;
-}
-
-div#header {
- height: 32px;
- padding: 20px 0px 20px 60px;
-}
-
-div#header img {
- display: inline;
- vertical-align: middle;
-}
-
-div#header h1 {
- padding-left: 10px;
- display: inline;
- text-transform: uppercase;
- vertical-align: middle;
-}
-
-div#main {
- margin: 0px auto 0px auto;
- width: 860px;
-}
-
-div#sidebar {
- margin-right: 30px;
- width: 160px;
- float: left;
- text-align: right;
-}
-
-div#sidebar a {
- display: block;
- font-size: 110%;
- text-decoration: none;
- margin-bottom: 10px;
- text-transform: uppercase;
-}
-
-div#content {
- width: 670px;
- float: right;
-}
-
-div#footer {
- padding-top: 30px;
- clear: both;
- font-size: 90%;
- text-align: center;
-}
-
-a {
- color: black;
-}
-
-h2 {
- font-size: 120%;
- text-transform: uppercase;
-}
-
-h3 {
- font-size: 100%;
- text-transform: uppercase;
-}
-
-h1 a, h2 a, h3 a {
- text-decoration: none;
-}
-
-div.column {
- width: 50%;
- float: left;
-}
-
-div.column p {
- padding-right: 15px;
-}
-
-img {
- display: block;
- margin: 10px auto 10px auto;
- border: none;
-}
-
-ul {
- list-style-type: square;
- padding-left: 1em;
- margin-left: 1em;
-}
-
-code {
- background-color: rgb(250, 250, 250);
- border: 1px solid rgb(200, 200, 200);
- padding-left: 4px;
- padding-right: 4px;
-}
-
-pre code {
- display: block;
- padding: 8px;
- margin-bottom: 2em;
-}
-
-p.caption {
- display: none;
-}
diff --git a/examples/hakyll/css/syntax.css b/examples/hakyll/css/syntax.css
deleted file mode 100644
index 1aed859..0000000
--- a/examples/hakyll/css/syntax.css
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Generated by pandoc. */
-table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode, table.sourceCode pre
- { margin: 0; padding: 0; border: 0; vertical-align: baseline; border: none; }
-td.lineNumbers { border-right: 1px solid #AAAAAA; text-align: right; color: #AAAAAA; padding-right: 5px; padding-left: 5px; }
-td.sourceCode { padding-left: 5px; }
-pre.sourceCode span.kw { color: #007020; font-weight: bold; }
-pre.sourceCode span.dt { color: #902000; }
-pre.sourceCode span.dv { color: #40a070; }
-pre.sourceCode span.bn { color: #40a070; }
-pre.sourceCode span.fl { color: #40a070; }
-pre.sourceCode span.ch { color: #4070a0; }
-pre.sourceCode span.st { color: #4070a0; }
-pre.sourceCode span.co { color: #60a0b0; font-style: italic; }
-pre.sourceCode span.ot { color: #007020; }
-pre.sourceCode span.al { color: red; font-weight: bold; }
-pre.sourceCode span.fu { color: #06287e; }
-pre.sourceCode span.re { }
-pre.sourceCode span.er { color: red; font-weight: bold; }
diff --git a/examples/hakyll/examples.markdown b/examples/hakyll/examples.markdown
deleted file mode 100644
index 453a22e..0000000
--- a/examples/hakyll/examples.markdown
+++ /dev/null
@@ -1,27 +0,0 @@
----
-title: Examples
----
-
-## Simple examples
-
-A number of simple examples are available in the GitHub repository. They can be
-found [here](https://github.com/jaspervdj/hakyll/tree/master/examples). The
-README located in that directory explains which example does what.
-
-## People using Hakyll
-
-A lot of sites running Hakyll also publish the source code. This is a very
-interesting resource to learn from as well. If you're using Hakyll for your
-site, and the source code is available, please notify me so I can add you to
-this list. This list has no particular ordering.
-
-- <http://jaspervdj.be/>,
- [source](https://github.com/jaspervdj/jaspervdj)
-- <http://ethanschoonover.com/>,
- [source](https://github.com/altercation/ethanschoonover.com)
-- <http://extralogical.net/>,
- [source](https://github.com/beastaugh/extralogical.net)
-- <http://blog.demotera.com/>,
- [source](https://bitbucket.org/paul_r/blog-de-demotera)
-- <http://projects.haskell.org/diagrams/>,
- [source](http://patch-tag.com/r/byorgey/diagrams-doc/snapshot/current/content/pretty/web/)
diff --git a/examples/hakyll/examples/brochure.zip b/examples/hakyll/examples/brochure.zip
deleted file mode 100644
index cfbe052..0000000
--- a/examples/hakyll/examples/brochure.zip
+++ /dev/null
Binary files differ
diff --git a/examples/hakyll/examples/feedblog.zip b/examples/hakyll/examples/feedblog.zip
deleted file mode 100644
index 0adaf1e..0000000
--- a/examples/hakyll/examples/feedblog.zip
+++ /dev/null
Binary files differ
diff --git a/examples/hakyll/examples/morepages.zip b/examples/hakyll/examples/morepages.zip
deleted file mode 100644
index 617e0f6..0000000
--- a/examples/hakyll/examples/morepages.zip
+++ /dev/null
Binary files differ
diff --git a/examples/hakyll/examples/simpleblog.zip b/examples/hakyll/examples/simpleblog.zip
deleted file mode 100644
index a67f362..0000000
--- a/examples/hakyll/examples/simpleblog.zip
+++ /dev/null
Binary files differ
diff --git a/examples/hakyll/examples/tagblog.zip b/examples/hakyll/examples/tagblog.zip
deleted file mode 100644
index d758225..0000000
--- a/examples/hakyll/examples/tagblog.zip
+++ /dev/null
Binary files differ
diff --git a/examples/hakyll/hakyll.hs b/examples/hakyll/hakyll.hs
deleted file mode 100644
index df92ddd..0000000
--- a/examples/hakyll/hakyll.hs
+++ /dev/null
@@ -1,53 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
-import Hakyll
-import Control.Monad (forM_)
-import Control.Arrow ((>>>), arr)
-import Text.Pandoc
-
-main :: IO ()
-main = hakyll $ do
- match "css/*" $ do
- route idRoute
- compile compressCssCompiler
-
- -- Static directories
- forM_ ["images/*", "examples/*", "reference/**"] $ \f -> match f $ do
- route idRoute
- compile copyFileCompiler
-
- -- Pages
- forM_ pages $ \p -> match p $ do
- route $ setExtension "html"
- compile $ pageCompiler
- >>> requireA "sidebar.markdown" (setFieldA "sidebar" $ arr pageBody)
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Tutorial
- match "tutorial.markdown" $ do
- route $ setExtension "html"
- compile $ readPageCompiler
- >>> pageRenderPandocWith defaultHakyllParserState withToc
- >>> requireA "sidebar.markdown" (setFieldA "sidebar" $ arr pageBody)
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Sidebar
- match "sidebar.markdown" $ compile pageCompiler
-
- -- Templates
- match "templates/*" $ compile templateCompiler
- where
- withToc = defaultHakyllWriterOptions
- { writerTableOfContents = True
- , writerTemplate = "<h2>Table of contents</h2>\n$toc$\n$body$"
- , writerStandalone = True
- }
-
- pages = [ "about.markdown"
- , "changelog.markdown"
- , "examples.markdown"
- , "index.markdown"
- , "philosophy.markdown"
- , "reference.markdown"
- ]
diff --git a/examples/hakyll/images/brochure-files.png b/examples/hakyll/images/brochure-files.png
deleted file mode 100644
index 41af36e..0000000
--- a/examples/hakyll/images/brochure-files.png
+++ /dev/null
Binary files differ
diff --git a/examples/hakyll/images/hakyll-system-1.png b/examples/hakyll/images/hakyll-system-1.png
deleted file mode 100644
index 69e850c..0000000
--- a/examples/hakyll/images/hakyll-system-1.png
+++ /dev/null
Binary files differ
diff --git a/examples/hakyll/images/hakyll-system-2.png b/examples/hakyll/images/hakyll-system-2.png
deleted file mode 100644
index eb424a9..0000000
--- a/examples/hakyll/images/hakyll-system-2.png
+++ /dev/null
Binary files differ
diff --git a/examples/hakyll/images/hakyll-system-3.png b/examples/hakyll/images/hakyll-system-3.png
deleted file mode 100644
index cdffe2d..0000000
--- a/examples/hakyll/images/hakyll-system-3.png
+++ /dev/null
Binary files differ
diff --git a/examples/hakyll/images/lambda.png b/examples/hakyll/images/lambda.png
deleted file mode 100644
index fbf34a8..0000000
--- a/examples/hakyll/images/lambda.png
+++ /dev/null
Binary files differ
diff --git a/examples/hakyll/index.markdown b/examples/hakyll/index.markdown
deleted file mode 100644
index ee44cf3..0000000
--- a/examples/hakyll/index.markdown
+++ /dev/null
@@ -1,43 +0,0 @@
----
-title: Home
----
-
-## Overview
-
-Hakyll is a [Haskell](http://haskell.org) library for generating static sites,
-mostly aimed at small-to-medium sites and personal blogs. It is written in a
-very configurable way and uses an [xmonad](http://xmonad.org)-like DSL for
-configuration.
-
-Integration with [pandoc](http://johnmacfarlane.net/pandoc/) gives us markdown
-and TeX support, including syntax highlighting and other goodies.
-
-## The Hakyll System
-
-### Write your content in whatever format you prefer
-
-![Write your content](/images/hakyll-system-1.png)
-
-### Create compilation rules in a Haskell EDSL
-
-![Write your rules](/images/hakyll-system-2.png)
-
-### Compile it to HTML and upload it!
-
-![Compile it](/images/hakyll-system-3.png)
-
-## Hakyll 3
-
-Hakyll 3 has been released, and it can be installed by running
-`cabal install hakyll`. For a limited time (but as long as is necessary) you can
-access the old site and documentation [here](/hakyll2).
-
-## Getting Started
-
-You can get the latest version from hackage using `cabal install hakyll`. Then,
-you can:
-
-- read the [tutorial](/tutorial.html);
-- mail the [google discussion group](http://groups.google.com/group/hakyll);
-- ask questions on the IRC channel: `#hakyll` on
- [freenode](http://freenode.net/).
diff --git a/examples/hakyll/philosophy.markdown b/examples/hakyll/philosophy.markdown
deleted file mode 100644
index 07a20c3..0000000
--- a/examples/hakyll/philosophy.markdown
+++ /dev/null
@@ -1,28 +0,0 @@
----
-title: Philosophy
----
-
-## Small-to-medium sites
-
-Hakyll was written to be used for small-to-medium sites. You can do some
-advanced things with it, but don't use it to build a big online shop.
-
-## Hakyll.hs
-
-It should be possible to put all configuration in one file, so data and
-configuration can be strictly separated. In addition, we think this file should
-never exceed a 100 lines of code.
-
-## High-level
-
-Hakyll tries to provide as many high-level functions as possible for common
-tasks, while the lower-level functions should also be accessible. If you think
-you're writing something that can be used for many sites, please send a patch,
-or your `hakyll.hs`, and we will see what we can do.
-
-## Well-documented
-
-A key to being easy-to-use is documentation. That's why we try to provide as
-many working examples as possible. If you ever create a site using hakyll,
-please consider open-sourcing it, as people might be able to learn from your
-code.
diff --git a/examples/hakyll/reference.markdown b/examples/hakyll/reference.markdown
deleted file mode 100644
index 9b4d9e4..0000000
--- a/examples/hakyll/reference.markdown
+++ /dev/null
@@ -1,10 +0,0 @@
----
-title: Reference
----
-
-## Reference
-
-We keep a copy of the reference of the latest stable version here. This
-reference is automatically generated by
-[Haddock](http://www.haskell.org/haddock/). You can
-[find it here](reference/index.html).
diff --git a/examples/hakyll/sidebar.markdown b/examples/hakyll/sidebar.markdown
deleted file mode 100644
index 8396c75..0000000
--- a/examples/hakyll/sidebar.markdown
+++ /dev/null
@@ -1,9 +0,0 @@
-## Navigation
-
-[home](/index.html)
-[philosophy](/philosophy.html)
-[about](/about.html)
-[tutorial](/tutorial.html)
-[examples](/examples.html)
-[reference](/reference.html)
-[changelog](/changelog.html)
diff --git a/examples/hakyll/templates/default.html b/examples/hakyll/templates/default.html
deleted file mode 100644
index 040292c..0000000
--- a/examples/hakyll/templates/default.html
+++ /dev/null
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <title>Hakyll - $title$</title>
-
- <!-- Stylesheets. -->
- <link rel="stylesheet" type="text/css" href="/css/default.css" />
- <link rel="stylesheet" type="text/css" href="/css/syntax.css" />
-
- <!-- Metadata. -->
- <meta name="keywords" content="hakyll,static site generator,static,site,generator,haskell,blog"/>
- <meta name="description" content="Hakyll - A Static Site Generator in Haskell."/>
-
- <!-- Flattr JS -->
- <!--
- <script type="text/javascript">
- /* <![CDATA[ */
- (function() {
- var s = document.createElement('script'), t =
- document.getElementsByTagName('script')[0];
- s.type = 'text/javascript';
- s.async = true;
- s.src = 'http://api.flattr.com/js/0.6/load.js?mode=auto';
- t.parentNode.insertBefore(s, t);
- })();
- /* ]]> */
- </script>
- -->
- </head>
- <body>
- <div id="main">
- <div id="header">
- <img src="/images/lambda.png" alt="lambda" />
- <h1>Hakyll - $title$</h1>
- </div>
- <!-- Sidebar. -->
- <div id="sidebar">
- $sidebar$
-
- <!-- Flattr button -->
- <!--
- <a class="FlattrButton" style="display:none;" rev="flattr;button:compact;" href="http://jaspervdj.be/hakyll"></a>
- <noscript><a href="http://flattr.com/thing/291889/Hakyll" target="_blank"> <img src="http://api.flattr.com/button/flattr-badge-large.png" alt="Flattr this" title="Flattr this" border="0" /></a></noscript>
- -->
- </div>
-
- <div id="content">
- $body$
- </div>
-
- <div id="footer">
- Site proudly generated by <a href="http://github.com/jaspervdj/hakyll">hakyll</a>.
- </div>
- </div>
-
- <!-- Google Analytics -->
- <script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script>
- <script type="text/javascript">
- try {
- var pageTracker = _gat._getTracker("UA-11993001-1");
- pageTracker._trackPageview();
- } catch(err) {}
- </script>
- </body>
-
-</html>
diff --git a/examples/hakyll/templates/tutorial.html b/examples/hakyll/templates/tutorial.html
deleted file mode 100644
index 6ce60b6..0000000
--- a/examples/hakyll/templates/tutorial.html
+++ /dev/null
@@ -1,10 +0,0 @@
-$body
-
-<h2>Helping out</h2>
-
-Hakyll is an open source project, and one of the hardest parts is writing
-correct, up-to-date, and understandable documentation. Therefore, the
-authors would really appreciate it if you would
-<a href="http://groups.google.com/group/hakyll">give some feedback</a> about
-the tutorials, and especially report errors or difficulties you encountered.
-Thanks!
diff --git a/examples/hakyll/templates/tutorialitem.html b/examples/hakyll/templates/tutorialitem.html
deleted file mode 100644
index 01fb298..0000000
--- a/examples/hakyll/templates/tutorialitem.html
+++ /dev/null
@@ -1,3 +0,0 @@
-<li>
- <a href="$url">$title</a> $what.
-</li>
diff --git a/examples/hakyll/templates/tutorials.html b/examples/hakyll/templates/tutorials.html
deleted file mode 100644
index 6cbb4ac..0000000
--- a/examples/hakyll/templates/tutorials.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<h2>Tutorials about Hakyll</h2>
-<p>
- Here is a list of tutorials I've written about Hakyll:
-</p>
-<ul>
- $body
-</ul>
-<p>
- All these tutorials assume you are using the latest stable version of
- Hakyll. If this is not the case, you might want to update using:
- <pre><code>ghc-pkg unregister hakyll
-cabal update
-cabal install hakyll</code></pre>
-</p>
diff --git a/examples/hakyll/tutorial.markdown b/examples/hakyll/tutorial.markdown
deleted file mode 100644
index 920249d..0000000
--- a/examples/hakyll/tutorial.markdown
+++ /dev/null
@@ -1,351 +0,0 @@
----
-title: Tutorial
----
-
-Why static websites?
---------------------
-
-Modern web frameworks make it easy to create huge dynamic websites. Why would
-anyone still care about a static website?
-
-- Static websites are fast, because it's simply files served directly from the
- hard disk.
-- Static websites are secure. Nobody has ever found an SQL injection in static
- pages.
-- Static websites are easy to deploy. Just copy them to your webhost using
- (S)FTP/rsync/scp and you are done. They work on all webhosts: no CGI or extra
- modules needed for the web server.
-
-Why Hakyll?
------------
-
-Hakyll is a [Haskell] library meant for creating small-to-medium sized static
-websites. It is a powerful publishing tool, precisely because of the power of
-Haskell. By using the awesome [pandoc] library, it is able to create your
-website from a large variety of input formats.
-
-[Haskell]: http://haskell.org/
-[pandoc]: http://johnmacfarlane.net/pandoc/
-
-Features include:
-
-- easy templating system;
-- a simple HTTP server for previewing and compiling your website on the go;
-- powerful syntax highlighting;
-- modules for common items such as tags and feeds;
-- easily extensible.
-
-Let's get started!
-------------------
-
-We're going to discuss a small brochure site to start with. You can find all
-code and files necessary to build this site [right here](/examples/brochure.zip)
--- feel free to look at them as we go trough the tutorial, in fact, it might be
-very learnful to have a closer look at the files as we discuss them. There's a
-number of files we will use:
-
- about.rst A simple page written in RST format
- code.lhs Another page with some code (which can be highlighted)
- css Directory for CSS files
- |- default.css The main CSS file
- \- syntax.css CSS file for code syntax highlighting
- hakyll.hs Our code to generate the site
- images Directory for images
- \- haskell-logo.png The logo of my favorite programming language
- index.markdown A simple page in markdown format
- templates Directory for templates
- \- default.html The main template for the site
-
-By default, hakyll will compile everything to the `_site` directory. We can try
-this like this:
-
- [jasper@phoenix] ghc --make hakyll.hs
- [jasper@phoenix] ./hakyll build
-
-Instead of using `build`, we can also use `preview`, which will fire up a
-webserver serving the `_site` directory, so have a look!
-
-All files have been compiled, and their output has been placed in the `_site`
-directory as illustrated in this diagram:
-
-![Brochure files](/images/brochure-files.png)
-
-No magic is involved at all -- we will precisely study how and why our items are
-compiled like that. All of this is specified in the `hakyll.hs` file.
-
-### Images
-
-Let's start of with the `images/haskell-logo.png` file, because the processing
-of this file is very simple: it is simply copied to the output directory. Let's
-look at the relevant lines in the `hakyll.hs` file:
-
-~~~~~{.haskell}
-match "images/*" $ do
- route idRoute
- compile copyFileCompiler
-~~~~~
-
-The first line specifies we will describe the process for compiling everything
-in the `images/` folder: hakyll uses globs for this [^pattern].
-
-[^pattern]: A little caveat is that these globs are not `String`s but
- `Pattern`s, so you need the `OverloadedStrings` extension.
-
-We can see two simple rules next: [route] and [compile].
-
-- [route] determines how the input file(s) get mapped to the output files.
- [route] only deals with file names -- not with the actual content!
-- [compile], on the other hand, determines how the file content is processed.
-
-[route]: /reference/Hakyll-Core-Rules.html#v:route
-[compile]: /reference/Hakyll-Core-Rules.html#v:compile
-
-In this case, we select the [idRoute]: which means the file name will be kept
-the same (`_site` will always be prepended automatically). This explains the
-name of [idRoute]: much like the `id` function in Haskell, it also maps values
-to themselves.
-
-[idRoute]: /reference/Hakyll-Core-Routes.html#v:idRoute
-
-For our compiler, we use [copyFileCompiler], meaning that we don't process the
-content at all, we just copy the file.
-
-[copyFileCompiler]: /reference/Hakyll-Core-Writable-CopyFile.html#v:copyFileCompiler
-
-### CSS
-
-If we look at how the two CSS files are processed, we see something which looks
-very familiar:
-
-~~~~~{.haskell}
-match "css/*" $ do
- route idRoute
- compile compressCssCompiler
-~~~~~
-
-Indeed, the only difference with the images is that have now chosen for
-[compressCssCompiler] -- a compiler which *does* process the content. Let's have
-a quick look at the type of [compressCssCompiler]:
-
-[compressCssCompiler]: /reference/Hakyll-Web-CompressCss.html#v:compressCssCompiler
-
-~~~~~{.haskell}
-compressCssCompiler :: Compiler Resource String
-~~~~~
-
-Intuitively, we can see this as a process which takes a `Resource` and produces
-a `String`.
-
-- A `Resource` is simply the Hakyll representation of an item -- usually just a
- file on the disk.
-- The produced string is the processed CSS.
-
-We can wonder what Hakyll does with the resulting `String`. Well, it simply
-writes this to the file specified in the `route`! As you can see, routes and
-compilers work together to produce your site.
-
-### Templates
-
-Next, we can see that the templates are compiled:
-
-~~~~~{.haskell}
-match "templates/*" $ compile templateCompiler
-~~~~~
-
-Let's start with the basics: what is a template? An example template gives us a
-good impression:
-
-~~~~~
-<html>
- <head>
- <title>Hakyll Example - $title$</title>
- </head>
- <body>
- <h1>$title$</h1>
-
- $body$
- </body>
-</html>
-~~~~~
-
-A template is a text file to lay our some content. The content it lays out is
-called a page -- we'll see that in the next section. The syntax for templates is
-intentionally very simplistic. You can bind some content by referencing the name
-of the content *field* by using `$field$`, and that's it.
-
-You might have noticed how we specify a compiler (`compile`), but we don't set
-any `route`. Why is this?
-
-Precisely because we don't want to our template to end up anywhere in our site
-directory! We want to use it to lay out other items -- so we need to load
-(compile) it, but we don't want to give it a real destination.
-
-By using the `templates/*` pattern, we compile all templates in one go.
-
-### Pages
-
-The code for pages looks suspiciously more complicated:
-
-~~~~~~{.haskell}
-match (list ["about.rst", "index.markdown", "code.lhs"]) $ do
- route $ setExtension "html"
- compile $ pageCompiler
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-~~~~~~
-
-But we'll see shortly that this actually fairly straightforward. Let's begin by
-exploring what a *page* is.
-
-~~~~~~
----
-title: Home
-author: Jasper
----
-
-So, I decided to create a site using Hakyll and...
-~~~~~~
-
-A page consists of two parts: a body, and metadata. As you can see above, the
-syntax is not hard. The metadata part is completely optional, this is the same
-page without metadata:
-
-~~~~~~
-So, I decided to create a site using Hakyll and...
-~~~~~~
-
-Hakyll supports a number of formats for the page body. Markdown, HTML and RST
-are probably the most common. Hakyll will automatically guess the right format
-if you use the right extension for your page.
-
-~~~~~~{.haskell}
-match (list ["about.rst", "index.markdown", "code.lhs"]) $ do
-~~~~~~
-
-We see a more complicated pattern here. Some sets of files cannot be described
-easily by just one pattern, and here the [list] function can help us out. In
-this case, we have three specific pages we want to compile.
-
-[list]: /reference/Hakyll-Core-Identifier-Pattern.html#v:list
-
-~~~~~~{.haskell}
-route $ setExtension "html"
-~~~~~~
-
-For our pages, we do not want to use `idRoute` -- after all, we want to generate
-`.html` files, not `.markdown` files or something similar! The [setExtension]
-route allows you to simply replace the extension of an item, which is what we
-want here.
-
-[setExtension]: /reference/Hakyll-Core-Routes.html#v:setExtension
-
-~~~~~~{.haskell}
-compile $ pageCompiler
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-~~~~~~
-
-How should we process these pages? [pageCompiler] is the default compiler for
-pages. [pageCompiler] does a few things:
-
-- It parses the page into body and metadata
-- It adds some extra metadata fields such as `$url$` and `$path$` (you shouldn't
- worry about these for now)
-- It fill in possible `$key$`'s in it's own body
-- It renders the page using pandoc
-
-Which basically means that we end up with a `Page` that has the HTML content we
-want as body. But we don't just want the plain content on our website -- we want
-to decorate it with a template, for starters.
-
-[pageCompiler]: /reference/Hakyll-Web-Page.html#v:pageCompiler
-
-Different compilers can be chained in a pipeline-like way using Arrows. Arrows
-form a complicated subject, but fortunately, most Hakyll users need not be
-concerned with the details. If you are interested, you can find some information
-on the [Understanding arrows] page -- but the only thing you really *need* to
-know is that you can chain compilers using the `>>>` operator.
-
-[Understanding arrows]: http://en.wikibooks.org/wiki/Haskell/Understanding_arrows
-
-The `>>>` operator is a lot like a flipped function composition (`flip (.)`) in
-Haskell, with the important difference that `>>>` is more general and works on
-all Arrows -- including Hakyll compilers.
-
-Here, we apply three compilers sequentially:
-
-1. We load and render the page using `pageCompiler`
-2. We apply the template we previously loaded using [applyTemplateCompiler]
-3. We relativize the URL's on the page using [relativizeUrlsCompiler]
-
-[applyTemplateCompiler]: /reference/Hakyll-Web-Template.html#v:applyTemplateCompiler
-[relativizeUrlsCompiler]: /reference/Hakyll-Web-RelativizeUrls.html#v:relativizeUrlsCompiler
-
-Relativizing URL's is a very handy feature. It means that we can just use
-absolute URL's everywhere in our templates and code, e.g.:
-
-~~~~~{.haskell}
-<link rel="stylesheet" type="text/css" href="/css/default.css" />
-~~~~~
-
-And Hakyll will translate this to a relative URL for each page. This means we
-can host our site at `example.com` and `example.com/subdir` without changing a
-single line of code.
-
-More tutorials are in the works...
-
-Various tips and tricks
------------------------
-
-### Syntax highlighting
-
-Syntax highlighting is enabled by default in Hakyll. However, you also need to
-enable it in pandoc. If no syntax highlighting shows up, try
-
- [jasper@phoenix] cabal install --reinstall -fhighlighting pandoc
-
-### When to rebuild
-
-If you execute a `./hakyll build`, Hakyll will build your site incrementally.
-This means it will be very fast, but it will not pick up _all_ changes.
-
-- In case you edited `hakyll.hs`, you first want to compile it again.
-- It is generally recommended to do a `./hakyll rebuild` before you deploy your
- site.
-
-After rebuilding your site, all files will look as "modified" to the filesystem.
-This means that when you upload your site, it will usually transfer all files --
-this can generate more traffic than necessary, since it is possible that some
-files were not actually modified. If you use `rsync`, you can counter this using
-the `--checksum` option.
-
-Problems
---------
-
-### regex-pcre dependency on Mac OS
-
-Hakyll requires [regex-pcre], which might fail to build on Mac OS. To solve
-this problem, make sure the [pcre] C library is installed (via homebrew or
-macports). Then install [regex-pcre] using:
-
- cabal install --extra-include-dirs=/usr/local/include regex-pcre
-
-or
-
- cabal install --extra-include-dirs=/opt/local/include regex-pcre
-
-...and proceed to install Hakyll the regular way.
-
-[regex-pcre]: http://hackage.haskell.org/package/regex-pcre
-[pcre]: http://www.pcre.org/
-
-### "File name does not match module name" on Mac OS
-
- Hakyll.hs:1:1:
- File name does not match module name:
- Saw: `Main'
- Expected: `Hakyll'
-
-Is an error encountered on Mac OS when `hakyll.hs` is located on a
-case-insensitive filesystem. A workaround is to rename it to something that
-isn't the name of the module, for example, `site.hs`.
diff --git a/examples/morepages/about.markdown b/examples/morepages/about.markdown
deleted file mode 100644
index 65d8e9f..0000000
--- a/examples/morepages/about.markdown
+++ /dev/null
@@ -1,28 +0,0 @@
----
-title: About
----
-
-## Mattis
-
-Nullam imperdiet sodales orci vitae molestie. Nunc quam orci, pharetra a
-rhoncus vitae, eleifend id felis. Suspendisse potenti. Etiam vitae urna orci.
-Quisque pellentesque dignissim felis, egestas tempus urna luctus vitae. In hac
-habitasse platea dictumst. Morbi fringilla mattis odio, et mattis tellus
-accumsan vitae.
-
-## Orci
-
-Vivamus eget mauris sit amet nulla laoreet lobortis. Nulla in diam elementum
-risus convallis commodo. Cras vehicula varius dui vitae facilisis. Proin
-elementum libero eget leo aliquet quis euismod orci vestibulum. Duis rhoncus
-lorem consequat tellus vestibulum aliquam. Quisque orci orci, malesuada porta
-blandit et, interdum nec magna.
-
-## Augue
-
-In urna ante, pulvinar et imperdiet nec, fermentum ac tortor. Cras tristique
-pellentesque euismod. Pellentesque est ante, sagittis vitae vehicula vitae,
-ullamcorper eget lectus. Curabitur egestas accumsan leo, ac ullamcorper nibh
-tincidunt id. Curabitur lorem libero, fermentum non tincidunt ac, pretium in
-libero. Donec vel mi eu tortor accumsan dictum ut in augue. Vestibulum est
-lorem, bibendum eu vehicula eu, convallis eget mauris.
diff --git a/examples/morepages/css/default.css b/examples/morepages/css/default.css
deleted file mode 100644
index 76607cf..0000000
--- a/examples/morepages/css/default.css
+++ /dev/null
@@ -1,28 +0,0 @@
-body {
- width: 600px;
- margin: 0px auto 0px auto;
-}
-
-div#navigation {
- text-align: center;
- border-bottom: 4px solid black;
-}
-
-div#navigation a {
- color: white;
- text-decoration: none;
- background-color: black;
- padding: 3px 10px 3px 10px;
- margin: 0px 10px 0px 10px;
-}
-
-div.column {
- width: 30%;
- float: left;
- margin: 0px 10px 0px 10px;
-}
-
-div#footer {
- clear: both;
- border-top: 4px solid black;
-}
diff --git a/examples/morepages/footer.markdown b/examples/morepages/footer.markdown
deleted file mode 100644
index afcb47d..0000000
--- a/examples/morepages/footer.markdown
+++ /dev/null
@@ -1,19 +0,0 @@
----
-title: Footer
----
-
-## Sapien
-
-In hac habitasse platea dictumst. Cras placerat felis nec risus varius in
-accumsan sem fermentum. Vestibulum elementum aliquam tortor semper vulputate.
-Vivamus tincidunt tellus sed purus tempor fringilla. Morbi dui nisl, eleifend
-non dictum vitae, luctus eu lacus. Duis vitae lacus sem, ut porta mauris.
-Aenean sed ultricies dui. Vivamus ullamcorper metus lorem, at ornare nibh.
-Mauris mi metus, convallis id lobortis vitae, interdum quis felis. Cras elit
-massa, pellentesque sit amet pharetra ut, volutpat in arcu. Vivamus blandit,
-ligula et ultricies consequat, metus sem congue quam, ac pretium enim velit at
-tortor. Cras in tellus eu sapien pulvinar sollicitudin eu id ipsum. Mauris nec
-urna tellus, et scelerisque tellus. Nunc imperdiet felis nec libero consectetur
-tristique tristique ipsum sodales. Cras tortor nisl, condimentum in
-pellentesque id, interdum vel mi. Suspendisse auctor vehicula orci at
-scelerisque. Vivamus quis sagittis felis.
diff --git a/examples/morepages/hakyll.hs b/examples/morepages/hakyll.hs
deleted file mode 100644
index c1b96e6..0000000
--- a/examples/morepages/hakyll.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# LANGUAGE OverloadedStrings, Arrows #-}
-module Main where
-
-import Control.Monad (forM_)
-import Control.Arrow (arr, (>>>))
-
-import Hakyll
-
-main :: IO ()
-main = hakyll $ do
- -- Compress CSS
- match "css/*" $ do
- route idRoute
- compile compressCssCompiler
-
- -- Render static pages
- forM_ ["about.markdown", "index.markdown", "products.markdown"] $ \p ->
- match p $ do
- route $ setExtension ".html"
- compile $ pageCompiler
- >>> requireA "footer.markdown" (setFieldA "footer" $ arr pageBody)
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Compile footer
- match "footer.markdown" $ compile pageCompiler
-
- -- Read templates
- match "templates/*" $ compile templateCompiler
diff --git a/examples/morepages/index.markdown b/examples/morepages/index.markdown
deleted file mode 100644
index 16fffd6..0000000
--- a/examples/morepages/index.markdown
+++ /dev/null
@@ -1,25 +0,0 @@
----
-title: Home
----
-
-## Purus
-
-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce tempor, urna et
-auctor tincidunt, eros mauris facilisis purus, eget sollicitudin leo massa sit
-amet ipsum. Vivamus eu massa in urna vehicula rutrum eget sit amet purus.
-
-## Ligula
-
-Mauris sit amet justo mi. Curabitur vel quam felis. In hac habitasse platea
-dictumst. Etiam nec consequat risus. Donec consequat est vitae neque fermentum
-feugiat nec ac nibh. Nulla rhoncus, odio quis scelerisque rutrum, metus sem
-tempor ante, a ornare ipsum felis sed ligula. Morbi urna lectus, scelerisque
-non pharetra in, rutrum quis ligula. Phasellus semper ullamcorper arcu eu
-auctor.
-
-## Justo
-
-Aliquam sagittis tincidunt libero ut elementum. Ut sit amet vestibulum metus.
-Ut aliquet congue neque eu tincidunt. Integer eu elit sed massa sollicitudin
-vehicula nec ut sem. Cras euismod enim eget purus lacinia non feugiat urna
-imperdiet. Aliquam justo sem, viverra eu vehicula vitae, imperdiet vel magna.
diff --git a/examples/morepages/products.markdown b/examples/morepages/products.markdown
deleted file mode 100644
index 68ffd36..0000000
--- a/examples/morepages/products.markdown
+++ /dev/null
@@ -1,24 +0,0 @@
----
-title: Products
----
-
-## Lacus
-
-Etiam condimentum auctor semper. Donec lobortis, magna id sodales sollicitudin,
-lectus mi egestas nulla, pulvinar lobortis nunc eros id nisl. Curabitur
-imperdiet, erat at accumsan vulputate, purus nunc blandit nulla, dictum
-vestibulum sem lorem eget ipsum.
-
-## Vitae
-
-Integer ut dui eu felis mollis vestibulum. Etiam at nibh id diam aliquet
-vestibulum sit amet a nibh. Aliquam erat volutpat. Etiam vitae nulla at dolor
-fringilla tempor ut a nunc. Pellentesque elementum elit lorem. Quisque nec
-ligula ipsum. Nunc augue lacus, ullamcorper vel dapibus in, mattis eget elit.
-
-## Feugiat
-
-Pellentesque enim dui, interdum elementum vehicula luctus, feugiat vitae arcu.
-Vestibulum ut felis justo. Quisque vestibulum mauris eget ipsum luctus
-consequat. Nunc tincidunt, turpis ut fermentum dapibus,
-justo tortor bibendum sem, at facilisis justo odio luctus lectus.
diff --git a/examples/morepages/templates/default.html b/examples/morepages/templates/default.html
deleted file mode 100644
index 6cd490a..0000000
--- a/examples/morepages/templates/default.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <title>MyAweSomeCompany - $title$</title>
- <link rel="stylesheet" type="text/css" href="/css/default.css" />
- </head>
- <body>
- <h1>MyAweSomeCompany - $title$</h1>
- <div id="navigation">
- <a href="/">Home</a>
- <a href="/about.html">About</a>
- <a href="/products.html">Products</a>
- </div>
-
- $body$
-
- <div id="footer">
- $footer$
- </div>
- </body>
-</html>
diff --git a/examples/simpleblog/css/default.css b/examples/simpleblog/css/default.css
deleted file mode 100644
index 9ed2b01..0000000
--- a/examples/simpleblog/css/default.css
+++ /dev/null
@@ -1,17 +0,0 @@
-body {
- width: 600px;
- margin: 0px auto 0px auto;
-}
-
-div#navigation {
- text-align: center;
- border-bottom: 4px solid black;
-}
-
-div#navigation a {
- color: white;
- text-decoration: none;
- background-color: black;
- padding: 3px 10px 3px 10px;
- margin: 0px 10px 0px 10px;
-}
diff --git a/examples/simpleblog/hakyll.hs b/examples/simpleblog/hakyll.hs
deleted file mode 100644
index 270c3e3..0000000
--- a/examples/simpleblog/hakyll.hs
+++ /dev/null
@@ -1,55 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
-module Main where
-
-import Prelude hiding (id)
-import Control.Category (id)
-import Control.Arrow ((>>>), (***), arr)
-import Data.Monoid (mempty, mconcat)
-
-import Hakyll
-
-main :: IO ()
-main = hakyll $ do
- -- Compress CSS
- match "css/*" $ do
- route idRoute
- compile compressCssCompiler
-
- -- Render posts
- match "posts/*" $ do
- route $ setExtension ".html"
- compile $ pageCompiler
- >>> applyTemplateCompiler "templates/post.html"
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Render posts list
- match "posts.html" $ route idRoute
- create "posts.html" $ constA mempty
- >>> arr (setField "title" "All posts")
- >>> requireAllA "posts/*" addPostList
- >>> applyTemplateCompiler "templates/posts.html"
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Index
- match "index.html" $ route idRoute
- create "index.html" $ constA mempty
- >>> arr (setField "title" "Home")
- >>> requireAllA "posts/*" (id *** arr (take 3 . reverse . sortByBaseName) >>> addPostList)
- >>> applyTemplateCompiler "templates/index.html"
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Read templates
- match "templates/*" $ compile templateCompiler
-
--- | Auxiliary compiler: generate a post list from a list of given posts, and
--- add it to the current page under @$posts@
---
-addPostList :: Compiler (Page String, [Page String]) (Page String)
-addPostList = setFieldA "posts" $
- arr (reverse . sortByBaseName)
- >>> require "templates/postitem.html" (\p t -> map (applyTemplate t) p)
- >>> arr mconcat
- >>> arr pageBody
diff --git a/examples/simpleblog/posts/2009-11-05-a-first-post.markdown b/examples/simpleblog/posts/2009-11-05-a-first-post.markdown
deleted file mode 100644
index 56b0405..0000000
--- a/examples/simpleblog/posts/2009-11-05-a-first-post.markdown
+++ /dev/null
@@ -1,21 +0,0 @@
----
-title: A first post
-author: Julius Caesar
-date: November 5, 2009
----
-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus pretium leo
-adipiscing lectus iaculis lobortis. Vivamus scelerisque velit dignissim metus
-gravida sit amet dapibus ligula tempor. Quisque sit amet viverra nunc.
-Suspendisse cursus elementum ante, ut venenatis nisi dictum eu. Nulla diam
-ligula, eleifend in varius quis, malesuada a nibh. Vivamus consequat
-pellentesque erat non blandit. Nunc sit amet eros vel massa semper ullamcorper
-quis iaculis magna. Vestibulum ullamcorper urna sit amet est elementum
-pulvinar. Vestibulum consequat lacus ac quam hendrerit tincidunt. Praesent
-bibendum vehicula diam, nec sagittis risus tempus a. Nulla quis odio sit amet
-odio vehicula cursus ut id odio. Curabitur semper magna euismod magna mollis
-venenatis. Nunc eget eleifend velit. Mauris sed posuere sem. Fusce id nunc
-nisi, a aliquam orci. Suspendisse laoreet justo non enim laoreet eget consequat
-velit porttitor. Aenean faucibus sodales metus at tincidunt. Donec vestibulum
-leo pulvinar erat auctor ac ultrices massa euismod. Phasellus blandit cursus
-magna, eget lacinia mi lobortis sed. Suspendisse ultricies enim ligula, vel
-scelerisque mauris.
diff --git a/examples/simpleblog/posts/2009-11-10-another-post.markdown b/examples/simpleblog/posts/2009-11-10-another-post.markdown
deleted file mode 100644
index 69b64c9..0000000
--- a/examples/simpleblog/posts/2009-11-10-another-post.markdown
+++ /dev/null
@@ -1,15 +0,0 @@
----
-title: Another post
-author: Marcus Tullius Cicero
-date: November 10, 2009
----
-Vestibulum in ultrices urna. Etiam tempor enim dui, nec malesuada elit. Donec
-tempor ligula et quam volutpat quis fermentum eros congue. Sed ut pulvinar sem.
-Sed aliquam ipsum id purus sollicitudin vulputate. Cras et mauris dui, vel
-hendrerit leo. Ut metus ipsum, fermentum ac malesuada id, tempus pharetra quam.
-Donec diam felis, consequat ac scelerisque cursus, gravida non lectus. Sed
-faucibus elit dapibus diam elementum id varius nisi tristique. Proin consequat
-faucibus neque in aliquam. Vestibulum ligula odio, pulvinar vel hendrerit
-vitae, egestas ut nibh. Praesent ut velit elit, in consequat dolor. Praesent
-sem enim, commodo in gravida sed, adipiscing vel eros. Lorem ipsum dolor sit
-amet, consectetur adipiscing elit. Proin non aliquam nunc.
diff --git a/examples/simpleblog/posts/2009-11-28-a-third-post.markdown b/examples/simpleblog/posts/2009-11-28-a-third-post.markdown
deleted file mode 100644
index 76b0606..0000000
--- a/examples/simpleblog/posts/2009-11-28-a-third-post.markdown
+++ /dev/null
@@ -1,19 +0,0 @@
----
-title: A third post
-author: Publius Ovidius Naso
-date: November 28, 2009
----
-Pellentesque tempor blandit elit, vel ultricies arcu congue egestas. Fusce
-vitae rutrum nisl. Fusce id mauris libero, a venenatis tellus. Fusce iaculis,
-lorem et ornare molestie, mauris risus mollis nisi, non fermentum lacus lacus
-sit amet ipsum. Praesent lobortis ullamcorper dolor, eget convallis ligula
-dignissim a. Suspendisse nulla nisi, congue et pharetra vel, convallis non
-libero. Ut a nulla ipsum. Phasellus cursus velit id neque viverra ut
-pellentesque justo posuere. Curabitur laoreet enim et velit tempor consectetur.
-Donec eu pretium urna. Suspendisse vitae nisi at metus vestibulum aliquam in
-sit amet nisl. Donec convallis lacinia odio, vestibulum molestie nunc feugiat
-a. Suspendisse vehicula, sapien id aliquet consectetur, sem sapien ullamcorper
-arcu, scelerisque porttitor elit ipsum posuere ligula. Nulla at velit eu metus
-tincidunt auctor ut sit amet enim. Donec placerat dapibus nisi id facilisis.
-Maecenas pellentesque pulvinar auctor. Curabitur gravida quam sit amet purus
-consectetur blandit.
diff --git a/examples/simpleblog/posts/2009-12-04-this-blog-aint-dead.markdown b/examples/simpleblog/posts/2009-12-04-this-blog-aint-dead.markdown
deleted file mode 100644
index 015ce8d..0000000
--- a/examples/simpleblog/posts/2009-12-04-this-blog-aint-dead.markdown
+++ /dev/null
@@ -1,12 +0,0 @@
----
-title: This blog ain't dead
-author: Marcus Antonius
-date: December 4, 2009
----
-Etiam non felis aliquet tellus dictum vestibulum. Aliquam accumsan mauris non
-lacus ultricies nec lacinia enim rhoncus. Curabitur vel tortor massa, elementum
-tincidunt elit. Maecenas venenatis luctus arcu ut ullamcorper. Donec interdum
-dolor eu enim tristique vel vehicula risus mollis. Nunc nec tortor quam. Nulla
-a mauris arcu. Phasellus venenatis tortor vel odio tincidunt consequat. Integer
-venenatis nibh vitae lectus laoreet eu feugiat nunc pretium. Integer nec turpis
-metus, in fermentum lorem.
diff --git a/examples/simpleblog/posts/2009-12-23-almost-christmas.markdown b/examples/simpleblog/posts/2009-12-23-almost-christmas.markdown
deleted file mode 100644
index cf24399..0000000
--- a/examples/simpleblog/posts/2009-12-23-almost-christmas.markdown
+++ /dev/null
@@ -1,13 +0,0 @@
----
-title: Almost Christmas!
-author: Publius Vergilius Maro
-date: December 23, 2009
----
-Morbi tincidunt eleifend ante, eu gravida ante rutrum vel. Nunc bibendum nulla
-tellus, eget egestas sapien. Nam rhoncus interdum libero, eget congue orci
-imperdiet eu. Quisque pellentesque fringilla urna, ac venenatis ante ultricies
-et. Pellentesque habitant morbi tristique senectus et netus et malesuada fames
-ac turpis egestas. Mauris eleifend sagittis ultrices. Quisque ultrices accumsan
-nisl, sed pellentesque metus porta vitae. Nulla facilisi. In et nibh tincidunt
-mi volutpat pellentesque vitae nec sapien. Integer massa ipsum, pellentesque in
-elementum at, cursus sit amet diam.
diff --git a/examples/simpleblog/templates/default.html b/examples/simpleblog/templates/default.html
deleted file mode 100644
index 01ed20e..0000000
--- a/examples/simpleblog/templates/default.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <title>SimpleBlog - $title$</title>
- <link rel="stylesheet" type="text/css" href="/css/default.css" />
- </head>
- <body>
- <h1>SimpleBlog - $title$</h1>
- <div id="navigation">
- <a href="/index.html">Home</a>
- <a href="/posts.html">All posts</a>
- </div>
-
- $body$
- </body>
-</html>
diff --git a/examples/simpleblog/templates/index.html b/examples/simpleblog/templates/index.html
deleted file mode 100644
index ebda08d..0000000
--- a/examples/simpleblog/templates/index.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<div id="posts">
- <h1>Recent posts</h1>
- <ul>
- $posts$
- </ul>
- <a href="/posts.html">All posts&hellip;</a>
-</div>
-
-<div class="about">
- <h1>About</h1>
- <p>
- This is a sample blog for educational purposes.
- </p>
-</div>
diff --git a/examples/simpleblog/templates/post.html b/examples/simpleblog/templates/post.html
deleted file mode 100644
index dd0db95..0000000
--- a/examples/simpleblog/templates/post.html
+++ /dev/null
@@ -1,5 +0,0 @@
-<h1>$title$</h1>
-
-<p>by <em>$author$</em> on <strong>$date$</strong></p>
-
-$body$
diff --git a/examples/simpleblog/templates/postitem.html b/examples/simpleblog/templates/postitem.html
deleted file mode 100644
index 19c954b..0000000
--- a/examples/simpleblog/templates/postitem.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<li>
- <a href="/$url$">$title$</a>
- - <em>$date$</em> - by <em>$author$</em>
-</li>
diff --git a/examples/simpleblog/templates/posts.html b/examples/simpleblog/templates/posts.html
deleted file mode 100644
index 2bec161..0000000
--- a/examples/simpleblog/templates/posts.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<h1>All posts</h1>
-<ul>
- $posts$
-</ul>
diff --git a/examples/tagblog/css/default.css b/examples/tagblog/css/default.css
deleted file mode 100644
index 9ed2b01..0000000
--- a/examples/tagblog/css/default.css
+++ /dev/null
@@ -1,17 +0,0 @@
-body {
- width: 600px;
- margin: 0px auto 0px auto;
-}
-
-div#navigation {
- text-align: center;
- border-bottom: 4px solid black;
-}
-
-div#navigation a {
- color: white;
- text-decoration: none;
- background-color: black;
- padding: 3px 10px 3px 10px;
- margin: 0px 10px 0px 10px;
-}
diff --git a/examples/tagblog/hakyll.hs b/examples/tagblog/hakyll.hs
deleted file mode 100644
index 0f1e7ab..0000000
--- a/examples/tagblog/hakyll.hs
+++ /dev/null
@@ -1,99 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
-module Main where
-
-import Prelude hiding (id)
-import Control.Arrow ((>>>), (***), arr)
-import Control.Category (id)
-import Data.Monoid (mempty, mconcat)
-
-import Hakyll
-
-main :: IO ()
-main = hakyll $ do
- -- Compress CSS
- match "css/*" $ do
- route idRoute
- compile compressCssCompiler
-
- -- Render posts
- match "posts/*" $ do
- route $ setExtension ".html"
- compile $ pageCompiler
- >>> arr (renderDateField "date" "%B %e, %Y" "Date unknown")
- >>> renderTagsField "prettytags" (fromCapture "tags/*")
- >>> applyTemplateCompiler "templates/post.html"
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Render posts list
- match "posts.html" $ route idRoute
- create "posts.html" $ constA mempty
- >>> arr (setField "title" "All posts")
- >>> requireAllA "posts/*" addPostList
- >>> applyTemplateCompiler "templates/posts.html"
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Index
- match "index.html" $ route idRoute
- create "index.html" $ constA mempty
- >>> arr (setField "title" "Home")
- >>> requireA "tags" (setFieldA "tagcloud" (renderTagCloud'))
- >>> requireAllA "posts/*" (id *** arr (take 3 . reverse . sortByBaseName) >>> addPostList)
- >>> applyTemplateCompiler "templates/index.html"
- >>> applyTemplateCompiler "templates/default.html"
- >>> relativizeUrlsCompiler
-
- -- Tags
- create "tags" $
- requireAll "posts/*" (\_ ps -> readTags ps :: Tags String)
-
- -- Add a tag list compiler for every tag
- match "tags/*" $ route $ setExtension ".html"
- metaCompile $ require_ "tags"
- >>> arr tagsMap
- >>> arr (map (\(t, p) -> (tagIdentifier t, makeTagList t p)))
-
- -- Render RSS feed
- match "rss.xml" $ route idRoute
- create "rss.xml" $
- requireAll_ "posts/*"
- >>> mapCompiler (arr $ copyBodyToField "description")
- >>> renderRss feedConfiguration
-
- -- Read templates
- match "templates/*" $ compile templateCompiler
- where
- renderTagCloud' :: Compiler (Tags String) String
- renderTagCloud' = renderTagCloud tagIdentifier 100 120
-
- tagIdentifier :: String -> Identifier
- tagIdentifier = fromCapture "tags/*"
-
--- | Auxiliary compiler: generate a post list from a list of given posts, and
--- add it to the current page under @$posts@
---
-addPostList :: Compiler (Page String, [Page String]) (Page String)
-addPostList = setFieldA "posts" $
- arr (reverse . sortByBaseName)
- >>> require "templates/postitem.html" (\p t -> map (applyTemplate t) p)
- >>> arr mconcat
- >>> arr pageBody
-
-makeTagList :: String
- -> [Page String]
- -> Compiler () (Page String)
-makeTagList tag posts =
- constA (mempty, posts)
- >>> addPostList
- >>> arr (setField "title" ("Posts tagged &#8216;" ++ tag ++ "&#8217;"))
- >>> applyTemplateCompiler "templates/posts.html"
- >>> applyTemplateCompiler "templates/default.html"
-
-feedConfiguration :: FeedConfiguration
-feedConfiguration = FeedConfiguration
- { feedTitle = "SimpleBlog RSS feed."
- , feedDescription = "A simple demo of an RSS feed created with Hakyll."
- , feedAuthorName = "Jasper Van der Jeugt"
- , feedRoot = "http://example.com"
- }
diff --git a/examples/tagblog/posts/2009-11-05-a-first-post.markdown b/examples/tagblog/posts/2009-11-05-a-first-post.markdown
deleted file mode 100644
index 3c9d4ab..0000000
--- a/examples/tagblog/posts/2009-11-05-a-first-post.markdown
+++ /dev/null
@@ -1,22 +0,0 @@
----
-title: A first post
-author: Julius Caesar
-tags: caesar, random crap
----
-
-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus pretium leo
-adipiscing lectus iaculis lobortis. Vivamus scelerisque velit dignissim metus
-gravida sit amet dapibus ligula tempor. Quisque sit amet viverra nunc.
-Suspendisse cursus elementum ante, ut venenatis nisi dictum eu. Nulla diam
-ligula, eleifend in varius quis, malesuada a nibh. Vivamus consequat
-pellentesque erat non blandit. Nunc sit amet eros vel massa semper ullamcorper
-quis iaculis magna. Vestibulum ullamcorper urna sit amet est elementum
-pulvinar. Vestibulum consequat lacus ac quam hendrerit tincidunt. Praesent
-bibendum vehicula diam, nec sagittis risus tempus a. Nulla quis odio sit amet
-odio vehicula cursus ut id odio. Curabitur semper magna euismod magna mollis
-venenatis. Nunc eget eleifend velit. Mauris sed posuere sem. Fusce id nunc
-nisi, a aliquam orci. Suspendisse laoreet justo non enim laoreet eget consequat
-velit porttitor. Aenean faucibus sodales metus at tincidunt. Donec vestibulum
-leo pulvinar erat auctor ac ultrices massa euismod. Phasellus blandit cursus
-magna, eget lacinia mi lobortis sed. Suspendisse ultricies enim ligula, vel
-scelerisque mauris.
diff --git a/examples/tagblog/posts/2009-11-10-another-post.markdown b/examples/tagblog/posts/2009-11-10-another-post.markdown
deleted file mode 100644
index 2fffc7c..0000000
--- a/examples/tagblog/posts/2009-11-10-another-post.markdown
+++ /dev/null
@@ -1,16 +0,0 @@
----
-title: Another post
-author: Marcus Tullius Cicero
-tags: cicero, random crap
----
-
-Vestibulum in ultrices urna. Etiam tempor enim dui, nec malesuada elit. Donec
-tempor ligula et quam volutpat quis fermentum eros congue. Sed ut pulvinar sem.
-Sed aliquam ipsum id purus sollicitudin vulputate. Cras et mauris dui, vel
-hendrerit leo. Ut metus ipsum, fermentum ac malesuada id, tempus pharetra quam.
-Donec diam felis, consequat ac scelerisque cursus, gravida non lectus. Sed
-faucibus elit dapibus diam elementum id varius nisi tristique. Proin consequat
-faucibus neque in aliquam. Vestibulum ligula odio, pulvinar vel hendrerit
-vitae, egestas ut nibh. Praesent ut velit elit, in consequat dolor. Praesent
-sem enim, commodo in gravida sed, adipiscing vel eros. Lorem ipsum dolor sit
-amet, consectetur adipiscing elit. Proin non aliquam nunc.
diff --git a/examples/tagblog/posts/2009-11-28-a-third-post.markdown b/examples/tagblog/posts/2009-11-28-a-third-post.markdown
deleted file mode 100644
index afabcc7..0000000
--- a/examples/tagblog/posts/2009-11-28-a-third-post.markdown
+++ /dev/null
@@ -1,20 +0,0 @@
----
-title: A third post
-author: Publius Ovidius Naso
-tags: epic fail, ovidius
----
-
-Pellentesque tempor blandit elit, vel ultricies arcu congue egestas. Fusce
-vitae rutrum nisl. Fusce id mauris libero, a venenatis tellus. Fusce iaculis,
-lorem et ornare molestie, mauris risus mollis nisi, non fermentum lacus lacus
-sit amet ipsum. Praesent lobortis ullamcorper dolor, eget convallis ligula
-dignissim a. Suspendisse nulla nisi, congue et pharetra vel, convallis non
-libero. Ut a nulla ipsum. Phasellus cursus velit id neque viverra ut
-pellentesque justo posuere. Curabitur laoreet enim et velit tempor consectetur.
-Donec eu pretium urna. Suspendisse vitae nisi at metus vestibulum aliquam in
-sit amet nisl. Donec convallis lacinia odio, vestibulum molestie nunc feugiat
-a. Suspendisse vehicula, sapien id aliquet consectetur, sem sapien ullamcorper
-arcu, scelerisque porttitor elit ipsum posuere ligula. Nulla at velit eu metus
-tincidunt auctor ut sit amet enim. Donec placerat dapibus nisi id facilisis.
-Maecenas pellentesque pulvinar auctor. Curabitur gravida quam sit amet purus
-consectetur blandit.
diff --git a/examples/tagblog/posts/2009-12-04-this-blog-aint-dead.markdown b/examples/tagblog/posts/2009-12-04-this-blog-aint-dead.markdown
deleted file mode 100644
index 0c56146..0000000
--- a/examples/tagblog/posts/2009-12-04-this-blog-aint-dead.markdown
+++ /dev/null
@@ -1,13 +0,0 @@
----
-title: This blog ain't dead
-author: Marcus Antonius
-tags: epic fail, antonius
----
-
-Etiam non felis aliquet tellus dictum vestibulum. Aliquam accumsan mauris non
-lacus ultricies nec lacinia enim rhoncus. Curabitur vel tortor massa, elementum
-tincidunt elit. Maecenas venenatis luctus arcu ut ullamcorper. Donec interdum
-dolor eu enim tristique vel vehicula risus mollis. Nunc nec tortor quam. Nulla
-a mauris arcu. Phasellus venenatis tortor vel odio tincidunt consequat. Integer
-venenatis nibh vitae lectus laoreet eu feugiat nunc pretium. Integer nec turpis
-metus, in fermentum lorem.
diff --git a/examples/tagblog/posts/2009-12-23-almost-christmas.markdown b/examples/tagblog/posts/2009-12-23-almost-christmas.markdown
deleted file mode 100644
index 78a1508..0000000
--- a/examples/tagblog/posts/2009-12-23-almost-christmas.markdown
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: Almost Christmas!
-author: Publius Vergilius Maro
-tags: christmas, random crap
----
-
-Morbi tincidunt eleifend ante, eu gravida ante rutrum vel. Nunc bibendum nulla
-tellus, eget egestas sapien. Nam rhoncus interdum libero, eget congue orci
-imperdiet eu. Quisque pellentesque fringilla urna, ac venenatis ante ultricies
-et. Pellentesque habitant morbi tristique senectus et netus et malesuada fames
-ac turpis egestas. Mauris eleifend sagittis ultrices. Quisque ultrices accumsan
-nisl, sed pellentesque metus porta vitae. Nulla facilisi. In et nibh tincidunt
-mi volutpat pellentesque vitae nec sapien. Integer massa ipsum, pellentesque in
-elementum at, cursus sit amet diam.
diff --git a/examples/tagblog/templates/default.html b/examples/tagblog/templates/default.html
deleted file mode 100644
index 0537065..0000000
--- a/examples/tagblog/templates/default.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <title>SimpleBlog - $title$</title>
- <link rel="stylesheet" type="text/css" href="/css/default.css" />
- <link rel="alternate"
- type="application/rss+xml"
- title="SimpleBlog"
- href="/rss.xml" />
- </head>
- <body>
- <h1>SimpleBlog - $title$</h1>
- <div id="navigation">
- <a href="/">Home</a>
- <a href="/posts.html">All posts</a>
- </div>
-
- $body$
- </body>
-</html>
diff --git a/examples/tagblog/templates/index.html b/examples/tagblog/templates/index.html
deleted file mode 100644
index 7152d02..0000000
--- a/examples/tagblog/templates/index.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<div id="posts">
- <h1>Recent posts</h1>
- <ul>
- $posts$
- </ul>
- <p><a href="/posts.html">All posts&hellip;</a></p>
-
- <h1>Tags</h1>
- <div>
- $tagcloud$
- </div>
-</div>
-
-<div class="about">
- <h1>About</h1>
- <p>
- This is a sample blog for educational purposes.
- </p>
-</div>
diff --git a/examples/tagblog/templates/post.html b/examples/tagblog/templates/post.html
deleted file mode 100644
index 0233fc1..0000000
--- a/examples/tagblog/templates/post.html
+++ /dev/null
@@ -1,7 +0,0 @@
-<h1>$title$</h1>
-
-<p>by <em>$author$</em> on <strong>$date$</strong></p>
-
-<p>Tagged as: $prettytags$.</p>
-
-$body$
diff --git a/examples/tagblog/templates/postitem.html b/examples/tagblog/templates/postitem.html
deleted file mode 100644
index ccbb58e..0000000
--- a/examples/tagblog/templates/postitem.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<li>
- <a href="$url$">$title$</a>
- - <em>$date$</em> - by <em>$author$</em>
-</li>
diff --git a/examples/tagblog/templates/posts.html b/examples/tagblog/templates/posts.html
deleted file mode 100644
index 758c670..0000000
--- a/examples/tagblog/templates/posts.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<h1>$title$</h1>
-<ul>
- $posts$
-</ul>