GNU/Linux >> Belajar Linux >  >> Linux

Penangkapan acara keyboard Linux /dev/inputX

Halo,

Saya baru-baru ini mencoba mencapai sesuatu yang serupa.

Lihat proyek logkeys:

http://code.google.com/p/logkeys/

Jika Anda mengunduh kode sumber, dan melihat file logkeys.cc, Anda akan menemukan satu metode untuk mendeteksi secara otomatis /dev/input/event mana yang digunakan oleh keyboard Anda. Ini akan memungkinkan Anda membaca kode pemindaian mentah dari keyboard, terlepas dari program mana yang saat ini memiliki fokus. Program logkeys juga menunjukkan cara menerjemahkan kode pindaian menjadi karakter, dan trik berguna lainnya.

Semoga ini bisa membantu,

Markus.


Sebuah grep sederhana operasi pada /proc/bus/input/devices file akan menghasilkan semua keyboard yang dicolokkan ke mesin:

 grep -E  'Handlers|EV=' /proc/bus/input/devices | \
 grep -B1 'EV=120013' | \
 grep -Eo 'event[0-9]+'

Dimana EV=120013 adalah bitmask untuk acara yang didukung oleh perangkat. Seperti yang dijelaskan di sini.

Ini adalah cara penerapannya di logkeys


Anda membaca perangkat yang salah. Coba semua /dev/input/event* atau lihat di /var/log/Xorg.0.log perangkat mana yang digunakan untuk keyboard Anda.


Linux
  1. Apa itu file /dev/zero dan /dev/null di Linux?

  2. Bagaimana cara menyandikan base64 /dev/random atau /dev/urandom?

  3. Kapan saya harus menggunakan /dev/shm/ dan kapan saya harus menggunakan /tmp/?

  1. Linux:Perbedaan antara /dev/console , /dev/tty dan /dev/tty0

  2. kernel:menonaktifkan /dev/kmem dan /dev/mem

  3. Bagaimana Linux menggunakan /dev/tty dan /dev/tty0

  1. Bagaimana cara mengganti harddisk yang gagal di RAID perangkat lunak Linux

  2. Linux:Perbedaan Antara /dev/console , /dev/tty Dan /dev/tty0?

  3. Apakah salah menautkan /dev/random ke /dev/urandom di Linux?