Files
NeoVim/README.md
kody 11565f3c55 refactor: 重构Neovim配置结构并更新文档
- 调整配置文件组织方式,新增init.lua作为入口
- 更新lazy-lock.json同步插件版本
- 完善lua/目录下的插件和配置模块结构
- 修改README.md补充配置说明和使用指南
2025-12-15 09:57:50 +08:00

181 lines
5.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Neovim 配置文档
## 简介
这是一个基于 Neovim 的现代化开发环境配置,集成了 LSP、代码补全、调试工具、文件管理等功能适用于多种编程语言开发。
## 功能特点
- 完整的 LSP 支持,提供代码补全、定义跳转、重构等功能
- 强大的调试工具集成DAP
- 自动化代码格式化
- 美观的界面主题与状态栏
- 便捷的文件浏览与搜索
- Git 版本控制集成
- 自定义快捷键,提升操作效率
## 安装要求
- Neovim 0.8.0 或更高版本
- Git
- 适当的包管理器(根据系统不同)
- 所需的 LSP 服务器和格式化工具(会通过 Mason 自动安装)
## 安装步骤
1. 克隆本配置仓库到你的 Neovim 配置目录:
```bash
git clone <仓库地址> ~/.config/nvim
```
2. 启动 NeovimLazy 包管理器会自动安装所需插件:
```bash
nvim
```
3. 插件安装完成后Mason 会自动安装配置好的 LSP 服务器和工具
## 目录结构
```
nvim/
├── init.lua # 入口文件
├── lazy-lock.json # 插件版本锁定
├── lua/
│ ├── config/ # 基础配置
│ │ ├── basic.lua # 基本设置
│ │ └── lazy.lua # Lazy 包管理器配置
│ ├── plugins/ # 插件配置
│ │ ├── lsp/ # LSP 相关配置
│ │ └── ... # 其他插件配置
│ └── scripts/ # 辅助脚本
└── README.md # 本说明文档
```
## 核心插件
1. **LSP 相关**
- `neovim/nvim-lspconfig`LSP 客户端配置
- `williamboman/mason.nvim`LSP 服务器安装管理
- `hrsh7th/nvim-cmp`:自动补全框架
2. **调试工具**
- `mfussenegger/nvim-dap`:调试适配器协议客户端
- `rcarriga/nvim-dap-ui`:调试 UI 界面
3. **代码格式化**
- `stevearc/conform.nvim`:代码格式化框架
4. **文件管理**
- `nvim-tree/nvim-tree.lua`:文件树
- `nvim-telescope/telescope.nvim`:模糊搜索
5. **外观**
- `folke/tokyonight.nvim`:主题
- `nvim-lualine/lualine.nvim`:状态栏
6. **其他工具**
- `numToStr/Comment.nvim`:代码注释
- `lewis6991/gitsigns.nvim`Git 集成
## 快捷键说明
### 基础操作
| 快捷键 | 功能描述 |
| ------------------- | -------------------- |
| `<leader>t` | 打开终端 |
| `<ESC>`(终端模式) | 退出终端模式 |
| `:EditConfig` | 编辑 Neovim 配置文件 |
| `:ReloadConfig` | 重新加载配置 |
### 文件管理
| 快捷键 | 功能描述 |
| ------------ | ----------------------- |
| `<leader>e` | 切换文件树nvim-tree |
| `<leader>ff` | 查找文件 |
| `<leader>fg` | 全局搜索文本 |
| `<leader>fb` | 切换缓冲区 |
| `<leader>fh` | 搜索帮助文档 |
| `<leader>fp` | 查找项目 |
### LSP 相关
| 快捷键 | 功能描述 |
| ------------ | -------------------- |
| `gd` | 跳转到定义 |
| `gD` | 跳转到声明 |
| `gi` | 跳转到实现 |
| `gr` | 查找引用 |
| `K` | 显示悬浮信息 |
| `<leader>rn` | 重命名变量/函数 |
| `<leader>ca` | 代码操作(重构等) |
| `<leader>so` | 显示签名帮助 |
| `[d` | 跳转到上一个诊断错误 |
| `]d` | 跳转到下一个诊断错误 |
| `<leader>q` | 打开快速修复列表 |
| `<leader>f` | 格式化当前缓冲区 |
| `<leader>ft` | 检查格式化工具状态 |
### 调试DAP相关
| 快捷键 | 功能描述 |
| ------------ | -------------------- |
| `<F6>` | 开始/继续调试 |
| `<F10>` | 单步跳过 |
| `<F11>` | 单步进入 |
| `<F12>` | 单步退出 |
| `<leader>b` | 切换断点 |
| `<leader>B` | 设置条件断点 |
| `<leader>lp` | 设置日志断点 |
| `<leader>dr` | 打开调试终端 |
| `<leader>dl` | 重新运行最后一次调试 |
| `<leader>dh` | 悬停查看变量信息 |
| `<leader>dp` | 预览变量信息 |
| `<leader>di` | 切换调试UI显示 |
| `<leader>de` | 显示作用域内变量 |
### 自动补全与括号
| 快捷键 | 功能描述 |
| ----------------------- | -------------------------- |
| `<CR>`(插入模式) | 智能回车(处理补全和括号) |
| `)`/`}`/`]`(插入模式) | 跳过右侧括号 |
| `<BS>`(插入模式) | 智能退格(删除配对括号) |
| `<M-e>`(可视模式) | 快速包裹选中内容 |
| `<Tab>` | 补全项导航/展开代码片段 |
| `<S-Tab>` | 补全项反向导航 |
| `<C-Space>` | 触发补全 |
| `<C-e>` | 退出补全 |
### 代码注释
| 快捷键 | 功能描述 |
| ------ | ---------- |
| `gcc` | 注释当前行 |
## 自定义配置
你可以通过以下方式自定义配置:
1. 修改 `lua/config/basic.lua` 调整基础设置
2. 在 `lua/plugins/` 目录下添加或修改插件配置
3. 通过 `:EditConfig` 快速编辑配置文件
4. 修改配置后使用 `:ReloadConfig` 重新加载
## 常见问题
1. **格式化工具无法工作**
- 运行 `:FormatToolsCheck` 检查工具是否安装
- 确保 Mason 已正确安装所需工具
2. **LSP 服务器未启动**
- 检查 `:Mason` 确认服务器已安装
- 检查语言服务器配置是否正确
3. **剪贴板无法工作**
- 确保系统中安装了合适的剪贴板工具(如 xclip、wl-copy 等)