docs: 将 README 拆分为 MAPS.md 和 DEVELOPMENT.md
This commit is contained in:
parent
dc867a372a
commit
91adf5e44c
56
DEVELOPMENT.md
Normal file
56
DEVELOPMENT.md
Normal file
@ -0,0 +1,56 @@
|
||||
# 开发 / 验证
|
||||
|
||||
## 文件结构
|
||||
|
||||
```
|
||||
init.lua -- 入口:禁用内置插件,加载核心模块
|
||||
lua/options.lua -- 全局选项
|
||||
lua/keymaps.lua -- 键位映射
|
||||
lua/autocmds.lua -- 自动命令
|
||||
lua/usercmds.lua -- :PackAdd / :PackDel / :PackUpdate
|
||||
lua/pack.lua -- 插件声明 + 懒加载绑定
|
||||
lua/lazy.lua -- 自定义懒加载原语(load / on_event / on_keys)
|
||||
lua/plugins/
|
||||
lsp.lua -- LSP + conform 格式化
|
||||
treesitter.lua -- 语法树:延迟安装 parser、按 buffer 启用高亮
|
||||
pick.lua -- mini.pick 封装:buffer picker、filetype picker
|
||||
git.lua -- Git 工具:hunk 预览、blame、文件历史
|
||||
colors/
|
||||
ex-catppuccin-mocha.lua -- 默认配色(ex-colors 生成的优化版)
|
||||
catppuccin-*.lua -- 原始 Catppuccin 配色方案
|
||||
nvim-pack-lock.json -- 插件锁定文件
|
||||
MAPS.md -- 键位映射速查表
|
||||
DEVELOPMENT.md -- 开发调试命令与常用指令
|
||||
```
|
||||
|
||||
## 语法检查
|
||||
|
||||
```bash
|
||||
# 检查 init.lua 语法
|
||||
nvim --headless -c 'lua dofile("init.lua")' -c 'qa!'
|
||||
|
||||
# 检查特定模块
|
||||
nvim --headless -c 'lua require("pack")' -c 'qa!'
|
||||
```
|
||||
|
||||
## 健康检查
|
||||
|
||||
```bash
|
||||
nvim --headless -c 'checkhealth' -c 'qa!'
|
||||
```
|
||||
|
||||
## 性能测量
|
||||
|
||||
```bash
|
||||
# 测量启动时间
|
||||
nvim --startuptime /tmp/startup.log +q
|
||||
```
|
||||
|
||||
## 常用命令
|
||||
|
||||
```vim
|
||||
:PackAdd user/repo " 添加插件
|
||||
:PackDel plugin-name " 删除插件
|
||||
:PackUpdate [name] " 更新全部或指定插件
|
||||
:ExColors! " 提取当前 colorscheme 为优化版 ex-colors
|
||||
```
|
||||
96
MAPS.md
Normal file
96
MAPS.md
Normal file
@ -0,0 +1,96 @@
|
||||
# 键位映射
|
||||
|
||||
> Leader = 空格
|
||||
|
||||
## 文件查找(mini.pick)
|
||||
|
||||
| 键位 | 动作 |
|
||||
|----------------|-----------------------------------|
|
||||
| `<leader>ff` | 查找文件 |
|
||||
| `<leader>fw` | 实时 grep(项目中搜索文本) |
|
||||
| `<leader>fa` | 查找所有文件(含隐藏和忽略) |
|
||||
| `<leader>fh` | 搜索帮助标签 |
|
||||
| `<leader>fo` | 最近打开的文件 |
|
||||
| `<leader>fz` | 当前缓冲区行内搜索 |
|
||||
| `<leader>sk` | 搜索键位映射 |
|
||||
| `<leader><leader>` | Buffer 列表(支持 `<C-d>` 删除) |
|
||||
| `<leader>ft` | 切换文件类型 |
|
||||
|
||||
## 文件浏览器(mini.files)
|
||||
|
||||
| 键位 | 动作 |
|
||||
|------|---------------------------------------|
|
||||
| `-` | 在当前文件所在目录打开文件浏览器 |
|
||||
| `_` | 在项目根目录(git root)打开文件浏览器 |
|
||||
|
||||
## Git
|
||||
|
||||
| 键位 | 动作 |
|
||||
|----------------|--------------------------|
|
||||
| `<leader>gg` | Fugitive(全屏新标签页) |
|
||||
| `<leader>gd` | Git diff 垂直分割 |
|
||||
| `<leader>ghp` | 预览当前 hunk |
|
||||
| `<leader>ghb` | Blame 当前行 |
|
||||
| `<leader>gB` | Blame 整个文件 |
|
||||
| `<leader>gD` | 查看文件 Git 历史 |
|
||||
| `<leader>sr` | 搜索并替换(grug-far) |
|
||||
|
||||
## LSP 与诊断
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|------------------------|
|
||||
| `gd` | 跳转到定义 |
|
||||
| `gh` | 悬停查看文档 |
|
||||
| `<leader>ca` | 代码操作 |
|
||||
| `<leader>cr` | 重命名符号 |
|
||||
| `<leader>fm` | 格式化当前 Buffer |
|
||||
| `df` | 显示行诊断浮动窗口 |
|
||||
| `<leader>ds` | 诊断位置列表 |
|
||||
| `]d` / `[d` | 下一个 / 上一个诊断 |
|
||||
| `]e` / `[e` | 下一个 / 上一个错误 |
|
||||
| `]w` / `[w` | 下一个 / 上一个警告 |
|
||||
|
||||
## Buffer 管理
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|--------------------|
|
||||
| `<leader>x` | 关闭当前 Buffer |
|
||||
| `<leader>bn` | 新建 Buffer |
|
||||
| `<leader>bo` | 关闭其他 Buffer |
|
||||
|
||||
## 编辑与搜索
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|----------------------------|
|
||||
| `<leader>ss` | 全局替换光标下的单词 |
|
||||
| `<leader>ud` | 打开内置撤销树 |
|
||||
| `<leader>uf` | 切换全局自动格式化 |
|
||||
| `<leader>uF` | 切换当前 Buffer 自动格式化 |
|
||||
| `<Esc>` | 清除搜索高亮 |
|
||||
| `J` | 合并行且不移动光标 |
|
||||
|
||||
## 窗口与标签
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|--------------------|
|
||||
| `<C-h/j/k/l>` | 窗口间快速跳转 |
|
||||
| `<leader>tc` | 关闭当前标签页 |
|
||||
| `<leader>tn` | 新建标签页 |
|
||||
| `<leader>]` | 下一个标签页 |
|
||||
| `<leader>[` | 上一个标签页 |
|
||||
|
||||
## 终端
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|----------------------------|
|
||||
| `<leader>tt` | 打开新终端 |
|
||||
| `<C-x>` | 从终端模式返回普通模式 |
|
||||
|
||||
## 文件操作
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|----------------------------|
|
||||
| `<C-s>` | 保存文件 |
|
||||
| `<C-c>` | 复制整个文件内容到剪贴板 |
|
||||
| `<leader>yp` | 复制相对文件路径 |
|
||||
| `<leader>yP` | 复制绝对文件路径 |
|
||||
157
README.md
157
README.md
@ -14,152 +14,19 @@
|
||||
|
||||
## 懒加载策略
|
||||
|
||||
| 触发条件 | 插件 |
|
||||
|---------------|--------------------------------------|
|
||||
| `VimEnter` | treesitter、lsp、icons |
|
||||
| `InsertEnter` | completion、snippets |
|
||||
| `BufReadPost` | diff、surround |
|
||||
| `BufWritePre` | conform |
|
||||
| 按键触发 | pick、files、fugitive、grugfar |
|
||||
| 命令触发 | ex-colors (`:ExColors`) |
|
||||
| 触发条件 | 插件 |
|
||||
| ------------- | ------------------------------ |
|
||||
| `VimEnter` | treesitter、lsp、icons |
|
||||
| `InsertEnter` | completion、snippets |
|
||||
| `BufReadPost` | diff、surround |
|
||||
| `BufWritePre` | conform |
|
||||
| 按键触发 | pick、files、fugitive、grugfar |
|
||||
| 命令触发 | ex-colors (`:ExColors`) |
|
||||
|
||||
## 键位映射(Leader = 空格)
|
||||
## 键位映射
|
||||
|
||||
### 文件查找(mini.pick)
|
||||
完整键位映射见 [MAPS.md](./MAPS.md)。
|
||||
|
||||
| 键位 | 动作 |
|
||||
|----------------|-----------------------------------|
|
||||
| `<leader>ff` | 查找文件 |
|
||||
| `<leader>fw` | 实时 grep(项目中搜索文本) |
|
||||
| `<leader>fa` | 查找所有文件(含隐藏和忽略) |
|
||||
| `<leader>fh` | 搜索帮助标签 |
|
||||
| `<leader>fo` | 最近打开的文件 |
|
||||
| `<leader>fz` | 当前缓冲区行内搜索 |
|
||||
| `<leader>sk` | 搜索键位映射 |
|
||||
| `<leader><leader>` | Buffer 列表(支持 `<C-d>` 删除) |
|
||||
| `<leader>ft` | 切换文件类型 |
|
||||
## 开发与调试
|
||||
|
||||
### 文件浏览器(mini.files)
|
||||
|
||||
| 键位 | 动作 |
|
||||
|------|---------------------------------------|
|
||||
| `-` | 在当前文件所在目录打开文件浏览器 |
|
||||
| `_` | 在项目根目录(git root)打开文件浏览器 |
|
||||
|
||||
### Git
|
||||
|
||||
| 键位 | 动作 |
|
||||
|----------------|--------------------------|
|
||||
| `<leader>gg` | Fugitive(全屏新标签页) |
|
||||
| `<leader>gd` | Git diff 垂直分割 |
|
||||
| `<leader>ghp` | 预览当前 hunk |
|
||||
| `<leader>ghb` | Blame 当前行 |
|
||||
| `<leader>gB` | Blame 整个文件 |
|
||||
| `<leader>gD` | 查看文件 Git 历史 |
|
||||
| `<leader>sr` | 搜索并替换(grug-far) |
|
||||
|
||||
### LSP 与诊断
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|------------------------|
|
||||
| `gd` | 跳转到定义 |
|
||||
| `gh` | 悬停查看文档 |
|
||||
| `<leader>ca` | 代码操作 |
|
||||
| `<leader>cr` | 重命名符号 |
|
||||
| `<leader>fm` | 格式化当前 Buffer |
|
||||
| `df` | 显示行诊断浮动窗口 |
|
||||
| `<leader>ds` | 诊断位置列表 |
|
||||
| `]d` / `[d` | 下一个 / 上一个诊断 |
|
||||
| `]e` / `[e` | 下一个 / 上一个错误 |
|
||||
| `]w` / `[w` | 下一个 / 上一个警告 |
|
||||
|
||||
### Buffer 管理
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|--------------------|
|
||||
| `<leader>x` | 关闭当前 Buffer |
|
||||
| `<leader>bn` | 新建 Buffer |
|
||||
| `<leader>bo` | 关闭其他 Buffer |
|
||||
|
||||
### 编辑与搜索
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|----------------------------|
|
||||
| `<leader>ss` | 全局替换光标下的单词 |
|
||||
| `<leader>ud` | 打开内置撤销树 |
|
||||
| `<leader>uf` | 切换全局自动格式化 |
|
||||
| `<leader>uF` | 切换当前 Buffer 自动格式化 |
|
||||
| `<Esc>` | 清除搜索高亮 |
|
||||
| `J` | 合并行且不移动光标 |
|
||||
|
||||
### 窗口与标签
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|--------------------|
|
||||
| `<C-h/j/k/l>` | 窗口间快速跳转 |
|
||||
| `<leader>tc` | 关闭当前标签页 |
|
||||
| `<leader>tn` | 新建标签页 |
|
||||
| `<leader>]` | 下一个标签页 |
|
||||
| `<leader>[` | 上一个标签页 |
|
||||
|
||||
### 终端
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|----------------------------|
|
||||
| `<leader>tt` | 打开新终端 |
|
||||
| `<C-x>` | 从终端模式返回普通模式 |
|
||||
|
||||
### 文件操作
|
||||
|
||||
| 键位 | 动作 |
|
||||
|--------------|----------------------------|
|
||||
| `<C-s>` | 保存文件 |
|
||||
| `<C-c>` | 复制整个文件内容到剪贴板 |
|
||||
| `<leader>yp` | 复制相对文件路径 |
|
||||
| `<leader>yP` | 复制绝对文件路径 |
|
||||
|
||||
## 命令
|
||||
|
||||
```vim
|
||||
:PackAdd user/repo " 添加插件
|
||||
:PackDel plugin-name " 删除插件
|
||||
:PackUpdate [name] " 更新全部或指定插件
|
||||
:ExColors! " 提取当前 colorscheme 为优化版 ex-colors
|
||||
```
|
||||
|
||||
## 文件结构
|
||||
|
||||
```
|
||||
init.lua -- 入口:禁用内置插件,加载核心模块
|
||||
lua/options.lua -- 全局选项
|
||||
lua/keymaps.lua -- 键位映射
|
||||
lua/autocmds.lua -- 自动命令
|
||||
lua/usercmds.lua -- :PackAdd / :PackDel / :PackUpdate
|
||||
lua/pack.lua -- 插件声明 + 懒加载绑定
|
||||
lua/lazy.lua -- 自定义懒加载原语(load / on_event / on_keys)
|
||||
lua/plugins/
|
||||
lsp.lua -- LSP + conform 格式化
|
||||
treesitter.lua -- 语法树:延迟安装 parser、按 buffer 启用高亮
|
||||
pick.lua -- mini.pick 封装:buffer picker、filetype picker
|
||||
git.lua -- Git 工具:hunk 预览、blame、文件历史
|
||||
nvim-pack-lock.json -- 插件锁定文件
|
||||
colors/
|
||||
ex-catppuccin-mocha.lua -- 默认配色(ex-colors 生成的优化版)
|
||||
catppuccin-*.lua -- 原始 Catppuccin 配色方案
|
||||
```
|
||||
|
||||
## 开发 / 验证
|
||||
|
||||
```bash
|
||||
# 检查 init.lua 语法
|
||||
nvim --headless -c 'lua dofile("init.lua")' -c 'qa!'
|
||||
|
||||
# 检查特定模块
|
||||
nvim --headless -c 'lua require("pack")' -c 'qa!'
|
||||
|
||||
# 健康检查
|
||||
nvim --headless -c 'checkhealth' -c 'qa!'
|
||||
|
||||
# 测量启动时间
|
||||
nvim --startuptime /tmp/startup.log +q
|
||||
```
|
||||
开发相关的命令、健康检查、性能测量等见 [DEVELOPMENT.md](./DEVELOPMENT.md)。
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user