Saya mencoba menggunakan htop
di tty1. Namun, beberapa tombol fungsi tampaknya tidak berfungsi seperti biasa. F1dan F2tidak melakukan apa-apa, dan F3tampaknya memicu pengaturan (yang biasanya dipicu oleh F2). Selain itu, F4dan F5jangan bekerja. Juga, ketika saya mencoba dan menekan Escuntuk keluar dari layar ini, saya harus menekannya dua kali.
Dalam terminal normal ( terminator
), tombol fungsi berfungsi dengan baik. Namun, saya harus menekan Escdua kali di sini juga, jadi mungkin itu ikan haring merah.
Bagaimana saya bisa menggunakan tombol fungsi ini di tty1?
EDIT
Di tty1, jika saya menekan Ctrl+ vlalu F1ke F5, dll. Saya mendapatkan output berikut:
^[[[A
^[[[B
^[[[C
^[[[D
^[[[E
Masuk terminator
, saya mengerti
^[OP
^[OQ
^[OR
^[OS
^[[15~
Tombol fungsi di atas ini setara (misalnya ^[[17~
untuk F6).
EDIT 2
Menanggapi komentar Stéphane Chazelas .
$TERM
adalah sama di tty1 seperti di terminal "normal" yang berfungsi. Ituxterm-256color
.- Saya tidak menggunakan layar atau tmux.
- Saya menggunakan
htop
1.0.3, meskipun edit pertama saya tampaknya menunjukkan bahwa itu adalah masalah di bagian huluhtop
.
"Apakah
infocmp -L1 | grep key_f
cocok dengan yang dikirimkan kunci itu untuk Anda?
Saya tidak yakin apa yang Anda maksud dengan "cocok dengan apa yang dikirimkan kunci-kunci itu untuk Anda", tetapi saya menjalankan perintah ini di terminal normal dan tty1 saya, dan hasilnya sama, seperti di bawah ini.
key_f1=\EOP,
key_f10=\E[21~,
key_f11=\E[23~,
key_f12=\E[24~,
key_f13=\E[1;2P,
key_f14=\E[1;2Q,
key_f15=\E[1;2R,
key_f16=\E[1;2S,
key_f17=\E[15;2~,
key_f18=\E[17;2~,
key_f19=\E[18;2~,
key_f2=\EOQ,
key_f20=\E[19;2~,
key_f21=\E[20;2~,
key_f22=\E[21;2~,
key_f23=\E[23;2~,
key_f24=\E[24;2~,
key_f25=\E[1;5P,
key_f26=\E[1;5Q,
key_f27=\E[1;5R,
key_f28=\E[1;5S,
key_f29=\E[15;5~,
key_f3=\EOR,
key_f30=\E[17;5~,
key_f31=\E[18;5~,
key_f32=\E[19;5~,
key_f33=\E[20;5~,
key_f34=\E[21;5~,
key_f35=\E[23;5~,
key_f36=\E[24;5~,
key_f37=\E[1;6P,
key_f38=\E[1;6Q,
key_f39=\E[1;6R,
key_f4=\EOS,
key_f40=\E[1;6S,
key_f41=\E[15;6~,
key_f42=\E[17;6~,
key_f43=\E[18;6~,
key_f44=\E[19;6~,
key_f45=\E[20;6~,
key_f46=\E[21;6~,
key_f47=\E[23;6~,
key_f48=\E[24;6~,
key_f49=\E[1;3P,
key_f5=\E[15~,
key_f50=\E[1;3Q,
key_f51=\E[1;3R,
key_f52=\E[1;3S,
key_f53=\E[15;3~,
key_f54=\E[17;3~,
key_f55=\E[18;3~,
key_f56=\E[19;3~,
key_f57=\E[20;3~,
key_f58=\E[21;3~,
key_f59=\E[23;3~,
key_f6=\E[17~,
key_f60=\E[24;3~,
key_f61=\E[1;4P,
key_f62=\E[1;4Q,
key_f63=\E[1;4R,
key_f7=\E[18~,
key_f8=\E[19~,
key_f9=\E[20~,
Ctrl+V
kemudianF1
, dan lihat apa yang dimasukkan. Ulangi untukF2
,F3
,F4
danF5
, dan kemudian melakukan hal yang sama di terminator. Beri tahu kami apa yang Anda lihat.$TERM
di sana? Apakah Anda menggunakan layar atau tmux? Apa versi htop? Apakahinfocmp -L1 | grep key_f
cocok dengan yang dikirimkan kunci-kunci itu untuk Anda?Jawaban:
Dengan menetapkan:
Anda memberi tahu
htop
(dan setiap aplikasi terminal visual lainnya yang menggunakan termcap atau database terminfo) bahwa terminal Anda adalah 256 xterm warna dan bukan konsol virtual Linux.htop
akan meminta basis data terminfo untuk mengetahui urutan karakter yang dikirim F1, F2... tetapi akan mendapatkannyaxterm
.xterm
mengirimkan urutan yang berbeda dari konsol virtual Linux untuk kunci-kunci yang dapat Anda verifikasi dengan menanyakan database terminfo dengan tanganinfocmp
misalnya:Jadi
htop
tidak akan mengenali\E[[A
sebagai F1, itu akan diharapkan\EOP
untuk itu.Di sini, Anda tidak ingin memberikan nilai
$TERM
pada~/.bashrc
.$TERM
harus diatur oleh terminal emulator (xterm
,terminator
) sendiri, dan olehgetty
untuk konsol virtual Linux (harus ada dilinux
sana).Jika Anda tidak puas dengan nilai yang dipilih emulator terminal tertentu
$TERM
, itulah konfigurasi emulator terminal yang harus Anda perbarui.sumber
xterm-256color
.$TERM
kexterm-256color
, tetapi diatur untuk menggunakanESC[n~
tombol fungsi. Saya mengubah tombol fungsi untuk digunakanXTerm R6
dalam pengaturan dan semuanya berfungsi sekarang.