Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Blammo.Logging.Colors
Description
Generic facilities for adding terminal escapes to Text
Recommended usage:
Colors {..} <- getColorsLogger
-- for example
pure $ "This text will be " <> red "red" <> "."
Synopsis
- data Colors = Colors {}
- noColors :: Colors
- getColors :: Bool -> Colors
- getColorsLogger :: (MonadReader env m, HasLogger env) => m Colors
- getColorsHandle :: (MonadIO m, MonadReader env m, HasLogger env) => Handle -> m Colors
- getColorsStdout :: (MonadIO m, MonadReader env m, HasLogger env) => m Colors
- getColorsStderr :: (MonadIO m, MonadReader env m, HasLogger env) => m Colors
Documentation
getColorsLogger :: (MonadReader env m, HasLogger env) => m Colors Source #
Return Colors
consistent with whatever your logging is doing
getColorsHandle :: (MonadIO m, MonadReader env m, HasLogger env) => Handle -> m Colors Source #
Return Colors
consistent with logging, but for Handle
This is useful if you are building text to print to a handle that is not the one you are logging to.
For example, say you are using,
LOG_COLOR=auto LOG_DESTINATION=@some-file.log
That will not log with color, so getColorsLogger
will be noColor
. If
you're building other text to be printed out, you probably want to respect
that LOG_COLOR=auto
, so you would use this function instead.
getColorsStdout :: (MonadIO m, MonadReader env m, HasLogger env) => m Colors Source #
Short-cut for getColorsHandle
stdout
getColorsStderr :: (MonadIO m, MonadReader env m, HasLogger env) => m Colors Source #
Short-cut for getColorsHandle
stderr