rogual / neovim-dot-app

Mac OS X GUI for Neovim
1.13k stars 62 forks source link

Scrolling very laggy with many lint errors showing #180

Open jamischarles opened 8 years ago

jamischarles commented 8 years ago

Not sure if this is a neomake, Neovim, or Neovim.app issue, but I wanted to bring it up here to discuss.

After neomake runs eslint, and adds error signs in the gutter there is a significant scrolling lag when I move over those lines (even going horizontally).

My hunch is that the command showing the error below is being fired too often. Maybe this results in too many messages being sent over to Neovim.app and the UI can't paint fast enough? Something needs to be debounced somewhere. Any pointers for how to track this down? I'll gladly get my hands (a little) dirty.

nvim_laggy

rogual commented 8 years ago

Can you try it with nvim in the terminal? This will determine whether it's a Neovim.app issue or not.

jamischarles commented 8 years ago

In the terminal I can't perceive any delay. If there is one, it's very small.

rogual commented 8 years ago

It does sound like inefficient drawing then. Maybe this plugin is causing Vim to send redraw events in an unusual order, or send too many of them?

It might be a while before I get round to it but if you want to take a look yourself the main drawing code is in redraw.mm — this interprets the redraw events from Vim and updates the screen. Putting some timing logs in there might help you track the issue down; that's where I'd start.

rogual commented 8 years ago

You can dump out the whole redraw_o to get a sense of what's happening each redraw.

Boelensman1 commented 8 years ago

I'm having the same issue using neomake and pylint. When scrolling horizontally I notice that the commander (probably not the correct word, but the bar where you input your commands like :w) keeps getting refreshed every time the cursor changes position. That might be the problem?

untitled mov

adamdicarlo commented 8 years ago

have y'all tried set nolazyredraw ?