jmacdonald / amp

A complete text editor for your terminal.
https://amp.rs
Other
3.68k stars 105 forks source link

Unconventional cursor movement #218

Closed piegamesde closed 3 years ago

piegamesde commented 3 years ago

Pressing left or right at the beginning or end of a line does not move the cursor to the next/previous line.

jmacdonald commented 3 years ago

I've never really noticed/given much thought to this, but I just checked in Vim and it's consistent with amp's behaviour; going to assume that it might actually be frustrating to have the cursor move like that.

If "move up and to the end of the previous line" is something you'd want to be able to do in a single keystroke, you could easily define a composite keybinding that does that. It wouldn't be baked into the move_left command, but it would achieve the effect you're after, and wouldn't require a change to amp's default behaviour.

piegamesde commented 3 years ago

That's interesting. I don't really use Vim, but I have never seen this behavior from any other editor. You may want to re-evaluate if you want to stick with Vim-style for this or not. Literally every other editor (excluding all Vim clones) does it like requested, and I have never experienced this as a source of frustration.

I am not interested in "move up and to the end of the previous line"; if that were the case then I'd be fine with a two stroke shortcut. I am interested in the ability of navigating across lines without interruption using forward/backward movement.

jmacdonald commented 3 years ago

I guess I'm left wondering this: when you're at the start of a line, and you intentionally press left to move to the end of the preceding line, what are you trying to accomplish?

Is it because the preceding line is long enough that it extends beyond the visible area, and you want the editor to horizontally scroll it into view? Or are you using the cursor as a means of tracking what you're reading?

I'm genuinely curious as to what problem this behaviour solves, as I've not run into that myself. 🙂