So how did the switch to neovim go? I'm very interested in where you ended up. Please share a summary if a full blog post is too hard!

> I'd be curious to learn more about your API testing setup, that sounds very cool! At work, our API is served via FastAPI and there's swagger docs automatically available that I can browse in a web browser if I want, or I just in nvim `SPC f f` to open a fuzzy file finder and find the model definition I want and look at the endpoint directly, or I can do the same to find the kubb-generated react hook, or typescript model, for the endpoint. For other projects, I guess I browse the API docs in a web browser.

I used restclient for this for a long time and that was great, but recently it got archived. Some of its functions are about to become deprecated so I'm thinking of moving to hurl-mode. I've used hurl a bunch so maybe that's where I'll end up. This is one of those things I don't like about emacs. The ecosystem is small enough where elisp tools just end up abandoned. CLI tools end up being better because their ecosystems are larger.

> I always thought it was cool that people were creating presentations in org mode, so I tried it once and then went to give a talk on job hunting at a local university. They didn't have a way to plug an arbitrary device into their projector, so they asked me to email them the microsoft slides files, or send them a link to the google drive presentation, and they obviously had no idea how to install emacs. I didn't have that so had to quickly copy my presentation to google. Google slides works 100% of the time at all the talks and presentations I give so I just use that now. My presentations are quite simple so it's not too much trouble.

Try generating PDFs of your presentations. I find that this works pretty much everywhere too. Even locked down computers on college campuses can generally just open up the default PDF reader and render your PDF. And if you're just doing text slides with maybe a graphic or two, then a PDF should be easy to generate.

I'm very tempted to switch, or at least try neovim. My reasoning to switch goes something like:

"The core of nvim is small and mostly depends on Unix-ish tools communicating using pipes. These tools tend to be better supported than a lot of sparsely supported elisp that lives in emacs. Moreover it's easier to debug neovim issues because it's a matter of spawning subprocesses and subshells and simply pushing data into/out of pipes."

I'm not sure if this thesis is correct. I may be off-base how much better support nvim actually has and maybe I'm walking into another emacs, in which case I'd stick with emacs. But also, I just love the editing experience of emacs. I love its chorded commands. I love the kill ring (never understood why folks would use cua-mode.) I love the fluency with which you can record macros. I love writing bits of elisp to automate the stuff I need. It's this experience that I'm not sure neovim can replicate, especially modal editing. I'm also a Dvorak typist and vim ergonomics seem very QWERTY-based.

But I'm very curious how well my thoughts stand up to reality.

Ah, PDF, that would have been smart :P

I can recommend at least trying neovim, but I had a much easier transition than perhaps you will, since I used `evil-mode` in emacs ;) So I've been a primarily modal editor for 8 years, and actually don't remember any of the chorded commands from my initial days learning emacs. I took one thing from that time: putting CTRL where CAPS is, then I installed evil-mode and never looked back.

I will say as someone who was feeling the start of RSI, I do find vim's bindings to be a lot less painful than emacs chorded commands.

But, I don't know if a "switch" is in the cards for you, from what you've said, because of the Dvorak and that you'd be learning vim and modal editing at the same time. As I understand it, dvorak vimmers can either rebind everything to be in "the same place" to maintain the inherent layout comfort of vim, and lose the mnemonics (`dtp` delete to "p"), and then have to deal with a full rebind on top, or, they can rebind nothing to maintain mnemonics and reduce startup cost, but then have the layout be super wonky and un-ergonomic. Neither sound that pleasant to me. You're right, vim bindings are very qwerty focused.

Also I desperately miss the kill-ring and still hit my binding for it. There are "registers" in nvim and I bet I can find some plugin or write something in lua that will let me switch, on paste, between my "most recent yanks," but I haven't learned how to do that yet.

Macros are great in vim, I think just as powerful as emacs. Lua is also very powerful, but of course, nothing beats the fact that Emacs is a REPL of elisp that you can modify on the fly. Nvim so far as I understand it must reload to register LUA changes (you can still run lua to modify buffer contents though).

However, I do believe the nvim community is more talkative than the emacs one, and busier. Maybe this is because more content creators are vim/nvim-forward, than emacs? I know like, 2 emacs youtubers, and 10 vimmers, some of whom are super famous for other stuff unrelated to programming.

I agree with you on focusing more on unix-ish tools and staying in terminal. It's something that attracted me to nvim. I realized I had been learning a lot of basically one ecosystem, emacs, when instead I could be learning tools that are available on any unix-based machine. Of course you can install emacs on anything, even android, but you gotta install it and get it running. Plus I just feel a lot cooler piping things between unix commands :P

Anyway, for me, the transition was fine. I slapped on lazy.vim and have been basically 99% as productive at work as I was with emacs, only making a couple mistakes here and there. I love the default bindings lazy.vim came with and adjusted to them well. If you do want to try it out, I recommend lazy.vim if you're considering trying out one of the nvim ide packages.

> You're right, vim bindings are very qwerty focused.

I can't share my personal experience, because I never tried switching either to Dvorak or Colemak - I never conceived my typing speed to be a bottleneck - I type faster than I can think of words (but that might be because I'm not a native English speaker), but I've been a vim user for a very long time, and thus I've talked to many vimmers. I have heard several stories that switching to another layout wasn't incredibly difficult, but I suppose the experience would be very personal.

> Macros are great in vim, I think just as powerful as emacs.

Not quite. In Emacs, you can not only record and replay macros, they are fully editable entities.

Vim macros mostly are limited to sequential keystrokes, there's no vars, no if/then logic, no loops, there's no prompting for input, no data manipulation. From practical point these don't really matter, but what sets Emacs apart that you can record a keyboard macro and then fully edit the corresponding elisp code it translates to. Which also allows you to embed logic in a macro - you can inject Elisp evaluation directly during macro recording, which in practice allows you to do things like: "Loop through lines until you find a blank one" inside a macro.

> Maybe this is because more content creators are vim/nvim-forward, than emacs?

That might be true, most Emacs users don't even bother sharing their "secret" knowledge. Some interesting bits quietly sit, marinating in private repos for years, sometimes decades without ever making into a package.

One thing you might be missing here - there is a ton of Emacs Lisp out there. GitHub alone contains some enormous amount of Elisp. It's pretty mind blowing - I suspect there's more Elisp in the wild than Common Lisp and Clojure combined. And of course, I don't need to remind you that Elisp is not a general-purpose language. It's made for one and one objective only - to serve as a configuration language for Emacs, it doesn't get used in anything else.

Even with all the current and increasing popularity of Neovim, it will probably take a while to catch up with Emacs in terms of written code and solutions for it. Case in point - Org-mode. It's been around for a long time; it is an incredibly ingenious system. Alas, so many attempts to clone it to work in something else still haven't gotten too far.