yst 0.4.1.1 → 0.5
raw patch · 11 files changed
+129/−137 lines, 11 filesdep +luciddep −xhtmldep ~HStringTemplate
Dependencies added: lucid
Dependencies removed: xhtml
Dependency ranges changed: HStringTemplate
Files
- Yst/Data.hs +5/−6
- Yst/Render.hs +15/−14
- changelog +5/−0
- demo/files/css/ie.css +0/−20
- demo/files/css/screen.css +50/−42
- demo/files/js/nav.js +0/−7
- demo/layout.html.st +49/−18
- demo/yahoo/css/base-min.css +0/−7
- demo/yahoo/css/reset-fonts-grids.css +0/−7
- demo/yahoo/css/reset-min.css +0/−7
- yst.cabal +5/−9
Yst/Data.hs view
@@ -30,23 +30,22 @@ import Data.List (sortBy, nub, isPrefixOf) import Text.ParserCombinators.Parsec import System.FilePath (takeExtension)-import Prelude hiding (catch)-import Control.Exception (catch, SomeException)+import qualified Control.Exception as E findData :: Site -> FilePath -> IO FilePath findData = searchPath . dataDir getData :: Site -> DataSpec -> IO Node getData site (DataFromFile file opts) = do- raw <- catch (findData site file >>= readDataFile)- (\(e::SomeException) -> do+ raw <- E.catch (findData site file >>= readDataFile)+ (\(e::E.SomeException) -> do errorExit 15 ("Error reading data from " ++ file ++ ": " ++ show e) return undefined) return $ foldl applyDataOption raw opts getData site (DataFromSqlite3 database query opts) = do- raw <- catch (findData site database >>= \d -> readSqlite3 d query)- (\(e::SomeException) -> do+ raw <- E.catch (findData site database >>= \d -> readSqlite3 d query)+ (\(e::E.SomeException) -> do errorExit 15 ("Error reading Sqlite3 database from " ++ database ++ ": " ++ show e) return undefined)
Yst/Render.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE OverloadedStrings, ScopedTypeVariables #-} {- Copyright (C) 2009 John MacFarlane <jgm@berkeley.edu> @@ -23,11 +24,13 @@ import Yst.Data import System.Directory import Text.Pandoc hiding (Format)-import Text.XHtml hiding (option, (</>))+import Lucid import Data.Char import Data.List (intercalate) import Data.List.Split (wordsBy) import Text.StringTemplate+import Data.Text.Lazy (unpack)+import Data.Text (pack) import Data.Maybe (fromMaybe) import System.FilePath -- Note: ghc >= 6.12 (base >=4.2) supports unicode through iconv@@ -65,22 +68,20 @@ dropCommon xs ys = (xs,ys) renderNav :: String -> [NavNode] -> String-renderNav targeturl nodes = renderHtmlFragment $- ulist ! [theclass "nav"] << map (renderNavNode targeturl) nodes+renderNav targeturl nodes = unpack $ renderText $+ ul_ [class_ "nav"] $ mapM_ (renderNavNode targeturl) nodes -renderNavNode :: String -> NavNode -> Html+renderNavNode :: String -> NavNode -> Html () renderNavNode targeturl (NavPage tit pageurl) =- li ! attrs << hotlink pageurl' << tit+ li_ [class_ "current" | pageurl == targeturl] (a_ [href_ pageurl'] (toHtml tit)) where targetdir = takeUrlDir targeturl- pageurl' = relUrl targetdir pageurl- attrs = if pageurl == targeturl- then [theclass "current"]- else []+ pageurl' = pack $ relUrl targetdir pageurl renderNavNode targeturl (NavMenu tit nodes) =- li ! attrs << [ toHtml $ hotlink "#" << (tit ++ " »")- , ulist ! attrs << map (renderNavNode targeturl) nodes ]+ li_ [class_ "dropdown dropdown-submenu"] $+ do a_ [href_ "#", class_ "dropdown-toggle", data_ "toggle" "dropdown"]+ (toHtml (tit ++ " »"))+ ul_ [class_ "dropdown-menu"] (mapM_ (renderNavNode targeturl) nodes) where active = targeturl `isInNavNodes` nodes- attrs = if active then [theclass "active"] else [] isInNavNodes u = any (isInNavNode u) isInNavNode u (NavPage _ u') = u == u' isInNavNode u (NavMenu _ ns) = u `isInNavNodes` ns@@ -111,8 +112,8 @@ attrs <- forM (pageData page) $ \(k, v) -> getData site v >>= \n -> return (k,n) todaysDate <- liftM utctDay getCurrentTime let root' = case length (filter (=='/') $ pageUrl page) of- 0 -> ""- n -> concat $ replicate n "../"+ 0 -> []+ n -> concat $ replicate n ("../" :: String) rawContents <- case sourceFile page of SourceFile sf -> liftM (filter (/='\r')) $ searchPath srcDirs sf >>= readFile
changelog view
@@ -1,3 +1,8 @@+yst 0.5 (released 13 Mar 2015)++ * Use Bootstrap 3 instead of YUI CSS framework.+ * Use lucid instead of xhtml to generate menu.+ yst 0.4.1.1 (released 29 Sep 2014) * Allow compilation with latest aeson, pandoc.
− demo/files/css/ie.css
@@ -1,20 +0,0 @@-/* ie.css */-body {text-align:center;}-.container {text-align:left;}-* html .column {overflow-x:hidden;}-* html legend {margin:-18px -8px 16px 0;padding:0;}-ol {margin-left:2em;}-sup {vertical-align:text-top;}-sub {vertical-align:text-bottom;}-html>body p code {*white-space:normal;}-hr {margin:-8px auto 11px;}-.container ul { list-style: disc outside; margin-left: 2em; } /* IE can't handle :before and :after */-.container ul li { text-indent: 0; margin-left: 0; }-.container legend { margin-bottom: 1.6em; } /* IE form margin bug */-sup, sub { font-size: 100%; } /* IE superscript & subscript bug */-.container blockquote p, #content blockquote ul, #content blockquote ol, #content blockquote dl, #content blockquote pre, #content blockquote address, -.container blockquote table, #content blockquote form, #content blockquote h1, #content blockquote h2, #content blockquote h3, #content blockquote h4, #content blockquote h5, #content blockquote h6 { margin-top: .8em; margin-bottom: .8em; } /* IE can't handle :first-child */-* html .container textarea, * html .container input { padding: 0; } /* IE < 7 form fix */-.container input[type='submit'], .container input[type='button'] { padding: 0; } /* IE 7 button fix */-.container legend+* { margin-top: 0; } /* we already added legend margin */-a abbr, a acronym { text-decoration: underline; } /* IE 7 bug */
demo/files/css/screen.css view
@@ -1,51 +1,59 @@-@import url("reset-fonts-grids.css");-@import url("base-min.css"); @import url("hk-pyg.css"); -html { background: #f9f9f9; color: black; } --hr { height: 1px; color: #aaa; background-color: #aaa; border: 0; margin: .2em 0 .2em 0; }--h1, h2, h3, h4, h5, h6 { font-weight: normal; border-bottom: 1px solid black; }--h1 { font-size: 153.9%; margin: 1.07em 0 .535em; }-h2 { font-size: 138.5%; margin: 1.14em 0 .57em; }-h3 { font-size: 123.1%; margin: 1.23em 0 .615em; }-h4 { font-size: 116%; margin: 1.33em 0 .67em; }-h5 { font-size: 108%; margin: 1.6em 0 .8em; }-h6 { font-size: 100%; margin: 1.6em 0 .8em; }+body { padding: 10px;+ font-size: 14pt;+ font-family: Arial, sans-serif;+ line-height: 1.4em; } -ul { list-style-type: square; }-dt { font-weight: bold; margin-bottom: .1em; }+header h1 { font-size: 42pt; } -table { border-top: 1px solid #ccc; border-left: 1px solid #ccc; }-th, td { border-bottom: 1px solid #ddd; border-right: 1px solid #ccc; }+main { max-width: 46em;+ border-left: 1px solid grey; } -blockquote { padding: 0 1.6em; color: #666; }+nav { margin-top: 1em; } -/* COLORS */+footer { padding: 1em; color: #888; text-align: center; font-size: 93%; } -a:link { text-decoration: underline; color: #36c; }-a:visited { text-decoration: underline; color: #99c; }-a:hover { text-decoration: underline; color: #c33; }-a:active, a:focus { text-decoration: underline; color: #000; }-/* code, pre { color: #c33; } /* very optional, but still useful. W3C uses about the same colors for codes */+.navbar-default { background-color: white; border: none; } -h1 > a:link, h1 > a:active, h1 > a:hover, h1 > a:focus, h1 > a:visited,-h2 > a:link, h2 > a:active, h2 > a:hover, h2 > a:focus, h2 > a:visited,-h3 > a:link, h3 > a:active, h3 > a:hover, h3 > a:focus, h3 > a:visited,-h4 > a:link, h4 > a:active, h4 > a:hover, h4 > a:focus, h4 > a:visited,-h5 > a:link, h5 > a:active, h5 > a:hover, h5 > a:focus, h5 > a:visited,-h6 > a:link, h6 > a:active, h6 > a:hover, h6 > a:focus, h6 > a:visited {- color: black;- text-decoration: none;+.dropdown-submenu {+ position:relative; }--div#maincol { max-width: 46em; }--#footer { padding: 1em; color: #888; text-align: center; font-size: 93%; }--div#nav { margin-top: 2em; }-div#nav ul { margin-top: 0; margin-left: 1em; margin-bottom: 0; }-div#nav ul li { list-style: none; padding-bottom: 0.1em; }-div#nav ul li.current { list-style: square; }+.dropdown-submenu>.dropdown-menu {+ top:0;+ left:100%;+ margin-top:-6px;+ margin-left:-1px;+ -webkit-border-radius:0 6px 6px 6px;+ -moz-border-radius:0 6px 6px 6px;+ border-radius:0 6px 6px 6px;+}+.dropdown-submenu:hover>.dropdown-menu {+ display:block;+}+.dropdown-submenu>a:after {+ display:block;+ content:" ";+ float:right;+ width:0;+ height:0;+ border-color:transparent;+ border-style:solid;+ border-width:5px 0 5px 5px;+ border-left-color:#cccccc;+ margin-top:5px;+ margin-right:-10px;+}+.dropdown-submenu:hover>a:after {+ border-left-color:#ffffff;+}+.dropdown-submenu.pull-left {+ float:none;+}+.dropdown-submenu.pull-left>.dropdown-menu {+ left:-100%;+ margin-left:10px;+ -webkit-border-radius:6px 0 6px 6px;+ -moz-border-radius:6px 0 6px 6px;+ border-radius:6px 0 6px 6px;+}
@@ -1,7 +0,0 @@-$(document).ready(function(){- $("div#nav li > ul").hide();- $("div#nav li > ul.active").show();- $("div#nav ul li a").click(function(event){- $(event.target).parent().children("ul").slideToggle("fast");- });-});
demo/layout.html.st view
@@ -1,22 +1,53 @@+<!DOCTYPE html> <html>-<head>- <title>$sitetitle$ - $pagetitle$</title>- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />- <link rel="stylesheet" type="text/css" href="$root$css/screen.css" />- <link rel="stylesheet" type="text/css" media="print" href="$root$css/print.css" />- <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script>- <script src="$root$js/nav.js" type="text/javascript"></script>-</head>-<body>- <div id="doc3" class="yui-t1">- <div id="yui-main">- <div id="maincol" class="yui-b">-$contents$+ <head>+ <meta charset="utf-8">+ <meta name="viewport" content="width=device-width, initial-scale=1.0">+ <meta http-equiv="X-UA-Compatible" content="IE=edge">+ <title>$sitetitle$ - $pagetitle$</title>+ <!--[if lt IE 9]>+ <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>+ <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>+ <![endif]-->+ <link rel="stylesheet"+ href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css">+ <link rel="stylesheet" type="text/css" media="screen"+ href="$root$css/screen.css">+ <link rel="stylesheet" type="text/css" media="print"+ href="$root$css/print.css">+ <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"+ type="text/javascript"></script>+ <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>+ <link rel="stylesheet" type="text/css" href="$root$css/screen.css" />+ <link rel="stylesheet" type="text/css" media="print" href="$root$css/print.css" />+ </head>+ <body>+ <div class="container-fluid">+ <header>+ <h1>Yst Demo Site</h1>+ </header>+ <div class="row">+ <nav id="navbar" class="navbar navbar-default col-md-2">+ <div class="navbar-header">+ <button type="button" class="navbar-toggle"+ data-toggle="collapse" data-target=".navbar-collapse">+ <span class="sr-only">Toggle navigation</span>+ <span class="icon-bar"></span>+ <span class="icon-bar"></span>+ <span class="icon-bar"></span>+ </button>+ </div>+ <div class="navbar-collapse collapse">+ $nav$+ </div>+ </nav>+ <main role="main" class="col-md-10">+ $contents$+ </main> </div>- </div>- <div id="nav" class="yui-b first">-$nav$+ <footer>+ powered by <a href="https://github.com/jgm/yst">yst</a>+ </footer> </div>- </div>-</body>+ </body> </html>
− demo/yahoo/css/base-min.css
@@ -1,7 +0,0 @@-/*-Copyright (c) 2009, Yahoo! Inc. All rights reserved.-Code licensed under the BSD License:-http://developer.yahoo.net/yui/license.txt-version: 2.7.0-*/-body{margin:10px;}h1{font-size:138.5%;}h2{font-size:123.1%;}h3{font-size:108%;}h1,h2,h3{margin:1em 0;}h1,h2,h3,h4,h5,h6,strong,dt{font-weight:bold;}optgroup{font-weight:normal;}abbr,acronym{border-bottom:1px dotted #000;cursor:help;}em{font-style:italic;}del{text-decoration:line-through;}blockquote,ul,ol,dl{margin:1em;}ol,ul,dl{margin-left:2em;}ol li{list-style:decimal outside;}ul li{list-style:disc outside;}dl dd{margin-left:1em;}th,td{border:1px solid #000;padding:.5em;}th{font-weight:bold;text-align:center;}caption{margin-bottom:.5em;text-align:center;}sup{vertical-align:super;}sub{vertical-align:sub;}p,fieldset,table,pre{margin-bottom:1em;}button,input[type="checkbox"],input[type="radio"],input[type="reset"],input[type="submit"]{padding:1px;}
− demo/yahoo/css/reset-fonts-grids.css
@@ -1,7 +0,0 @@-/*-Copyright (c) 2009, Yahoo! Inc. All rights reserved.-Code licensed under the BSD License:-http://developer.yahoo.net/yui/license.txt-version: 2.7.0-*/-html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var,optgroup{font-style:inherit;font-weight:inherit;}del,ins{text-decoration:none;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:baseline;}sub{vertical-align:baseline;}legend{color:#000;}input,button,textarea,select,optgroup,option{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;}input,button,textarea,select{*font-size:100%;}body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}select,input,button,textarea,button{font:99% arial,helvetica,clean,sans-serif;}table{font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;}body{text-align:center;}#doc,#doc2,#doc3,#doc4,.yui-t1,.yui-t2,.yui-t3,.yui-t4,.yui-t5,.yui-t6,.yui-t7{margin:auto;text-align:left;width:57.69em;*width:56.25em;}#doc2{width:73.076em;*width:71.25em;}#doc3{margin:auto 10px;width:auto;}#doc4{width:74.923em;*width:73.05em;}.yui-b{position:relative;}.yui-b{_position:static;}#yui-main .yui-b{position:static;}#yui-main,.yui-g .yui-u .yui-g{width:100%;}.yui-t1 #yui-main,.yui-t2 #yui-main,.yui-t3 #yui-main{float:right;margin-left:-25em;}.yui-t4 #yui-main,.yui-t5 #yui-main,.yui-t6 #yui-main{float:left;margin-right:-25em;}.yui-t1 .yui-b{float:left;width:12.30769em;*width:12.00em;}.yui-t1 #yui-main .yui-b{margin-left:13.30769em;*margin-left:13.05em;}.yui-t2 .yui-b{float:left;width:13.8461em;*width:13.50em;}.yui-t2 #yui-main .yui-b{margin-left:14.8461em;*margin-left:14.55em;}.yui-t3 .yui-b{float:left;width:23.0769em;*width:22.50em;}.yui-t3 #yui-main .yui-b{margin-left:24.0769em;*margin-left:23.62em;}.yui-t4 .yui-b{float:right;width:13.8456em;*width:13.50em;}.yui-t4 #yui-main .yui-b{margin-right:14.8456em;*margin-right:14.55em;}.yui-t5 .yui-b{float:right;width:18.4615em;*width:18.00em;}.yui-t5 #yui-main .yui-b{margin-right:19.4615em;*margin-right:19.125em;}.yui-t6 .yui-b{float:right;width:23.0769em;*width:22.50em;}.yui-t6 #yui-main .yui-b{margin-right:24.0769em;*margin-right:23.62em;}.yui-t7 #yui-main .yui-b{display:block;margin:0 0 1em 0;}#yui-main .yui-b{float:none;width:auto;}.yui-gb .yui-u,.yui-g .yui-gb .yui-u,.yui-gb .yui-g,.yui-gb .yui-gb,.yui-gb .yui-gc,.yui-gb .yui-gd,.yui-gb .yui-ge,.yui-gb .yui-gf,.yui-gc .yui-u,.yui-gc .yui-g,.yui-gd .yui-u{float:left;}.yui-g .yui-u,.yui-g .yui-g,.yui-g .yui-gb,.yui-g .yui-gc,.yui-g .yui-gd,.yui-g .yui-ge,.yui-g .yui-gf,.yui-gc .yui-u,.yui-gd .yui-g,.yui-g .yui-gc .yui-u,.yui-ge .yui-u,.yui-ge .yui-g,.yui-gf .yui-g,.yui-gf .yui-u{float:right;}.yui-g div.first,.yui-gb div.first,.yui-gc div.first,.yui-gd div.first,.yui-ge div.first,.yui-gf div.first,.yui-g .yui-gc div.first,.yui-g .yui-ge div.first,.yui-gc div.first div.first{float:left;}.yui-g .yui-u,.yui-g .yui-g,.yui-g .yui-gb,.yui-g .yui-gc,.yui-g .yui-gd,.yui-g .yui-ge,.yui-g .yui-gf{width:49.1%;}.yui-gb .yui-u,.yui-g .yui-gb .yui-u,.yui-gb .yui-g,.yui-gb .yui-gb,.yui-gb .yui-gc,.yui-gb .yui-gd,.yui-gb .yui-ge,.yui-gb .yui-gf,.yui-gc .yui-u,.yui-gc .yui-g,.yui-gd .yui-u{width:32%;margin-left:1.99%;}.yui-gb .yui-u{*margin-left:1.9%;*width:31.9%;}.yui-gc div.first,.yui-gd .yui-u{width:66%;}.yui-gd div.first{width:32%;}.yui-ge div.first,.yui-gf .yui-u{width:74.2%;}.yui-ge .yui-u,.yui-gf div.first{width:24%;}.yui-g .yui-gb div.first,.yui-gb div.first,.yui-gc div.first,.yui-gd div.first{margin-left:0;}.yui-g .yui-g .yui-u,.yui-gb .yui-g .yui-u,.yui-gc .yui-g .yui-u,.yui-gd .yui-g .yui-u,.yui-ge .yui-g .yui-u,.yui-gf .yui-g .yui-u{width:49%;*width:48.1%;*margin-left:0;}.yui-g .yui-g .yui-u{width:48.1%;}.yui-g .yui-gb div.first,.yui-gb .yui-gb div.first{*margin-right:0;*width:32%;_width:31.7%;}.yui-g .yui-gc div.first,.yui-gd .yui-g{width:66%;}.yui-gb .yui-g div.first{*margin-right:4%;_margin-right:1.3%;}.yui-gb .yui-gc div.first,.yui-gb .yui-gd div.first{*margin-right:0;}.yui-gb .yui-gb .yui-u,.yui-gb .yui-gc .yui-u{*margin-left:1.8%;_margin-left:4%;}.yui-g .yui-gb .yui-u{_margin-left:1.0%;}.yui-gb .yui-gd .yui-u{*width:66%;_width:61.2%;}.yui-gb .yui-gd div.first{*width:31%;_width:29.5%;}.yui-g .yui-gc .yui-u,.yui-gb .yui-gc .yui-u{width:32%;_float:right;margin-right:0;_margin-left:0;}.yui-gb .yui-gc div.first{width:66%;*float:left;*margin-left:0;}.yui-gb .yui-ge .yui-u,.yui-gb .yui-gf .yui-u{margin:0;}.yui-gb .yui-gb .yui-u{_margin-left:.7%;}.yui-gb .yui-g div.first,.yui-gb .yui-gb div.first{*margin-left:0;}.yui-gc .yui-g .yui-u,.yui-gd .yui-g .yui-u{*width:48.1%;*margin-left:0;}.yui-gb .yui-gd div.first{width:32%;}.yui-g .yui-gd div.first{_width:29.9%;}.yui-ge .yui-g{width:24%;}.yui-gf .yui-g{width:74.2%;}.yui-gb .yui-ge div.yui-u,.yui-gb .yui-gf div.yui-u{float:right;}.yui-gb .yui-ge div.first,.yui-gb .yui-gf div.first{float:left;}.yui-gb .yui-ge .yui-u,.yui-gb .yui-gf div.first{*width:24%;_width:20%;}.yui-gb .yui-ge div.first,.yui-gb .yui-gf .yui-u{*width:73.5%;_width:65.5%;}.yui-ge div.first .yui-gd .yui-u{width:65%;}.yui-ge div.first .yui-gd div.first{width:32%;}#hd:after,#bd:after,#ft:after,.yui-g:after,.yui-gb:after,.yui-gc:after,.yui-gd:after,.yui-ge:after,.yui-gf:after{content:".";display:block;height:0;clear:both;visibility:hidden;}#hd,#bd,#ft,.yui-g,.yui-gb,.yui-gc,.yui-gd,.yui-ge,.yui-gf{zoom:1;}
− demo/yahoo/css/reset-min.css
@@ -1,7 +0,0 @@-/*-Copyright (c) 2009, Yahoo! Inc. All rights reserved.-Code licensed under the BSD License:-http://developer.yahoo.net/yui/license.txt-version: 2.7.0-*/-html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var,optgroup{font-style:inherit;font-weight:inherit;}del,ins{text-decoration:none;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:baseline;}sub{vertical-align:baseline;}legend{color:#000;}input,button,textarea,select,optgroup,option{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;}input,button,textarea,select{*font-size:100%;}
yst.cabal view
@@ -1,6 +1,6 @@ name: yst-version: 0.4.1.1-Tested-With: GHC == 7.4.1+version: 0.5+Tested-With: GHC == 7.8.3 Cabal-version: >= 1.8 build-type: Simple synopsis: Builds a static website from templates and data in YAML or@@ -36,14 +36,9 @@ demo/layout.tex.st demo/room101.txt demo/room203.txt- demo/yahoo/css/base-min.css demo/files/css/hk-pyg.css- demo/files/css/ie.css demo/files/css/print.css- demo/yahoo/css/reset-fonts-grids.css- demo/yahoo/css/reset-min.css demo/files/css/screen.css- demo/files/js/nav.js Source-repository head type: git@@ -55,11 +50,12 @@ other-modules: Yst.Types, Yst.Yaml, Yst.Util, Yst.Data, Yst.Config, Yst.Render, Yst.Build, Yst.CSV, Yst.Sqlite3 build-depends: base >=3 && < 5, unordered-containers,- HStringTemplate >= 0.6.1 && < 0.6.9 || > 0.6.11 && < 0.8,+ HStringTemplate >= 0.6.1 && < 0.6.9 || > 0.6.11 && < 0.9, yaml, csv, aeson >= 0.7 && < 0.9, text, scientific >= 0.2 && < 0.4, filepath, containers, directory, time,- old-locale, old-time, parsec, xhtml,+ old-locale, old-time, parsec,+ lucid >= 2.9 && < 2.10, pandoc >= 1.10 && < 1.14, split, HDBC, HDBC-sqlite3 extensions: CPP