Add command_palette command to display bound keys

Add a Go-based command_palette kitten that provides a searchable,
interactive overlay for browsing and triggering keyboard shortcuts
and actions.

- New Go kitten at kittens/command_palette/ with FZF fuzzy search,
  grouped/flat views, and remote control action triggering
- Python collect_keys_data() does data collection, passed via stdin
- Navigation: arrows, ctrl+j/k (vim), ctrl+n/p (emacs), page up/down
- Enter triggers the selected action via RC command
- Help text displayed in footer for selected binding
- Added Go tests (main_test.go) and Python tests (command_palette.py)
This commit is contained in:
Daniel M German
2026-02-22 09:34:19 -08:00
parent f0d11f7223
commit 33b5b0a339
8 changed files with 1154 additions and 1 deletions

View File

@@ -7,6 +7,7 @@ import (
"github.com/kovidgoyal/kitty/kittens/ask"
"github.com/kovidgoyal/kitty/kittens/choose_files"
"github.com/kovidgoyal/kitty/kittens/command_palette"
"github.com/kovidgoyal/kitty/kittens/choose_fonts"
"github.com/kovidgoyal/kitty/kittens/clipboard"
"github.com/kovidgoyal/kitty/kittens/desktop_ui"
@@ -97,6 +98,8 @@ func KittyToolEntryPoints(root *cli.Command) {
choose_fonts.EntryPoint(root)
// choose-files
choose_files.EntryPoint(root)
// command-palette
command_palette.EntryPoint(root)
// query-terminal
query_terminal.EntryPoint(root)
// __pytest__