Skip to content

feat: complete the command palette command list - #151

Merged
arzafran merged 1 commit into
mainfrom
feat/136-palette-closeout
Jul 20, 2026
Merged

feat: complete the command palette command list#151
arzafran merged 1 commit into
mainfrom
feat/136-palette-closeout

Conversation

@arzafran

Copy link
Copy Markdown
Member

What this does

Closes out the command palette item. The palette itself already shipped: cmd+shift+P opens a commands palette listing 67 commands, tested end to end, so most of #136 turned out to be done. This adds the two commands that were missing, documents the palette shortcuts in the README (they were absent from the shortcut tables), and extends the regression test.

Closes #136.

Summary

  • New palette commands: Send Feedback and Reload Configuration, dispatched through the exact entry points their menu/shortcut equivalents use (presentFeedbackComposer(), GhosttyApp.reloadConfiguration(source:) with a distinguishing source tag).
  • en + ja localization for the four new strings in Localizable.xcstrings.
  • README keyboard-shortcut tables gain cmd+shift+P (command palette) and cmd+P (go to workspace) rows.
  • test_command_palette_modes.py now asserts both commands are searchable in commands mode (presence only, never invoked).

Product call, veto welcome: no Quit command in the palette. Destructive, un-palette-like, and cmd+Q exists.

Adjacent cosmetic finding, not fixed here: commandPaletteShortcutAction(for:) / commandPaletteStaticShortcutHint(for:) don't map the new commands, so their rows show no shortcut hint even though Reload Configuration has one. Harmless default-nil fallback.

Test Plan

  • Tagged debug build launches; via the debug socket, commands mode opens and "feedback" resolves palette.sendFeedback as the top result, "reload config" resolves palette.reloadConfiguration
  • python3 -m py_compile on the edited test
  • Extended UI test on the VM/e2e lane (simulate_type is focus-sensitive; local runs on an in-use machine flap, which is why the testing policy routes these to the VM)
  • CI green

The cmd+shift+p commands palette already existed (#87 catalog, #88
controller extraction) and lists 67 commands; this closes the remaining
gaps found by a scoping pass:

- palette.sendFeedback and palette.reloadConfiguration contributions
  and handlers, wired to the same entry points as their menu/shortcut
  equivalents (presentFeedbackComposer, GhosttyApp.reloadConfiguration)
- en + ja localization for the four new strings
- README keyboard-shortcut tables gain the missing cmd+shift+p and
  cmd+p rows (pre-existing doc gap per the shortcut policy)
- test_command_palette_modes.py asserts both commands are searchable

Deliberately not added: a Quit palette command (destructive and
un-palette-like; cmd+Q exists).

Verified against a tagged debug build via the debug socket: commands
mode opens, 'feedback' resolves palette.sendFeedback as top result,
'reload config' resolves palette.reloadConfiguration.
@arzafran
arzafran merged commit 40655ac into main Jul 20, 2026
5 of 7 checks passed
@arzafran
arzafran deleted the feat/136-palette-closeout branch July 20, 2026 18:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Command palette: cmd+shift+p over the unified command catalog

1 participant