this post was submitted on 10 Jul 2023
3 points (100.0% liked)

Neovim

1726 readers
1 users here now

Neovim is a modal text editor forked off of Vim in 2014. Being modal means that you do not simply type text on screen, but the behavior and functionality of the editor changes entirely depending on the mode.

The most common and most used mode, the "normal mode" for Neovim is to essentially turn your keyboard in to hotkeys with which you can navigate and manipulate text. Several modes exist, but two other most common ones are "insert mode" where you type in text directly as if it was a traditional text editor, and "visual mode" where you select text.

Neovim seeks to enable further community participation in its development and to make drastic changes without turning it in to something that is "not Vim". Neovim also seeks to enable embedding the editor within GUI applications.

The Neovim logo by Jason Long is licensed under the Creative Commons Attribution 3.0 Unported License.

founded 3 years ago
MODERATORS
 

out of curiousity, since I feel like most of the time I touch any vi derivative it’s because I need a text editor on a command line, not because I really really wanna use it

top 4 comments
sorted by: hot top controversial new old
[–] zeizig@lemm.ee 3 points 1 year ago

I've used IdeaVim, Vim, and Neovim for probably around 6 or 7 years or so, and wouldn't switch from it. There are three of the main things I would bring out out, but there are probably many more:

  1. It's comfortable (for me) and fun. I'm so used to the keybindings that I don't need to think about them at all. I just think that I need to change something, and it's already done. It's like magic! Flying through code like that is super enjoyable. I find that none of the IDE vim plugins quite hit the mark for me. I might need to try them out once again, as it has been a while since I last did, but I'm already quite used to the real ones.
  2. It's super extensible and configurable. You can really make it your own. I know that you can use plugins in VSCode (and there are a huge amount), and even write plugins yourself, but it's so easy in Neovim. I think that a strength of Neovim is that you're using a programming language for configuring your editor. There isn't a huge leap when going from creating your first keybinding to making it do something extra that you need in your own workflows. I wrote an article recently, related to this exact thing: https://medium.com/scoro-engineering/5-smart-mini-snippets-for-making-text-editing-more-fun-in-neovim-b55ffb96325a
  3. It's fast. This isn't that important to me, but it's still something that makes day-to-day programming less of a drag. I can start Neovim in less than a second and there's virtually no text input lag. I've seen how co-workers' PHPStorm takes a minute or two to start up, and that seems quite upsetting.

There are other minor reasons like being open source, having a vibrant community, and being in the terminal, but those are less important to me than the big three.

I don't really miss using a full IDE, because my Neovim already does everything I need it to do. It's also lean as I know all the pieces that go into it and there isn't anything unnecessary. I have completion that's as smart as VSCode, but I don't have a plugin for running tests inside the editor because I run them in the terminal.

Overall, I'm quite happy that I chose to try out Vim. It's made editing code more fun, and that's already a big win, I think.

[–] nicolas@hachyderm.io 1 points 1 year ago

@dlanm2u I’d say neovim is at least as modern as vscode is.

[–] help@lemmy.ml 1 points 1 year ago

I'll never use any Microsoft products again because of the inevitable enshittification. It might be nice now, but that's just because they're in the Embrace step of EEE. I could waste a bunch of time churning through that process, or I could learn tools that have proven that they're in it for the long haul.

[–] krogoth@lemmy.sdf.org 1 points 1 year ago

You do have the option of using whatever you feel is best in any particular circumstance. There's no reason you need to commit to one of vim or vscode for absolutely everything, and being familiar with a few different tools can be helpful.

For example, if I'm working closely with a team that primarily uses vscode or a jetbrainz IDE then I tend to switch to that since it makes collaboration a little easier.