diff options
Diffstat (limited to 'modules/by-name/ri')
-rw-r--r-- | modules/by-name/ri/river/keymap.nix | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/modules/by-name/ri/river/keymap.nix b/modules/by-name/ri/river/keymap.nix index 8ad341aa..6873f40e 100644 --- a/modules/by-name/ri/river/keymap.nix +++ b/modules/by-name/ri/river/keymap.nix @@ -8,15 +8,19 @@ index2tag = input: builtins.toString (libraries.base.pow 2 (input - 1)); mkTagCommand = name: index: [name (index2tag index)]; - mkSpawn' = pkg: binaryName: args: { - command = [ - "spawn" - "${lib.getExe' pkg binaryName} ${args}" - ]; + mkSpawnInner = pkg: binaryName: args: further: (further + // { + command = [ + "spawn" + "${lib.getExe' pkg binaryName} ${args}" + ]; - description = "${binaryName} ${args}"; - }; + description = "${binaryName} ${args}"; + }); + + mkSpawnOnce = pkg: args: (mkSpawnInner pkg pkg.meta.mainProgram args {once = true;}); mkSpawn = pkg: args: (mkSpawn' pkg pkg.meta.mainProgram args); + mkSpawn' = pkg: binaryName: args: (mkSpawnInner pkg binaryName args {}); cfg = config.soispha.programs.river; in { @@ -36,7 +40,7 @@ in { "b" = mkSpawn pkgs.tskm "open select"; "k" = mkSpawn pkgs.keepassxc ""; "s" = mkSpawn pkgs.signal-desktop ""; - "p" = mkSpawn pkgs.screenshot_persistent ""; + "p" = mkSpawnOnce pkgs.screenshot_persistent ""; }; # Client changes |