diff options
-rw-r--r-- | README.markdown | 6 | ||||
-rw-r--r-- | data/example/posts/2015-08-12-spqr.markdown (renamed from data/example/posts/2012-08-12-spqr.markdown) | 0 | ||||
-rw-r--r-- | data/example/posts/2015-10-07-rosa-rosa-rosam.markdown (renamed from data/example/posts/2012-10-07-rosa-rosa-rosam.markdown) | 0 | ||||
-rw-r--r-- | data/example/posts/2015-11-28-carpe-diem.markdown (renamed from data/example/posts/2012-11-28-carpe-diem.markdown) | 0 | ||||
-rw-r--r-- | data/example/posts/2015-12-07-tu-quoque.markdown (renamed from data/example/posts/2012-12-07-tu-quoque.markdown) | 0 | ||||
-rw-r--r-- | hakyll.cabal | 14 | ||||
-rw-r--r-- | src/Hakyll/Core/UnixFilter.hs | 2 | ||||
-rw-r--r-- | web/examples.markdown | 4 | ||||
-rw-r--r-- | web/index.markdown | 6 | ||||
-rw-r--r-- | web/releases.markdown | 8 | ||||
-rw-r--r-- | web/tutorials/01-installation.markdown | 32 | ||||
-rw-r--r-- | web/tutorials/02-basics.markdown | 22 | ||||
-rw-r--r-- | web/tutorials/faq.markdown | 12 |
13 files changed, 61 insertions, 45 deletions
diff --git a/README.markdown b/README.markdown index 87e5564..1c1d108 100644 --- a/README.markdown +++ b/README.markdown @@ -1,6 +1,6 @@ # hakyll -[](http://travis-ci.org/jaspervdj/hakyll) +[](http://travis-ci.org/jaspervdj/hakyll) Hakyll is a static site generator library in Haskell. More information (including a tutorial) can be found on @@ -9,3 +9,7 @@ Hakyll is a static site generator library in Haskell. More information You can install this library using cabal: cabal install hakyll + +Or using stack: + + stack install hakyll diff --git a/data/example/posts/2012-08-12-spqr.markdown b/data/example/posts/2015-08-12-spqr.markdown index 3704aa5..3704aa5 100644 --- a/data/example/posts/2012-08-12-spqr.markdown +++ b/data/example/posts/2015-08-12-spqr.markdown diff --git a/data/example/posts/2012-10-07-rosa-rosa-rosam.markdown b/data/example/posts/2015-10-07-rosa-rosa-rosam.markdown index bbda8fd..bbda8fd 100644 --- a/data/example/posts/2012-10-07-rosa-rosa-rosam.markdown +++ b/data/example/posts/2015-10-07-rosa-rosa-rosam.markdown diff --git a/data/example/posts/2012-11-28-carpe-diem.markdown b/data/example/posts/2015-11-28-carpe-diem.markdown index bd115da..bd115da 100644 --- a/data/example/posts/2012-11-28-carpe-diem.markdown +++ b/data/example/posts/2015-11-28-carpe-diem.markdown diff --git a/data/example/posts/2012-12-07-tu-quoque.markdown b/data/example/posts/2015-12-07-tu-quoque.markdown index bdf2ea4..bdf2ea4 100644 --- a/data/example/posts/2012-12-07-tu-quoque.markdown +++ b/data/example/posts/2015-12-07-tu-quoque.markdown diff --git a/hakyll.cabal b/hakyll.cabal index 7bb79cf..6a9c23c 100644 --- a/hakyll.cabal +++ b/hakyll.cabal @@ -1,5 +1,5 @@ Name: hakyll -Version: 4.7.5.1 +Version: 4.7.5.2 Synopsis: A static website compiler library Description: @@ -42,10 +42,10 @@ Build-Type: Simple Data-Dir: data Data-files: - example/posts/2012-11-28-carpe-diem.markdown - example/posts/2012-10-07-rosa-rosa-rosam.markdown - example/posts/2012-12-07-tu-quoque.markdown - example/posts/2012-08-12-spqr.markdown + example/posts/2015-11-28-carpe-diem.markdown + example/posts/2015-10-07-rosa-rosa-rosam.markdown + example/posts/2015-12-07-tu-quoque.markdown + example/posts/2015-08-12-spqr.markdown example/site.hs example/images/haskell-logo.png example/templates/post-list.html @@ -156,7 +156,7 @@ Library mtl >= 1 && < 2.3, network >= 2.6 && < 2.7, network-uri >= 2.6 && < 2.7, - pandoc >= 1.14 && < 1.17, + pandoc >= 1.14 && < 1.18, pandoc-citeproc >= 0.4 && < 0.10, parsec >= 3.0 && < 3.2, process >= 1.0 && < 1.3, @@ -242,7 +242,7 @@ Test-suite hakyll-tests mtl >= 1 && < 2.3, network >= 2.6 && < 2.7, network-uri >= 2.6 && < 2.7, - pandoc >= 1.14 && < 1.17, + pandoc >= 1.14 && < 1.18, pandoc-citeproc >= 0.4 && < 0.10, parsec >= 3.0 && < 3.2, process >= 1.0 && < 1.3, diff --git a/src/Hakyll/Core/UnixFilter.hs b/src/Hakyll/Core/UnixFilter.hs index edc8eac..0f88c77 100644 --- a/src/Hakyll/Core/UnixFilter.hs +++ b/src/Hakyll/Core/UnixFilter.hs @@ -30,7 +30,7 @@ import Hakyll.Core.Compiler -- | Use a unix filter as compiler. For example, we could use the 'rev' program -- as a compiler. -- --- > rev :: Compiler String +-- > rev :: Compiler (Item String) -- > rev = getResourceString >>= withItemBody (unixFilter "rev" []) -- -- A more realistic example: one can use this to call, for example, the sass diff --git a/web/examples.markdown b/web/examples.markdown index 61659f5..36d4990 100644 --- a/web/examples.markdown +++ b/web/examples.markdown @@ -104,8 +104,6 @@ directly with the default Hakyll site. [source](https://github.com/rbros/reichertbrothers.com) - <http://alemedeiros.sdf.org>, [source](https://github.com/alemedeiros/homepage) -- <http://blog.ssanj.net/>, - [source](https://github.com/ssanj/babyloncandle) - <https://ruudvanasseldonk.com/>, [source](https://github.com/ruud-v-a/ruudvanasseldonk.com) - <http://www.haskell.mn>, @@ -144,6 +142,8 @@ directly with the default Hakyll site. [source](https://github.com/curry-club-aux/curry-club-augsburg.de) - <http://ismailmustafa.com/>, [source](https://github.com/ismailmustafa/ismailmustafa.github.io/tree/hakyll) +- <http://lettier.github.io/>, + [source](https://github.com/lettier/lettier.github.io) ## Hakyll 3.X diff --git a/web/index.markdown b/web/index.markdown index 06c2780..bde5289 100644 --- a/web/index.markdown +++ b/web/index.markdown @@ -31,8 +31,10 @@ and TeX support, including syntax highlighting and other goodies. # Getting Started -You can get the latest version from hackage using `cabal install hakyll`. Then, -you can: +You can get the latest version from hackage using `cabal install hakyll`, or +using [stack] by using `stack install hakyll`. Then, you can: + +[stack]: http://www.haskellstack.org/ - read the [tutorials](/tutorials.html); - mail the [google discussion group](http://groups.google.com/group/hakyll); diff --git a/web/releases.markdown b/web/releases.markdown index 01bf499..4f136ad 100644 --- a/web/releases.markdown +++ b/web/releases.markdown @@ -4,6 +4,14 @@ title: Releases # Releases +## Hakyll 4.7.5.2 + +- Bump pandoc dependency to 1.17 (contribution by Felix Yan) +- Fix `unixFilter` documentation (contribution by Richard Cook) +- Bump example posts (contribution by Andrew Barchuk) +- Add a template compiler that only uses the template body (contribution by + Bergi) + ## Hakyll 4.7.5.1 - Bump pandoc and pandoc-citeproc dependencies to 1.16 and 0.9 respectively diff --git a/web/tutorials/01-installation.markdown b/web/tutorials/01-installation.markdown index cede105..ce4e30b 100644 --- a/web/tutorials/01-installation.markdown +++ b/web/tutorials/01-installation.markdown @@ -6,17 +6,13 @@ author: Jasper Van der Jeugt Installation ------------ -Installation is provided using [cabal], and some packages are available for -different distributions. +Installation is provided via Hackage, and some packages are available for +different distributions. For installation from source (i.e. via Hackage), +[stack] is recommended: - $ cabal install hakyll + $ stack install hakyll -[cabal]: http://www.haskell.org/cabal/ - -If you have a recent installation of `cabal` and your time is somewhat valuable, -use: - - $ cabal install -j hakyll +[stack]: http://www.haskellstack.org/ Linux distro packages: @@ -34,27 +30,21 @@ started: This creates a folder `my-site` in the current directory, with some example content and a generic configuration. -If `hakyll-init` is not found, you should make sure `$HOME/.cabal/bin` is in -your `$PATH`. - -(If you're on OS X you may not have a bin directory in `$HOME/.cabal`. In this -case, check `$HOME/Library/Haskell/bin` and put it on your path if you find -`hakyll-init` there. See [here] for more information on installation paths on -OS X.) - -[here]: http://www.haskell.org/haskellwiki/Mac_OS_X_Common_Installation_Paths +If `hakyll-init` is not found, you should make sure your stack bin path +(usually `$HOME/.local/bin`) is in your `$PATH`. You can check your stack local +bin path by running `stack path --local-bin-path`. The file `site.hs` holds the configuration of your site, as an executable haskell program. We can compile and run it like this: $ cd my-site - $ ghc --make -threaded site.hs - $ ./site build + $ stack build + $ stack exec site build If you installed `hakyll` with a preview server (this is the default), you can now use - $ ./site watch + $ stack exec site watch and have a look at your site at [http://localhost:8000/](http://localhost:8000/). diff --git a/web/tutorials/02-basics.markdown b/web/tutorials/02-basics.markdown index 2e224a7..b79d336 100644 --- a/web/tutorials/02-basics.markdown +++ b/web/tutorials/02-basics.markdown @@ -7,24 +7,24 @@ Building and cleaning --------------------- If you followed along with the previous tutorial, you should now have the -example site up and running. By running `./site build`, you created two -directories: +example site up and running. By running `stack exec site build`, you created +two directories: - `_site`, with your site as HTML files, ready to be deployed; - `_cache`, which Hakyll uses internally. -`./site clean` removes these directories, and `./site rebuild` performs a -`clean` and then a `build`. +`stack exec site clean` removes these directories, and `stack exec site +rebuild` performs a `clean` and then a `build`. -In general, you want to use `./site build` when you just made changes to the -contents of your website. If you made important changes to `site.hs`, you need -to recompile `site.hs` followed by a rebuild: +In general, you want to use `stack exec site build` when you just made changes +to the contents of your website. If you made changes to `site.hs`, you need to +recompile `site.hs` followed by a rebuild: - ghc --make site.hs - ./site rebuild + stack build + stack exec site rebuild -At this point, feel free to change some files, `./site build` and see what -happens! +At this point, feel free to change some files, `stack exec site build` and see +what happens! Pages and metadata ------------------ diff --git a/web/tutorials/faq.markdown b/web/tutorials/faq.markdown index 87c1a92..e978c8d 100644 --- a/web/tutorials/faq.markdown +++ b/web/tutorials/faq.markdown @@ -27,6 +27,18 @@ You should also add this to your `.profile`, or whatever config file you use. On Windows, running `chcp 65001` before running your Hakyll executable has been reported to work. +Alternatively, you can specify this in your `site.hs`: + +```haskell +import qualified GHC.IO.Encoding as E + +main :: IO () +main = do + E.setLocaleEncoding E.utf8 + hakyll $ do + ... +``` + ## "File name does not match module name" on Mac OS Hakyll.hs:1:1: |