Skip to content

LunarVim/Neovim-from-scratch

master
Switch branches/tags
Code

Neovim from scratch

Important Update When I initially created this repo I didn't anticipate the amount of breaking changes, if you'd like to use the same basic config as this one as a base I recommend my new repo: nvim-basic-ide

Another Update This repo should work fine with Neovim 0.8, also all packages are pinned so it should remain stable.

Each video will be associated with a branch so checkout the one you are interested in, you can follow along with this playlist.

Try out this config

Make sure to remove or move your current nvim directory

IMPORTANT Requires [Neovim v0.8.0]](https://github.com/neovim/neovim/releases). Upgrade if you're on an earlier version.

git clone https://github.com/LunarVim/Neovim-from-scratch.git ~/.config/nvim

Run nvim and wait for the plugins to be installed

NOTE (You will notice treesitter pulling in a bunch of parsers the next time you open Neovim)

Get healthy

Open nvim and enter the following:

:checkhealth

You'll probably notice you don't have support for copy/paste also that python and node haven't been setup

So let's fix that

First we'll fix copy/paste

  • On mac pbcopy should be builtin

  • On Ubuntu

    sudo apt install xsel
    
  • On Arch Linux

    sudo pacman -S xsel
    

Next we need to install python support (node is optional)

  • Neovim python support

    pip install pynvim
    
  • Neovim node support

    npm i -g neovim
    

NOTE make sure you have node installed, I recommend a node manager like fnm.

Upgrade to latest release

Assuming you built from source, cd into the folder where you cloned neovim and run the following commands.

git pull
make distclean && make CMAKE_BUILD_TYPE=Release
sudo make install
nvim -v

The computing scientist's main challenge is not to get confused by the complexities of his own making.

- Edsger W. Dijkstra