DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’» is a community of 966,904 amazing developers

We're a place where coders share, stay up-to-date and grow their careers.

Create account Log in
Andreas Sander
Andreas Sander

Posted on • Originally published at andi1984.dev

My Neovim journey

Do you know Vim? This lightweight, but
weird-feeling, editor you might (need) to use on a server shell
for looking through files etc.?

I never got comfortable with it, but I also did not spend time
looking into it...

Neovim to Vim is like Yarn to NPM?

Now there is Neovim. Neovim is a fork,
an implementation of Vim. And it is actually quite
popular.

Neovim is an implementation of Vim, but focused on
extensibility and usability. The key feature is asynchronous
plugins (mostly) compatible with Vim, which significantly
improves performance for things like code-completion and
linting.
-- console.dev

How did I get there?

How did I, as a VSCode power user and
extension
creator, ended up in using Neovim?

Well, VSCode is based on Electron and in the end
with dozens of extensions enabled, you basically use a Chromium browser with
extensions under the hood that keep any fans - except the M1 ones -
busy. Due to RAM memory limitations on my machine, I ended up in constant
memory (swap) management recently.

Thus, my primary motivation to try out Neovim was: reducing load on my
machine.

Mouse is lava

One of the key concepts of (neo)Vim is to not waste any time moving your
fingers away from keyboard (e.g. for using your mouse to interact with the
editor's UI).

It is all about your muscle
memory
to optimize your workflow
by using default keyboard navigation, custom shortcuts, but also plugins you
can install as you can do in VSCode.

Thus after many, many years of training, your Neovim muscle memory is huge enough to
fight against The Primeagen who
is typing and navigating faster within Vim than coconut oil is dripping - pun intended.

Where to start

You may say:

"I am overwhelmed! Help me!"

Calm down - I have been there before. Due to the steep learning curve, you need
to have some kind of motivation to start looking into the Vim ecosystem - in
my case it was due to hardware limitation reasons.

Without any kind of motivation, you will open and close it frustratingly after
half a minute of question marks popping up inside your brain. I did this for
many years, piling up a little more frustration on every occasion when I failed
doing basic work and navigation within Vim (e.g. while ssh'ing on a server).

Online Resources

As Vim was introduced in 1991 which is
maybe even before your own "release" date, you can imagine that there are A LOT
of resources out there on the web.

Here are just a few that I collected over time (tbc.):

The community

The Vim and
Neovim community is quite new to me, but there
are definitely some "vimstigator" or at least quite famous people on the social
interwebs.

ThePrimeagen

The first one I came across is ThePrimeagen. I randomly landed on one of his
streams.

IMHO Prime - I even don't know his real name - is a proud dad, cow
owner
, nature
guy
.

No, seriously. He works at Netflix and thus he is a pretty smart guy. But at
the same time he is a born entertainer which results in a stream with hundreds
watching him working on a C++ implementation of a network layer for Netflix. I
am not kidding!

And his Vim skills are crazy as he is - but in a good way. If you have prepared
yourself with enough coconut oil, you are safe to watch his streams. :)

TJ DeVries

If you know ThePrimeagen, you most probably also know TJ.
TJ is actually a
core maintainer of Neovim! So he is building the thing I try you to tell
about. But he can do probably hundred times better than me and knows all the
insights.

VimConf

At the 29th to the 30th of October 2021 there will be a second version of
VimConf happening online. I think this event will be a good opportunity to get
in contact with the community and learn new, awesome stuff.

Dotfiles, Plugins, Configurations...

Take your time!

Altogether it is important that you start your vim journey on your own with
the help of others. But it is all about your workflows, your needs and
your muscle memory!

Over time you will find out which settings you want to (un)set, which plugins
might be helpful for your work and which configurations you might want to copy
paste from someone else or you want to write on your own.

All this needs some decent amount of time you will need to invest, but you
should not care about that at the very beginning.

I just started this journey mid 2021 and thus I see myself at the very
beginning of this process after a few months now.

In case you really want to dig into some dotfiles and vim configurations, watch
ThePrimeagen's YT videos and dig
into other people's dotfiles.

Shameless plug: I have my dotfiles
public
, but be aware
those are my dotfiles, they fit my needs and I consider themself "Work in
progress". So I am not sure how much value they might bring to you.

And now I wish you an awesome start with your very own Vim journey!

Sincerely yours,

Andi

Top comments (0)

🌚 Life is too short to browse without dark mode