Skip to content

lararosekelley/nvim

Repository files navigation

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 git@github.com: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.

After installing a Nerd Font, set your terminal emulator to use it.

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 3.14+ (with pip3) installed in ~/.pyenv/versions/neovim3/bin/python

Neovim packages

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

  • Node.js - neovim
  • Python - pynvim (see above)
  • Ruby - neovim

Formatting tools

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

Other tools

For terminal image previews:

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

Optional tools

For use of the cmp_kitty completion source for nvim-cmp, you need to use the Kitty terminal with one of the following lines in your kitty.conf:

allow_remote_control socket-only
allow_remote_control socket
allow_remote_control yes

Afterwards, set the socket Kitty will listen to by following the instructions here.

Example:

listen_on unix:@kitty

Project structure

Configuration begins in the init.lua file, with most files living under the lua/ 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.

About

My Neovim configuration files

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages