nvim

My Neovim configuration files

MIT License

Stars
2

lararosekelley/nvim

My Neovim configuration files


Table of contents

  1. Installation
  2. System requirements
  3. Project structure
  4. Plugins
  5. Acknowledgements
  6. License

Installation

Clone this repository to your ~/.config/nvim/ directory:

git clone [email protected]:lararosekelley/nvim ~/.config/nvim

Fonts

Install a font with support for icons on your system. I recommend using the getnf utility to install a Nerd font. You can view the getnf docs here.

System requirements

Languages

For full LSP support:

  • C (with any compiler, such as cc, clang, gcc, or zig)
  • Go
  • Java (with javac)
  • Julia
  • Lua (with luarocks)
  • Node.js (with npm and yarn)
  • Ruby (with gem)
  • Rust (with cargo)
  • PHP (with composer)
  • Python 2.7 (with pip) installed in ~/.pyenv/versions/neovim2.7/bin/python
  • Python 3.9 (with pip3) installed in ~/.pyenv/versions/neovim3.9/bin/python

Neovim packages

For a few languages, additional "provider" packages are required:

  • Node.js - neovim
  • Python - pynvim
    • 2 and 3 separately, installed with correct pyenv versions above
  • Ruby - neovim

Formatting tools

These should all be available on your $PATH, though local binaries will be used first if available. See lua/user/plugins/lsp/init.lua for configuration options.

Other tools

When Neovim is next opened, plugins will be installed and configured automatically.

Project structure

Configuration begins in the init.lua file, with most files living under The lua/user/ directory, broken up by purpose and plugin.

Plugins

See full plugin configuration here.

Acknowledgements

The nvim-basic-ide repository was used as a reference while converting my old .vimrc to the Lua-based configuration.

License

See LICENSE.