This repository contains my personal Neovim configuration written in Lua. It includes a customized setup for NvChad and plugins to optimize development productivity.
LSP: Various languages are supported, including Rust, Assembly, Solidity.
Before applying this configuration, ensure you have the following tools installed:
- Neovim: Version 0.8 or higher
- NvChad: A popular Lua-based Neovim framework
- Git: To clone this repository
Optional:
- Node.js and npm for LSP and Treesitter support
- Python3 for additional plugin functionality
- Ripgrep for enhanced search capabilities
Run the following commands in your terminal to verify your versions:
nvim --version
Ensure the version is 0.8 or higher. For optimal performance, 0.9+ is recommended.
Check the version or the last update timestamp of NvChad in the ~/.config/nvim
directory:
ls ~/.config/nvim/lua/
If not installed, refer to the official NvChad installation guide.
Clone this repository into your Neovim configuration directory:
git clone <repository-url> ~/.config/nvim
Replace <repository-url>
with the URL of this repository.
-
Backup Existing Configuration
If you already have a Neovim setup, back it up:mv ~/.config/nvim ~/.config/nvim_backup
-
Install NvChad
Download NvChad:git clone https://github.com/NvChad/NvChad ~/.config/nvim --depth 1 && nvim
-
Place Lua Configuration Files
Copy the configuration files from this repository to the appropriate directories. -
Sync Plugins
Open Neovim and run::NvChadUpdate :PackerSync
- Update
plugins/init.lua
to manage installed plugins. - Adjust keybindings in the
mappings.lua
file.
Refer to the comments within each file for detailed explanations of settings and configurations.
-
Neovim fails to start
- Check for syntax errors in
init.lua
. - Ensure all required plugins are installed and up to date.
- Check for syntax errors in
-
LSP or Treesitter issues
- Run
:checkhealth
in Neovim for diagnostic information.
- Run
-
Broken UI or missing features
- Ensure the terminal supports true colors.
- Verify installed dependencies (e.g., Ripgrep, Node.js).