Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/LunarVim/Neovim-from-scratch
📚 A Neovim config designed from scratch to be understandable
https://github.com/LunarVim/Neovim-from-scratch
hacktoberfest hacktoberfest2022 neovim neovim-config neovim-dotfiles nvim nvim-plugin nvimrc
Last synced: about 1 month ago
JSON representation
📚 A Neovim config designed from scratch to be understandable
- Host: GitHub
- URL: https://github.com/LunarVim/Neovim-from-scratch
- Owner: LunarVim
- License: gpl-3.0
- Created: 2021-12-15T05:35:18.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2024-07-22T20:44:57.000Z (5 months ago)
- Last Synced: 2024-10-29T15:20:21.352Z (about 1 month ago)
- Topics: hacktoberfest, hacktoberfest2022, neovim, neovim-config, neovim-dotfiles, nvim, nvim-plugin, nvimrc
- Language: Lua
- Homepage: https://www.chrisatmachine.com/
- Size: 192 KB
- Stars: 5,417
- Watchers: 43
- Forks: 1,170
- Open Issues: 79
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- my-awesome-github-stars - LunarVim/Neovim-from-scratch - 📚 A Neovim config designed from scratch to be understandable (Lua)
README
# Neovim from scratch
When I initially created this repo I didn't anticipate the amount of breaking changes introduced by the rapidly developing plugin ecosystem. All packages are pinned in `master` so it will remain stable and you can always follow the [videos](https://www.youtube.com/watch?v=ctH-a-1eUME&list=PLhoH5vyxr6Qq41NFL4GvhFp-WLd5xzIzZ)
there if you're getting errors in other branches.🔍 If you see an error that you can fix [here's how](CONTRIBUTING.md) 🎉.
**Update** For a simple IDE that builds on these principles and is under active development, I recommend my newer repo: [nvim-basic-ide](https://github.com/LunarVim/nvim-basic-ide) as well as [lunarvim](https://www.lunarvim.org/) which is mature and fully-featured.
General support is available on our [Matrix channels](https://matrix.to/#/#neovim-atmachine:matrix.org).
## Try out this config
This config requires >= [Neovim v0.8.0](https://github.com/neovim/neovim/releases). Please [upgrade](#upgrade-to-neovim-v080) if you're on an earlier version of the editor.
Clone the repository into the correct location (make a backup your current `nvim` directory if you want to keep it).
```
git clone https://github.com/LunarVim/Neovim-from-scratch.git ~/.config/nvim
```Run `nvim` in your terminal and wait for the plugins to be installed. You will notice treesitter pulling in a bunch of language parsers the next time you open Neovim.
**NOTE** [Mason](https://github.com/williamboman/mason.nvim) is used to install and manage LSP servers, DAP servers, linters, and formatters via the `:Mason` command.
This config assumes that you have Nerd Fonts v3.0.0 or higher. If you are using an older version then please update your [Nerd Fonts](https://github.com/ryanoasis/nerd-fonts) otherwise there will be missing or wrong glyphs
## 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
```
- Wayland users[wl-clipboard](https://github.com/bugaevc/wl-clipboard)
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](https://nodejs.org/en/) installed, I recommend a node manager like [fnm](https://github.com/Schniz/fnm).
### Upgrade to Neovim v0.9
Assuming you [built from source](https://github.com/neovim/neovim/wiki/Building-Neovim#quick-start), `cd` into the folder where you cloned `neovim` and run the following commands.
```
git pull
git checkout release-0.9
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