From e87b4a94593e9325814a3087e057fc8d931c6c49 Mon Sep 17 00:00:00 2001 From: Natsu Kagami Date: Thu, 29 Sep 2022 09:55:05 +0200 Subject: [PATCH] Key binding for moving workspaces between outputs --- home/modules/programs/my-sway/default.nix | 35 ++++++++++++++--------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/home/modules/programs/my-sway/default.nix b/home/modules/programs/my-sway/default.nix index 661dae7..21d04d1 100644 --- a/home/modules/programs/my-sway/default.nix +++ b/home/modules/programs/my-sway/default.nix @@ -117,22 +117,23 @@ in # Main modifier modifier = mod; keybindings = lib.mkOptionDefault - ({ - ## Splits - "${mod}+v" = "split v"; - "${mod}+Shift+v" = "split h"; - ## Run - "${mod}+r" = "exec ${config.wayland.windowManager.sway.config.menu}"; - "${mod}+Shift+r" = "mode resize"; - ## Screenshot - "Print" = "exec ${screenshotScript}/bin/screenshot"; - ## Locking - "${mod}+semicolon" = "exec ${pkgs.swaylock}/bin/swaylock" + ( + { + ## Splits + "${mod}+v" = "split v"; + "${mod}+Shift+v" = "split h"; + ## Run + "${mod}+r" = "exec ${config.wayland.windowManager.sway.config.menu}"; + "${mod}+Shift+r" = "mode resize"; + ## Screenshot + "Print" = "exec ${screenshotScript}/bin/screenshot"; + ## Locking + "${mod}+semicolon" = "exec ${pkgs.swaylock}/bin/swaylock" + (if cfg.wallpaper == "" then "" else " -i ${cfg.wallpaper} -s fit") + " -l -k"; - } // ( + } // # Map the workspaces - builtins.listToAttrs (lib.flatten (map + (builtins.listToAttrs (lib.flatten (map (key: [ { name = "${mod}+${key}"; @@ -144,7 +145,13 @@ in } ]) (builtins.attrNames wsAttrs)) - ))); + )) // + # Move workspaces between outputs + { + "${mod}+ctrl+h" = "move workspace to output left"; + "${mod}+ctrl+l" = "move workspace to output right"; + } + ); ### Fonts #