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 []
 |