feat: keystroke overlay
- Dominant language
- TypeScript
- Stars
- 37
- Forks
- 5
- Avg merge
- 3d 23h
- Merged PRs (30d)
- 1
Description
## Summary
Add keystroke overlay/subtitles to recordings showing special keys as they're pressed, similar to popular terminal recording tools.
## Use Case
When recording terminal sessions (especially vim, tmux, or other keyboard-heavy tools), viewers often can't see what keys are being pressed. An overlay showing keystrokes helps viewers:
- Learn keyboard shortcuts
- Follow along with complex key sequences
- Understand what's happening in the recording
## Proposal
Add keystroke overlay support for recordings:
```typescript
shell_record_start({
session_id: "...",
keystroke_overlay: true,
overlay_position: "bottom" // or "top"
})
```
The overlay would show:
- Modifier keys: `Ctrl+C`, `Ctrl+Z`, `Alt+Tab`
- Special keys: `Esc`, `Enter`, `Tab`, `↑`, `↓`, `←`, `→`
- Vim-style notation: ``, ``, ``
## Examples
Tools that do this well:
- Screenkey (Linux)
- KeyCastr (macOS)
- asciinema with key overlay plugins
## Considerations
- Configurable display duration for each keystroke
- Option to show only modifier/special keys vs all keystrokes
- Styling options (font size, position, background opacity)
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.