aboutsummaryrefslogtreecommitdiff
path: root/lib/Daffm/Configuration.hs
diff options
context:
space:
mode:
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