mirror of
https://github.com/simonmichael/hledger.git
synced 2024-12-28 04:46:31 +03:00
24 lines
626 B
Haskell
24 lines
626 B
Haskell
-- | Basic color helpers for prettifying console output.
|
|
|
|
{-# LANGUAGE OverloadedStrings #-}
|
|
|
|
module Hledger.Utils.Color
|
|
(
|
|
color,
|
|
bgColor,
|
|
Color(..),
|
|
ColorIntensity(..)
|
|
)
|
|
where
|
|
|
|
import System.Console.ANSI
|
|
|
|
|
|
-- | Wrap a string in ANSI codes to set and reset foreground colour.
|
|
color :: ColorIntensity -> Color -> String -> String
|
|
color int col s = setSGRCode [SetColor Foreground int col] ++ s ++ setSGRCode []
|
|
|
|
-- | Wrap a string in ANSI codes to set and reset background colour.
|
|
bgColor :: ColorIntensity -> Color -> String -> String
|
|
bgColor int col s = setSGRCode [SetColor Background int col] ++ s ++ setSGRCode []
|