Multi-cursor selection slowness


#1

Is it just me or is multi cursor selection painfully slow for everybody? All the column/block selection plugins seem to work with multiple cursors, but as soon as you reach more than 10 lines or so, everything starts slowing down or grinds to a halt.

I presume this is because multiple cursors are really just multiple instances of a single cursor with all the functionality attached to each one?


#2

Yes, when you do an operation, like typing, it has to do the insert of each character location into the buffer. I don’t see how it could be any other way. I’m sure things are somewhat optimized like not redrawing the window until all changes are made. If I’m wrong that is good news because it will get faster when that happens.


#3

I understand it being slower once performing operations (typing, etc.), but just doing the selection itself causes performance issues.

The best plugin I’ve found is ‘column-select’ (https://atom.io/packages/column-select) which starts to stall after about selecting 30 lines. However this is much better than the built it multi-selection which grinds to a halt after about 10 lines.

I wonder if there is scope for a column/block selection which doesn’t use multiple cursors?


#4

I have a package called box-edit that doesn’t use the built-in cursors at all. That frees it up to do several things cursors cannot do. It is a bit bizarre though. Check it out.


#5

Bump! I have the same issue. Very odd and very annoying.


#6

Same issue here, It seems like it should be difficult to fix because it has been an issue since the beginning of the project. It keeps annoying me very much when I need to switch to VIM because I can’t edit more than 20 lines without a painfully slow response.


#7

Seems this issue hasn’t been resolved … Still have this problem in 1.18.

I often use a lot of multiple cursors for editing Excel VBA which saves a lot of time.

Strangely, in Visual Studio Code, there is absolutely no “limit” to the number of cursors you can add regarding performance, so I’m guessing Github might some work to do there.

So easiest solution : switch to VS Code for this task come back to your favorite editor … the only danger with thinking is that your favorite editor might change someday :wink: