Sorun iki yönlüdür. İlk olarak, tmux
varsayılan olarak kontrol ok tuşlarını bir kaçış dizisinden diğerine dönüştürür. Bu nedenle, özel anahtarlar değiştirici olmadan controlleftgönderilir vim
, örn left. cat -v
Farklı kaçış dizilerini görmek için kullanırsanız , bunun gibi bir şey görebilirsiniz.
^[OD
buna karşı (tmux dışında):
^[[1;5D
Çizgi
set-window-option -g xterm-keys on
bu yönü düzeltir. Diğer kısım, tmux
varsayılan olarak terminal açıklamasını kullanmasıdır screen
. Bu terminal açıklaması kontrol ok tuşlarını tanımlamaz . Terminal veritabanındaki bu girişler VTE (gnome-terminal) için en uygun olanlardır:
Gibi başkaları da var
hangi çalışırken otomatik olarak seçileceğini screen
tekabül eğer TERM
dışarıda idi vte
, vte-256color
vb tmux
bu otomatik-seçimini yapmaz; yapılandırma dosyasını değiştirmeniz gerekir.
Bu arada, "screen.xterm" girişi yoktur, çünkü bazı kullanımlarına müdahale eder screen
. İle bir çatışma yok TERM=xterm-new
.
ncurses-base
Debian gibi varsayılan (minimum) bir terminal veritabanınız varsa, bunlara sahip olmayabilir. xterm-256color
Vim ve tmux ile kullanmak için yeterince yakın olan daha yaygın olacaktır .
Örneğin .tmux.conf
, bunu dosyama eklersem, vim'de beklediğiniz gibi davranır:
set -g default-terminal "xterm-256color"
Daha fazla okuma:
Control
+Left
çalışıyor;Control
+Right
değil. Daha sonra test edip güncelleyeceğim.