Tmux ile Byobu kullanırken Vim'de Ctrl + Ok tuşlarını kullanma sorunu


12

Vim'de, kelimeleri atlamak için Ctrl + Ok tuşlarını ayarlamıştım. Bu, gnome terminali içinde Vim çalıştırıldığında iyi çalışır.

Ancak, byobu (tmux) kullanırken garip davranışlar gösterir: imleçten sonraki her şeyi siler.

Referans olarak, bunlar benim vim ayarlarım:

:inoremap <C-Left> <C-\><C-O>b
:inoremap <C-Right> <C-\><C-O>w

Yanıtlar:


7

Sorun iki yönlüdür. İlk olarak, tmuxvarsayı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 -vFarklı 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, tmuxvarsayı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 screentekabül eğer TERMdışarıda idi vte, vte-256colorvb tmuxbu 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-baseDebian gibi varsayılan (minimum) bir terminal veritabanınız varsa, bunlara sahip olmayabilir. xterm-256colorVim 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:


Hmmm ... Bu işe yarıyor :) Ama sadece kısmen. Sadece Control+ Leftçalışıyor; Control+ Rightdeğil. Daha sonra test edip güncelleyeceğim.
13'te shivamlar

1
Kontrol + hakkına müdahale eden başka bir bağlantınız olabilir (ayrıntılar verildiğinde tavsiye verebilirim).
Thomas Dickey

Teklif için teşekkür ederim :) Biraz araştırdım ve diğer bazı tuş bağlantılarının parazite neden olduğunu buldum. Mac bilgisayarımda bu iyi çalışıyor, Linux'ta (Guake kullanarak) iyi değil. Ancak, istasyon dışındayım ve Linux'uma erişemiyorum. Sorunu çözdüğümde güncelleme yapacağım.
shivams

@Thomam Dickey: Bu arada, cevabınızı gerçekten sorunu çözdüğü için kabul ediyorum.
shivams

@ThomasDickey Sadece, İrlandaca kelimenin tam anlamıyla "Bin iyi şey olabilir mi?" Bu cevap için çok teşekkür ederim. Sen bir yıldızsın.
Rob

2

Buradan byobu'daki tuş kombinasyonunu çözebilirsiniz:

İle bir dosya ~/.byobu/.tmux.confoluşturun (veya dosya varsa ekleyin):

set-window-option -g xterm-keys on

Ardından aşağıdakileri ekleyin ~/.byobu/keybindings.tmux:

unbind-key -n C-Left
unbind-key -n C-Right

Bu işe yaramıyor. Ancak bana sağlam bir ipucu verdi. Olası ipucunu takip etmeye ve bir çözüm bulmaya çalışacağım. Teşekkürler :)
shivams
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.