gvim yeniden çizim hatası


9

Ekranın yeniden çizilmesinin kısmen başarısız olduğu gvim ile ilgili bir sorunum var. Açıklamak zor, ancak bir metin dosyasını açtığımda ve sayfayı aşağı veya yukarı hareket ettirdiğimde tüm metin dosyası düzgün şekilde yeniden çizilmiyor. İmleci yeniden çizmeden önce hareket ettirmeliyim. Sorunu gösterdiği için burada bir ekran görüntüm var: http://www.box.net/shared/l4m1vrffl0dhigi80huz

Sorun, gvim ile sınırlı gibi görünüyor çünkü çalıştırdığım diğer tüm uygulamalar iyi ve düzgün bir şekilde yeniden çiziyor. Gvim'de çoğaltmak benim için oldukça kolay. Konsol vim gayet iyi. Sorunun gvim ile sınırlı olduğunu düşündürüyor.

İşletim sistemi, Gnome3 (compiz yok) çalıştıran nvidia sürücülerini çalıştıran Arch linux 3.0'dır.

Uname'den çıktı

Linux cyclops 3.0-ARCH # 1 SMP ÖNCESİ Sal 30 Ağu 07:32:23 UTC 2011 i686 Intel (R) Core (TM) 2 CPU 6600 @ 2.40GHz OrijinalIntel GNU / Linux

lsmod

lsmod | grep nvidia
nvidia              10225284  40 
agpgart                22096  1 nvidia
i2c_core               16625  2 nvidia,i2c_nforce2

gvim - sürüm

gvim --version VIM - Vi IMproved 7.3 (2010 15 Ağustos, derlenen 30 Eyl 2011 05:51:10) Dahil yama: 1-322 Derleyen ArchLinux GTK2 GUI ile büyük versiyonu. Dahil olan özellikler (+) veya değil (-): + arapça + autocmd + balloon_eval + browse ++ builtin_terms + byte_offset + cindent + clienterver + clipboard + cmdline_compl + cmdline_hist + cmdline_info + yorumlar + gizleme + cryptv + cscope + cursorbind + cursorsgui + dialogcon_ dialog_ + diff + digraphs + dnd -ebcdic + emacs_tags + eval + ex_extra + ekstra_search + farsi + dosya_in_path + find_in_path + float + katlama-footer + çatal () + gettext -hangul_input + iconv + insert_expand + atlama listesi + keymap + langmap + libcall line break + lispindent + listcmds + localmap -lua + menü + mksession + change_fname + fare + fare faresi + mouse_dec + mouse_gpm -mouse_jsbterm + mouse_netterm

sistem menü dosyası: "$ VIMRUNTIME / menu.vim" $ VIM için geri dönüş: "/ usr / share / vim" Derleme: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK -pthread -I / usr / include / gtk-2.0 -I / usr / lib / gtk-2.0 / include -I / usr / include / atk-1.0 -I / usr / include / cairo -I /usr/include/gdk-pixbuf-2.0 -I / usr / include / pango-1.0 -I / usr / include / glib-2.0 -I / usr / lib / glib-2.0 / include -I / usr / include / pixman -1 -I / usr / include / freetype2 -I / usr / include / libpng14 -I / usr / local / include -march = i686 -mtune = genel -O2 -pipe -fstack-koruyucu --param = ssp-buffer- size = 4 -D_FORTIFY_SOURCE = 1 Bağlama: gcc -L. -Wl, - hash-style = gnu -Wl, - gerektiği gibi -dynamic -Wl, -export-dynamic -Wl, -E -Wl, -rpath, / usr / lib / perl5 / core_perl / CORE -Wl , -O1, - sıralama ortak, - gerektiği gibi, -z, relro, - karma stili = gnu -L / usr / local / lib -Wl,


2
Aynı sorunu Ubuntu 12.10, Gnome 3 altında da var. İnternette bulduğum tek kişi sensin. Bunu yayınladığından beri şans var mı?
jakar

@ jakar Hayır Bunu düzeltmenin bir yolunu hiç bulamadım. Şimdi nvidia sürücüleri ile fc17 çalıştırıyorum ve artık sorunu görmüyorum, ama Gnome 3'ü fantezi modunda kullanmıyorum.
Sashang

