aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/user/desktop/scripts/switchkbdlayout.sh3
-rw-r--r--modules/user/desktop/sessions/sway.nix3
2 files changed, 5 insertions, 1 deletions
diff --git a/modules/user/desktop/scripts/switchkbdlayout.sh b/modules/user/desktop/scripts/switchkbdlayout.sh
new file mode 100644
index 0000000..964ee8e
--- /dev/null
+++ b/modules/user/desktop/scripts/switchkbdlayout.sh
@@ -0,0 +1,3 @@
+#!/usr/bin/env bash
+# Just sends a notification when switching keyboard layout.
+swaymsg input 'type:keyboard' xkb_switch_layout next && notify-send -eu low -t 3000 "Switched keyboard layout" "$(swaymsg -rt get_inputs | jq -r '.[] | select(.type == "keyboard").xkb_active_layout_name' | head -n1)"
diff --git a/modules/user/desktop/sessions/sway.nix b/modules/user/desktop/sessions/sway.nix
index 631235a..385a5f0 100644
--- a/modules/user/desktop/sessions/sway.nix
+++ b/modules/user/desktop/sessions/sway.nix
@@ -158,6 +158,7 @@
mod = config.wayland.windowManager.sway.config.modifier;
scripts = {
screenshot = pkgs.writeShellScript "screenshot" (builtins.readFile ../scripts/screenshot.sh);
+ switchkbdlayout = pkgs.writeShellScript "switchkbdlayout" (builtins.readFile ../scripts/switchkbdlayout.sh);
};
terminal = "${pkgs.foot}/bin/foot";
in
@@ -167,7 +168,7 @@
"${mod}+B" = "exec ${pkgs.librewolf}/bin/librewolf";
"${mod}+Shift+S" = "exec ${scripts.screenshot}";
"${mod}+Alt+L" = "exec ${pkgs.swaylock}/bin/swaylock";
- "${mod}+Alt+K" = "input type:keyboard xkb_switch_layout next";
+ "${mod}+Alt+K" = "exec ${scripts.switchkbdlayout}";
"${mod}+Alt+Q" = "exit";
"${mod}+Q" = "kill";
"${mod}+1" = "workspace 1";