feat: 逐次编辑导航 + 状态栏增强 + 依赖更新

- 新增 nextEdit/prevEdit/showEditAtIndex 命令支持逐次查看编辑
- DiffViewer 增加 editIndex/totalEdits 跟踪编辑进度
- StatusBar 增加编辑计数和逐次导航按钮
- SnapshotManager 改进 EditRecord 粒度的 accept/reject
- HookHandler 支持多次编辑的二级选择(聚合/逐次)
- 更新 package.json 依赖(esbuild win32-x64)
- 将 .claude/hooks/ 加入 .gitignore
- 删除测试.md
This commit is contained in:
2026-06-24 18:09:19 +08:00
parent fa44163ca3
commit 122c38c51e
9 changed files with 237 additions and 128 deletions
+39 -2
View File
@@ -16,7 +16,9 @@
"Programming Languages",
"Other"
],
"activationEvents": ["onStartupFinished"],
"activationEvents": [
"onStartupFinished"
],
"main": "./dist/extension.js",
"contributes": {
"commands": [
@@ -57,6 +59,18 @@
{
"command": "aiDiffPreview.prevDiff",
"title": "AI Diff: 上一个变更"
},
{
"command": "aiDiffPreview.nextEdit",
"title": "AI Diff: 下一次编辑"
},
{
"command": "aiDiffPreview.prevEdit",
"title": "AI Diff: 上一次编辑"
},
{
"command": "aiDiffPreview.showEditAtIndex",
"title": "AI Diff: 逐次查看编辑"
}
],
"keybindings": [
@@ -105,6 +119,18 @@
"key": "ctrl+shift+f",
"mac": "cmd+shift+f",
"when": "aiDiffPreview.isActive"
},
{
"command": "aiDiffPreview.nextEdit",
"key": "alt+right",
"mac": "alt+right",
"when": "aiDiffPreview.isActive"
},
{
"command": "aiDiffPreview.prevEdit",
"key": "alt+left",
"mac": "alt+left",
"when": "aiDiffPreview.isActive"
}
],
"configuration": {
@@ -128,7 +154,12 @@
"aiDiffPreview.floatingLabelMode": {
"type": "string",
"default": "statusBar",
"enum": ["inline", "statusBar", "both", "none"],
"enum": [
"inline",
"statusBar",
"both",
"none"
],
"enumDescriptions": [
"编辑器行内 Accept/Reject 标签(通过 CodeLens 显示)",
"状态栏底部固定 Accept/Reject 按钮",
@@ -141,6 +172,11 @@
"type": "number",
"default": 100000,
"description": "最大处理文件大小(字符数)"
},
"aiDiffPreview.idleTimeout": {
"type": "number",
"default": 3000,
"description": "空闲检测超时时间(毫秒)。在此时间内无新编辑事件,自动触发 Diff 提示(用于 ESC 打断场景)。设为 0 则禁用此功能"
}
}
}
@@ -155,6 +191,7 @@
"package": "vsce package"
},
"devDependencies": {
"@esbuild/win32-x64": "^0.28.1",
"@types/diff": "^5.0.0",
"@types/node": "^20.0.0",
"@types/uuid": "^9.0.0",