'O' komutunu her kullandığımda vim neden bir saniye gecikiyor (yukarıda yeni bir satır aç ve ekle)?


26

Çoğu komutu kullandığımda anında etkili olurlar. OAncak komutu kullandığımda, "O" ifadesinin bir saniye boyunca geçerli karakteri değiştirdiğini görüyorum, ardından geçerli karakter geri dönüyor ve yeni bir satır ekleniyor ve açılıyor.

Komutla ilgili böyle bir sorunum yok o( aşağıda yeni bir satır açın ve ekleyin).

Ben kullanıyorum, bir fark yaparsa vimgelen bashUbuntu 10,04 üzerinde Gnome Terminal'de.

Yanıtlar:


27

Bir önceki tuş ESC ise, bunun nedeni ESC O ile başlayan kaçış dizileri oluşturabilen tuşlar olmasıdır. Örneğin, imleç tuşu moduna bağlı olarak, yukarı ok tuşu, ESC O A çıkış dizisini oluşturabilir.

Kısmi bir kaçış dizisi görürse, vim, terminal tipiniz için tanımlanan kaçış dizilerinden biriyle eşleşen başka bir karakterin alındığını görmek için kısa bir zaman aşımı süresi bekleyecektir. Aksi halde karakterleri ayrı tuş vuruşları gibi ele alır. Bunu, satırın yukarı ok olarak değerlendirilip izlenmediğini görmek için hattın açılmasını beklerken büyük A harfi girerek test edebilirsiniz.

Bunu kontrol etmek için kullanılabilecek bazı vim ayarları var. :set ttimeoutlen=100kaçış dizisi zaman aşımını 100ms olarak değiştirir. :set noesckeysekleme modundayken çıkış sırası gönderen tuşların tanınmasını tamamen devre dışı bırakacaktır. Ayrıca, vi-uyumlu mod bu sorunu yaşamayacaktır çünkü esokeyler bu moddadır - işte bu yüzden vim -u NONEişe yarar .


Açıklığa kavuşturmak için, 140k satırlı dosya "denemem", standart eklentiler ve dosya türleri tamamlamam ile tam vim modundaydı. Nerede kullandığımı nerede bulduğunuzu anlayabiliyorum -u NONEama yine de OP’den onay almadık.
msw

Vaov! Bu bir süre hafifçe rahatsız edici oldu ama hiç düşünmedim. Şimdi mükemmel mantıklı. Esc OA gerçekten sadece yukarı ok gibi çalışır.
Vitaly Kushner,

2
:set noesckeysMuhtemelen istediğin gibi değil - ayarla ve sonra ekleme modunda ok tuşlarına bas, kullanmayı planlamasan bile, bunu yapmalarını istemezsin! noesckey'ler aynı zamanda insert modunun dışında işleri hızlandırmaz. ttimeoutlenkesinlikle gitmenin yolu
JonnyRaa
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.