aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MANUAL.txt5
-rw-r--r--src/Text/Pandoc/App/OutputSettings.hs5
2 files changed, 10 insertions, 0 deletions
diff --git a/MANUAL.txt b/MANUAL.txt
index 42e6393a0..42a2b7a3d 100644
--- a/MANUAL.txt
+++ b/MANUAL.txt
@@ -1905,6 +1905,11 @@ on the output format, and include the following:
Similarly, `outputfile` can be `-` if output goes to the terminal.
+ If you need absolute paths, use e.g. `$curdir$/$sourcefile$`.
+
+`curdir`
+: working directory from which pandoc is run.
+
`toc`
: non-null value if `--toc/--table-of-contents` was specified
diff --git a/src/Text/Pandoc/App/OutputSettings.hs b/src/Text/Pandoc/App/OutputSettings.hs
index babec8745..343287a4b 100644
--- a/src/Text/Pandoc/App/OutputSettings.hs
+++ b/src/Text/Pandoc/App/OutputSettings.hs
@@ -28,6 +28,7 @@ import Data.List (find, isPrefixOf, isSuffixOf)
import Data.Maybe (fromMaybe)
import Skylighting (defaultSyntaxMap)
import Skylighting.Parser (addSyntaxDefinition, parseSyntaxDefinition)
+import System.Directory (getCurrentDirectory)
import System.Exit (exitSuccess)
import System.FilePath
import System.IO (stdout)
@@ -113,6 +114,8 @@ optToOutputSettings opts = do
s <- UTF8.toString . fst <$> fetchItem fp
return $ (varname, s) : vars
+ curdir <- liftIO getCurrentDirectory
+
variables <-
withList (addStringAsVariable "sourcefile")
(reverse $ optInputFiles opts)
@@ -140,6 +143,8 @@ optToOutputSettings opts = do
maybe return (addStringAsVariable "epub-cover-image")
(optEpubCoverImage opts)
>>=
+ addStringAsVariable "curdir" curdir
+ >>=
(\vars -> if format == "dzslides"
then do
dztempl <- UTF8.toString <$> readDataFile