Saya tahu saya bisa gunakan xinput
untuk memetakan kembali tombol mouse hanya pada satu mouse tetapi membiarkan yang lain tidak berubah. Ini sangat berguna. Dalam kasus saya, saya menggunakannya untuk menghubungkan dua tikus ke desktop saya, satu tangan kanan dan satu tangan kiri.
Bisakah hal seperti ini juga dilakukan ketika ada lebih dari satu keyboard yang terhubung? Bisakah saya memetakan ulang tombol ke tombol lain pada satu keyboard, dan membiarkan yang lain tidak berubah?
Dalam kasus khusus saya, mouse saya tampaknya terdaftar sebagai keyboard tambahan dan tombol 6 dan 7 diterjemahkan ke pageupdan pagedown, saya ingin mengikatnya untuk disalin / ditempelkan sebagai gantinya - tetapi saya tidak ingin memengaruhi tombol biasa pageupdan pagedowntombol pada keyboard standar saya.
Begini cara output xinput
tampilannya - keyboard yang dimaksud adalah dengan id 10:
$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SteelSeries Diablo III Gaming Mouse id=9 [slave pointer (2)]
⎜ ↳ SteelSeries Diablo III Gaming Mouse id=11 [slave pointer (2)]
⎜ ↳ Logitech USB Optical Mouse id=12 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ Creative Technology Ltd SB Tactic3D Rage USB id=8 [slave keyboard (3)]
↳ SteelSeries Diablo III Gaming Mouse id=10 [slave keyboard (3)]
↳ Logitech USB Keyboard id=13 [slave keyboard (3)]
↳ Logitech USB Keyboard id=14 [slave keyboard (3)]
↳ HP WMI hotkeys id=15 [slave keyboard (3)]
xinput float 10
apakah mouse berhenti bekerja sama sekali? Kemudian jalankanxinput reattach 10 3
Jawaban:
Pertanyaan Anda lebih tentang memetakan kembali tombol mouse daripada tombol keyboard, bukan? Saya pikir ImWheel dapat memetakan ulang beberapa perangkat. Saya menggunakannya dan memiliki langgan di sini: http://www.gdargaud.net/Hack/LinuxMouse.html
sumber
Ini tidak dapat dilakukan dengan xinput / xf86-input-evdev, Anda harus melakukannya langsung di evdev, periksa paket evtest.
sumber