Lots of IDEs claim to offer Vim/Emacs emulation. Vim users seem often quite happy with the vim emulation they get (I'm only an occasional Vim user so don't have an opinion).
The issue with emulating Emacs is that the editor key bindings are not the feature. The feature of Emacs is basically an IDE totally tuned to how you want it, plus the fact that then you apply the same ecosystem to a great number of text-adjacent applications - Org, E-mail, code, markdown, etc.
Someone saying to me "hey, you can copy with M-w!" just really doesn't appeal.
Vim seems more about an out-of-the-box "language" for typing, so I can see how you can emulate this more sanely.
> Vim users seem often quite happy with the vim emulation they get
Its better than nothing, but usually only lets you use vim bindings for text editing itself. Compared to neovim, where the entire editor and the plugin ecosystem is fully based on the same keyboard-driven workflow, it's quite lacking. For example, I remember that when using VSCode with its Vim mode plugin, it took quite a bit of configuration to be able to switch to the file tree and navigate it with the keyboard, and it still didn't work that well due to inherent limitations of the software.
Another huge example is Neogit. If you're an Emacs user, you probably use Magit, which Neogit is heavily inspired by, so you'll understand. Having it integrated into your editor and working with the same shortcuts is very nice and can't be replaced by vim emulation mode.
Yeah, that seems to be the general pattern across vi-emulation. However, back when I was on IntellJ stuff (pre vi-emulation), I was already quite deep into the plethora of keyboard shortcuts within IntelliJ, so although you couldn’t do everything with just vi-emulation, you could still do essentially almost everything without leaving the keyboard. Not the same as full blown vim, but it was a solid workflow in my eyes.
The main reason I switched was because of finances and hardware limitations, as I’m now rocking an 8GB M1 MBP
And often, that Emacs keybinding emulation is incredibly incomplete. For example, Matlab's Emacs emulation doesn't have M-w bound and I believe C-k doesn't copy, it only kills. And the emulation is the default setting on Linux.