Repository: macvim-dev/macvim

Issue #634: Syntax highlight getting lost when jumping down large file
Created: 2018-02-11T18:51:26Z
I am writing a book using Asciidoc format. You can find the Asciidoc file here:https://github.com/krlawrence/graph/tree/master/book
I am using MacVim version:   8.0.1420
I have not noticed this problem as much in earlier versions of MacVim and it is not an issue editing the same file on Windows using Gvim.
If I load the file and set the syntax to Asciidoc the highlighting looks fine. However if I then do a search that requires jumping way down the file or if I just manually jump to the end of the file, syntax highlighting is lost. Doing a syntax sync fromstart does not bring it back and setting the syntax back to Asciidoc again only seems to work if I jump back to the top of the file and manually scroll down the file. As soon as I jump down the file again same problem. This seems to have started happening since I updated to this version of MacVim.
My OS is MacOS 10.13.3
I have sometimes seen this behaviour before but never until now encountered a case where doing a syntax sync fromstart does not fix it.

Duplicate issue #1068: Syntax highlight is lost after sleep 
Created: 2020-08-05T14:30:00Z
Describe the bug
I believe this only happens with the currently visible tab, in whatever split has the cursor. If no split then the tab's current buffer.
To Reproduce
Put the computer to sleep. Wake the computer. Text is now all white. set filetype=ruby (or whatever) fixes it. Happens almost every time.
I have suspicions that this may be related to macOS moving the windows around as the external monitors are recognized.
Expected behavior
Syntax highlighting should never be lost as a result of a sleep/wake cycle or as a result of the OS moving the window.
Environment (please complete the following information):

Vim version (see below)
OS: macOs 10.15.5
Terminal: GUI - MacVim 8.2.539 (163)

VIM - Vi IMproved 8.1 (2018 May 18, compiled Apr 17 2020 17:49:10)
macOS version
Included patches: 1-503, 505-680, 682-2292
Compiled by root@apple.com
Normal version without GUI.  Features included (+) or not (-):
+acl               -farsi             -mouse_sysmouse    -tag_any_white
-arabic            +file_in_path      -mouse_urxvt       -tcl
+autocmd           +find_in_path      +mouse_xterm       -termguicolors
+autochdir         +float             +multi_byte        +terminal
-autoservername    +folding           +multi_lang        +terminfo
-balloon_eval      -footer            -mzscheme          +termresponse
-balloon_eval_term +fork()            +netbeans_intg     +textobjects
-browse            -gettext           +num64             +textprop
+builtin_terms     -hangul_input      +packages          +timers
+byte_offset       +iconv             +path_extra        +title
+channel           +insert_expand     -perl              -toolbar
+cindent           +job               +persistent_undo   +user_commands
-clientserver      +jumplist          +postscript        -vartabs
+clipboard         -keymap            +printer           +vertsplit
+cmdline_compl     +lambda            -profile           +virtualedit
+cmdline_hist      -langmap           +python/dyn        +visual
+cmdline_info      +libcall           -python3           +visualextra
+comments          +linebreak         +quickfix          +viminfo
-conceal           +lispindent        +reltime           +vreplace
+cryptv            +listcmds          -rightleft         +wildignore
+cscope            +localmap          +ruby/dyn          +wildmenu
+cursorbind        -lua               +scrollbind        +windows
+cursorshape       +menu              +signs             +writebackup
+dialog_con        +mksession         +smartindent       -X11
+diff              +modify_fname      -sound             -xfontset
+digraphs          +mouse             +spell             -xim
-dnd               -mouseshape        +startuptime       -xpm
-ebcdic            -mouse_dec         +statusline        -xsmp
-emacs_tags        -mouse_gpm         -sun_workshop      -xterm_clipboard
+eval              -mouse_jsbterm     +syntax            -xterm_save
+ex_extra          -mouse_netterm     +tag_binary
+extra_search      +mouse_sgr         -tag_old_static
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
  fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H   -DMACOS_X_UNIX  -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: gcc   -L/usr/local/lib -o vim        -lm -lncurses  -liconv -framework Cocoa

Closing comment (2020-08-15T23:20:39Z): I think this is related to #634. Basically, Vim has an option (:help redrawtime) that puts an upper-cap on how much time syntax files can run before it just stops it and don't display syntax highlighting. This could happen if you have a large file, for example (see that linked issue).
Do you know if this is specific to MacVim or just Vim? For example, if you open the same file in terminal Vim (no GUI) does the problem still exist? It could just be a plugin interacting poorly with your file. If that's the issue, you can probably disable the plugin, set redrawtime to be higher, or get a faster Mac. :)