Ini semua ada di iTerm2 di OS X.
saya pernah mempunyai
export TERM='xterm-256color'
di saya .bashrc
. Ini berarti Vim di tmux memang menggunakan 256 warna.
Dan begitu saya menambahkan
set -g xterm-keys on
kemudian pintasan keyboard dengan pengubah bekerja dengan baik di Vim. Yaitu: shift+left/right
bahwa saya memetakan untuk beralih tab Vim, ctrl+up/down
bahwa saya memetakan untuk memindahkan ("gelembung") baris, dan shift+left/right
yang bekerja di luar kotak untuk melompat dengan kata dalam mode baris perintah (misalnya ketika mengetikkan sesuatu seperti :e foo bar baz
).
Namun, pengaturan ini memiliki masalah bahwa warna latar belakang Vim hanya menunjukkan di belakang teks, seperti yang disebutkan di sini .
Jadi saya dihapus
export TERM='xterm-256color'
dari saya .bashrc
dan alih-alih letakkan ini di .tmux.conf
:
set -g default-terminal "screen-256color"
Itu memperbaiki warna latar belakang Vim, tetapi merusak pintasan keyboard - mereka melakukan hal-hal yang tidak terduga (memindahkan kursor, menghapus teks) sebagai gantinya.
Dengan menggunakan ctrl+v
untuk memasukkan keluaran kata demi kata dari kombinasi tombol (seperti dijelaskan di sini ), saya dapat mengatasinya:
map [1;5A <C-Up>
map [1;5B <C-Down>
map [1;2D <S-Left>
map [1;2C <S-Right>
cmap [1;2D <S-Left>
cmap [1;2C <S-Right>
Ini membuat pintasan berfungsi, tetapi rasanya tidak seperti solusi yang tepat. Adakah yang bisa memberi tahu saya apa yang terjadi di sini dan bagaimana cara memperbaikinya?
sumber
map <Esc>[B <Down>
dari satu dari jawaban. Sepertinya alasan ada beberapa asumsi buruk yang dibuat oleh plugin itu sendiri.map <Esc>[B <Down>
dari utas lainnya berarti semuanya sekarang berfungsi dengan baik.map <Esc>[B <Down>
? Saya tidak melihat perbedaan dengan menambahkannya ke file .vimrc saya.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