Я пытаюсь понять, как играть vim
и tmux
играть вместе.
Моя проблема: когда я использую, xterm-256color
я получаю vim
работать хорошо, но фон не отображается должным образом.
Я исправил это с помощью screen-256color
. Это выглядит красиво, но ломает Ctrl + arrow keys
(они идут в режиме вставки и удаляют 4 строки). Я хочу использовать эти сопоставления вместо того, чтобы переключать вкладки vim
.
Как мне заставить это работать?
vim
keyboard-shortcuts
tmux
outsmartin
источник
источник
Существует несколько уровней конфигурации, которые необходимо правильно настроить для лучшей функциональности.
xterm-256color
). Запись базы данных TERMINFO определяется по переменному окружению TERM говорит tmux , как распознать последовательности для модифицированного клавиша со стрелками (в определенном пользователе возможность {kUP
,kDN
,kRIT
,kLFT
} {,3
..7
}).Сконфигурируйте tmux для генерации последовательностей. Установите для
xterm-keys
параметра сеанса значениеon
так, чтобы tmux сгенерировал свою собственную последовательность в стиле xterm, когда он получит последовательность, которую идентифицирует ее TERM. В вашем~/.tmux.conf
:screen
TERM на основе tmux (напримерscreen-256color
). Это говорит программам, работающим внутри tmux, как управлять (пере) эмуляцией терминала tmux и какие ответы они должны ожидать от tmux .К сожалению,
screen
записи базы данных terminfo на основе часто не определяют какие-либо последовательности для измененных клавиш со стрелками (т. Е. Они могут не иметьkUP
и т. Д.), Поэтому программы, работающие внутри tmux, могут не знать, ожидают ли такие последовательности. Вам нужно будет вручную настроить любые программы, которые вы хотите распознать эти ключи. В Vim вы можете поместить это в свой~/.vimrc
:Возможно, вы захотите использовать варианты без
x
(то есть<Up>
вместо<xUp>
, и так далее), если вы обнаружите, что использованиеx
-variant приводит к тому, что ваши обычные клавиши со стрелками перестают работать.Преимущество определения таких клавиш состоит в том, что вам не нужно отображать каждую из комбинаций модификаторов по отдельности (Shift, Control, Contol + Shift, Meta, Meta + Shift, Meta + Control, Meta + Control + Shift);
*
получает специальную интерпретацию для обработки всех соответствующих последовательностей (см:help xterm-modifier-keys
).Затем вы можете сопоставить ключи вместо их жестко закодированных последовательностей:
источник
Как объяснялось здесь , отключите фоновое стирание цвета (BCE), очистив параметр
t_ut
терминала (запустите:set t_ut=
в Vim, а затем нажмите Control+, Lчтобы обновить дисплей терминала), чтобы цветовые схемы работали правильно, когда Vim используется внутри экранов tmux и GNU.Таким образом, вы можете сохранить свое
TERM
значение какxterm-256color
для правильного определения ключа, так и для получения правильной цветовой схемы Vim! :-)источник
Помогает ли установка
set t_Co=256
в вашем ~ / .vimrc? Это просто настройка цвета, но она может помочь устранить некоторые проблемы.Вы также можете переназначить
ctrl+Arrow
ключи в вашем ~ / .vimrc ...Редактировать: вы пробовали
ctrl+Arrow
в сеансе экрана GNU? Я думаю, что это, возможно, ваша проблема.источник