aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MANUAL.txt16
-rw-r--r--src/Text/Pandoc/App.hs5
2 files changed, 21 insertions, 0 deletions
diff --git a/MANUAL.txt b/MANUAL.txt
index 2f1fa30af..fd744c084 100644
--- a/MANUAL.txt
+++ b/MANUAL.txt
@@ -1074,6 +1074,22 @@ Some variables are set automatically by pandoc. These vary somewhat
depending on the output format, but include metadata fields as well
as the following:
+`sourcefile`, `outputfile`
+: source and destination filenames, as given on the command line.
+ `sourcefile` can also be a list if input comes from multiple files, or empty
+ if input is from stdin. You can use the following snippet in your template
+ to distinguish them:
+
+ $if(sourcefile)$
+ $for(sourcefile)$
+ $sourcefile$
+ $endfor$
+ $else$
+ (stdin)
+ $endif$
+
+ Similarly, `outputfile` can be `-` if output goes to the terminal.
+
`title`, `author`, `date`
: allow identification of basic aspects of the document. Included
in PDF metadata through LaTeX and ConTeXt. These can be set
diff --git a/src/Text/Pandoc/App.hs b/src/Text/Pandoc/App.hs
index 1a41050d7..9d8fc592b 100644
--- a/src/Text/Pandoc/App.hs
+++ b/src/Text/Pandoc/App.hs
@@ -230,6 +230,11 @@ convertWithOpts opts = do
variables <- return (optVariables opts)
>>=
+ (\vars -> return $ ("outputfile", optOutputFile opts) : vars)
+ >>=
+ withList (addStringAsVariable "sourcefile")
+ (optInputFiles opts)
+ >>=
withList (addContentsAsVariable "include-before")
(optIncludeBeforeBody opts)
>>=