Enabled MathJax rendering through Pandoc
This commit is contained in:
parent
e588dce485
commit
cc3a24565f
@ -8,5 +8,7 @@ executable site
|
||||
build-depends: base == 4.*
|
||||
, hakyll >= 4.6
|
||||
, filepath
|
||||
, containers
|
||||
, pandoc
|
||||
ghc-options: -threaded
|
||||
default-language: Haskell2010
|
||||
|
||||
26
site.hs
26
site.hs
@ -10,18 +10,36 @@ Portability : POSIX
|
||||
import Data.Monoid (mappend)
|
||||
import Hakyll
|
||||
import System.FilePath
|
||||
import Text.Pandoc.Options
|
||||
import qualified GHC.IO.Encoding as E
|
||||
import qualified Data.Set as S
|
||||
|
||||
-- | Configuration for the RSS and ATOM feeds.
|
||||
feedConfiguration :: FeedConfiguration
|
||||
feedConfiguration = FeedConfiguration
|
||||
{ feedTitle = "hodapple blog, FIXME!"
|
||||
{ feedTitle = "hodapple blog"
|
||||
, feedDescription = "FIXME!"
|
||||
, feedAuthorName = "Chris Hodapp"
|
||||
, feedAuthorEmail = "Hodapp87@gmail.com"
|
||||
, feedRoot = "http://???"
|
||||
}
|
||||
|
||||
-- | Alternate pandocCompiler which enables MathJax
|
||||
pandocMathCompiler :: Compiler (Item String)
|
||||
pandocMathCompiler =
|
||||
-- Lifted straight from:
|
||||
-- http://travis.athougies.net/posts/2013-08-13-using-math-on-your-hakyll-blog.html
|
||||
let mathExtensions = [ Ext_tex_math_dollars
|
||||
, Ext_tex_math_double_backslash
|
||||
, Ext_latex_macros]
|
||||
defaultExtensions = writerExtensions defaultHakyllWriterOptions
|
||||
newExtensions = foldr S.insert defaultExtensions mathExtensions
|
||||
writerOptions = defaultHakyllWriterOptions {
|
||||
writerExtensions = newExtensions,
|
||||
writerHTMLMathMethod = MathJax ""
|
||||
}
|
||||
in pandocCompilerWith defaultHakyllReaderOptions writerOptions
|
||||
|
||||
-- | Main entry point for generating all code via Hakyll
|
||||
main :: IO ()
|
||||
main = do
|
||||
@ -57,7 +75,7 @@ main = do
|
||||
|
||||
match "pages/*" $ do
|
||||
route $ setExtension "html"
|
||||
compile $ pandocCompiler
|
||||
compile $ pandocMathCompiler
|
||||
>>= loadAndApplyTemplate "templates/default.html" defaultContext
|
||||
>>= relativizeUrls
|
||||
|
||||
@ -72,7 +90,7 @@ main = do
|
||||
|
||||
match "posts/*" $ do
|
||||
route $ setExtension "html"
|
||||
compile $ pandocCompiler
|
||||
compile $ pandocMathCompiler
|
||||
>>= loadAndApplyTemplate "templates/post.html" postCtxTags
|
||||
>>= saveSnapshot "feedContent"
|
||||
>>= loadAndApplyTemplate "templates/comments.html" postCtxTags
|
||||
@ -86,7 +104,7 @@ main = do
|
||||
|
||||
match "drafts/*" $ do
|
||||
route $ setExtension "html"
|
||||
compile $ pandocCompiler
|
||||
compile $ pandocMathCompiler
|
||||
>>= loadAndApplyTemplate "templates/post.html" postCtxTags
|
||||
>>= loadAndApplyTemplate "templates/default.html" postCtxTags
|
||||
>>= relativizeUrls
|
||||
|
||||
@ -14,6 +14,11 @@
|
||||
-->
|
||||
<link rel="stylesheet" type="text/css" href="/css/syntax.css"/>
|
||||
|
||||
<!-- From http://travis.athougies.net/posts/2013-08-13-using-math-on-your-hakyll-blog.html -->
|
||||
<script type="text/javascript"
|
||||
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
|
||||
</script>
|
||||
|
||||
<link rel="apple-touch-icon" sizes="57x57" href="/apple-touch-icon-57x57.png">
|
||||
<link rel="apple-touch-icon" sizes="60x60" href="/apple-touch-icon-60x60.png">
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="/apple-touch-icon-72x72.png">
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user