diff options
Diffstat (limited to 'src/Site.hs')
-rw-r--r-- | src/Site.hs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/Site.hs b/src/Site.hs index 1bda7ec..e821322 100644 --- a/src/Site.hs +++ b/src/Site.hs | |||
@@ -20,9 +20,12 @@ import Control.Applicative (Alternative(..), Applicative(..)) | |||
20 | import qualified Crypto.Hash.SHA256 as SHA256 (hash) | 20 | import qualified Crypto.Hash.SHA256 as SHA256 (hash) |
21 | import qualified Data.ByteString.Char8 as CBS | 21 | import qualified Data.ByteString.Char8 as CBS |
22 | import Data.Hex | 22 | import Data.Hex |
23 | import Data.Char (toLower) | ||
23 | 24 | ||
24 | import System.FilePath (takeBaseName, (</>), (<.>)) | 25 | import System.FilePath (takeBaseName, (</>), (<.>)) |
25 | 26 | ||
27 | import Math (compileMath) | ||
28 | |||
26 | main :: IO () | 29 | main :: IO () |
27 | main = hakyllWith config $ do | 30 | main = hakyllWith config $ do |
28 | match "templates/*" $ compile templateCompiler | 31 | match "templates/*" $ compile templateCompiler |
@@ -45,7 +48,9 @@ main = hakyllWith config $ do | |||
45 | create [mathTranslation' mathStr] $ do | 48 | create [mathTranslation' mathStr] $ do |
46 | route idRoute | 49 | route idRoute |
47 | compile $ do | 50 | compile $ do |
48 | makeItem $ mathStr | 51 | makeItem mathStr |
52 | >>= loadAndApplyTemplate "templates/math.tex" defaultContext | ||
53 | >>= withItemBody (unsafeCompiler . compileMath) | ||
49 | 54 | ||
50 | tags <- buildTags "posts/*" tagTranslation' >>= addTag "All Posts" "posts/*" | 55 | tags <- buildTags "posts/*" tagTranslation' >>= addTag "All Posts" "posts/*" |
51 | 56 | ||
@@ -139,7 +144,7 @@ tagTranslation = mapMaybe charTrans | |||
139 | | otherwise = Nothing | 144 | | otherwise = Nothing |
140 | 145 | ||
141 | mathTranslation' :: String -> Identifier | 146 | mathTranslation' :: String -> Identifier |
142 | mathTranslation' = fromCapture "math/*.svg" . CBS.unpack . hex . SHA256.hash . CBS.pack | 147 | mathTranslation' = fromCapture "math/*.svg" . map toLower . CBS.unpack . hex . SHA256.hash . CBS.pack |
143 | 148 | ||
144 | addTag :: MonadMetadata m => String -> Pattern -> Tags -> m Tags | 149 | addTag :: MonadMetadata m => String -> Pattern -> Tags -> m Tags |
145 | addTag name pattern tags = do | 150 | addTag name pattern tags = do |