{-# LANGUAGE CPP #-}
module OptEnvConf.Terminal
( getTerminalCapabilitiesFromHandle,
)
where
#if !defined(mingw32_HOST_OS)
import Text.Colour.Capabilities.FromEnv (getTerminalCapabilitiesFromHandle)
#else
import System.IO (Handle, hIsTerminalDevice)
import Text.Colour.Capabilities (TerminalCapabilities (..))
getTerminalCapabilitiesFromHandle :: Handle -> IO TerminalCapabilities
getTerminalCapabilitiesFromHandle h = do
isTerm <- hIsTerminalDevice h
pure $ if isTerm then With8BitColours else WithoutColours
#endif