这是一个专为现代开发工作流设计的 Neovim 配置,平衡了功能与简洁性。
brew install fzf bat ripgrep the_silver_searcher perl universal-ctags yarn fd
| 工具 | 用途 |
|---|---|
| fzf | 模糊搜索核心 |
| bat | 代码高亮查看 |
| ripgrep | 快速全文搜索 |
| the_silver_searcher | 代码搜索 (ag) |
| universal-ctags | 代码符号索引 |
| yarn | Markdown 预览插件 |
| fd | 文件搜索 (Telescope 依赖) |
# 1. 克隆仓库到 Neovim 配置目录
git clone https://github.com/elliotxx/neovim-config.git ~/.config/nvim
# 2. 启动 Neovim,lazy.nvim 会自动安装插件
nvim
# 3. 安装完成后重启 Neovim
提示: 如需自定义配置目录,可在启动时指定
NVIM_APPNAME环境变量。
安装 Claude Code(macOS 推荐):
brew install --cask claude-code
Zsh 添加 vi 别名(如使用 zsh):
# 在 ~/.zshrc 中添加
alias vi="nvim"
alias vim="nvim"
Claude Code 直接在 Neovim 中运行,支持多个 AI Provider 切换:
<C-,> - 切换 AI Provider(11 个可选)
<leader>a - AI/Claude 功能菜单
<leader>ar - Resume Claude 会话
<leader>as - 发送选中内容到 Claude
Telescope + Fzf-lua 双引擎支持:
<leader>ff - Telescope 查找文件
<leader>fg - Telescope 全文搜索
<leader>fb - Fzf-lua 快速文件搜索
<leader>gg - LazyGit 交互式操作
<leader>gd - Diffview 查看差异
<leader>gs - Gitsigns 状态显示
| 前缀 | 功能 |
|---|---|
<leader>a |
AI / Claude |
<leader>b |
Buffer 管理 |
<leader>d |
调试 |
<leader>f |
文件查找 |
<leader>g |
Git |
<leader>l |
LSP |
<leader>P |
插件管理 |
<leader>r |
Spectre (全局替换) |
<leader>R |
重构 |
<leader>s |
搜索 |
<leader>t |
诊断 |
<leader>u |
实用工具 |
| 快捷键 | 功能 |
|---|---|
K |
LSP 悬浮文档 |
gd |
跳转定义 |
gr |
查找引用 |
H / L |
行首 / 行尾 |
<C-j> / <C-k> |
上下移动 5 行 |
| 快捷键 | 功能 |
|---|---|
<C-h> |
切换到左侧窗口 |
<C-l> |
切换到右侧窗口 |
<C-w>hjkl |
标准窗口导航 |
编辑 lua/custom/plugins/colorscheme.lua 修改主题:
local theme = {
name = 'gruvbox', -- 可选: cyberdream, catppuccin, dracula, tokyonight, solarized, gruvbox
transparent = false, -- 透明背景
italic = true, -- 斜体注释
}
| 主题 | 特点 |
|---|---|
| Gruvbox | 经典复古风格,暖色调 |
| Catppuccin | 柔和的 Mocha 风格 |
| TokyoNight | 流行的深色主题 |
| Dracula | 经典的紫调主题 |
| CyberDream | 赛博朋克未来感 |
| Solarized | 护眼低对比度 |
nvim/
├── init.lua # 主入口,加载顺序控制
├── lua/
│ ├── kickstart/ # Kickstart 基础配置层
│ │ ├── init.lua
│ │ └── plugins/ # 基础插件
│ ├── custom/ # 自定义配置层
│ │ ├── basic.lua # 基础编辑器设置
│ │ ├── keybindings.lua # 快捷键映射
│ │ ├── autocmds.lua # 自动命令
│ │ ├── dashboard.lua # 启动页配置
│ │ └── plugins/ # 自定义插件配置
│ │ ├── plugins.lua # 核心插件
│ │ ├── claudecode.lua # AI 集成配置
│ │ ├── colorscheme.lua # 主题配置
│ │ ├── lsp.lua # LSP 扩展
│ │ ├── telescope.lua # 模糊搜索
│ │ ├── file-tree.lua # 文件管理器
│ │ ├── markdown.lua # Markdown 支持
│ │ └── ...
│ └── ide/
│ └── vscode.lua # VSCode Neovim 扩展适配
└── .stylua.toml # Lua 代码格式化配置
lazy.nvim 配置中通过 { import = 'custom.plugins' } 自动加载 lua/custom/plugins/ 目录下的所有 .lua 文件。新增插件只需在该目录创建文件即可。
return {
{
'author/plugin-name',
event = 'VeryLazy', -- 懒加载触发条件
dependencies = {}, -- 依赖项
opts = {}, -- 插件选项
config = function() -- 配置函数
-- 你的配置代码
end,
},
}
| 类别 | 插件 |
|---|---|
| 插件管理 | lazy.nvim |
| LSP 生态 | nvim-lspconfig, mason, lspsaga |
| 文件搜索 | telescope.nvim, fzf-lua |
| 文件管理 | neo-tree.nvim, mini.files |
| 语法高亮 | nvim-treesitter |
| 代码补全 | nvim-cmp, LuaSnip |
| 代码美化 | conform.nvim (格式化) |
| Git | gitsigns, diffview, lazygit |
| AI | claudecode.nvim |
| 主题 | gruvbox, catppuccin, tokyonight 等 |
| 实用工具 | snacks.nvim, which-key, noice, marks.nvim |
通过 Mason 自动安装的 LSP 服务器:
在 lua/custom/plugins/ 目录下创建新的 .lua 文件,遵循插件配置模板。
编辑 lua/custom/keybindings.lua 或在对应插件配置文件中添加。
# 启动 Neovim 并查看详细日志
NVIM_LOG_LEVEL=debug nvim
# 检查健康状态
:checkhealth
Q: 启动很慢怎么办?
A: 运行 :Lazy 查看插件加载时间,禁用不必要的插件。
Q: 主题不生效?
A: 确保在 colorscheme.lua 中正确设置了 theme.name,并重启 Neovim。
Q: LSP 不工作?
A: 运行 :Mason 检查 LSP 是否安装,运行 :LspInfo 查看连接状态。
感谢以下开发者对本项目的贡献: