hmp3-ng-2.18.0: Config.hs
-- Copyright (c) 2005-2008 Don Stewart - http://www.cse.unsw.edu.au/~dons
-- Copyright (c) 2019-2021 Galen Huntington
-- SPDX-License-Identifier: GPL-2.0-or-later
module Config where
import qualified Data.Map as M
import Base
import Style
import Paths_hmp3_ng (version)
-- XXX some styles are currently unused, but planned is a CLI option to select
fixedStyles :: M.Map String UIStyle
fixedStyles = M.fromList
[ ("default", defaultStyle)
, ("dark", defaultStyle)
, ("light", lightBgStyle)
, ("mono", bwStyle)
, ("mutt", muttStyle)
]
defaultStyle :: UIStyle
defaultStyle = UIStyle { window = style "default" "default"
, titlebar = style "brightwhite" "green"
, selected = style "blue" "default"
, cursors = style "black" "cyan"
, combined = style "brightwhite" "cyan"
, warnings = style "red" "default"
, modals = style "black" "white"
, blockcursor= style "black" "red"
, progress = style "cyan" "white" }
-- | A style more suitable for light backgrounds
lightBgStyle :: UIStyle
lightBgStyle =
defaultStyle { selected = style "darkblue" "default"
, warnings = style "darkred" "default" }
--
-- | Another style for dark backgrounds, reminiscent of mutt
--
muttStyle :: UIStyle
muttStyle = UIStyle { window = style "brightwhite" "black"
, titlebar = style "green" "blue"
, selected = style "brightwhite" "black"
, cursors = style "black" "cyan"
, combined = style "black" "cyan"
, warnings = style "brightwhite" "red"
, modals = style "black" "cyan"
, blockcursor= style "black" "darkred"
, progress = style "cyan" "white" }
bwStyle :: UIStyle
bwStyle = UIStyle {
window = style "default" "default"
,titlebar = style "reverse" "reverse"
,selected = style "brightwhite" "default"
,cursors = style "reverse" "reverse"
,combined = style "reverse" "reverse"
,warnings = style "reverse" "reverse"
,modals = style "reverse" "reverse"
,blockcursor = style "reverse" "reverse"
,progress = style "reverse" "reverse"
}
------------------------------------------------------------------------
package :: String
package = "hmp3-ng"
versinfo :: String
versinfo = package ++ " v" ++ showVersion version