Update to new Pandoc and Hakyll.
This commit is contained in:
+13
-7
@@ -19,10 +19,11 @@ import Data.Char (isSpace)
|
||||
import Data.List.Split (splitOn)
|
||||
import Data.List (intercalate)
|
||||
import qualified Data.Map as M (empty)
|
||||
import Data.Text (pack, unpack)
|
||||
import Data.Typeable (Typeable)
|
||||
import Hakyll
|
||||
import qualified Bibtex as B
|
||||
import qualified Text.Pandoc as Pandoc
|
||||
import Text.Pandoc
|
||||
import qualified Text.Parsec as Parsec
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
@@ -128,11 +129,16 @@ trimSpace :: String -> String
|
||||
trimSpace = f . f
|
||||
where f = reverse . dropWhile isSpace
|
||||
|
||||
-- Remove <p> and </p> tags...
|
||||
trimPara :: String -> String
|
||||
trimPara str = concat $ splitOn "</p>" $ drop 3 str
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
latexToHtml :: String -> String
|
||||
latexToHtml tex =
|
||||
let p = case Pandoc.readLaTeX Pandoc.def tex of
|
||||
Right (Pandoc.Pandoc meta [Pandoc.Para para]) ->
|
||||
Pandoc.Pandoc meta [Pandoc.Plain para]
|
||||
Left _ ->
|
||||
Pandoc.Pandoc (Pandoc.Meta M.empty) []
|
||||
in Pandoc.writeHtmlString Pandoc.def p
|
||||
let res = runPure $ readLaTeX def (pack tex)
|
||||
>>= writeHtml5String def
|
||||
>>= return . trimPara . unpack
|
||||
in case res of
|
||||
Left _ -> ""
|
||||
Right html -> html
|
||||
|
||||
Reference in New Issue
Block a user