0

I do not know what the reason is and the rhyme isn't predictable either. Occasionally, as I'm using gvim, the character I type doesn't show for "a bit" (when this occurs, maybe ~1-2 seconds). Normally, gvim is quite snappy and I've no issues. This isn't terrible, it's just annoying.

For example, while trying to provide some context for this post I was trying several things. While editing a makefile it happened after defining a variable when typing the = character. I typed var = and the = sign didn't show for "a couple seconds". The next several times I tried, it was fine. Sometimes, it's happened when I type a to begin appending. I'll type a but the cursor doesn't move. If I wait "long enough" it shows what it should. If I begin typing immediately, it shows as it should so gvim is working correctly but the display doesn't immediately update. I thought it may have been video (a stretch since nothing else shows issues) and updated to the latest NVIDIA for Linux for my board: didn't help.

I'm at a loss for how to isolate this and am hoping for some suggestions. I'm running vim version 8.2 with patches 1-1959. I'm running on CentOS 7.6, so I've cloned the repo and built from source (as Enterprise Linux uses only vim 7.x).

Some searches with Google brought up some suggestions for "events" such as CursorMoved and so forth. I haven't configured anything to occur with these events, or any other to my knowledge. So, I don't think things like this are related.

What should I try next?


EDIT I don't usually use vim from the terminal but when I do, I haven't witnessed this issue. I think it is related only to the GUI.

3
  • 1
    You could try some debugging techniques (verbose, looking at autocmds, the clean flag) and some profiling techniques (syntax profile). It could easily be a complex autocommand, abbreviation, insert-mode mapping, or the syntax highlighter (which in turn depends on regular expressions). Also look at memory usage for the gvim proc and the computer overall
    – D. Ben Knoble
    Jan 7 '21 at 1:28
  • 1
    Did you try gvim --clean and see if you reproduce the problem then?
    – filbranden
    Jan 8 '21 at 14:52
  • 1
    @filbranden no, I didn't know of that option to gvim. When I get back to the office, I'll give that a try. Jan 8 '21 at 18:55
5

It seems that vim is waiting for another key to be pressed to continue. You can search for a mapping that use a<some_other_key> using the comand :map a and :imap = for the equal sign.

2
  • 2
    You may need imap for insert mode
    – D. Ben Knoble
    Jan 7 '21 at 15:55
  • 1
    I'd recommend :verb imap = so you can see where the mapping was defined. Jan 9 '21 at 6:07

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.