dsh-vscode-mode 0.4.6 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/README.md +38 -2
  2. package/lib/client.js +9316 -4038
  3. package/lib/client.js.map +1 -1
  4. package/lib/index.js +1852 -68
  5. package/lib/index.js.map +1 -1
  6. package/package.json +8 -8
  7. package/src/client/ai/inlineProvider.ts +42 -1
  8. package/src/client/index.ts +50 -45
  9. package/src/client/monaco/lsp/index.ts +33 -3
  10. package/src/client/monaco/lsp/lspClient.ts +3 -1
  11. package/src/client/monaco/lsp/providers.ts +60 -6
  12. package/src/client/navHighlight.ts +96 -0
  13. package/src/client/officialSidebar.ts +67 -3
  14. package/src/client/paths.ts +2 -0
  15. package/src/client/rpc.ts +32 -12
  16. package/src/client/sessionScope.ts +183 -0
  17. package/src/client/sidebar/SidebarView.ts +6 -2
  18. package/src/client/sidebar/menuItems.ts +93 -2
  19. package/src/client/sidebar/panels/FileExplorer.ts +18 -1
  20. package/src/client/sidebar/panels/SvnPanel.ts +303 -0
  21. package/src/client/sidebar/panels/index.ts +44 -3
  22. package/src/client/sidebar/types.ts +20 -0
  23. package/src/client/snippets/provider.ts +26 -4
  24. package/src/client/styles/editor.css +177 -0
  25. package/src/client/svnActions.ts +153 -0
  26. package/src/client/svnLog.ts +356 -0
  27. package/src/client/svnStatus.ts +363 -0
  28. package/src/client/svnStore.ts +150 -0
  29. package/src/client/tabActions.ts +30 -5
  30. package/src/client/tabMenu.ts +51 -0
  31. package/src/client/ui/AiSettings.ts +8 -0
  32. package/src/client/ui/EditorView.ts +632 -35
  33. package/src/client/ui/LogDialog.ts +333 -0
  34. package/src/client/ui/McpSettings.ts +98 -0
  35. package/src/client/ui/ModalShell.ts +79 -0
  36. package/src/client/ui/SideBySideDiff.tsx +139 -0
  37. package/src/client/ui/SnippetsPicker.ts +70 -58
  38. package/src/client/ui/SvnDiffPanel.ts +50 -0
  39. package/src/client/ui/SvnLogDialog.ts +1141 -0
  40. package/src/client/ui/SvnLogStats.ts +243 -0
  41. package/src/client/ui/commandCatalog.ts +72 -0
  42. package/src/compat.ts +1 -1
  43. package/src/debugLog.ts +81 -12
  44. package/src/dshVersion.ts +8 -1
  45. package/src/fileOpenSettings.ts +40 -3
  46. package/src/index.ts +5 -1
  47. package/src/rpc.ts +41 -4
  48. package/src/shared/ai.ts +25 -0
  49. package/src/shared/rpc.ts +53 -1
  50. package/src/shared/svn.ts +377 -0
  51. package/src/shared/svnActions.ts +296 -0
  52. package/src/svn.ts +870 -0
  53. package/src/svnLog.ts +315 -0
  54. package/src/svnText.ts +175 -0
  55. package/src/svnXml.ts +110 -0
package/README.md CHANGED
@@ -314,19 +314,46 @@ RPC:`edrv.unity.list / add / remove / install`。
314
314
  安全说明:深链可在编辑器中查看任意绝对路径文件(与用户手动打开等价);保存仍
315
315
  受会话沙箱 `policyOf` 约束,工作区外保存被拒是预期行为。
316
316
 
