dsh-vscode-mode 0.1.63 → 0.3.0
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.
- package/README.md +20 -0
- package/lib/client.js +1737 -98
- package/lib/client.js.map +1 -1
- package/lib/index.js +482 -20
- package/lib/index.js.map +1 -1
- package/package.json +2 -2
- package/src/client/commandBridge.ts +85 -0
- package/src/client/commandGlobals.ts +13 -0
- package/src/client/commandPaletteStore.ts +212 -0
- package/src/client/commandRegistry.ts +150 -0
- package/src/client/commandSearch.ts +89 -0
- package/src/client/editorModelState.ts +30 -0
- package/src/client/index.ts +32 -0
- package/src/client/keybindings.ts +71 -17
- package/src/client/monaco/loader.ts +24 -0
- package/src/client/snippets/provider.ts +172 -0
- package/src/client/styles/editor.css +51 -0
- package/src/client/ui/CommandPalette.ts +194 -0
- package/src/client/ui/ConversationDiffDock.ts +17 -9
- package/src/client/ui/EditorView.ts +185 -4
- package/src/client/ui/KeybindingsPanel.ts +1 -1
- package/src/client/ui/QuickOpen.ts +11 -3
- package/src/client/ui/SnippetsPicker.ts +296 -0
- package/src/client/ui/commandCatalog.ts +204 -0
- package/src/rpc.ts +78 -0
- package/src/shared/keybindings.ts +9 -1
- package/src/shared/rpc.ts +11 -0
- package/src/shared/snippets.ts +156 -0
- package/src/snippets.ts +427 -0
package/README.md
CHANGED
|
@@ -18,6 +18,26 @@
|
|
|
18
18
|
(语法高亮/行号/`Ctrl+F`/`Ctrl+G`/`Ctrl+S`/700ms 防抖自动保存)+ 顶部工具栏(路径/语言/Ln,Col/保存状态/差异/侧边栏/刷新)
|
|
19
19
|
+ **导航历史**(后退/前进:跨文件恢复焦点位置,工具栏 `←`/`→` 按钮、键盘 `Alt+←/→` 与 `Ctrl+Alt+-`/`Ctrl+Shift+-`、
|
|
20
20
|
鼠标侧键 XButton 均可触发;后退后新导航自动清空前进栈)。
|
|
21
|
+
- **命令栏 + 指令系统**(v0.2.0):`Ctrl+Shift+P`(或 `F1`)唤出 VS Code 式命令面板——输入即过滤(中文/分类/命令 id
|
|
22
|
+
均可命中)、`↑↓` 选择、`Enter` 执行、`Esc` 关闭,每行显示命令名/分类/当前键位;候选按**可用性**过滤
|
|
23
|
+
(需要打开文件的命令在空编辑器时自动隐藏)。命令目录即单一数据源(`ui/commandCatalog`):命令栏、快捷键设置页、
|
|
24
|
+
全局键位派发、Monaco 右键菜单全部从同一张表读取,**新增一条能力只需追加一条命令定义**。
|
|
25
|
+
注册表经 `window.__edrvCommands__` 对外暴露,第三方/控制台可 `register()` 注册命令、
|
|
26
|
+
`addRuntimeKeybinding()` 绑运行时键位(不落设置 schema)。开箱 18 条命令:
|
|
27
|
+
保存 / 快速打开 / 在文件浏览器中打开 / 显示所有命令 / 切换侧边栏 / 工作区搜索 /
|
|
28
|
+
后退·前进 / 上下页签 / 上下编辑行 / 转到定义 / 查找引用 / 触发 AI 补全 /
|
|
29
|
+
配置代码片段 / 插入代码片段 / 选中内容加为引用。
|
|
30
|
+
- **代码片段**(v0.3.0,VS Code 兼容 `.code-snippets`):`Ctrl+Shift+P` → 「代码片段:配置代码片段」
|
|
31
|
+
打开**居中浮窗**(现有片段文件列表 + 新建入口),选文件后在 Monaco 编辑器中按普通文件编辑
|
|
32
|
+
(JSON 高亮 / 保存即生效 / 支持 `scope` 字段)。片段库分**全局**(`~/.dsh/snippets/`,所有项目生效)
|
|
33
|
+
与**项目**(`<工作区>/.dsh/snippets/`,随仓库共享)两处;文件名即语言
|
|
34
|
+
(`lua.code-snippets` → 仅 lua 文件生效,`global.code-snippets` → 全语言),
|
|
35
|
+
新建时可选生效语言。编辑 `.lua` 等文件时,前缀(`prefix`)经 **IntelliSense 补全**列出
|
|
36
|
+
(片段图标 + `body` 预览,`Tab`/`Enter` 展开,`$1`/`${2:默认值}` 占位符与 `$TM_*` 变量可用);
|
|
37
|
+
也可 `Ctrl+Shift+P` → 「代码片段:插入代码片段」按语言筛选后插入到光标处。
|
|
38
|
+
文件列表/读取/保存经 RPC `snippets.list/read/save/remove/entries`;保存后自动刷新补全缓存。
|
|
39
|
+
- **快捷引用**(v0.3.0):编辑器中选中内容后 `Ctrl+U` 把选中行范围加为**引用**(送入对话上下文,
|
|
40
|
+
等价 VS Code 的「Add Selection to Chat」)。无编辑器/无选中时该键位**不吞键**,正常输入不受影响。
|
|
21
41
|
- **LSP 智能(编辑器内)**:`F12`/右键「转到定义」+ `Shift+F12`「查找所有引用」+ `Ctrl+点击` 引用导航
|
|
22
42
|
(0 条→定义兜底、1 条→直接跳转、多条→原生 References Peek)+ `Ctrl+hover` 可导航标识符下划线提示;
|
|
23
43
|
定义查找带降级链(definition → declaration → 引用推导),参数/局部变量(`this`、`pTarget` 这类)
|