aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Readers/LaTeX.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Text/Pandoc/Readers/LaTeX.hs')
-rw-r--r--src/Text/Pandoc/Readers/LaTeX.hs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/Text/Pandoc/Readers/LaTeX.hs b/src/Text/Pandoc/Readers/LaTeX.hs
index fbbdc1873..cc8176162 100644
--- a/src/Text/Pandoc/Readers/LaTeX.hs
+++ b/src/Text/Pandoc/Readers/LaTeX.hs
@@ -53,7 +53,7 @@ import Text.Pandoc.Highlighting (fromListingsLanguage, languagesByExtension)
import Text.Pandoc.ImageSize (numUnit, showFl)
import Control.Monad.Except (throwError)
import Text.Pandoc.Class (PandocMonad, PandocPure, lookupEnv, report,
- readFileFromDirs)
+ readFileFromDirs, setResourcePath)
-- | Parse LaTeX from string and return 'Pandoc' document.
readLaTeX :: PandocMonad m
@@ -372,6 +372,7 @@ blockCommands = M.fromList $
addMeta "bibliography" . splitBibs))
-- includes
, ("lstinputlisting", inputListing)
+ , ("graphicspath", graphicsPath)
] ++ map ignoreBlocks
-- these commands will be ignored unless --parse-raw is specified,
-- in which case they will appear as raw latex blocks
@@ -390,6 +391,12 @@ blockCommands = M.fromList $
, "newpage"
]
+graphicsPath :: PandocMonad m => LP m Blocks
+graphicsPath = do
+ ps <- bgroup *> (manyTill braced egroup)
+ setResourcePath (".":ps)
+ return mempty
+
addMeta :: PandocMonad m => ToMetaValue a => String -> a -> LP m ()
addMeta field val = updateState $ \st ->
st{ stateMeta = addMetaField field val $ stateMeta st }