3 ##################################
4 ## set mouse speed for libinput ##
5 ##################################
9 # detect connected mouse devices
10 IDS=$(xinput | grep -o 'id=[0-9]*' | grep -o '[0-9]*')
11 echo "generating mouse IDS"
12 [ -e /tmp/mouse ] && rm /tmp/mouse
13 while read -r line; do
14 if xinput list-props "$line" | grep -q 'libinput Accel Speed'; then
16 echo "$line" >>/tmp/mouse
19 iconf mouse "$(cat /tmp/mouse)"
23 while read -r line; do
24 xinput set-prop $line "libinput Accel Speed" "${2:--0.4}"
25 done <<<"$(iconf mouse)"
29 if [ "$2" = "0" ]; then
30 iconf -i reversemouse 1
32 iconf -i reversemouse 0
36 if iconf -i reversemouse; then
37 iconf -i reversemouse 0
38 while read -r line; do
39 xinput set-prop $line "libinput Natural Scrolling Enabled" "0"
40 done <<<"$(iconf mouse)"
41 echo "reverse scrolling disabled"
43 iconf -i reversemouse 1
44 echo "reverse scrolling enabled"
45 while read -r line; do
46 xinput set-prop $line "libinput Natural Scrolling Enabled" "1"
47 done <<<"$(iconf mouse)"
51 # get current sensitivity
52 xinput list-props "$(iconf mouse | head -1)" | grep 'libinput Accel Speed' | head -1 | grep -o '[-.0-9]*$'