diff options
| author | Craig Jennings <c@cjennings.net> | 2026-05-14 23:59:34 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-05-14 23:59:34 -0500 |
| commit | 6551b17f4735e0ca375319f07f249abefafde892 (patch) | |
| tree | 1cddf6c8f5be54cdb73c01857cefa8fcff17083b /tests/test-ai-vterm--f9-in-vterm.el | |
| parent | c055f9e4befdbd3ffb9429e6a02c45bfdfdae6a5 (diff) | |
| download | dotemacs-6551b17f4735e0ca375319f07f249abefafde892.tar.gz dotemacs-6551b17f4735e0ca375319f07f249abefafde892.zip | |
refactor(ai-vterm): retire M-F9 buffer picker; bind to cj/toggle-gptel
M-F9 used to invoke `cj/ai-vterm-pick-buffer' (a buffer picker
narrowed to alive AI-agent buffers). In practice the F9 plain-key
toggle + C-F9 project picker covered the common cases, and the
buffer picker rarely earned its keystroke. Rebind M-F9 to
`cj/toggle-gptel' so the F9 family covers the two main in-Emacs AI
surfaces at one keystroke each:
<f9> ai-vterm toggle (unchanged)
C-<f9> ai-vterm picker (unchanged)
M-<f9> gptel *AI-Assistant* (NEW)
Removed entirely:
- `cj/ai-vterm-pick-buffer' (the command itself).
- `cj/--ai-vterm-pick-buffer-candidates' (its helper).
- `tests/test-ai-vterm--pick-buffer-candidates.el' (deleted).
Updated:
- `tests/test-ai-vterm--f9-in-vterm.el' binding assertions
(vterm-mode-map and global) flipped to `cj/toggle-gptel'.
- Module commentary + `cj/ai-vterm' docstring describe the new
M-F9 behavior.
- `cj/toggle-gptel' lives in `modules/ai-config.el'; the binding
stays in `ai-vterm.el' next to the rest of the F9 family so the
dispatch shape is visible in one place.
Diffstat (limited to 'tests/test-ai-vterm--f9-in-vterm.el')
| -rw-r--r-- | tests/test-ai-vterm--f9-in-vterm.el | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/tests/test-ai-vterm--f9-in-vterm.el b/tests/test-ai-vterm--f9-in-vterm.el index 1355bd6a..ff8939c8 100644 --- a/tests/test-ai-vterm--f9-in-vterm.el +++ b/tests/test-ai-vterm--f9-in-vterm.el @@ -24,19 +24,24 @@ (should (eq (keymap-lookup vterm-mode-map "<f9>") #'cj/ai-vterm))) (ert-deftest test-ai-vterm-f9-family-bound-in-vterm-mode-map () - "Normal: the C-/M- F9 variants are bound in `vterm-mode-map' too." + "Normal: the C-/M- F9 variants are bound in `vterm-mode-map' too. +`M-<f9>' toggles gptel's *AI-Assistant* window (rebound here from +the old `cj/ai-vterm-pick-buffer' command, which was removed)." (should (eq (keymap-lookup vterm-mode-map "C-<f9>") #'cj/ai-vterm-pick-project)) - (should (eq (keymap-lookup vterm-mode-map "M-<f9>") #'cj/ai-vterm-pick-buffer))) + (should (eq (keymap-lookup vterm-mode-map "M-<f9>") #'cj/toggle-gptel))) (ert-deftest test-ai-vterm-f9-not-self-insert-in-vterm () "Boundary: vterm's default <f9> -> `vterm--self-insert' was overridden." (should-not (eq (keymap-lookup vterm-mode-map "<f9>") 'vterm--self-insert))) (ert-deftest test-ai-vterm-f9-still-bound-globally () - "Normal: the global F9 family bindings are intact." + "Normal: the global F9 family bindings are intact. +`<f9>' toggles the ai-vterm agent window; `C-<f9>' picks a project +agent; `M-<f9>' toggles gptel's *AI-Assistant* window (rebound from +the retired `cj/ai-vterm-pick-buffer')." (should (eq (lookup-key (current-global-map) (kbd "<f9>")) #'cj/ai-vterm)) (should (eq (lookup-key (current-global-map) (kbd "C-<f9>")) #'cj/ai-vterm-pick-project)) - (should (eq (lookup-key (current-global-map) (kbd "M-<f9>")) #'cj/ai-vterm-pick-buffer))) + (should (eq (lookup-key (current-global-map) (kbd "M-<f9>")) #'cj/toggle-gptel))) (provide 'test-ai-vterm--f9-in-vterm) ;;; test-ai-vterm--f9-in-vterm.el ends here |
