此项目已迁移至 hugophi/nvim,请访问新的仓库获取最新信息和更新。
nvcustom is a Neovim configuration customized based on the nvchad framework. It aims to provide a powerful and customizable editing experience. This configuration supports light and dark themes and comes with built-in LSP support, intelligent completion, file browsing, and other features, making it suitable for various development scenarios.
First, clone and install the nvchad configuration framework:
git clone https://github.com/nvchad/starter ~/.config/nvimThen, navigate to the ~/.config/nvim/lua directory, delete the existing configuration, and clone the nvcustom configuration:
cd ~/.config/nvim/lua
rm -rf *
git clone https://github.com/hugophi/nvcustom.git .During installation, you can choose a different theme based on your preference. The project supports three theme branches: main (default theme), light (light theme), and dark (dark theme). You can choose and clone a branch using the following commands:
-
Default Theme (main):
git clone -b main https://github.com/hugophi/nvcustom.git . -
Light Theme (light):
git clone -b light https://github.com/hugophi/nvcustom.git . -
Dark Theme (dark):
git clone -b dark https://github.com/hugophi/nvcustom.git .
Once done, start Neovim to load the corresponding theme configuration.
Automatically manages the installation and updates of Mason plugins and language servers. The following language services are auto-loaded:
| LSP/Formatter Name | Type | Supported Languages/Formats |
|---|---|---|
lua-language-server |
LSP | Lua |
stylua |
Formatter | Lua |
bash-language-server |
LSP | Bash |
vtsls |
LSP | TypeScript, JavaScript |
html-lsp |
LSP | HTML |
css-lsp |
LSP | CSS |
prettier |
Formatter | HTML, CSS, JSON, YAML, Markdown |
python-lsp-server |
LSP & Formatter | Python |
basedpyright |
LSP | Python |
clangd |
LSP | C/C++ |
awk-language-server |
LSP | AWK |
dockerfile-language-server |
LSP | Dockerfile |
typst-lsp |
LSP | Typst |
gopls |
LSP | Go |
julia-lsp |
LSP | Julia |
Configures a welcome banner displayed when Neovim starts, offering a clean and personalized welcome experience.
Through the conform configuration, nvcustom provides code formatting and style checking functionality, supporting various language formatting tools. It includes support for Lua, Rust, Python, C/C++, and other languages.
Configures Neovim's plugin dashboard and interface settings, ensuring quick access and management of frequently used features. The plugins here use "alpha-nvim", with the header separated into its own file, and buttons and footer located in the plugin folder.
Implements a lazy loading mechanism to optimize Neovim's startup speed by loading plugins only as needed, improving overall performance.
Integrates LSP (Language Server Protocol) to provide intelligent completion, navigation, error suggestions, and support for multiple programming languages.
Configures the Neovim file tree plugin nvim-tree, offering a clean and efficient file browsing experience. You can customize file icons to match your personal aesthetic preferences.
This is the main configuration file for nvchad, responsible for theme and UI configurations. You can modify this file to customize Neovim's appearance and theme settings to fit your personal needs.
This file is used to set Neovim's key mappings. You can modify and add shortcut key mappings based on your preferences to enhance your editing efficiency.
This file contains configuration for global options, such as editor behavior, UI settings, and performance optimizations. You can adjust these global options to suit your needs.
- Once
nvcustomis installed and configured, simply start Neovim to begin using it. - All core features are enabled by default and optimized based on best practices.
- To customize features or modify settings, refer to the NvChad documentation and the relevant plugin documentation.
- Each feature module is independently configurable, so you can adjust the configuration files in the
configdirectory according to your needs.
Contributions of any form are welcome. If you have suggestions or issues, please submit them via GitHub issues or pull requests.
MIT License.
