git.iko.soy/typeable/pandoc
on master help sign in
EPUB Reader: Changed image paths to be relative to manifest file
commita6648e5a735b296fa3adda5a7aa75b327e916fe6 authorMatthew Pickering <matthewtpickering@gmail.com> dateSat 9 Aug 2014, 20:45 (12 years ago) parent4983083
1 file changed+6−6
src/Text/Pandoc/Readers/EPUB.hs+6−6
src/Text/Pandoc/Readers/EPUB.hs+6−6
@@ -55,7 +55,7 @@ archiveToEPUB os archive = do
5555 meta <- parseMeta content
5656 (cover, items) <- parseManifest content
5757 -- No need to collapse here as the image path is from the manifest file
58− let coverDoc = fromMaybe mempty (imageToPandoc . (root </>) <$> cover)
58+ let coverDoc = fromMaybe mempty (imageToPandoc <$> cover)
5959 spine <- parseSpine items content
6060 let escapedSpine = map (escapeURI . takeFileName . fst) spine
6161 Pandoc _ bs <-
@@ -69,17 +69,17 @@ archiveToEPUB os archive = do
6969 parseSpineElem :: MonadError String m => FilePath -> (FilePath, MIME) -> m Pandoc
7070 parseSpineElem (normalise -> r) (normalise -> path, mime) = do
7171 when (readerTrace os) (traceM path)
72− doc <- mimeToReader mime (r </> path)
72+ doc <- mimeToReader mime r path
7373 let docSpan = B.doc $ B.para $ B.spanWith (takeFileName path, [], []) mempty
7474 return $ docSpan <> doc
75− mimeToReader :: MonadError String m => MIME -> FilePath -> m Pandoc
76− mimeToReader "application/xhtml+xml" (normalise -> path) = do
77− fname <- findEntryByPathE path archive
75+ mimeToReader :: MonadError String m => MIME -> FilePath -> FilePath -> m Pandoc
76+ mimeToReader "application/xhtml+xml" (normalise -> root) (normalise -> path) = do
77+ fname <- findEntryByPathE (root </> path) archive
7878 return $ fixInternalReferences path .
7979 readHtml os' .
8080 UTF8.toStringLazy $
8181 fromEntry fname
82− mimeToReader s path
82+ mimeToReader s _ path
8383 | s `elem` imageMimes = return $ imageToPandoc path
8484 | otherwise = return $ mempty
8585