Saya mengerti bahwa format untuk binding utama dalam inputrc
file adalah:
keyname: function-name or macro
Untuk keyname, saya melihat hal-hal seperti:
"\e[B"
"\e[1~"
"\e[5D"
"\M-l"
"\C-[OD"
"\e\e[D"
Apa arti dari keynames ini, dan apa format umum untuk keyname? Silakan bagikan tautan ke dokumen.
readline(3)
manual atau manual pengguna readline .Jawaban:
Pengikat kunci dapat dilakukan menggunakan salah satu dari formulir berikut:
Dalam bentuk pertama Anda bisa mengeja nama untuk satu kunci. Sebagai contoh, CONTROL-U akan ditulis sebagai control-u. Ini berguna untuk mengikat perintah ke satu kunci.
Di formulir kedua, Anda menentukan string yang menggambarkan urutan kunci yang akan terikat pada perintah. Yang Anda berikan sebagai contoh adalah urutan melarikan diri emacs-tyle backslash untuk mewakili kunci khusus
Anda dapat menentukan backslash menggunakan backslash lain -
\\
. Demikian pula'
dan"
dapat melarikan diri juga -\'
dan\"
Memperbarui
Karakter-karakter ini adalah apa yang ditafsirkan oleh terminal Anda ketika Anda menekan tombol khusus. Anda tidak ingin mengikat huruf dan angka biasa dalam pengikatan kunci Anda karena Anda mungkin menggunakannya secara teratur dan dapat menyebabkan masalah ketika Anda secara tidak sengaja menekan kombinasi yang telah dipetakan dalam file
~/.inputrc
atau Anda/etc/inputrc
.Untuk mempelajari lebih lanjut, cukup ketik
read
prompt terminal Anda dan tekan semua jenis tombol khusus seperti Tombol Fungsi, HOME, END, Tombol Panah dll dan lihat apa yang ditampilkan.Berikut ini adalah referensi kecil yang saya temukan yang dapat menawarkan beberapa pemahaman dasar. Semoga berhasil! :)
sumber
\e[1~
,\M-l
dan\C-[OD
berarti? Bagian\e
,,\M
dan\C
bagian-bagiannya jelas. Bagaimana dengan sisanya? Misalnya:[1~
- Haruskah saya menekanShift
+{
+1
+Shift
+`
?