diff options
Diffstat (limited to 'modules/by-name/lf')
| -rw-r--r-- | modules/by-name/lf/lf/module.nix | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/modules/by-name/lf/lf/module.nix b/modules/by-name/lf/lf/module.nix index 435df119..2d80f68e 100644 --- a/modules/by-name/lf/lf/module.nix +++ b/modules/by-name/lf/lf/module.nix @@ -33,14 +33,15 @@ } "lf command map"; process = prefix: attrs: - lib.mapAttrsToList (name: value: + lib.mapAttrsToList (name: value: let + new_prefix = + if prefix == null + then name + else prefix + name; + in if (builtins.isAttrs value) - then - (process name value) - ++ [(lib.nameValuePair name null)] - else if prefix == null - then (lib.nameValuePair name value) - else (lib.nameValuePair (prefix + name) value)) + then (process new_prefix value) ++ [(lib.nameValuePair new_prefix null)] + else (lib.nameValuePair new_prefix value)) attrs; keybindings = builtins.listToAttrs (lib.lists.flatten (process null keybindings_raw)); |
