This could be a rare issue related to individual environment. But it's so annoying that can't help me asking for help. Please have a look at following captured photos which is fine before scrolling and wrong afterwards.

Although I use keyboard in most of time, which makes me blind on this issue. But when I use a mouse and demo the code it just bugs me.

MacVim 7.4 on Yosemite 10.10.3. .vimrc is not relative and has been removed before testing. Btw, vim in terminal is fine.

Version as following:

VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Dec 27 2014 00:31:46)
MacOS X (unix) version
Included patches: 1-258
Compiled by Homebrew
Huge version with MacVim GUI.  Features included (+) or not (-):
+acl             +cmdline_hist    +dnd             -footer          +linebreak       -mouse_gpm       +odbeditor       +rightleft       +tag_old_static  +virtualedit     +xim
+arabic          +cmdline_info    -ebcdic          +fork()          +lispindent      -mouse_jsbterm   +path_extra      +ruby            -tag_any_white   +visual          -xsmp
+autocmd         +comments        +emacs_tags      +fullscreen      +listcmds        +mouse_netterm   +perl            +scrollbind      +tcl             +visualextra     -xterm_clipboard
+balloon_eval    +conceal         +eval            -gettext         +localmap        +mouse_sgr       +persistent_undo +signs           +terminfo        +viminfo         -xterm_save
+browse          +cryptv          +ex_extra        -hangul_input    -lua             -mouse_sysmouse  +postscript      +smartindent     +termresponse    +vreplace        -xpm
++builtin_terms  +cscope          +extra_search    +iconv           +menu            +mouse_urxvt     +printer         -sniff           +textobjects     +wildignore
+byte_offset     +cursorbind      +farsi           +insert_expand   +mksession       +mouse_xterm     +profile         +startuptime     +title           +wildmenu
+cindent         +cursorshape     +file_in_path    +jumplist        +modify_fname    +multi_byte      +python          +statusline      +toolbar         +windows
+clientserver    +dialog_con_gui  +find_in_path    +keymap          +mouse           +multi_lang      -python3         -sun_workshop    +transparency    +writebackup
+clipboard       +diff            +float           +langmap         +mouseshape      -mzscheme        +quickfix        +syntax          +user_commands   -X11
+cmdline_compl   +digraphs        +folding         +libcall         +mouse_dec       +netbeans_intg   +reltime         +tag_binary      +vertsplit       -xfontset
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
  system gvimrc file: "$VIM/gvimrc"
    user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
    system menu file: "$VIMRUNTIME/menu.vim"
  fall-back for $VIM: "/Applications/MacVim.app/Contents/Resources/vim"
Compilation: clang -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe  -DMACOS_X_UNIX  -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -I/Sys
tem/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -fno-strict-aliasing -fno-common -dynamic -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -DENABLE_DTRACE -DMACOSX -DNDEBUG
-Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch x86_64 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1     -I/System/Library/Frameworks/Tcl.fr
Linking: clang   -L. -L/usr/local/var/rbenv/versions/2.2.0/lib  -fstack-protector -L/usr/local/lib -L. -L/usr/local/var/rbenv/versions/2.2.0/lib  -fstack-protector -L/usr/local/lib -L/System/Library/Fr
ameworks/Python.framework/Versions/2.7/lib/python2.7/config -framework CoreFoundation -lpython2.7 -L/usr/local/lib -o Vim -framework Cocoa -framework Carbon       -lm  -lncurses -liconv -framework Coco
a   -fstack-protector  -L/System/Library/Perl/5.18/darwin-thread-multi-2level/CORE -lperl -framework Python  -F/System/Library/Frameworks -framework Tcl -framework CoreFoundation -lruby-static -framewo
rk CoreFoundation -lgmp -lobjc -L/usr/local/var/rbenv/versions/2.2.0/lib  
  • 1
    Are you running MacVim in the terminal? (mvim -v?) If you are what is the value of your TERM variable? – FDinoff Apr 6 '15 at 19:03
  • @FDinoff No. I run standalone MacVim app outside of terminal. And it's fine in terminal mode as well as vi. – chagel Apr 7 '15 at 3:12
  • I encounter this issue as well. Have you filed it with the Github project? (github.com/macvim-dev/macvim/issues) – Paul Rosania May 25 '15 at 19:24
  • Having the exact same problem. – lvarayut Oct 30 '15 at 4:01

I have a feeling this is bug in Vim 7.4 since my Windows version does the same thing from time to time. The only solution I've found so far is to scroll past the corruption so that it fixes itself or call :redraw! to force it to redraw the screen.

P.S. I was going to add this as a comment, but I don't have the requisite reputation.

  • <Ctrl-L> is a quick way to force a redraw. – joeytwiddle May 8 '15 at 19:21

This has been a bug in MacVim for a long time. If you go into preferences (apple-,) and turn off the native fullscreen support then it will start work. This is only a work-around as the fullscreen window will cover your desktop rather than exist in a separate space. The other way to fix it is by hitting pgup/pgdown to refresh the current view.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.