К сожалению, screenзаписи базы данных terminfo на основе часто не определяют какие-либо последовательности для измененных клавиш со стрелками (т. Е. Они могут не иметь kUPи т. Д.), Поэтому программы, работающие внутри tmux, могут не знать, ожидают ли такие последовательности. Вам нужно будет вручную настроить любые программы, которые вы хотите распознать эти ключи. В Vim вы можете поместить это в свой ~/.vimrc:
if &term =~ '^screen'
" tmux will send xterm-style keys when xterm-keys is on
execute "set <xUp>=\e[1;*A"
execute "set <xDown>=\e[1;*B"
execute "set <xRight>=\e[1;*C"
execute "set <xLeft>=\e[1;*D"
endif
Возможно, вы захотите использовать варианты без x(то есть <Up>вместо <xUp>, и так далее), если вы обнаружите, что использование x-variant приводит к тому, что ваши обычные клавиши со стрелками перестают работать.
Преимущество определения таких клавиш состоит в том, что вам не нужно отображать каждую из комбинаций модификаторов по отдельности (Shift, Control, Contol + Shift, Meta, Meta + Shift, Meta + Control, Meta + Control + Shift); *получает специальную интерпретацию для обработки всех соответствующих последовательностей (см :help xterm-modifier-keys).