Keyboard mengirim acara ke komputer. Suatu acara mengatakan "memindai kode nnn turun" atau "memindai kode nnn ke atas". Di ujung rantai, aplikasi yang berjalan di terminal mengharapkan input dalam bentuk urutan karakter. (Kecuali jika mereka meminta akses mentah, seperti yang dilakukan server X.) Saat Anda menekan A, keyboard mengirim informasi "pindai kode 38". Driver konsol mencari keymap dan mengubahnya menjadi "karakter a
" (jika tidak ada tombol pengubah ditekan).
Saat Anda menekan tombol atau kombinasi tombol yang tidak menghasilkan karakter, informasi perlu dikodekan dalam bentuk karakter. Beberapa tombol dan kombinasi tombol memiliki karakter kontrol yang sesuai, misalnya Ctrl+ Amengirim karakter ␁
(nilai byte 1), Returnmengirim karakter ␍
(Ctrl + M, nilai byte 13), dll. Sebagian besar tombol fungsi tidak memiliki karakter yang sesuai dan alih-alih mengirim urutan karakter yang dimulai dengan karakter ␛
(escape, byte value 27). Misalnya, kunci Upditerjemahkan ke dalam urutan escape ␛[A
(tiga karakter: escape, open bracket, capital A).
Prompt nama pengguna pada konsol itu bodoh dan tidak mengerti sebagian besar urutan pelarian. Ini tidak memiliki edisi garis dan fitur riwayat yang biasa Anda gunakan: yang disediakan oleh shell, dan sampai Anda masuk, Anda tidak memiliki shell. Jadi itu hanya menampilkan urutan pelarian. Tidak ada mesin terbang untuk ␛
karakter, sehingga ditampilkan sebagai ^[
. The ^
tanda secara tradisional digunakan sebagai awalan untuk karakter kontrol, dan melarikan diri adalah ^[
karena nilai byte nya: itu nilai byte dari [
, dikurangi 64.
Jika Anda menekan Uppada prompt shell, ini mengirimkan urutan 3 karakter yang sama ke shell Anda. Shell mengartikan ini sebagai urutan perintah (biasanya untuk mengingat item sejarah sebelumnya). Jika Anda menekan Ctrl+ Vlalu Uppada prompt shell, ini menyisipkan urutan keluar pada prompt: Ctrl+V adalah perintah untuk memasukkan karakter berikutnya secara harfiah alih-alih menafsirkannya sebagai perintah, sehingga ␛
karakter tersebut tidak ditafsirkan sebagai awal urutan escape .
Beberapa kunci hanya pengubah dan tidak dikirimkan ke aplikasi terminal. Misalnya, ketika Anda menekan Shift, informasi ini tetap berada di driver terminal, dan diperhitungkan jika Anda kemudian menekan A, sehingga driver mengirim A
ke aplikasi bukana
.
Selain itu beberapa tombol fungsi mungkin tidak dipetakan di konsol Anda.
Untuk tampilan serupa di GUI, lihat Apa itu kunci meta bash?
getty
ataulogin
, meskipun saya tidak yakin mengapa. Tebakan terdidik mengatakan bahwa layar cetak ditafsirkan secara khusus oleh kernel untuk alasan historis. Saya tidak 100% yakin tentang apa pun, kecuali, pengubah.