I started with Evil mode and then moved to Xah fly keys before sticking to the emacs bindings. Having the caps lock key bound to CTRL helped me a lot. I don't know if it makes that much of a difference for Emacs but using the DVORAK layout has helped my fingers
There are other bindings you can try like Meow or God mode but I don't know what the adoption rate is like for them. Emacs gives you the flexibility to set it up as you please. As others have mentioned, there may be other keyboard options that might be more helpful as well
https://github.com/emacs-evil/evil
http://xahlee.info/emacs/misc/xah-fly-keys.html
https://github.com/emacs-evil/evil
It gives you comprehensive Vim bindings so what you need to learn to be comfortable in Emacs is very little. As a bonus, it also keeps your RSI risk unchanged.
Another thing that Emacs and Vim have in common is Vim keybindings.[1] You can pick Emacs keybindings up at your own pace. From one vimmer to another, if you want to try out Emacs, I highly recommend doing it with Evil.
But for those who like neither Emacs nor Vim ... I don't know.
UX wise, it's pretty different but I know a lot of people use Evil (https://github.com/emacs-evil/evil) or something similar to get a more vi like experience out of Emacs. If you're not vested in an Emacs workflow, or don't have one at all, I think it's worth checking out other peoples configs.
The biggest benefit of Emacs is that you can do some much from one place. That's much less context switching that you have to do, and I can see why some people prefer it.
If you already know Vim keybindings, it is very easy to get into Emacs with evil-mode.[1]
Besides that, Emacs by default comes with a menu system that helps you discover keybindings, too. And there is also cua-mode which I haven’t tried.[2]
The short version is I have SLIME running inside Emacs, and my text files open in vim. I would just reload the changed file(s) when needed (originally with cl:load-file, then later with asdf, which is roughly "make" for lisp). I used slime similarly to how I would use gdb. It was a big improvement over using vim with the clisp[1] REPL both because SLIME was more powerful than the clisp repl, and because it worked with other implementations like CMU CL (which sbcl now is a fork of).
I mostly just used the menus for interacting with emacs, but since the shortcuts are listed beside commands, I did learn the more commonly used ones.
I continued like this for years until I discoveredevil-mode[2], which was the first thing close enough to vim to be usable for me (and even then I had to add a few keybindings that it was missing).
1: clisp is a specific implementation of common lisp, not an abbreviation
When I first started, I found the keybindings odd, but now I love them since the core set of shortcuts—C-a, C-e, C-f, etc.—work "everywhere" from the terminal, to GNU readline-based programs, to even native macOS text boxes. If you don't like the default keybindings, you can change them or use the Evil package [0] for Vim bindings.
If you want to get up and running quickly, I'd check out Doom Emacs [1] which is easier to configure and takes care of a lot of configuration for you. I personally use a reasonably-minimal config I wrote myself [2]. If you like to tinker, I'd recommend writing your own config, as it will also teach you a lot about Emacs.
If you have any questions feel free to reach out—contact info in my profile.
[0] https://github.com/emacs-evil/evil [1] https://github.com/hlissner/doom-emacs [2] https://github.com/jonpalmisc/.emacs.d/blob/master/init.el
> Well, there's a lot of games inside emacs
There's a text editor [1] available too.If you really prefer the vi syntax, there is even an "evil mode" for emacs - https://github.com/emacs-evil/evil
Another aspect I see rarely mentioned is the emacs evil[1], it basicelly provides a full vi layer, it's much more than your average "vi keybindings" plugin. Emacs vs Vim? Not a question I have to give any thought when I can use both and switch between them without much effort.
Or, if you like vi(m), evil mode [2] should be good to go.
Helm is pretty amazing and almost worth the cost of Emacs by itself: https://emacs-helm.github.io/helm/
edit: If you use MacOS, Yamamoto Mitsuharu‘s emacs-mac [3] is my recommendation, as for linux the version from your distros package manager should be apt. ;)
[0] https://github.com/hlissner/doom-emacs
[1] https://github.com/syl20bnr/spacemacs
Of course, I edit text in emacs with evil: https://github.com/emacs-evil/evil
[1] https://www.gnu.org/software/emacs/manual/html_node/emacs/GD...
1. I want a Git log viewer right in my terminal, that gives me most of the benefits of visualizing a Git log like a "real" GUI.
2. Fast startup. I work in dozens of Git repositories a day, many submodules, etc. To visualize these effectively, I want to type a few characters in my terminal and see the Git history in a digestible way.
3. This essentially `git log --graph --pretty` with the ability to deep-dive into a single commit view of `git log -p` with nothing more than a stroke of the return key. To exit, I hit ESC.
4. Vim-like bindings in a Git viewer. Every visual app that I use daily in my terminal has "roughly Vim" bindings, from Emacs (https://github.com/emacs-evil/evil) to Zsh (bindkey -v) to Tig.
5. This is just as fast to start as `git log --graph --oneline`, but I get a fully interactive view of a Git Repo history. For example, the Linux source [1].
Perhaps I should compile my thoughts and send some README updates and screenshots to help the project.
What you should have done is use magit and looked into the emacs version of vim: https://github.com/emacs-evil/evil
https://github.com/emacs-evil/evil
IMO - and I speak as someone who loves Emacs so much he has email, organisation, TODOs, calendaring, IRC, RSS and more in Emacs - vi actually does a better job of the mechanics of text editing.
Evil gives you the best of both worlds - the Emacs platform, and vi editing.