on master help sign in
defaultRelativizeUrls → relativizeUrlsCompiler
bc4fef8Jasper Van der Jeugt
src/Hakyll/Web.hs+1−12
@@ -3,14 +3,11 @@
3module Hakyll.Web
3module Hakyll.Web
4 ( defaultTemplateRead
4 ( defaultTemplateRead
5 , defaultTemplateReadWith
5 , defaultTemplateReadWith
6− , defaultRelativizeUrls
7 , defaultCopyFile
6 , defaultCopyFile
8 , defaultApplyTemplate
7 , defaultApplyTemplate
9 ) where
8 ) where
10
9
11−import Prelude hiding (id)
12−import Control.Category (id)
13−import Control.Arrow ((>>^), (&&&))
10+import Control.Arrow ((>>^))
14
11
15import Text.Hamlet (HamletSettings)
12import Text.Hamlet (HamletSettings)
16
13
@@ -20,14 +17,6 @@ import Hakyll.Core.Identifier
20import Hakyll.Core.ResourceProvider
17import Hakyll.Core.ResourceProvider
21import Hakyll.Web.Page
18import Hakyll.Web.Page
22import Hakyll.Web.Template
19import Hakyll.Web.Template
23−import Hakyll.Web.RelativizeUrls
24−import Hakyll.Web.Util.String
25−
26−defaultRelativizeUrls :: Compiler (Page String) (Page String)
27−defaultRelativizeUrls = getRoute &&& id >>^ uncurry relativize
28− where
29− relativize Nothing = id
30− relativize (Just r) = fmap (relativizeUrls $ toSiteRoot r)
31
20
32defaultTemplateRead :: Compiler Resource Template
21defaultTemplateRead :: Compiler Resource Template
33defaultTemplateRead = cached "Hakyll.Web.defaultTemplateRead" $ templateRead
22defaultTemplateRead = cached "Hakyll.Web.defaultTemplateRead" $ templateRead
src/Hakyll/Web/CompressCss.hs+1−2
@@ -14,8 +14,7 @@ import Hakyll.Core.Compiler
14import Hakyll.Core.ResourceProvider
14import Hakyll.Core.ResourceProvider
15import Hakyll.Web.Util.String
15import Hakyll.Web.Util.String
16
16
17−-- | Compiler form of 'compressCss' which automatically picks the right root
17+-- | Compiler form of 'compressCss'
18−-- path
19--
18--
20compressCssCompiler :: Compiler Resource String
19compressCssCompiler :: Compiler Resource String
21compressCssCompiler = getResourceString >>^ compressCss
20compressCssCompiler = getResourceString >>^ compressCss
src/Hakyll/Web/RelativizeUrls.hs+18−1
@@ -15,14 +15,31 @@
15-- > <img src="../images/lolcat.png" alt="Funny zomgroflcopter" />
15-- > <img src="../images/lolcat.png" alt="Funny zomgroflcopter" />
16--
16--
17module Hakyll.Web.RelativizeUrls
17module Hakyll.Web.RelativizeUrls
18+ ( relativizeUrlsCompiler
18− ( relativizeUrls
19+ , relativizeUrls
19 ) where
20 ) where
20
21
22+import Prelude hiding (id)
23+import Control.Category (id)
24+import Control.Arrow ((&&&), (>>^))
21import Data.List (isPrefixOf)
25import Data.List (isPrefixOf)
22import qualified Data.Set as S
26import qualified Data.Set as S
23
27
24import Text.HTML.TagSoup
28import Text.HTML.TagSoup
25
29
30+import Hakyll.Core.Compiler
31+import Hakyll.Web.Page
32+import Hakyll.Web.Util.String
33+
34+-- | Compiler form of 'compressCss' which automatically picks the right root
35+-- path
36+--
37+relativizeUrlsCompiler :: Compiler (Page String) (Page String)
38+relativizeUrlsCompiler = getRoute &&& id >>^ uncurry relativize
39+ where
40+ relativize Nothing = id
41+ relativize (Just r) = fmap (relativizeUrls $ toSiteRoot r)
42+
26-- | Relativize URL's in HTML
43-- | Relativize URL's in HTML
27--
44--
28relativizeUrls :: String -- ^ Path to the site root
45relativizeUrls :: String -- ^ Path to the site root