theia icon indicating copy to clipboard operation
theia copied to clipboard

plugins that make custom key maps for cursor motion run very very slow (vim emulator is nearly impossible to use)

Open trusktr opened this issue 1 year ago • 3 comments

Bug Description:

Keyboard motions with plugins that script the cursor are very slow. At one point, the popular "vim" plugin worked, and I remember it was super slow. Now that the "vim" plugin does not work, maybe due to

  • https://github.com/eclipse-theia/theia/issues/12323

I tried the "amVim" plugin, and it suffers the same issue. All keyboard actions happen very slowly, the repeat rate is limiated, and the cursor jumps around fanatically.

Steps to Reproduce:

  1. Install the "amVim" plugin
  2. Open a text file
  3. Try to move the cursor around with j/k to move down/up. Hold j or k to move repeatedly
  4. press i to insert text and try holding down a letter to repeat

Additional Information

  • Operating System: MS Edge
  • Theia Version: Version 1.45.0 VS Code API Version: 1.84.2

Video

In particular, when I hold k to move the cursor up quickly repeatedly, you'll see the cursor jumps all over the place.

https://github.com/eclipse-theia/theia/assets/297678/302fce78-1b57-4176-9aa0-e5e55c6201b7

Works VS Code

In VS Code Web, the regular "vim" plugin works very well, the cursor move quickly as expected, without glitchy jumpyness. The "amVim" plugin is disabled for install in VS Code, I was not able to try that one.

trusktr avatar Jan 11 '24 18:01 trusktr

Does this also occur in the desktop version, i.e. the Theia IDE?

JonasHelming avatar Jan 12 '24 07:01 JonasHelming

I can look at this

eneufeld avatar Apr 05 '24 09:04 eneufeld

I can't really reproduce the issue with Theia 1.48.3 I tested in a Windows VM and had no issues. A slight lag could be there but this might also be due to the use of the Windows VM.

@trusktr could you check with the latest Theia version whether this still happens for you? I used a clean Theia with just the amVim plugin in version 1.37 installed. Reading the changelog of amVim 1.37 release it might also be a fix that happened in the plugin.

eneufeld avatar Apr 22 '24 23:04 eneufeld

For me, the reaction rate is pretty much the same for both moving the cursor and inserting characters. Closing.

tsmaeder avatar Aug 02 '24 14:08 tsmaeder