aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn MacFarlane <[email protected]>2024-01-04 08:50:46 -0700
committerJohn MacFarlane <[email protected]>2024-01-04 08:50:46 -0700
commit59e28b82b66c80f69ec8f6674dbf25fa9b2a488f (patch)
tree178509bd3586ff9a74531129329084965cf6bfa5
parent87533e2d04539cf27e58e287759912f897962170 (diff)
PDF: expand list of environment variables to display in verbose output.
Closes #9303.
-rw-r--r--src/Text/Pandoc/PDF.hs100
1 files changed, 88 insertions, 12 deletions
diff --git a/src/Text/Pandoc/PDF.hs b/src/Text/Pandoc/PDF.hs
index bdbe019df..1d58721b0 100644
--- a/src/Text/Pandoc/PDF.hs
+++ b/src/Text/Pandoc/PDF.hs
@@ -547,19 +547,95 @@ showVerboseInfo mbTmpDir program programArgs env source = do
report $ MakePDFInfo "Command line:"
(T.pack program <> " " <> T.pack (unwords (map show programArgs)))
-- we filter out irrelevant stuff to avoid leaking passwords and keys!
- let isRelevant ("PATH",_) = True
- isRelevant ("TMPDIR",_) = True
- isRelevant ("PWD",_) = True
- isRelevant ("LANG",_) = True
- isRelevant ("HOME",_) = True
- isRelevant ("LUA_PATH",_) = True
- isRelevant ("LUA_CPATH",_) = True
- isRelevant ("SHELL",_) = True
- isRelevant ("TEXINPUTS",_) = True
- isRelevant ("TEXMFOUTPUT",_) = True
- isRelevant _ = False
+ let isRelevant e = (e `elem` [ "PKFONTS"
+ , "AFMFONTS"
+ , "BIBINPUTS"
+ , "BLTXMLINPUTS"
+ , "BSTINPUTS"
+ , "CLUAINPUTS"
+ , "CMAPFONTS"
+ , "CWEBINPUTS"
+ , "DVIPSHEADERS"
+ , "ENCFONTS"
+ , "FONTCIDMAPS"
+ , "FONTFEATURES"
+ , "GFFONTS"
+ , "GLYPHFONTS"
+ , "HOME"
+ , "INDEXSTYLE"
+ , "KPATHSEA_DEBUG"
+ , "KPATHSEA_WARNING"
+ , "LANG"
+ , "LIGFONTS"
+ , "LUAINPUTS"
+ , "LUA_CPATH"
+ , "LUA_PATH"
+ , "MFBASES"
+ , "MFINPUTS"
+ , "MFPOOL"
+ , "MFTINPUTS"
+ , "MISCFONTS"
+ , "MISSFONT_LOG"
+ , "MLBIBINPUTS"
+ , "MLBSTINPUTS"
+ , "MPINPUTS"
+ , "MPMEMS"
+ , "MPPOOL"
+ , "MPSUPPORT"
+ , "OCPINPUTS"
+ , "OFMFONTS"
+ , "OPENTYPEFONTS"
+ , "OPLFONTS"
+ , "OTPINPUTS"
+ , "OVFFONTS"
+ , "OVPFONTS"
+ , "PATH"
+ , "PDFTEXCONFIG"
+ , "PROGRAMFONTS"
+ , "PSHEADERS"
+ , "PWD"
+ , "RISINPUTS"
+ , "SELFAUTODIR"
+ , "SELFAUTOLOC"
+ , "SELFAUTOPARENT"
+ , "SFDFONTS"
+ , "SHELL"
+ , "T1FONTS"
+ , "T1INPUTS"
+ , "T42FONTS"
+ , "TEXBIB"
+ , "TEXCONFIG"
+ , "TEXDOCS"
+ , "TEXFONTMAPS"
+ , "TEXFONTS"
+ , "TEXFORMATS"
+ , "TEXINDEXSTYLE"
+ , "TEXINPUTS"
+ , "TEXMFCNF"
+ , "TEXMFDBS"
+ , "TEXMFINI"
+ , "TEXMFSCRIPTS"
+ , "TEXMFVAR"
+ , "TEXPICTS"
+ , "TEXPKS"
+ , "TEXPOOL"
+ , "TEXPSHEADERS"
+ , "TEXSOURCES"
+ , "TEX_HUSH"
+ , "TFMFONTS"
+ , "TMPDIR"
+ , "TRFONTS"
+ , "TTFONTS"
+ , "USERPROFILE"
+ , "USE_TEXMFVAR"
+ , "USE_VARTEXFONTS"
+ , "VARTEXFONTS"
+ , "VFFONTS"
+ , "WEB2C"
+ , "WEBINPUTS"
+ ]) || "TEXMF" `isPrefixOf` e
report $ MakePDFInfo "Relevant environment variables:"
- (T.intercalate "\n" $ map tshow $ filter isRelevant env)
+ (T.intercalate "\n" $ map tshow $ filter (isRelevant . fst) env)
report $ MakePDFInfo "Source:" source
handlePDFProgramNotFound :: String -> IE.IOError -> IO a