summaryrefslogtreecommitdiff
path: root/extras/keymap/keyboard-force-release.sh
blob: b157ac310d11976bbfc915d7287016f23f6cc07a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/sh -e
# read list of scancodes, convert hex to decimal and
# append to the atkbd force_release sysfs attribute
# $1 sysfs devpath for serioX
# $2 file with scancode list (hex or dec)

case "$2" in
	/*) scf="$2" ;;
	*)  scf="/lib/udev/keymaps/force-release/$2" ;;
esac

read attr <"/sys/$1/force_release"
while read scancode dummy; do
	case "$scancode" in
		\#*) ;;
		*)
			scancode=$(($scancode))
			attr="$attr${attr:+,}$scancode"
			;;
	esac
done <"$scf"
echo "$attr" >"/sys/$1/force_release"