This is my personal Neovim setup.
It is tuned for C# development with some configurations for TypeScript, Lua, and general-purpose use.
The configuration is subject to change as I find out what works best for me and improve my workflow.
- Plugin management with lazy.nvim
- LSP support for C#, TypeScript, and Lua
- Telescope for fuzzy finding
- Treesitter for syntax highlighting and text objects
- Trouble.nvim for diagnostics, references, quickfix, and related lists
- UI plugins including Noice, Notify, Lualine, Neo-tree
- Debugging and dotnet test integrations
- Neovim 0.11 or newer
- git
- Node.js (required for several language servers)
- Dotnet SDK (required for C# LSP, debugging, and testing; optional otherwise)
Clone directly into the Neovim config path:
git clone https://github.com/KristianJBorgwarth/nvim.git ~/.config/nvimOr clone anywhere else:
git clone https://github.com/KristianJBorgwarth/nvim.git ~/nvimThen link it:
ln -s ~/nvim ~/.config/nvimOpen Neovim and let lazy.nvim install all plugins:
nvimOn first start, lazy.nvim will install all plugins. This may take a little bit. Patience.
- init.lua: Main entry point for Neovim configuration.
- lua/: Contains all Lua modules for configuration.
- plugins/: Plugin configurations.
- lsp/: Language Server Protocol configurations.
- keymaps/: Custom key mappings.
- scripts/: Utility scripts Feel free to modify the configuration files under lua/ to customize your Neovim setup. You can add or remove plugins, change key mappings, and adjust LSP settings as needed.