-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Combining "range selection" and "column selection" hang on large file #356
Comments
Hi, thanks for the report!
I'll do my best to improve the experience. Surprisingly currently ecode is quite fast with big files, much faster than many popular editors, so I'm happy with it, I usually open 50MB text files with word-wrap enabled and encounter zero problems, most editors struggle with that. |
Thank you for your continued efforts to improve your creation.
I deal with .gro files. They are some sort of plain text files of tabular data. I regularly need to modify data in columnar fashion. For larger files I usually modify them in a programmatic way (e.g. python scripting), but for smaller files I found a text editor comes in handy. I'm not sure how it is implemented; might be my use case is just an atypical situation, but I think there's still room for improvement. |
I just pushed an optimization for multi-cursor that improves the performance like 100x, can you test the nightly build and tell me if that's good enough for your case? |
It seems you're halfway there, detective. Joking aside, on my end, I can click on the initial position on a lower line, Alt+Shift, and then click on the final position on an upper line, then the selection works like a charm. But I can't do that if I click on an upper line first and then click on a lower line. Can you reproduce this on your end? |
haha I'm not able to reproduce it, it works the same way from both directions. What do you mean with "I can't do that if...", it does not create the cursors? it hangs? what exactly happens? |
It does not create any extra cursor except the first one at initial position, but the app does not hang. I can click on an upper line from that to create a column of cursor, but clicking on a lower line does not create anything. |
Ohh you're right, thanks! I just pushed a fix. Nightly build will be available +15m after this message. |
…e cursors in the initial cursor column (SpartanJ/ecode#356).
I think that you have a point, I pushed a change that will always create new cursors in the first cursor column position. Is this what you expect? I actually don't have an strong opinion on how it should behave, so let's play around and see how it feels. vscode will generate a selection for each cursor, it tries to generate a filled rectangle of selection, I'm not sure if we should copy that behaviour, I'll think about it and also check other editors (I'm not a fan but maybe this is "standard"). Nightly should be ready in a few minutes, let me know what you think. Thanks! Edit: |
I should have said that I am ok with either logic for selection but I expect it to be consistent for both directions. So, I am happy with the latest nightly build. But yeah, I'm also not a fan of rectangular selection and prefer the current behavior. Thank you for all the hard work. |
Great! I'll keep it then. Thanks for the help! |
Issue
I opened a moderately large file (1 MB), using solely "Shift selection" or "Alt selection" was smooth as usual, even when operated on the whole file. When I wanted to select a column by clicking on initial and final positions, I used Shift+Alt+
select
(i.e. combining "Shift selection" and "Alt selection"), it worked for a short range of rows (e.g. visible screen). But when I used Shift+Alt+select
for a longer range of rows (e.g. the whole file), the program hung for a long time (that I had to terminate the process since I was not sure if it will eventually response).One of the unique feature I love about
ecode
is its capability to quickly handle large files. This appears to be a bug. Please consider improving it.Terminology
(Click to expand)Range selection (“Shift selection”): select initial position → hold Shift → select final position 【function: select everything between initial and final positions】
Column selection (“Alt selection”): select initial position → hold Alt → use Up/Down key to select the same column in adjacent rows 【function: select a column across multiple rows】
Combining “Range selection” and “Column selection” (Shift+Alt+
select
): select initial selection → hold Shift+Alt → select final position 【function: select a column across multiple rows between initial and final positions】OS: Windows 11
Version: ecode 0.6.3
The text was updated successfully, but these errors were encountered: