GNU/Linux >> Belajar Linux >  >> Linux

Apa itu mode keyboard mentah?

Saat Anda menekan tombol pada keyboard, kode numerik akan dikirimkan ke komputer, yang disebut kode pindai. Kode pemindaian memberi tahu komputer tombol mana yang ditekan; misalnya, pada keyboard khas AS, A kunci mengirimkan kode pindai 30 saat Anda menekannya (dan 158 saat Anda melepaskannya). Driver keyboard melaporkan kode ini langsung ke aplikasi saat keyboard dalam mode mentah ("mentah" berarti tidak diproses, langsung dari keyboard). Beberapa program menggunakan mode mentah dan melakukan pemrosesan keyboard mereka sendiri; server X adalah yang paling menonjol.

Sebagian besar program mengharapkannya saat Anda menekan tombol A kunci, program membaca karakter a (ASCII 97), dan saat Anda menekan Shift +A program membaca A (ASCII 65), dan saat Anda menekan Ctrl +A program membaca Ctrl+A karakter (ASCII 1). Kunci yang tidak memiliki karakter terkait mengirim escape sequence, mis. \e[A untuk Kiri , di mana \e adalah karakter ESC (ASCII 27). Driver keyboard melakukan terjemahan ini saat keyboard dalam mode ASCII, juga disebut mode XLATE (kependekan dari "translate"). Mode XLATE memungkinkan aplikasi melakukan input karakter, dengan biaya tidak memiliki akses ke nuansa seperti "Tombol Shift Kiri ditekan" atau Ctrl+Shift+A yang berbeda dari Ctrl+A.

kbd_mode memungkinkan Anda beralih antar mode, dan menampilkan mode saat ini jika Anda menjalankannya tanpa argumen apa pun.

Kombinasi tombol SysRq ajaib dimaksudkan untuk pulih dari berbagai situasi buruk. Salah satu kombinasi tombolnya adalah Alt+SysRq+K untuk mematikan semua program di konsol virtual saat ini; jika program itu meletakkan keyboard dalam mode mentah, maka Anda tidak akan dapat mengetik di prompt login (yang akan sering muncul, bergantung pada konfigurasi sistem Anda). Menekan Alt+SysRq+R memulihkan mode ASCII biasa (di luar X) tempat Anda dapat mengetik karakter.


Anda dapat menentukan jenis kode yang dikirimkan keyboard Anda. Ini dilakukan melalui mode keyboard. Anda dapat mengubah mode keyboard dengan kbd_mode .

Ini adalah opsi dari halaman manual:

   -s: scancode mode (RAW),
   -k: keycode mode (MEDIUMRAW),
   -a: ASCII mode (XLATE),
   -u: UTF-8 mode (UNICODE).

Jauh lebih mudah bagi developer untuk menangkap peristiwa penting seperti tombol shift kiri yang ditekan, jika dia bisa mendapatkan scancode dari tombol yang ditekan.


Linux
  1. Linux – Mode Keyboard Mentah?

  2. Apa?

  3. Emulator Terminal Apa yang Mendukung Mode Kontrol Tmux?

  1. Apa yang Digema $? Mengerjakan??

  2. Apa Artinya ( -perm -4000 -o -perm -2000 )?

  3. Tata Letak Keyboard Apa yang Memungkinkan Saya Mengetik ?

  1. Apa itu umask di UNIX/Linux

  2. Python dalam mode mentah stdin print menambahkan spasi

  3. Apa yang dilakukan manajer daya xfce4 dalam mode presentasi?