Slow down the speed of macros
IME will also change when a running macro entering/leaving insert mode.
This is an interesting problem. Here are the solutions, as I see them:
-
The easiest fix would be if there were a way to run
system()commands asynchronously. Your system would still be asked to switch the IME every time your macro entered/exited insert mode, but at least it wouldn't slow down the macro.Unfortunately, I don't know of a platform-agnostic way to do this. It looks like
:!startworks on Windows, but I haven't found anything for Linux/Mac. -
Another approach would be to detect when vim is executing a macro, and then suppress barbaric's
system()function call during those times.However, AFAICT, there is no way to do this.
-
The only other fix I can think of is to remap
@to disable barbaric before running a macro, then re-enable it when the macro is finished.
Let me know if you come up with anything else.