PDF: Use ; for TEXINPUTS separator on Windows.

Closes #1151, I hope.  Testing needed.
This commit is contained in:
John MacFarlane 2014-02-23 20:35:07 -08:00
parent a826d3936d
commit 19b127b898
2 changed files with 8 additions and 1 deletions

View file

@ -243,6 +243,8 @@ Library
cpp-options: -DEMBED_DATA_FILES cpp-options: -DEMBED_DATA_FILES
-- Build-Tools: hsb2hs -- not yet recognized by cabal -- Build-Tools: hsb2hs -- not yet recognized by cabal
other-modules: Text.Pandoc.Data other-modules: Text.Pandoc.Data
if os(windows)
Cpp-options: -D_WINDOWS
Ghc-Options: -rtsopts -Wall -fno-warn-unused-do-bind Ghc-Options: -rtsopts -Wall -fno-warn-unused-do-bind
Ghc-Prof-Options: -auto-all -caf-all -rtsopts Ghc-Prof-Options: -auto-all -caf-all -rtsopts
Default-Language: Haskell98 Default-Language: Haskell98

View file

@ -149,7 +149,12 @@ runTeXProgram program runsLeft tmpDir source = do
let programArgs = ["-halt-on-error", "-interaction", "nonstopmode", let programArgs = ["-halt-on-error", "-interaction", "nonstopmode",
"-output-directory", tmpDir, file] "-output-directory", tmpDir, file]
env' <- getEnvironment env' <- getEnvironment
let texinputs = maybe (tmpDir ++ ":") ((tmpDir ++ ":") ++) #ifdef _WINDOWS
let sep = ";"
#else
let sep = ":"
#endif
let texinputs = maybe (tmpDir ++ sep) ((tmpDir ++ sep) ++)
$ lookup "TEXINPUTS" env' $ lookup "TEXINPUTS" env'
let env'' = ("TEXINPUTS", texinputs) : let env'' = ("TEXINPUTS", texinputs) :
[(k,v) | (k,v) <- env', k /= "TEXINPUTS"] [(k,v) | (k,v) <- env', k /= "TEXINPUTS"]