aboutsummaryrefslogtreecommitdiff
path: root/lib/Daffm/Configuration.hs
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2025-10-05 15:28:56 +0530
committerAkshay Nair <phenax5@gmail.com>2025-10-05 16:30:10 +0530
commit332fed0c0936a48b5cb68ebd7b2dc4d96003008e (patch)
tree9549cf8aababa2c47b116edfb448adf7a9d6b595 /lib/Daffm/Configuration.hs
parenta4144c0c6e0d3df3740c70b9ad947642d9d48ac6 (diff)
downloaddaffm-332fed0c0936a48b5cb68ebd7b2dc4d96003008e.tar.gz
daffm-332fed0c0936a48b5cb68ebd7b2dc4d96003008e.zip
Add opener script in config
Diffstat (limited to 'lib/Daffm/Configuration.hs')
-rw-r--r--lib/Daffm/Configuration.hs7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/Daffm/Configuration.hs b/lib/Daffm/Configuration.hs
index a27d616..cc4749d 100644
--- a/lib/Daffm/Configuration.hs
+++ b/lib/Daffm/Configuration.hs
@@ -27,9 +27,14 @@ configurationCodec :: Toml.TomlCodec Configuration
configurationCodec =
Configuration
<$> (keymapCodec "keymap" .= configKeymap)
+ <*> (openerCodec "opener" .= configOpener)
<*> pure Map.empty .= configTheme
where
- keymapCodec = Toml.dimap (const Map.empty) toKeymap . keymapRawCodec
+ openerCodec = Toml.dioptional . Toml.text
+
+keymapCodec :: Toml.Key -> Toml.TomlCodec Keymap
+keymapCodec = Toml.dimap (const Map.empty) toKeymap . keymapRawCodec
+ where
keymapRawCodec = Toml.tableMap Toml._KeyText Toml.text
toKeymap = Map.fromList . map (bimap toKeys toCmd) . Map.toList
toKeys = fromMaybe [] . parseKeySequence