My Neovim configuration files
Clone this repository to your ~/.config/nvim/ directory:
git clone git@github.com:lararosekelley/nvim ~/.config/nvimInstall 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.
For full LSP support:
- C (with any compiler, such as
cc,clang,gcc, orzig) - Go
- Java (with
javac) - Julia
- Lua (with
luarocks) - Node.js (with
npmandyarn) - Ruby (with
gem) - Rust (with
cargo) - PHP (with
composer) - Python 3.14+ (with
pip3) installed in~/.pyenv/versions/neovim3/bin/python
For a few languages, additional "provider" packages are required:
- Node.js -
neovim - Python -
pynvim(see above) - Ruby -
neovim
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.
bashcurl- fd
- fzf
gitgzip- ripgrep
shtar- lazygit
- make
- tmux
- tree-sitter
wget- latex2text
- mmdc (for Mermaid diagrams)
For terminal image previews:
chafa- ueberzugpp
- viu
When Neovim is next opened, plugins will be installed and configured automatically.
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
Configuration begins in the init.lua file, with most files living under the lua/ directory, broken up by purpose and plugin.
See full plugin configuration here.
The nvim-basic-ide repository was
used as a reference while converting my old .vimrc to the Lua-based configuration.
See LICENSE.