{ config, lib, ... }: let cfg = config.soispha.programs.nvim; in { home-manager.users.soispha.programs.nixvim = lib.mkIf cfg.enable { plugins.leap = { enable = true; addDefaultMappings = false; # They don't work with dvorak. safeLabels = [ "f" "j" "k" "l" "/" "z" "S" "F" "J" "K" "L" "H" "W" "E" "M" "B" "U" "X" "?" "Z" ]; }; keymaps = [ { key = "j"; action = "(leap-forward-to)"; options.desc = "jump forward to"; } { key = "J"; action = "(leap-backward-to)"; options.desc = "jump backward to"; } { key = "gj"; action = "(leap-from-window)"; options.desc = "jump to enterable windows"; } /* {key= "x"; mode = "v"; action = "(leap-forward-till)"; options.desc = "leap forward till"; } {key= "X"; mode = "v"; action = "(leap-backward-till)"; options.desc = "leap backward till"; } */ ]; }; }