module Text.Pandoc.Filter.Plot.Renderers.Prelude (
module Prelude
, module Text.Pandoc.Filter.Plot.Types
, Text
, st
, unpack
, commandSuccess
, existsOnPath
) where
import Data.Maybe (isJust)
import Data.Text (Text, unpack)
import System.Exit (ExitCode(..))
import System.Process.Typed (runProcess, shell,
setStdout, setStderr,
nullStream)
import Text.Shakespeare.Text (st)
import qualified Turtle as Sh
import Text.Pandoc.Filter.Plot.Types
commandSuccess :: Text -> IO Bool
commandSuccess s = do
ec <- runProcess
$ setStdout nullStream
$ setStderr nullStream
$ shell (unpack s)
return $ ec == ExitSuccess
existsOnPath :: FilePath -> IO Bool
existsOnPath fp = Sh.which (Sh.fromString fp) >>= fmap isJust . return