I use gVim and UltiSnips because it helps going way faster to type maths in LaTeX. To do so, I use a lot of snippets which expand automatically, for instance:
snippet ( "" iA
\left(
endsnippet
The problem is that, when I type too fast, some snippets do not expand automatically. The easiest way I found to reproduce this is to simply hold the "(" key using the snippet above. After some time, I start seeing things like "\left((\left(", whereas it should be "\left(\left(\left(". I found that when the line I am writing is very small, this problem does not occur often, but the longer the line the more I see it. I have also noticed that the size of the document I am writing and the number of my snippets are other factors which make this problem worse.
All this makes me think that UltiSnips takes too much time to process a key press, and then, when it looks at what was typed since the last update, it skips (voluntarily or not) some key presses. I don't really care if what is on my screen is not exactly up to date with everything I type, as long as, in the end, all text is here and all my snippets are expanded correctly (especially for the ones which should be automatically expanded).
I think that a key buffer could solve my problem. It didn't feel so when I browsed on the internet and through UltiSnips's documentation, but could there be an option in UltiSnips which I am missing? Do you think that I could use a Vim plugin or an external application which would record all my keypresses in a buffer, and give them to UltiSnips or Vim with a minimum time between two key presses? If you have any other idea or suggestion that comes to your mind, I would gladly hear it (well, read I guess) :).