feat(config): show default keybindings in generated example config

- Expand `keybindings` array in `config.example.jsonc` to list all built-in defaults instead of `[]`
- Inject `DEFAULT_KEYBINDINGS` into template when resolved config has an empty keybindings array
- Add regression tests for template parity, default binding compile/action mapping, overlay keyboard dispatch, and mpv plugin registration/dispatch
- Add fullscreen binding to docs shortcut tables and clarify keybindings can target mpv commands or session actions
This commit is contained in:
2026-05-12 22:58:58 -07:00
parent 430373f010
commit c1ee0dfd2e
12 changed files with 665 additions and 40 deletions
+2 -1
View File
@@ -461,7 +461,7 @@ See `config.example.jsonc` for detailed configuration options.
### Keybindings
Add a `keybindings` array to configure keyboard shortcuts that send commands to mpv:
Add a `keybindings` array to configure keyboard shortcuts that send mpv commands or SubMiner session actions:
See `config.example.jsonc` for detailed configuration options and more examples.
@@ -470,6 +470,7 @@ See `config.example.jsonc` for detailed configuration options and more examples.
| Key | Command | Description |
| -------------------- | ----------------------------- | --------------------------------------- |
| `Space` | `["cycle", "pause"]` | Toggle pause |
| `KeyF` | `["cycle", "fullscreen"]` | Toggle fullscreen |
| `KeyJ` | `["cycle", "sid"]` | Cycle primary subtitle track |
| `Shift+KeyJ` | `["cycle", "secondary-sid"]` | Cycle secondary subtitle track |
| `Ctrl+Alt+KeyP` | `["__playlist-browser-open"]` | Open playlist browser |