Skip to content
dsh.fish
Bundle

dsh-tui-keys

Keybinding cheatsheet panel for dsh-TUI: /keys opens a grouped, searchable full-screen list of all TUI keyboard shortcuts.

Source
FUSU123fusu
License
MIT
Updated
Updated 22 days ago

Readme

# dsh-tui-keys

> 适用于 [dsh-TUI](https://github.com/ccch1mneyyy/dsh-TUI)([dshtui.com](https://dshtui.com))的社区插件。

dsh-TUI 的快捷键速查表面板:`/keys` 打开一个全屏、分组、可搜索的键位列表——输入编辑、会话历史、视图面板、模式切换、通用退出,一目了然。上游 issue [#113](https://github.com/ccch1mneyyy/dsh-TUI/issues/113) 要的是可配置键位(那是核心侧的工作);这个插件补的是另一半:**可发现性**。

[English](#english) below.

## 用法

```
/keys     " 打开键位速查面板
```

面板内:↑/↓ 移动(分组标题自动跳过)· PgUp/PgDn 翻页 · `/` 进入搜索(跨键位与中英文描述过滤)· Esc 先清空搜索、再退出面板。

宿主不支持 scene(web、headless)时退化为分组文本列表。界面语言跟随 `/lang`(zh/en)。

## 覆盖范围与漂移说明

键位数据(`lib/bindings.js`)对照 dsh-TUI **0.8.x** 的真实来源逐条核对:`docs/interaction.md` / `docs/interaction.en.md`,以及 `PromptInput.tsx` / `Chat.tsx` 等处的 useInput 处理逻辑。TUI 迭代很快,**这份清单是快照、不是权威**——发现漂移欢迎提 issue 或 PR 更新 `lib/bindings.js` 一个文件即可。

## 安装

```
dsh plugin --profile <你的profile> add dsh-tui-keys
```

或从源码:`npm pack` 后 `dsh plugin --profile <你的profile> add file:<tgz路径>`。

## 开发

```
node --test    " 单元测试(数据完整性、搜索过滤、manifest 准入)
```

零运行时依赖;cordis 契约(`name` + `apply`),TUI scene 走 `tuiScenes` 运行时探测。

---

## English

A keybinding cheatsheet panel for dsh-TUI: `/keys` opens a grouped, searchable full-screen list of every TUI keyboard shortcut. Upstream issue [#113](https://github.com/ccch1mneyyy/dsh-TUI/issues/113) asks for *configurable* keybindings — that's core work; this plugin is the lightweight complement: **discoverability**.

- Inside the panel: ↑/↓ move (group headers are skipped) · PgUp/PgDn page · `/` to search across keys and both zh/en descriptions · Esc clears the search first, then closes.
- Degrades to a grouped text list on hosts without the scene seam; UI follows `/lang`.

**Drift caveat:** the catalogue in `lib/bindings.js` targets dsh-TUI **0.8.x** and was cross-checked entry by entry against `docs/interaction*.md` and the `useInput` handlers in `PromptInput.tsx` / `Chat.tsx`. The TUI moves fast — this list is a snapshot, not the ground truth. Updating it means editing one file; issues and PRs welcome.

Zero runtime dependencies; cordis contract (`name` + `apply`); the TUI scene is a runtime probe via `tuiScenes`.

MIT

Install

dsh plugin --profile web add github:FUSU123fusu/dsh-tui-keys

Profile: web

  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source