Evet, bence gnome / gtk / xorg / drivers ile ilgisi gvim'in kendisinden daha fazla Fc17'de (farklı bir makinede olsa da) herhangi bir sorunum yok, hatta gvim'in eşleşen sürümlerini kaynağından oluşturuyor. Ah, şimdilik onunla yaşayacağım. En azından, bunun gördüğüm tek iyi açıklaması ve videosu için teşekkürler.
jakar

Benim de bu problemim var. Bir çözümle gerçekten ilgilenirim.
Matt Fichman

2
Bu sayı 91'e çok benziyor ve şu anki tahminim, bu bir gtk kütüphane sorunu.
Christian Brabandt

Yanıtlar:


5

Bu sorunu yaşadım ve gvim --syncseçeneği ile başlayarak sorunu çözebildim . Bu, X çağrılarını eşzamansız hale getirir.

(Christian Brabandt'ın beni doğru yöne yönlendirdiği yorumundaki bağlantı sayesinde.)


Aynı sorun Debian / 9'u bir sanal kutu makinesinde entegre grafiklerin üzerinde çalıştırırken de vardı. Kayıp çizimlerin aynı belirtileri - arabelleği bölmek, başka bir uygulamaya ve arkaya alt sekme yapana kadar ekranı güncellemez. --Sync anahtarı sorunu düzeltti.
Andrew

0

OS, ekran kartı, vb hakkında bilgi sağlamak için yardımcı olacaktır. GNOME3 gibi görünüyor ...?

NVIDIA ekran kartı ile Pencere Yöneticisi olarak GVIM ve diğer uygulamaları Compiz ile çalıştırırken böyle bir sorun yaşadım ve "Compiz Yapılandırma Ayarları Yöneticisi"> Geçici Çözümler> "Qt Pencere Düzeltmesi" ni kontrol ederek sorunu çözdüm.

Bu ya da başka bir şey, özellikle Compiz yerine Mutter kullanıyorsanız, sizin durumunuza yardımcı olup olmayacağına dair hiçbir ipucu yok.


0

Kutudan çıkan paketlerin ötesinde Vim'e ne tür eklentiler eklediniz?

Normalde kararlı eklentilerinizden birinin size biraz zarar vermesi ihtimali olabilir. Evet, GTK sorunu ortaya koyuyor, ancak muhtemelen sorun değil. Açılır pencereler oluşturan veya geçici olarak bir mini tampon veya benzeri bir şey oluşturan her şey. Otomatik tamamlama, snippet'ler, ... Ek bir eklenti veya özellikse, kapatmayı deneyin ve sorununuz giderilip giderilmediğine bakın.

Filminizde böyle bir pop-up görmemiş olmama rağmen, eklenti pop-up'ını oluşturuyor, aslında gerekli olmadığını fark ediyor, pop-up'ı temizliyor, ancak daha sonra altındaki içeriği yeniden çizmiyor olabilir.

Tam ekran kaydırma yapmak tüm arabelleği yeniden boyamaz. İmleç açıkça tamponu komşuları yeniden boyamaya zorluyor.

Tabii ki çekirdek bir GTK / GVim problemi olabilir (X veya OpenGL'nin bununla hiçbir ilgisi olmadığını düşünüyorum), ancak bana pek olası görünmüyor (ancak Arch'ı yaygın olarak kullanmama rağmen).

Bu bir eklenti bulursanız, bir sürüm yükseltme veya düşürme zorlamak isteyebilirsiniz ("kırık" sürüm dışında bir şey).


0

FWIW vim-gtk(Ubuntu) yerine vim-gtk3 paketini kurarak sorundan kurtuldum .

NOT! Bazı nedenlerden dolayı güncelleştirme alternatiflerini bu şekilde çalıştırmak zorunda kaldığımda paketi yüklediğimde varsayılan gvim komutu vim-gtk3 ile eşlenmedi:

sudo update-alternatives --set gvim /usr/bin/vim.gtk3

Bu konudaki GTK'nın sorun olabileceği ipuçları için çok teşekkürler. Bu sorunu Google'ı kullanarak bile izlemek zordu!  

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.