Naciśnięcie klawisza na klawiaturze powoduje wysłanie do komputera kodu numerycznego, zwanego kodem skanowania. Kod skanowania informuje komputer, który klawisz został naciśnięty; na przykład na typowej klawiaturze amerykańskiej Aklawisz wysyła kod skanowania 30 po naciśnięciu (i 158 po zwolnieniu). Sterownik klawiatury zgłasza te kody bezpośrednio do aplikacji, gdy klawiatura jest w trybie surowym („surowe” oznacza nieprzetworzone, prosto z klawiatury). Kilka programów używa trybu raw i wykonuje własne przetwarzanie klawiatury; serwer X jest najbardziej widocznym jeden.
Większość programów oczekuje, że po naciśnięciu Aklawisza program odczyta znak a
(ASCII 97), a po naciśnięciu Shift+ Aprogram odczyta A
(ASCII 65), a po naciśnięciu Ctrl+ Aprogram odczyta Ctrl+A
znak (ASCII 1). Klawisze, które nie mają powiązanych znaków, wysyłają sekwencje specjalne, np. \e[A
Dla Left, gdzie \e
jest znak ESC (ASCII 27). Sterownik klawiatury wykonuje to tłumaczenie, gdy klawiatura znajduje się w trybie ASCII, zwanym także trybem XLATE (skrót od „translate”). Tryb XLATE umożliwia aplikacjom wprowadzanie znaków kosztem braku dostępu do takich niuansów, jak „naciśnięty lewy klawisz Shift” lub Ctrl + Shift + A w odróżnieniu od Ctrl + A.
kbd_mode
Pozwala przełączać się między trybami i pokazuje aktualny tryb jeśli wywołać go bez argumentów.
Magiczne kombinacje klawiszy SysRq mają na celu wyjście z różnych nieprzyjemnych sytuacji. Jedną z kluczowych kombinacji jest Alt+SysRq+K
zabicie wszystkich programów na bieżącej konsoli wirtualnej; jeśli ten program przełączy klawiaturę w tryb nieprzetworzony, nie będziesz mógł pisać po znaku zachęty (który często się pojawia, w zależności od konfiguracji systemu). Naciśnięcie Alt+SysRq+R
przywraca normalny (poza X) tryb ASCII, w którym można wpisywać znaki.
Gilles „SO- przestań być zły”
źródło