diff --git a/pandoc.hs b/pandoc.hs index 89681258f..a0899adb6 100644 --- a/pandoc.hs +++ b/pandoc.hs @@ -44,7 +44,7 @@ import Text.Pandoc.SelfContained ( makeSelfContained ) import Text.Pandoc.Process (pipeProcess) import Text.Highlighting.Kate ( languages, Style, tango, pygments, espresso, zenburn, kate, haddock, monochrome ) -import System.Environment ( getArgs, getProgName ) +import System.Environment ( getArgs, getProgName, getEnvironment ) import System.Exit ( ExitCode (..), exitSuccess ) import System.FilePath import System.Console.GetOpt @@ -135,8 +135,10 @@ externalFilter f args' d = do when (isNothing mbExe) $ err 83 $ "Error running filter " ++ f ++ ":\n" ++ "Could not find executable '" ++ f' ++ "'." + env <- getEnvironment + let env' = Just $ ("PANDOC_VERSION", pandocVersion) : env (exitcode, outbs, errbs) <- E.handle filterException $ - pipeProcess Nothing f' args'' $ encode d + pipeProcess env' f' args'' $ encode d unless (B.null errbs) $ B.hPutStr stderr errbs case exitcode of ExitSuccess -> return $ either error id $ eitherDecode' outbs