From 08014b2f15e099a1c5e662a17a41290f37aeebf4 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 24 May 2026 19:59:28 -0500 Subject: refactor(load-graph): route C-; registration through the keymap API Migrated all 31 cj/custom-keymap registration sites across 24 modules from direct (keymap-set cj/custom-keymap ...) calls to cj/register-prefix-map and cj/register-command. Consumers no longer reference cj/custom-keymap directly, so keybindings.el is the sole owner of the C-; prefix and modules reach it only through the API (each already requires keybindings from Phase 2). Behavior-preserving: I dumped every C-; binding before and after the migration and they're identical: 279 bindings, each resolving to the same command. The which-key label blocks are untouched, since they use string key descriptions and never assumed the keymap existed. I byte-compiled all 24 files (no new free-variable warnings, because the cj/custom-keymap references are gone), and make test, validate-modules, and an init load all pass. --- modules/ai-config.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules/ai-config.el') diff --git a/modules/ai-config.el b/modules/ai-config.el index e2a71fed..199f644b 100644 --- a/modules/ai-config.el +++ b/modules/ai-config.el @@ -524,7 +524,7 @@ Works for any buffer, whether it's visiting a file or not." "s" #'cj/gptel-save-conversation ;; save conversation "t" #'cj/toggle-gptel ;; toggles the ai-assistant window "x" #'cj/gptel-clear-buffer) ;; clears the assistant buffer -(keymap-set cj/custom-keymap "a" cj/ai-keymap) +(cj/register-prefix-map "a" cj/ai-keymap) (with-eval-after-load 'which-key (which-key-add-key-based-replacements -- cgit v1.2.3