Saya mencoba mencari cara untuk mendapatkan vim
dan tmux
bermain bersama.
Masalah saya adalah: Ketika saya menggunakan xterm-256color
saya mulai vim
bekerja dengan baik, tetapi latar belakang tidak membuat dengan benar.
Saya memperbaikinya dengan menggunakan screen-256color
. Ini terlihat bagus tetapi istirahat Ctrl + arrow keys
(mereka masuk dalam mode insert dan menghapus 4 baris). Saya ingin menggunakan pemetaan ini sebagai gantinya untuk beralih tab vim
.
Bagaimana saya membuatnya bekerja?
sumber
Ada beberapa level konfigurasi yang perlu diatur dengan benar untuk fungsionalitas terbaik.
xterm-256color
.). Masuknya Database terminfo diidentifikasi oleh variabel lingkungan TERM memberitahu tmux bagaimana mengenali urutan untuk dimodifikasi tombol panah (kemampuan yang ditetapkan pengguna {kUP
,kDN
,kRIT
,kLFT
} {,3
..7
}).Konfigurasikan tmux untuk menghasilkan urutan. Atur
xterm-keys
opsi sesion
sehingga tmux akan menghasilkan urutan gaya xterm sendiri ketika menerima urutan yang diidentifikasi oleh TERM. Di Anda~/.tmux.conf
:screen
TERM di dalam tmux (misscreen-256color
.). Ini memberitahu program-program yang berjalan di dalam tmux bagaimana mengontrol emulasi terminal (kembali) tmux dan respons apa yang harus mereka harapkan dari tmux .Sayangnya,
screen
entri basis data berbasisinfo sering tidak menentukan urutan apa pun untuk tombol panah yang dimodifikasi (yaitu mereka mungkin tidak memilikikUP
, dan lain-lain), sehingga program yang berjalan di dalam tmux mungkin tidak tahu untuk mengharapkan urutan seperti itu. Anda harus mengkonfigurasi secara manual semua program yang ingin Anda kenali kunci-kunci ini. Di Vim , Anda bisa memasukkan ini ke~/.vimrc
:Anda mungkin ingin menggunakan varian tanpa
x
(yaitu<Up>
bukannya<xUp>
, dan lain-lain) jika Anda menemukan bahwa menggunakanx
-variant menyebabkan tombol panah normal berhenti bekerja.Keuntungan dari mendefinisikan tombol-tombol seperti ini adalah Anda tidak harus memetakan setiap kombinasi pengubah secara terpisah (Shift, Control, Contol + Shift, Meta, Meta + Shift, Meta + Control, Meta + Control + Shift); yang
*
mendapat interpretasi khusus untuk menangani semua urutan terkait (lihat:help xterm-modifier-keys
).Kemudian Anda dapat memetakan kunci alih-alih urutan yang dikodekan keras:
sumber
Seperti yang dijelaskan di sini , nonaktifkan Background Color Erase (BCE) dengan menghapus
t_ut
opsi terminal (jalankan:set t_ut=
di Vim dan kemudian tekan Control+ Luntuk menyegarkan tampilan terminal) sehingga skema warna berfungsi dengan baik ketika Vim digunakan di dalam tmux dan layar GNU.Dengan cara ini, Anda dapat mempertahankan
TERM
nilai Andaxterm-256color
untuk deteksi kunci yang tepat sambil mendapatkan rendering skema warna Vim yang tepat juga! :-)sumber
Apakah pengaturan
set t_Co=256
di ~ / .vimrc Anda membantu sama sekali? Ini hanya pengaturan warna tetapi dapat membantu mengatasi beberapa masalah.Anda dapat memetakan kembali
ctrl+Arrow
kunci di ~ / .vimrc Anda juga ...Sunting: apakah Anda mencoba
ctrl+Arrow
dalam sesi layar GNU? Saya pikir ini mungkin masalah Anda.sumber