Portál AbcLinuxu, 9. listopadu 2025 01:07
Dobrý den, mám dvě klávesnice připojené k jednomu počítači.Jedna klávesnice je standartní pro běžnou práci.
Ta druhá by měla sloužit pro zadávání hesla a měla by být čtena pouze mojí aplikací. Obě jsou hidraw zařízení.
Bohužel netuším jak to udělat. Díky za každou radu nebo link.
#!/bin/bash
PARAMETR=$1
KBS1="Chicony 2.4G Multimedia Wireless Kit"
POS1="Chicony 2.4G Multimedia Wireless Kit"
KB1=$(xinput list | sed -e "s/^.\+[[:blank:]]$KBS1[[:blank:]]\+id=\([0-9]\+\)[[:blank:]]\+\[floating slave]\$\|^.\+[[:blank:]]$KBS1[[:blank:]]\+id=\([0-9]\+\)[[:blank:]]\+\[slave[[:blank:]]\+keyboard[[:blank:]]\+([0-9]\+)\]\$/\1\2/ p ;d")
PO1=$(xinput list | sed -e "s/^.\+[[:blank:]]$POS1[[:blank:]]\+id=\([0-9]\+\)[[:blank:]]\+\[floating slave]\$\|^.\+[[:blank:]]$POS1[[:blank:]]\+id=\([0-9]\+\)[[:blank:]]\+\[slave[[:blank:]]\+pointer[[:blank:]]\+([0-9]\+)\]\$/\1\2/ p ;d")
case $PARAMETR in
(2)
xinput --remove-master "$(xinput list | sed -e "s/^.[[:blank:]]blabla pointer[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")" 2>/dev/null
xinput --create-master blabla
xinput reattach $PO1 "$(xinput list | sed -e "s/^.[[:blank:]]blabla pointer[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")"
xinput reattach $KB1 "$(xinput list | sed -e "s/^.[[:blank:]]blabla keyboard[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")"
;;
(1)
xinput --remove-master "$(xinput list | sed -e "s/^.[[:blank:]]blabla pointer[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")" 2>/dev/null
xinput reattach $PO1 "$(xinput list | sed -e "s/^.[[:blank:]]Virtual core pointer[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")"
xinput reattach $KB1 "$(xinput list | sed -e "s/^.[[:blank:]]Virtual core keyboard[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")"
;;
esac
Marek
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.