Ketika Anda menekan tombol atau kombinasi tombol di terminal, itu dikirim ke aplikasi yang berjalan di terminal sebagai urutan satu atau lebih karakter. Misalnya, ketika Anda menekan a, aplikasi menerima a. Ketika Anda menekan Enter, aplikasi menerima karakter CR(alias ^M(diucapkan "control-emm"), alias nomor 13, alias \ratau \015). Kombinasi kunci yang terlibat Altbiasanya ditransmisikan sebagai karakter ESC( ^[alias \eatau atau \033) diikuti oleh urutan untuk kombinasi tombol atau kunci tanpa Alt. Tombol fungsi dan kombinasi tombol lainnya dikirimkan sebagai urutan keluar yang dimulai dengan \e[atau \eO.
Urutan lolos tidak sepenuhnya standar, dan terminal biasanya mengabaikan atribut tertentu untuk kunci tertentu. Sebagai contoh, Ctrl+ Shift+ lettersering dikirimkan persis seperti Ctrl+ lettersecara default.
Anda dapat melihat apa yang dikirim terminal Anda untuk kombinasi tombol dengan menekan Ctrl+ Vdiikuti oleh kombinasi tombol tersebut di prompt shell, atau C-qatau C-h cdiikuti oleh kombinasi tombol di Emacs.
Dengan beberapa emulator terminal, Anda dapat mengonfigurasi urutan pelepasan untuk setiap tombol. Pada Xterm, ini dilakukan melalui sumber X . Sebagian besar pengaturan membaca sumber daya dari ~/.Xresourcessaat X dimulai, dan Anda dapat memuat file secara manual xrdb -merge ~/.Xresources.
Term.VT100.translations: #override \n\
Ctrl ~Shift ~Meta <key>Return: string("\033[73;5~") \n\
Ctrl Shift ~Meta <key>percent: string("\033[37;6~")
Sebuah konvensi umum menggunakan urutan melarikan diri dari formulir ESC [ number1 ; number2 ~untuk tombol fungsi dengan pengubah. number1menunjukkan tombol fungsi ( 15untuk 24untuk F5ke F12- untuk alasan historis, F1 melalui F4memiliki escape sequence yang berbeda) dan number2menunjukkan modifikator ( 2untuk Shift, 3untuk Meta, 5untuk Ctrl, 7untuk Ctrl+ Meta, dan menambahkan 1 untuk Shiftdengan setidaknya satu dari Ctrlatau Meta).
Emacs menerjemahkan urutan pelarian ke dalam representasi kunci internal melalui input-decode-mapataulocal-function-key-map (atau function-key-mapsebelum Emacs 23).
(define-key local-function-key-map "\033[73;5~" [(control return)])
(define-key local-function-key-map "\033[37;6~" [(control ?L)])
infocmp $TERM?