why use vim or neovim in linux?

This page summarizes the projects mentioned and recommended in the original post on /r/learnpython

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • doomemacs

    An Emacs framework for the stubborn martian hacker

  • Lately, though, I've actually taken an interest in Doom Emacs, which is an emacs config built around "evil mode" (which is the emacs world's name for the vi keybinds, lol) and opinionated preferences. I have to say it's the best vim I've ever used, and it's not close. I have long had access to features like "jump to definition" of a function or class via the package YouCompleteMe, which works in emacs just as well; but in emacs I'm able to do things like, switch buffers to a bash terminal that's running inside emacs, run rg MyClass or git log -p, switch back to vim / evil "Normal Mode" on the terminal (🤯) so I can search with / across its output to jump to the filename result, and then type gf (go to file) on that filename to immediately open its contents in emacs. You can do something quite similar to that in vim, but the buffer switching in emacs is so seemless that I find myself constantly discovering and inventing new ways to traverse my project, and I'm really just getting started. So I think that is the framework that I would most recommend you use.

  • YouCompleteMe

    A code-completion engine for Vim

  • Lately, though, I've actually taken an interest in Doom Emacs, which is an emacs config built around "evil mode" (which is the emacs world's name for the vi keybinds, lol) and opinionated preferences. I have to say it's the best vim I've ever used, and it's not close. I have long had access to features like "jump to definition" of a function or class via the package YouCompleteMe, which works in emacs just as well; but in emacs I'm able to do things like, switch buffers to a bash terminal that's running inside emacs, run rg MyClass or git log -p, switch back to vim / evil "Normal Mode" on the terminal (🤯) so I can search with / across its output to jump to the filename result, and then type gf (go to file) on that filename to immediately open its contents in emacs. You can do something quite similar to that in vim, but the buffer switching in emacs is so seemless that I find myself constantly discovering and inventing new ways to traverse my project, and I'm really just getting started. So I think that is the framework that I would most recommend you use.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • evil-tutor

    Vimtutor adapted to Emacs+Evil and wrapped in a major mode.

  • (evil-tutor appears to be vimtutor, but for learning evil mode of emacs rather than vi, in case you are curious but not sure how to get started with a modal text editor).

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts