From bc38ab74defb5e103e81c8072268a806595b0d91 Mon Sep 17 00:00:00 2001 From: Dmitriy Pleshevskiy Date: Wed, 1 May 2024 14:56:36 +0300 Subject: [PATCH] modules/keymap: don't validate by buffer --- modules/build/neovim.nix | 3 +-- modules/fn.nix | 4 +--- modules/vim/keymap.nix | 8 +++----- 3 files changed, 5 insertions(+), 10 deletions(-) diff --git a/modules/build/neovim.nix b/modules/build/neovim.nix index 2c63d9b..e67b17e 100644 --- a/modules/build/neovim.nix +++ b/modules/build/neovim.nix @@ -43,10 +43,9 @@ in # Keymaps (lib.flip map config.vim.keymap.set ({ mode, lhs, rhs, ... } @ vars: let - buf = lib.optionalString (vars.buffer != null) vars.buffer; m = if builtins.isList mode then lib.head mode else mode; in - if config.vim.keymap._validate."${buf}"."${m}"."${lhs}" == rhs then vars.genConfig + if config.vim.keymap._validate."${m}"."${lhs}" == rhs then vars.genConfig else abort "This case should never happen." )) ])); diff --git a/modules/fn.nix b/modules/fn.nix index 3e36be0..17a6253 100644 --- a/modules/fn.nix +++ b/modules/fn.nix @@ -1,7 +1,6 @@ { lib, ... }: let - fnOpts = { name, config, ... }: { options = with lib; { args = mkOption { @@ -43,10 +42,9 @@ let (lib.flip map innerCfg.vim.keymap.set ({ mode, lhs, rhs, ... } @ vars: let - buf = lib.optionalString (vars.buffer != null) vars.buffer.raw; m = if builtins.isList mode then lib.head mode else mode; in - if innerCfg.vim.keymap._validate."${buf}"."${m}"."${lhs}" == rhs then vars.genConfig + if innerCfg.vim.keymap._validate."${m}"."${lhs}" == rhs then vars.genConfig else abort "This case should never happen." )) ]); diff --git a/modules/vim/keymap.nix b/modules/vim/keymap.nix index ce13076..e628e30 100644 --- a/modules/vim/keymap.nix +++ b/modules/vim/keymap.nix @@ -4,8 +4,8 @@ let cfg = config.vim.keymap; in { options.vim.keymap = with lib; { _validate = mkOption { - # buffer mode lhs rhs - type = with types; attrsOf (attrsOf (attrsOf (either str attrs))); + # mode lhs rhs + type = with types; attrsOf (attrsOf (either str attrs)); visible = false; internal = true; readOnly = true; @@ -29,12 +29,10 @@ let cfg = config.vim.keymap; in else if m == "l" then [ m "i" "c" "l" ] else m ))); - - buf = lib.optionalString (buffer != null) buffer.raw; in lib.foldl lib.recursiveUpdate { } (lib.flip map unwrappedModes (m: { - "${buf}"."${m}"."${lhs}" = rhs; + "${m}"."${lhs}" = rhs; })) ) cfg.set);