概览
dsh-at-plugins
README / ZH
插件文档
目录摘要
dsh.pub 核对固定版本的组合包契约、运行时事实与分发语义;完整 README 请查看源仓库。
在 GitHub 阅读完整 READMELIMITATIONS
已知限制
- 只列**在跑的**包(`installed` 或 `enabled`);没装的官方可选包、随包发但没启用的系统插件、以及 profile 里不是 bundle 的普通依赖都不列。 - 只读:不装、不卸、不改启停。要改去「设置 → 插件」。 - 无匹配时菜单按 DSH 原规则关闭,不显示占位提示;面板高度锁定只作用于菜单打开期间。 - 插件清单缓存 5 秒。 - 折叠是**视觉**折叠:被折起来的行仍在菜单数据里。方向键落到看不见的行时,插件会沿同一方向把高亮挪到最近的可见行(借菜单自己的 hover 通道);回车/Tab 落在看不见的行上会被拦掉,不会误插。 - 折叠是标题点击(鼠标)增强;菜单焦点始终留在输入框,键盘用户可以用方向键跳过折叠组,但没法用键盘直接开合某一组。后续如果上游开放菜单数据层的过滤接口,可以改成真正的数据折叠。 - 会话分组依赖上游 `ui-reference` 的行结构(`value` 里的 `kind: 'session'`)与 `sessions.list` 的 `cwd`。上游改了,会退化成原样显示,不丢候选。 - 菜单增强靠 `[data-trigger-menu]`、`[role="listbox"]`、`[role="presentation"]` 和 `dsh-slash-option-<source>-` 这组结构识别 `@` 菜单,不依赖内部哈希类名;但菜单结构大改时仍可能失效——失效表现为「标题不吸顶/没有折叠箭头」,不影响 `@` 本身。 - 插件图标只认 `meta.icon` 里的 `data:image/...;base64`;格式不符或图片加载失败时退回内置图形。 - 会话文件夹重名超过三级父目录仍可能撞名(极少见),此时按最后显示名排序,不会丢行。
