GNU/Linux >> Znalost Linux >  >> Linux

Co je režim raw klávesnice?

Když stisknete klávesu na klávesnici, odešle se do počítače číselný kód, který se nazývá skenovací kód. Skenovací kód sděluje počítači, která klávesa byla stisknuta; například na typické americké klávesnici A klávesa odešle skenovací kód 30, když jej stisknete (a 158, když jej uvolníte). Ovladač klávesnice hlásí tyto kódy přímo aplikacím, když je klávesnice v nezpracovaném režimu („raw“ znamená nezpracované, přímo z klávesnice). Několik programů používá režim raw a provádí vlastní zpracování klávesnice; X server je nejprominentnější.

Většina programů to očekává, když stisknete A program přečte znak a (ASCII 97), a to když stisknete Shift +A program přečte A (ASCII 65), a když stisknete Ctrl +A program čte Ctrl+A znak (ASCII 1). Klávesy, které nemají přiřazené znaky, odesílají sekvence escape, např. \e[A pro vlevo , kde \e je znak ESC (ASCII 27). Ovladač klávesnice provádí tento překlad, když je klávesnice v režimu ASCII, nazývaném také režim XLATE (zkratka pro „přeložit“). Režim XLATE umožňuje aplikacím zadávat znaky za cenu toho, že nemají přístup k takovým nuancím, jako je „stisknuta levá klávesa Shift“ nebo Ctrl+Shift+A na rozdíl od Ctrl+A.

kbd_mode umožňuje přepínat mezi režimy a zobrazuje aktuální režim, pokud jej vyvoláte bez jakéhokoli argumentu.

Kouzelné kombinace kláves SysRq jsou určeny k zotavení z různých nepříjemných situací. Jedna z kombinací kláves je Alt+SysRq+K zabít všechny programy na aktuální virtuální konzoli; pokud tento program přepne klávesnici do nezpracovaného režimu, pak nebudete moci psát na výzvu k přihlášení (která se často objeví v závislosti na konfiguraci vašeho systému). Stisknutím Alt+SysRq+R obnoví obvyklý (mimo X) režim ASCII, kde můžete psát znaky.


Můžete definovat, jaký typ kódu odešle klávesnice. To se provádí pomocí režimu klávesnice. Režim klávesnice můžete změnit pomocí kbd_mode .

Toto jsou možnosti z manuálové stránky:

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

Pro vývojáře je mnohem snazší zachytit klíčové události, jako je stisknutí levého tlačítka Shift, pokud může jednoduše získat skenovací kódy stisknutých kláves.


Linux
  1. Co je to sysadmin?

  2. Co dělá „lc_all=c“?

  3. Co dělá Echo $? Dělat??

  1. Co přesně dělá Grub_gfxpayload_linux=text?

  2. Co dělá ( -perm -4000 -o -perm -2000 )?

  3. Co jsou režimy Vim? Jak je změnit?

  1. Co je uživatel Linuxu?

  2. Co dělá xfce4 power-manager v režimu prezentace?

  3. K čemu je i915.modeset=1?