Browse Source

Update SwitchKeyboardLayout.sh

Changing the keyboard layout for all keyboards connected to the computer.
pull/292/head
GrafMonteCarlo 2 years ago committed by GitHub
parent
commit
e66c4e6047
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 37
      config/hypr/scripts/SwitchKeyboardLayout.sh

37
config/hypr/scripts/SwitchKeyboardLayout.sh

@ -41,5 +41,38 @@ new_layout="${layout_mapping[next_index]}"
hyprctl switchxkblayout "at-translated-set-2-keyboard" "$new_layout" hyprctl switchxkblayout "at-translated-set-2-keyboard" "$new_layout"
echo "$new_layout" > "$layout_f" echo "$new_layout" > "$layout_f"
# Notification for the new keyboard layout # Created by T-Crypt
notify-send -u low -i "$notif" "new KB_Layout: $new_layout"
get_keyboard_names() {
hyprctl devices -j | jq -r '.keyboards[].name'
}
change_layout() {
local got_error=false
while read -r name; do
hyprctl switchxkblayout "$name" next
if [[ $? -eq 0 ]]; then
echo "Switched the layout for $name."
else
>&2 echo "Error while switching the layout for $name."
got_error=true
fi
done <<< "$(get_keyboard_names)"
if [ "$got_error" = true ]; then
>&2 echo "Some errors were found during the process..."
return 1
fi
return 0 # All layouts had been cycled successfully
}
if ! change_layout; then
notify-send -u low -t 2000 'Keyboard layout' 'Error: Layout change failed'
>&2 echo "Layout change failed."
exit 1
else
# Notification for the new keyboard layout
notify-send -u low -i "$notif" "new KB_Layout: $new_layout"
fi

Loading…
Cancel
Save