I recently forced myself to learn vim motions and it's been paying off pretty well. Once it clicked I found myself wanting vim motions everywhere.<p>I went deep and set up a neovim config, forcing myself to use neovim full time. However my new role requires me to use Intellij and I didn't want to spend hours upon hours figuring out how to replicate the java support in Neovim (and no, it isn't just installing the LSP, my work has some pretty specific intellij setup).<p>At this point I'm just using Intellij and VSCode with their respective vim plugins and I'm getting about 80% of the utility that I did with pure neovim. The one thing I really love about neovim is that it really forces you to keep your hands on the keyboard and you learn the keybinds very well because otherwise you just can't do the thing you wanted to! I find myself using the mouse a lot in VSCode and Intellij because they give you really handy buttons to click on.<p>I could probably go pure keyboard if I just sat down and learned all the various keybinds, but who has time for that?
I spend a lot time inside vim/neovim on daily basis. I do have vscode open as well but it's mostly for referencing or file exploration on repos I'm not familiar with.<p>Building a mental and muscle memory is tough but it requires grinding. You have to put in the time! It took me months!<p>My biggest mistake was starting and playing around with configurations and plugins for days/weeks and constantly having a broken environment!<p>Configuration hell is the worst path to get into neovim! Start with the starter kit but avoid going into installing 10s of plugins, custom key-mappings and themes until you have learned the fundamental of motions, navigations and editing.<p>Starter kit: <a href="https://github.com/nvim-lua/kickstart.nvim">https://github.com/nvim-lua/kickstart.nvim</a>
The ecosystem of vim package managers and plugins is even more diverse and dynamic and hence confusing than the JS frontend one. The more things get built-in (like LSP in neovim) the better. This is the reason there are distributions of vim (Astro, NVChad, Lunar, Lazy) which are convenient for quickly starting but are extra layers or complexity and a source of issues and time wasted.
I had tried getting into a vim about a year and a half ago, I used chris@machines LunarVim and I think that about after about a month I quit. I struggled with learning vim motions and how to configure it. Granted, I may like it more now that I know more.
But, this video got me to try neovim again and I have not switched off for a few months now. I daily drive now and it is thanks to this video. The configuration is simple to understand and a lot easier to come to grips with. The video is a little outdated in that some parts don't match with how the configuration is set up now, but it was easy to figure out how to work with it (sorry my memory isn't great on what issues I ran into, skimming through the video it seems like Packer->Lazy is one).
I think (neo)vim has many years ahead, but also think the market overlaps with vscode. I believe that, for the average users, defaults, including a default plugin marketplace makes most of the difference.
It would be interesting to see some proper data about user editor preferences
<a href="https://trends.google.com/trends/explore?date=today%205-y&geo=US&q=vscode,vim&hl=en" rel="nofollow noreferrer">https://trends.google.com/trends/explore?date=today%205-y&ge...</a>
Is there really any truth to the superior customizability (he calls it a Personalized Development Environment) claimed here?<p>VSCode extensions can change crazy stuff such as [1], and are also more numerous. I don't see much of an advantage to terminal-vim apart from performance and perhaps an inherent joy of building your own tools.<p>[1] <a href="https://marketplace.visualstudio.com/items?itemName=hoovercj.vscode-power-mode" rel="nofollow noreferrer">https://marketplace.visualstudio.com/items?itemName=hoovercj...</a>
With so much effort spent on improving the editor ecosystem to the point of creating a new fork, why is the ugly duckling of old defaults so sticky and prevents neovim from becoming effective?
I recently switched <i>away</i> from Neovim. I had a really deep and ergonomic set of customizations - and I liked where it was. The problem is that it kept breaking with each update of the editor/plugins and I grew too fatigued to keep figuring out how to fix it.<p>Helix isn't nearly as nice as my purpose-built Neovim setup, but it keeps working.
Interesting that illustrating the virtues of the "amazing" help ~9:45 is a typical relatively poor doc: besides the fact that it wastes too much horizontal space due to all the hardcoded line breaks, it misses a simple thing that would make it way faster to understand: a simple picture with relative numbers and a few callouts
I never really considered using (Neo-)Vim (granted, I did use Emacs for years) but the other day I watched the "0 to LSP in 30min" video[0] by ThePrimeagen and I now I really want to give it a shot!<p>[0]: <a href="https://m.youtube.com/watch?v=w7i4amO_zaE">https://m.youtube.com/watch?v=w7i4amO_zaE</a>
The one component of my IDE that I couldn’t translate is my EA inspections plug-in. There’s no compatible equivalent and it’s an integral part of my workflow.