This repository contains my configurations, including key mappings, plugins, and other settings for Neovim. I'm primarily working day-to-day in VueJS, React, TypeScript, Go, Lua, and Clojure.
- Plugins managed with lazy.nvim
- Syntax highlighting with treesitter
- LSPs installed with Mason + configured natively
- Debuggers installed and configured with nvim-dap
- diffview git branch/commit/diff viewing
- lualine for status bar
- kanagawa color scheme
- AI-assisted development with Claude Code
The configuration needs Neovim 0.12 or later, and won't load on anything older. It also needs a few programs that cannot be installed within Neovim, mostly for LSPs, Debuggers, and treesitter parsers.
Run ./check-tools to see what is missing or too old. It never installs anything, so install what it lists with your own package manager.
A few commands shell out to optional programs that the editor can start without. When one is missing, the command that needs it shows a warning and does nothing.
- Clone this repository to your Neovim configuration path:
git clone https://github.com/harrisoncramer/nvim.git ~/.config/nvim - Run
~/.config/nvim/check-toolsand install anything it reports missing. - Open Neovim. The plugin installation should start automatically; so should the LSP and Debugger installations.
Please be patient when you first open up Neovim, it is installing many dependencies the first time it starts! I'd recommend going and getting a cup of coffee, the process can take ~5 minutes to install all the debuggers, LSPs, and treesitter language parsers.
You can see the status of the plugin installation with the :Lazy command. This will open automatically. You can see the status of the LSP and Debugger installations with the :Mason command.
