keyboard-force-release.sh 621 B

12345678910111213141516171819202122
  1. #!/bin/sh -e
  2. # read list of scancodes, convert hex to decimal and
  3. # append to the atkbd force_release sysfs attribute
  4. # $1 sysfs devpath for serioX
  5. # $2 file with scancode list (hex or dec)
  6. case "$2" in
  7. /*) scf="$2" ;;
  8. *) scf="/lib/udev/keymaps/force-release/$2" ;;
  9. esac
  10. read attr <"/sys/$1/force_release"
  11. while read scancode dummy; do
  12. case "$scancode" in
  13. \#*) ;;
  14. *)
  15. scancode=$(($scancode))
  16. attr="$attr${attr:+,}$scancode"
  17. ;;
  18. esac
  19. done <"$scf"
  20. echo "$attr" >"/sys/$1/force_release"