pandoc-citeproc-preamble 1.2.4 → 1.3
raw patch · 2 files changed
+16/−11 lines, 2 filesdep +text-conversionsdep ~pandoc-types
Dependencies added: text-conversions
Dependency ranges changed: pandoc-types
Files
pandoc-citeproc-preamble.cabal view
@@ -1,5 +1,5 @@ name: pandoc-citeproc-preamble-version: 1.2.4+version: 1.3 synopsis: Insert a preamble before pandoc-citeproc's bibliography description: Please see README.md homepage: https://github.com/spwhitton/pandoc-citeproc-preamble@@ -15,10 +15,11 @@ hs-source-dirs: src main-is: pandoc-citeproc-preamble.hs build-depends: base >= 4 && < 5- , pandoc-types+ , pandoc-types >= 1.20 , process , directory , filepath+ , text-conversions default-language: Haskell2010 source-repository head
src/pandoc-citeproc-preamble.hs view
@@ -2,7 +2,7 @@ pandoc-citeproc-preamble --- Insert a preamble before pandoc-citeproc's bibliography - Copyright (C) 2015-2016 Sean Whitton+ Copyright (C) 2015-2016, 2019 Sean Whitton This file is part of pandoc-citeproc-preamble. @@ -21,17 +21,19 @@ <http://www.gnu.org/licenses/>. -}+{-# LANGUAGE OverloadedStrings #-} -import Data.List (isPrefixOf)-import System.Directory (doesFileExist)-import System.FilePath ((<.>), (</>))-import System.Process (readProcess)+import Data.List (isPrefixOf)+import Data.Text.Conversions (convertText)+import System.Directory (doesFileExist)+import System.FilePath ((<.>), (</>))+import System.Process (readProcess) import Text.Pandoc.JSON insertPreamble :: Block -> [Block] -> [Block] insertPreamble preamble = foldr step [] where- step refsDiv@(Div (_, ["references"], _) theRefs) xs =+ step refsDiv@(Div ("refs", _, _) theRefs) xs = -- check whether pandoc-citeproc actually inserted any -- references if null theRefs@@ -45,7 +47,8 @@ >>= maybe (return input) (\file -> do ls <- readFile file- return $ Pandoc meta (insertPreamble (lsBlock ls) blocks))+ return $+ Pandoc meta (insertPreamble (lsBlock $ convertText ls) blocks)) where lsBlock ls = RawBlock format ls format = maybe (Format "latex") id maybeFormat@@ -57,7 +60,8 @@ Nothing -> tryDatadir where tryDatadir = do- defaultPreamble <- (</> "citeproc-preamble" </> "default" <.> format)+ defaultPreamble <- (</> "citeproc-preamble" </> "default" <.>+ convertText format) <$> getPandocDatadir doesFileExist defaultPreamble >>= \exists -> return $ if exists then Just defaultPreamble else Nothing@@ -70,7 +74,7 @@ prefix = "Default user data directory: " toPath :: MetaValue -> Maybe String-toPath (MetaString s) = Just s+toPath (MetaString s) = Just $ convertText s toPath _ = Nothing main :: IO ()