Keyboard interaction
Every Parch application must be fully operable without a pointer. This is an accessibility requirement and a power-user feature at once.
Focus
- Focus order follows visual order; focus is always visible.
- Dialogs trap focus; popovers return it on close.
- Tab moves between controls; arrow keys move within composite controls (lists, tabs, radio groups, menus).
- Persian keyboard layouts are first-class: shortcut detection uses key positions (
keycode), not typed characters, so shortcuts work identically on فارسی layouts.
Standard shortcuts
| Keys | Action |
|---|---|
| Ctrl+F | Find / search in app |
| F1 | Help / documentation |
| Ctrl+, | Preferences |
| Ctrl+Q | Quit |
| Ctrl+W | Close window/tab |
| Ctrl+Z / Shift+Z | Undo / redo |
| F5 / Ctrl+R | Refresh |
| Delete | Move selection to trash (never permanent) |
| Esc | Cancel dialog, popover, or in-progress selection |
Rules
- App-specific shortcuts extend, never override, the standard set.
- Shortcuts are discoverable: menus show them; a shortcuts window (Ctrl+?) lists all.
- No single-key shortcuts except in modal contexts (package managers may use keys in a TUI; GUIs may not).
- Media and function keys follow the desktop's global bindings.