76 lines
2.0 KiB
Bash
Executable File
76 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Calc swich
|
|
key_input=$1
|
|
flag=$2
|
|
|
|
workspace_number=$(swaymsg -t get_workspaces | jq -r '.[] | select(.focused==true) | .name')
|
|
last_workspace=$(cat /tmp/last_workspace 2>/dev/null)
|
|
f_key_number=$(cat /tmp/f_key_number 2>/dev/null || echo 0)
|
|
digit_key_number=$(cat /tmp/digit_key_number 2>/dev/null || echo 0)
|
|
|
|
case $key_input in
|
|
F1) f_key_number=1 ;;
|
|
F2) f_key_number=2 ;;
|
|
F3) f_key_number=3 ;;
|
|
F4) f_key_number=4 ;;
|
|
F5) f_key_number=5 ;;
|
|
F6) f_key_number=6 ;;
|
|
F7) f_key_number=7 ;;
|
|
F8) f_key_number=8 ;;
|
|
F9) f_key_number=9 ;;
|
|
F10) f_key_number=10 ;;
|
|
F11) f_key_number=11 ;;
|
|
F12) f_key_number=12 ;;
|
|
0) digit_key_number=10;;
|
|
[1-9]) digit_key_number=$key_input ;;
|
|
*) echo "Invalid key input"; exit 1 ;;
|
|
esac
|
|
workspace_number=$((f_key_number * 10 + digit_key_number))
|
|
|
|
# Hooks
|
|
case $workspace_number in
|
|
30) workspace_number=48 ;; # Krita
|
|
esac
|
|
|
|
# swich
|
|
if [[ $flag == "move" ]]; then
|
|
swaymsg move container to workspace number $workspace_number
|
|
else
|
|
swaymsg workspace $workspace_number
|
|
fi
|
|
|
|
echo "$current_workspace" > /tmp/last_workspace
|
|
echo "$f_key_number" > /tmp/f_key_number
|
|
echo "$digit_key_number" > /tmp/digit_key_number
|
|
# End swich
|
|
|
|
|
|
|
|
|
|
|
|
# Post swich
|
|
case $workspace_number in
|
|
51)
|
|
xinput set-prop "ASUE1305:00 04F3:3212 Touchpad" "libinput Disable While Typing Enabled" 0
|
|
;;
|
|
48)
|
|
xinput set-prop "ASUE1305:00 04F3:3212 Touchpad" "libinput Disable While Typing Enabled" 0
|
|
;;
|
|
30)
|
|
xinput set-prop "ASUE1305:00 04F3:3212 Touchpad" "libinput Disable While Typing Enabled" 0
|
|
;;
|
|
18)
|
|
xinput set-prop "ASUE1305:00 04F3:3212 Touchpad" "libinput Disable While Typing Enabled" 0
|
|
;;
|
|
*)
|
|
xinput set-prop "ASUE1305:00 04F3:3212 Touchpad" "libinput Disable While Typing Enabled" 1
|
|
;;
|
|
esac
|
|
|
|
case $workspace_number in
|
|
*)
|
|
setxkbmap us; sleep 0.1; setxkbmap -layout "us,ru" -option "grp:alt_shift_toggle"
|
|
;;
|
|
esac
|