From 592f9251e55143a716c921eeecd8cb40ec6b70bb Mon Sep 17 00:00:00 2001 From: Dmitriy Pleshevskiy Date: Fri, 24 May 2024 15:23:38 +0300 Subject: [PATCH] modules/fn: fix using autocommands in the functions --- modules/fn.nix | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/modules/fn.nix b/modules/fn.nix index 39bd72d..01cc107 100644 --- a/modules/fn.nix +++ b/modules/fn.nix @@ -40,16 +40,17 @@ let config = { lambda = let - fnArgs = builtins.listToAttrs (map (v: { name = v; value = raw v; }) config.args); + inherit (builtins) listToAttrs attrValues; + fnArgs = listToAttrs (map (v: { name = v; value = raw v; }) config.args); innerCfg = config.content fnArgs; in lambda config.args (lib.flatten [ innerCfg.extra - + # Autocommands + (map (v: v.genConfig) (attrValues innerCfg.vim.augroup)) + # Keymaps (lib.flip map innerCfg.vim.keymap.set ({ mode, lhs, rhs, ... } @ vars: - let - m = if builtins.isList mode then lib.head mode else mode; - in + let m = if builtins.isList mode then lib.head mode else mode; in if innerCfg.vim.keymap._validate."${m}"."${lhs}" == rhs then vars.genConfig else abort "This case should never happen." ))