added mod + space for toggeling keyboard layouts

This commit is contained in:
Jürg Hallenbarter
2026-02-10 09:23:11 +00:00
parent c114324dfc
commit 8ff6123893
2 changed files with 7 additions and 17 deletions

View File

@@ -1,10 +1,8 @@
#!/bin/bash
if [ -n "$SWAYSOCK" ]; then
# Sway
swaymsg input "*" xkb_layout "ch"
swaymsg input "*" xkb_variant "de"
swaymsg input type:keyboard xkb_layout "us,ch"
swaymsg input type:keyboard xkb_variant "workman,de"
else
# i3
setxkbmap -layout ch -variant de
setxkbmap -layout us,ch -variant workman,de
fi

View File

@@ -1,19 +1,11 @@
#!/bin/bash
# Toggle between CH and US layouts
# layout-toggle.sh
if [ -n "$SWAYSOCK" ]; then
# Sway: get current layout and toggle
current=$(swaymsg -t get_inputs | jq -r '.[] | select(.type=="keyboard") | .xkb_active_layout_name' | head -1)
if [ "$current" = "Swiss" ] || [ "$current" = "ch" ]; then
swaymsg input "*" xkb_layout "us"
swaymsg input "*" xkb_variant "workman"
else
swaymsg input "*" xkb_layout "ch"
swaymsg input "*" xkb_variant "de"
fi
swaymsg input type:keyboard xkb_switch_layout next
else
# i3: get current layout and toggle
current=$(setxkbmap -query | grep layout | awk '{print $2}')
current=$(setxkbmap -query | awk '/layout/{print $2}')
if [ "$current" = "ch" ]; then
setxkbmap -layout us -variant workman
else