emacs-oob-reboot
emacs-oob-reboot copied to clipboard
Enable windmove by default?
Personally I think directional window navigation is a much friendlier option, but enabling it by default might be difficult on account of choosing a modifier.
ctrl and/or meta already have expected uses when combined with arrows.
The windmove-default-keybindings default of shift will conflict with the expectation of shift-selection (which Emacs enables by default nowadays), along with any modifier combination which includes shift.
super may be a decent pick, although I don't think Emacs uses any super bindings by default.
Super + arrow keys are typically used by lots of window managers on Linux (and also on Windows I think), also with modifiers.
Not sure what a good choice for key would be...
Super is also Meta for a lot of Mac users.
I personally use C-M-↑, C-M-→, C-M-↓ and C-M-← bound to windmove functions. But that's because I don't care about backward-sexp and forward-sexp which are the default to the left and right bindings.
Instead we can just bind C-xp to previous-window. I remember having used that in my first days of Emacs because:
- I didn't know about
windmoveat the time - I only ever had two windows open so I didn't really look for 1.
- It made sense because "p" for "previous"
It's also unused by default. Thoughts?
Emacs is a keyboard users dream and should emulate that. Having to move the hand to a different location is counter productive. Perhaps something like Vims keybindings with HJKL for left, up, down, right movement. This way your hands dont leave the home row. One hand can be used for modifiers while the other can be for letters, symbols, and numbers.
@whtfox you have got this wrong I think.
Oh right its h left, j down, k up, l right. Not a big deal though. Concepts the same. Using home row keys for movement. Or more generally for some functionality that is used often.
Am no ..not that...you got the purpose of this repository wrong. If people want vim emulation they can use evil. Making HJKL default for movements is not an expected behavior for new comers from other popular editors other than Vim. I use evil thou. But for many new developers who have never been to realm of Modal editing starting out on that might be confusing.
Isnt the purpose to provide a better default emacs? A more evolved emacs?
Im not saying that at all. You're missing the point. Its just the use of home keys that im interested in. The home row could be utilized better for say window navigation. Having keys in a row for common functionality is easier on people both noob and veteran alike. C-x o isnt a good default way to navigate windows.
Although you bringing up modal editing may be useful in some sense. Have a mode for manipulating windows. Keep it separate from text editing. If we utilize certain indicators for what mode is active like color of frame border, some sort of change with the mode line, then modal editing could be easily implemented into emacs.
@josteink what do you think
@whtfox We are not trying to make the perfect out of the box IDE. We are trying to make the first day in front of Emacs the least painful possible.
Having keys in a row for common functionality is easier on people both noob and veteran alike.
That's a pretty big assumption. I started using Emacs with my studies, roughly 6-7 years ago. I for one prefer mnemonic keybinds, even if they are slightly harder to reach. That is because the extra 100 ms required to press the keys are still less than spending seconds to try and remember which super-fast-on-the-home-row key I should press, or worse press the wrong one.
Sure you get used to it, and that's probably why Evil and Vim itself have so much success, but the target here is the student/writer/programmer who just read a blog post about how powerful Emacs is. Someone who might uninstall Emacs before getting used to it. : -)
C-x o isnt a good default way to navigate windows
And yet C-c still doesn't copy in any terminal I've used.
Edit: My point being, if you want modal editing, try Vim or endure default Emacs knowing that you can easily use Vim bindings once you are more comfortable around Emacs and how it actually works.
If you don't know what you use, you can't easily find help, you get frustrated and you give up.
On a Mac, I use cmd arrow keys w/ windmove and that feels very intuitive to me.
@josteink what do you think
I don't think using anything from the vim universe is going to be helpful for new users. It also breaks consistency with the rest of Emacs.
All in all, I think if we can't agree on a good, universal modifier key, making this a default is going to be of limited use.
On a Mac, I use M-s-arrow (where the Super is bound to the command key) for windmove. On a Windows or Linux machine I'd probably do the same with the "Win"/"Tux" key bound to Super.
(I'm a lisp hacker who uses sexp navigation constantly.)
I think recent changes to Emacs (eglot, tree-sitter, etc) has helped make Emacs much more usable OOB. Considering repo-purpose obsolete.
Closing all issues and archiving repo. Thanks to all contributors!