git.iko.soy/typeable/pandoc
on master help sign in
Class: Removed getDefaultReferenceDocx/ODT from PandocMonad.

We don't need these, since the default docx and odt can be retrieved using `readDataFile datadir "reference.docx"` (or odt).

commit08110c371484cb74206a150fe9c2e06eeb32e475 authorJohn MacFarlane <jgm@berkeley.edu> dateSun 11 Dec 2016, 16:21 (10 years ago) parent143d1a2
3 files changed+7−25
src/Text/Pandoc/Class.hs+2−22 src/Text/Pandoc/Writers/Docx.hs+3−2 src/Text/Pandoc/Writers/ODT.hs+2−1
src/Text/Pandoc/Class.hs+2−22
@@ -66,8 +66,6 @@ import Data.Unique (hashUnique)
6666import qualified Data.Unique as IO (newUnique)
6767import qualified Text.Pandoc.Shared as IO ( fetchItem
6868 , fetchItem'
69− , getDefaultReferenceDocx
70− , getDefaultReferenceODT
7169 , readDataFile
7270 , warn)
7371import Text.Pandoc.Compat.Time (UTCTime)
@@ -106,8 +104,6 @@ class (Functor m, Applicative m, Monad m, MonadError PandocError m)
106104 lookupEnv :: String -> m (Maybe String)
107105 getCurrentTime :: m UTCTime
108106 getCurrentTimeZone :: m TimeZone
109− getDefaultReferenceDocx :: Maybe FilePath -> m Archive
110− getDefaultReferenceODT :: Maybe FilePath -> m Archive
111107 newStdGen :: m StdGen
112108 newUniqueHash :: m Int
113109 readFileLazy :: FilePath -> m BL.ByteString
@@ -215,8 +211,6 @@ instance PandocMonad PandocIO where
215211 lookupEnv = liftIO . IO.lookupEnv
216212 getCurrentTime = liftIO IO.getCurrentTime
217213 getCurrentTimeZone = liftIO IO.getCurrentTimeZone
218− getDefaultReferenceDocx = liftIO . IO.getDefaultReferenceDocx
219− getDefaultReferenceODT = liftIO . IO.getDefaultReferenceODT
220214 newStdGen = liftIO IO.newStdGen
221215 newUniqueHash = hashUnique <$> (liftIO IO.newUnique)
222216 readFileLazy s = do
@@ -325,10 +319,6 @@ instance PandocMonad PandocPure where
325319
326320 getCurrentTimeZone = getsPureState stTimeZone
327321
328− getDefaultReferenceDocx _ = getsPureState stReferenceDocx
329−
330− getDefaultReferenceODT _ = getsPureState stReferenceODT
331−
332322 newStdGen = do
333323 g <- getsPureState stStdGen
334324 let (_, nxtGen) = next g
@@ -348,9 +338,9 @@ instance PandocMonad PandocPure where
348338 Just bs -> return (BL.fromStrict bs)
349339 Nothing -> throwError $ PandocFileReadError fp
350340 readDataFile Nothing "reference.docx" = do
351− (B.concat . BL.toChunks . fromArchive) <$> (getDefaultReferenceDocx Nothing)
341+ (B.concat . BL.toChunks . fromArchive) <$> getsPureState stReferenceDocx
352342 readDataFile Nothing "reference.odt" = do
353− (B.concat . BL.toChunks . fromArchive) <$> (getDefaultReferenceODT Nothing)
343+ (B.concat . BL.toChunks . fromArchive) <$> getsPureState stReferenceODT
354344 readDataFile Nothing fname = do
355345 let fname' = if fname == "MANUAL.txt" then fname else "data" </> fname
356346 BL.toStrict <$> (readFileLazy fname')
@@ -387,8 +377,6 @@ instance PandocMonad m => PandocMonad (ParserT s st m) where
387377 lookupEnv = lift . lookupEnv
388378 getCurrentTime = lift getCurrentTime
389379 getCurrentTimeZone = lift getCurrentTimeZone
390− getDefaultReferenceDocx = lift . getDefaultReferenceDocx
391− getDefaultReferenceODT = lift . getDefaultReferenceODT
392380 newStdGen = lift newStdGen
393381 newUniqueHash = lift newUniqueHash
394382 readFileLazy = lift . readFileLazy
@@ -404,8 +392,6 @@ instance PandocMonad m => PandocMonad (ReaderT r m) where
404392 lookupEnv = lift . lookupEnv
405393 getCurrentTime = lift getCurrentTime
406394 getCurrentTimeZone = lift getCurrentTimeZone
407− getDefaultReferenceDocx = lift . getDefaultReferenceDocx
408− getDefaultReferenceODT = lift . getDefaultReferenceODT
409395 newStdGen = lift newStdGen
410396 newUniqueHash = lift newUniqueHash
411397 readFileLazy = lift . readFileLazy
@@ -421,8 +407,6 @@ instance (PandocMonad m, Monoid w) => PandocMonad (WriterT w m) where
421407 lookupEnv = lift . lookupEnv
422408 getCurrentTime = lift getCurrentTime
423409 getCurrentTimeZone = lift getCurrentTimeZone
424− getDefaultReferenceDocx = lift . getDefaultReferenceDocx
425− getDefaultReferenceODT = lift . getDefaultReferenceODT
426410 newStdGen = lift newStdGen
427411 newUniqueHash = lift newUniqueHash
428412 readFileLazy = lift . readFileLazy
@@ -438,8 +422,6 @@ instance (PandocMonad m, Monoid w) => PandocMonad (RWST r w st m) where
438422 lookupEnv = lift . lookupEnv
439423 getCurrentTime = lift getCurrentTime
440424 getCurrentTimeZone = lift getCurrentTimeZone
441− getDefaultReferenceDocx = lift . getDefaultReferenceDocx
442− getDefaultReferenceODT = lift . getDefaultReferenceODT
443425 newStdGen = lift newStdGen
444426 newUniqueHash = lift newUniqueHash
445427 readFileLazy = lift . readFileLazy
@@ -455,8 +437,6 @@ instance PandocMonad m => PandocMonad (StateT st m) where
455437 lookupEnv = lift . lookupEnv
456438 getCurrentTime = lift getCurrentTime
457439 getCurrentTimeZone = lift getCurrentTimeZone
458− getDefaultReferenceDocx = lift . getDefaultReferenceDocx
459− getDefaultReferenceODT = lift . getDefaultReferenceODT
460440 newStdGen = lift newStdGen
461441 newUniqueHash = lift newUniqueHash
462442 readFileLazy = lift . readFileLazy
src/Text/Pandoc/Writers/Docx.hs+3−2
@@ -224,10 +224,11 @@ writeDocx opts doc@(Pandoc meta _) = do
224224 let doc' = walk fixDisplayMath $ doc
225225 username <- P.lookupEnv "USERNAME"
226226 utctime <- P.getCurrentTime
227− distArchive <- P.getDefaultReferenceDocx datadir
227+ distArchive <- (toArchive . BL.fromStrict) <$>
228+ P.readDataFile datadir "reference.docx"
228229 refArchive <- case writerReferenceDoc opts of
229230 Just f -> toArchive <$> P.readFileLazy f
230− Nothing -> P.getDefaultReferenceDocx datadir
231+ Nothing -> return distArchive
231232
232233 parsedDoc <- parseXml refArchive distArchive "word/document.xml"
233234 let wname f qn = qPrefix qn == Just "w" && f (qName qn)
src/Text/Pandoc/Writers/ODT.hs+2−1
@@ -79,7 +79,8 @@ pandocToODT opts doc@(Pandoc meta _) = do
7979 refArchive <-
8080 case writerReferenceDoc opts of
8181 Just f -> liftM toArchive $ lift $ P.readFileLazy f
82− Nothing -> lift $ P.getDefaultReferenceODT datadir
82+ Nothing -> lift $ (toArchive . B.fromStrict) <$>
83+ P.readDataFile datadir "reference.odt"
8384 -- handle formulas and pictures
8485 -- picEntriesRef <- P.newIORef ([] :: [Entry])
8586 doc' <- walkM (transformPicMath opts) $ walk fixDisplayMath doc