Saya tahu bahwa dalam vim saya dapat menambahkan
set nocompatible
in .vimrc
untuk menghindari tombol panah menampilkan A, B, C, D dalam mode insert
Tapi saya menggunakan vi Versi 4.0 (gritter) 12/25/06 .
Bagaimana saya bisa mendapatkan perilaku yang sama?
== EDIT == (1)
Saya menggunakan versi vi dari Arch Linux yang dibangun dari repositori CVS ini (komit terakhir 24 Februari 2007) dengan perintah berikut:
make PREFIX=/usr LIBEXECDIR=/usr/lib/ex PRESERVEDIR=/var/lib/ex \
TERMLIB=ncurses FEATURES="-DCHDIR -DFASTTAG -DUCVISUAL -DMB -DBIT8"
dan dengan tiga tesis ini: fix-tubesize-short-overflow.patch , navkeys.patch dan preserve-dir.patch .
== EDIT (2) ==
Masalah terjadi di LXTerminal 0.2.0 , Rayap 10-1 , Tilda 1.2.4-1 , Terminator 0.98-1 dan xterm 320-2 tetapi tidak di urxvt v9.21 atau di konsol virtual Linux.
== EDIT (3) ==
Menurut Spesifikasi Single Unix kiri-panah, turun-panah, kanan panah, up-panah sesuai dengan masing-masing capname berikut: kcub1
, kcud1
, kcuf1
dan kcuu1
. Membandingkan entri terminfo dari xterm
dan rxvt-unicode-256color
untuk capterms ini memberi:
$ infocmp xterm rxvt-unicode-256color | grep -E 'kcuf1|kcub1|kcud1|kcuu1'
kcub1: '\EOD', '\E[D'.
kcud1: '\EOB', '\E[B'.
kcuf1: '\EOC', '\E[C'.
kcuu1: '\EOA', '\E[A'.
Memodifikasi xterm terminfo entri dengan substituing '\EOD'
, '\EOB'
, '\EOC'
, '\EOA'
oleh '\E[D'
, '\E[B'
, '\E[C'
, '\E[A'
harus memecahkan masalah tetapi apakah itu ide yang baik? Mungkin itu akan merusak penggunaan tombol panah program lain?
sumber
TERM
ditermcap
atauterminfo
database tidak selaras dengan kode yang dihasilkan oleh keyboard. Solusinya bukan mengubahTERM
, tetapi untuk mengetahui apakah Andavi
terhubung dengantermcap
atauterminfo
, temukan kode kunci yang dipancarkan oleh keyboard, dan perbaiki database yang sesuai. Mengeluh kepada sysadmin mungkin berhasil juga.terminfo
.Jawaban:
Anda bisa membuat alias yang mengatur
$TERM
variabel AndaTambahkan itu ke file rc shell Anda dan itu harus ditentukan untuk setiap terminal yang Anda luncurkan.
sumber
Kadang-kadang perilaku seperti itu dapat dihasilkan dari pengaturan pemetaan kunci yang tidak biasa di Anda
.vimrc
- jadi misalnya jika Anda memiliki sesuatu yang memetakan dua ESCpenekanan tombol:Maka itu dapat menyebabkan vim tidak berfungsi dengan tombol panah.
sumber