317
+ ### 16. SVN 集成(v0.5.0)
318
+
319
+ 底座是 **svn CLI**(跨平台,自动探测 `svn --version` / 工作副本根),
320
+ TortoiseSVN(`TortoiseProc.exe`)仅作 Windows 过渡增强:自研能力覆盖后对应官方项自动隐藏。
321
+
322
+ - **状态与变更**:侧栏「SVN」面板列出工作副本变更(`svn status --xml --no-ignore`),
323
+ 按状态着色与字母徽标、changelist 分组、未版本控制 / 忽略项开关、行内右键动作;
324
+ 文件树行尾同步显示状态徽标。
325
+ - **动作**:更新、刷新变更、与基线比较、加入版本控制、还原(**破坏性动作均带确认**)、
326
+ 清理工作副本(默认只清锁);未覆盖的项回落 TortoiseSVN。
327
+ - **日志弹窗**(对标 TortoiseSVN Revision Log Dialog):过滤语法(空格=AND / `-` 排除 /
328
+ `+` 纳入 / `!` 取反 / `"短语"` / 正则)、From-To 日期区间、列头排序 + 复位、
329
+ 上中下三段布局(列表 / 提交信息 / 变更路径,边界可拖拽)、Actions 徽标、
330
+ 受影响路径灰显或隐藏、Copy from 列、右键菜单、`F5` / `↑↓` 键盘、
331
+ 多选(Ctrl / Shift)与「比较两个修订」、**Stop on copy**、**Show Range 区间**、
332
+ **Include merged revisions**(`-g`,合并进来的修订灰字缩进)、
333
+ Show All(上限 5000 条,超出用区间取)、Statistics 统计窗(期间 / 按作者 / 按日期)、
334
+ 工作副本版号行加粗。
335
+ - **并排差异**:`与上一版本比较`(`cat -r REV` vs `REV-1`)、`比较两个修订`(`-r M:N` 方向按选中顺序)、
336
+ `与工作副本比较`、`某版本 ↔ 工作区`,均复用同一差异视图。
337
+ - **诊断日志**:统一日志器 + `edrv.dlog.*` RPC + 命令栏「查看诊断日志」,
338
+ 排查白屏 / 加载失败时先看它。
339
+ - **RPC**:`svn.status / changes / diffBase / revert / add / log / diffRev / diffPair /
340
+ diffWorking / wcRev / cleanup / update / tortoise`。
341
+
342
+ > 说明:`plans/`(含对标蓝图与实测结论)为本地开发资料,不入库。
343
+
317
344
  ## 安装
318
345
 
319
346
  官方 `dsh plugin` 方式,三选一:
320
347
 
321
348
  ```bash
322
349
  # ① Git 安装(clone + prepare 构建;推荐打固定 tag)
323
- dsh plugin --profile web add github:Lenonss/DSH_VsCodeMode#v0.1.23
350
+ dsh plugin --profile web add github:Lenonss/DSH_VsCodeMode#v0.5.1
324
351
 
325
352
  # ② npm 注册表(发布到 npm 后)
326
353
  dsh plugin --profile web add dsh-vscode-mode
327
354
 
328
355
  # ③ GitHub Release tgz 直装
329
- dsh plugin --profile web add https://github.com/Lenonss/DSH_VsCodeMode/releases/download/v0.1.23/dsh-vscode-mode-0.1.23.tgz
356
+ dsh plugin --profile web add https://github.com/Lenonss/DSH_VsCodeMode/releases/download/v0.5.1/dsh-vscode-mode-0.5.1.tgz
330
357
  ```
331
358
 
332
359
  > `dsh plugin ...` 是 pnpm 转发器:git 安装会克隆仓库、执行该包 `prepare` 脚本
@@ -613,6 +640,15 @@ Keep All / Undo All 却是亮的。修复:单文件 Keep / Undo 覆盖冲突
613
640
  完整变更见 [GitHub Releases](https://github.com/Lenonss/DSH_VsCodeMode/releases)。
614
641
  近期关键版本:
615
642
 
643
+ - **v0.5.1**:**适配 DSH 0.1.6-alpha.2**——会话作用域三级取值链(`uiSession.current`
644
+ 优先,兼容旧版 `sessions.list.current`;修复官方移除 `current` 后 Monaco 预热 / LSP
645
+ 同步 / 编辑 Tab 恢复 / 文件链接静默失效);Office 与官方「不可预览」后缀让位官方
646
+ 查看器;页签路径统一为工作区相对路径(差异栏跳转与资源管理器显示形态一致,并修复
647
+ 连带的「在资源管理器视图中显示」失效与重复页签);插件重载时注销 Monaco provider
648
+ 防止重复注册;peer 依赖清理与预发布区间修正。
649
+ - **v0.5.0**:**SVN 集成**——侧栏变更面板与状态徽标、自研日志弹窗(过滤 / 排序 /
650
+ 多选比较 / 区间 / Stop on copy / Include merged revisions / Statistics)、
651
+ 并排差异(基线 / 版本间 / 与工作副本)、诊断日志查看器。
616
652
  - **v0.4.x**:LSP 与 Monaco 系列修复(见[常见问题](#常见问题));外部改动自动
617
653
  同步即将发布。
618
654
  - **v0.3.x**:命令栏(v0.2.0)→ 代码片段 / 快捷引用(v0.3.0)→ 插件技能组