Đây là tất cả trong iTerm2 trên OS X.
tôi từng có
export TERM='xterm-256color'
trong tôi .bashrc
. Điều này có nghĩa là Vim trong tmux đã sử dụng 256 màu.
Và một khi tôi đã thêm
set -g xterm-keys on
sau đó các phím tắt với bộ sửa đổi hoạt động tốt trong Vim. Cụ thể: shift+left/right
tôi đã ánh xạ để chuyển các tab Vim, ctrl+up/down
mà tôi đã ánh xạ để di chuyển các dòng ("bong bóng") và shift+left/right
hoạt động ra khỏi hộp để nhảy từng chữ trong chế độ dòng lệnh (ví dụ: khi gõ một cái gì đó như :e foo bar baz
).
Tuy nhiên, thiết lập này có vấn đề là màu nền Vim chỉ hiển thị phía sau văn bản, như được đề cập ở đây .
Vì vậy, tôi đã loại bỏ
export TERM='xterm-256color'
từ của tôi .bashrc
và thay vào đó đặt điều này trong .tmux.conf
:
set -g default-terminal "screen-256color"
Điều đó đã cố định màu nền Vim, nhưng đã phá vỡ các phím tắt - thay vào đó chúng làm những việc không mong muốn (di chuyển con trỏ, xóa văn bản).
Bằng cách sử dụng ctrl+v
để chèn đầu ra nguyên văn từ các tổ hợp phím (như được mô tả ở đây ), tôi có thể làm việc xung quanh nó:
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>
Điều này làm cho các phím tắt hoạt động, nhưng nó không cảm thấy như một giải pháp đúng. Bất cứ ai có thể cho tôi biết những gì đang xảy ra ở đây và làm thế nào để khắc phục nó?
map <Esc>[B <Down>
từ một của các câu trả lời. Có vẻ như lý do có một số giả định xấu được thực hiện bởi chính plugin.