aboutsummaryrefslogtreecommitdiff
path: root/x/mouse-props
blob: 504f1975a4a27eb2e3e3afd5bcc1c8688ed8caa2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/bin/sh

mice="G305|Viper|Naga Pro|Orochi V2|Viper V2|Hydrogen"

listMice() {
	xinput --list \
		| awk -v "search=$mice" \
		'{
			if ($0 ~ search) {
				if ( $0 ~ /pointer/ ) {
					$1=$2="";
					print $0
				}
			}
		}' \
		| sed -re's/.* id=([0-9]*).*/\1/g' # -e's/^[ \t]*//g'
}
xinput --list | grep pointer | grep -E "$mice"
mice="$(listMice)"

proplist='Accel Profile Enabled::0 1
Accel Speed::0'
# Accel Speed::-0.7'

IFS='
'

for device in $mice ; do
	# props=$(xinput --list-props "pointer:$device")
	props=$(xinput --list-props "$device")

	for prop in $proplist ; do
		propName="$(echo "$prop" | awk -F:: '{print $1}')"
		propVal="$(echo "$prop" | awk -F:: '{print $2}')"

		prop="$(echo "$props" |
			sed -rne 's/^.*'"$propName"' \(([0-9]+).*$/\1/ip')"
		oldIFS="$IFS"
		IFS=' '

		#shellcheck disable=SC2086
		xinput --set-prop "$device" "$prop" $propVal
		#shellcheck disable=SC2086
		echo xinput --set-prop "$device" "$prop" $propVal

		IFS="$oldIFS"
	done
done