This repository contains my custom configuration for NvChad. It uses the main NvChad repository as a plugin and extends its functionality.
init.lua
- Main entry point for Neovim configurationlua/options.lua
- Custom Vim options (extends NvChad defaults)lua/mappings.lua
- Custom key mappingslua/chadrc.lua
- NvChad theme and UI configurations
lua/plugins/init.lua
- Plugin declarations and configurations using lazy.nvimlua/configs/lazy.lua
- Lazy plugin manager settings and optimizations
lua/configs/lspconfig.lua
- Language Server Protocol configurationslua/configs/mason-lspconfig.lua
- Automatic LSP server installation management
lua/configs/formatting.lua
- Consolidated formatting configurations (conform.nvim and mason-conform)lua/configs/lint.lua
- Linting configurations with nvim-lintlua/configs/mason-lint.lua
- Automatic linter installation management
lua/configs/treesitter.lua
- Treesitter configurations for better syntax highlighting
-
Formatting Support via conform.nvim for:
- Lua (stylua)
- Go (gofumpt, goimports-reviser, golines)
- JavaScript/TypeScript (prettier, eslint_d)
- HTML/CSS (prettier)
- JSON/YAML (prettier, jq)
- Shell scripts (shellcheck)
- And more...
-
LSP Support for multiple languages:
- Lua (lua_ls)
- Go (gopls)
- TypeScript (ts_ls)
- Python (pyright)
- C/C++ (clangd)
- HTML/CSS
- Bash (bashls)
- AWK (awk_ls)
-
Linting Integration with nvim-lint:
- Lua (luacheck)
- Automatic linter installation via mason-nvim-lint
-
Automatic Tool Management via Mason for:
- LSP servers (mason-lspconfig)
- Formatters (mason-conform)
- Linters (mason-nvim-lint)
-
Editor Features:
- Telescope integration with file ignore patterns
- Custom key mappings (including
;
for command mode) - Block cursor in all modes
- 4-space indentation
- Line numbers enabled
- Ensure you have Neovim >= 0.9.0 installed
- Clone this repository to your Neovim configuration directory:
git clone https://github.com/yourusername/nvim-config ~/.config/nvim
- Delete the .git directory or fork it for your own use:
rm -rf ~/.config/nvim/.git
- Start Neovim and let it install the plugins
- Neovim >= 0.9.0
- Git
- A C compiler for Treesitter
- Node.js for LSP servers
- Various language-specific tools (will be installed automatically by Mason)
- NvChad - Base configuration framework
- LazyVim starter - Inspiration for configuration structure
This project is released into the public domain. See the LICENSE file for details.
Note: This configuration requires NvChad as a base. Make sure you have NvChad properly installed.