Saya punya masalah dengan gvim di mana layar redraw sebagian gagal. Sulit untuk dijelaskan tetapi ketika saya membuka file teks dan halaman ke bawah atau seluruh file teks tidak digambar ulang dengan benar. Saya harus memindahkan kursor terlebih dahulu sebelum digambar ulang. Saya punya screencapture di sini karena ia menunjukkan masalahnya: http://www.box.net/shared/l4m1vrffl0dhigi80huz
Sepertinya masalah ini terbatas pada gvim karena setiap aplikasi lain yang saya jalankan baik-baik saja dan menggambar ulang dengan benar. Cukup mudah bagi saya untuk bereproduksi di gvim. Konsol vim baik-baik saja. Itu membuat saya berpikir masalah ini terbatas pada gvim.
OS adalah Arch linux 3.0 yang menjalankan driver nvidia yang menjalankan Gnome3 (tanpa compiz).
Output dari uname
Linux cyclops 3.0-ARCH # 1 SMP PREEMPT Sel 30 Agu 07:32:23 UTC 2011 i686 Intel (R) Core (TM) 2 CPU 6600 @ 2.40GHz GenuineIntel GNU / Linux
lsmod
lsmod | grep nvidia
nvidia 10225284 40
agpgart 22096 1 nvidia
i2c_core 16625 2 nvidia,i2c_nforce2
gvim --versi
gvim --version VIM - Vi IMproved 7.3 (2010 15 Agustus, disusun 30 September 2011 05:51:10) Termasuk tambalan: 1-322 Disusun oleh ArchLinux Versi besar dengan GUI GTK2. Fitur yang disertakan (+) atau tidak (-): + arab + autocmd + balloon_eval + browse ++ builtin_terms + byte_offset + cindent + clientserver + clipboard + cmdline_homp + cmdline_hist + cmdline_hoto + komentar + menyembunyikan + cryptv + cscope + curscope_cursorcurs + diff + digraf + dnd-digital + emacs_tags + eval + ex_extra + extra_search + farsi + file_in_path + find_in_path + float + lipat -footer + fork () + gettext -hangul_input + ikonv + insert_expand + jumplist + lajab peta + peta + peta + lispindent + listcmds + localmap -lua + menu + mksession + mod_fname + mouse + mouseshape + mouse_dec + mouse_gpm -mouse_jsbterm + mouse_netterm
file menu sistem: "$ VIMRUNTIME / menu.vim" mundur untuk $ VIM: "/ usr / share / vim" Kompilasi: 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 / termasuk / 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 = generik -O2 -pipe -fstack-protector --param = ssp-buffer- size = 4 -D_FORTIFY_SOURCE = 1 Menautkan: gcc -L. -Wl, - hash-style = gnu -Wl, - sesuai kebutuhan -rdynamic -Wl, -export-dynamic -Wl, -E -Wl, -rpath, / usr / lib / perl5 / core_perl / CORE -Wl , -O1, - sort-common, - sesuai kebutuhan, -z, relro, - hash-style = gnu -L / usr / local / lib -Wl,
Jawaban:
Saya punya masalah ini dan bisa menyelesaikan masalah dengan memulai gvim dengan
--sync
opsi. Ini membuat panggilan X tidak sinkron.(Berkat tautan di komentar Christian Brabandt karena mengarahkan saya ke arah yang benar.)
sumber
Akan membantu memberikan info tentang OS, kartu video, dll. Sepertinya GNOME3 aktif ...?
Saya mempunyai masalah seperti ini ketika menjalankan GVIM dan aplikasi lain dengan Compiz sebagai Window Manager saya dengan kartu video NVIDIA, dan memperbaikinya dengan masuk ke "Compiz Config Settings Manager"> Workarounds> centang "Qt Window Fix".
Tidak ada petunjuk apakah ini, atau sesuatu yang lain, akan membantu dalam kasus Anda atau tidak, terutama jika Anda menggunakan Mutter alih-alih Compiz.
sumber
Apa jenis plugin yang Anda dongkrak ke Vim di luar apa yang dibundel keluar dari kotak?
Mungkin ada kemungkinan salah satu plugin Anda yang biasanya stabil akan sedikit bermasalah pada Anda. Ya, GTK mengungkapkan masalahnya, tetapi kemungkinan bukan ATAS masalahnya. Apa pun yang membuat jendela sembulan atau sementara membuat buffer mini atau sesuatu seperti itu. Pelengkapan otomatis, cuplikan, ... Jika ini merupakan plugin atau fitur tambahan, coba nonaktifkan dan lihat apakah masalah Anda hilang.
Meskipun saya tidak melihat popup seperti itu di film Anda, plugin mungkin membuat popupnya, menyadari itu sebenarnya tidak diperlukan, membersihkan popup, tetapi kemudian tidak menggambar ulang konten yang semula di bawahnya.
Melakukan gulir layar penuh tidak mengecat ulang seluruh buffer. Kursor jelas memaksa buffer untuk mengecat tetangga.
Tentu saja itu bisa menjadi masalah inti GTK / GVim (saya pikir X atau OpenGL tidak ada hubungannya dengan itu), tetapi sepertinya tidak mungkin bagi saya (walaupun saya tidak biasa menggunakan Arch).
Jika Anda menemukan itu sebagai plugin, Anda mungkin ingin memaksakan peningkatan versi atau downgrade (apa pun kecuali versi "rusak").
sumber
FWIW Saya menyingkirkan masalah dengan menginstal paket vim-gtk3, menggantikan
vim-gtk
(Ubuntu).CATATAN! Untuk beberapa alasan perintah gvim default tidak dipetakan ke vim-gtk3 ketika saya menginstal paket jadi saya harus menjalankan pembaruan-alternatif secara manual seperti:
Terima kasih banyak atas petunjuk di utas ini bahwa GTK mungkin masalahnya. Masalah ini sulit dilacak bahkan menggunakan Google!
sumber