From 622a4d8c13a5037e064cf9caa3e917100f7f5cc9 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Thu, 2 Jul 2026 00:00:47 -0400 Subject: fix(keybindings): retire the two-column F2 and C-x 6 bindings A grazed F2 followed by a stray 2, s, or b invokes two-column mode, which replaces the buffer's mode-line-format with its own retro layout and spawns a 2C/ companion buffer. That's what mangled the modeline in an agent terminal: eat semi-char buffers don't forward F2, so the prefix was armed everywhere. Nothing of mine uses global F2 (markdown-mode's binding lives in its own map), so I unbound both routes to 2C-command. cj/modeline-reset repairs a hijacked buffer. --- tests/test-keybindings-two-column-unbound.el | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 tests/test-keybindings-two-column-unbound.el (limited to 'tests') diff --git a/tests/test-keybindings-two-column-unbound.el b/tests/test-keybindings-two-column-unbound.el new file mode 100644 index 00000000..f9bc2c52 --- /dev/null +++ b/tests/test-keybindings-two-column-unbound.el @@ -0,0 +1,26 @@ +;;; test-keybindings-two-column-unbound.el --- 2C-command is unbound -*- lexical-binding: t; -*- + +;;; Commentary: +;; Two-column mode's global F2 / C-x 6 prefix replaces a buffer's +;; mode-line-format with its own layout when triggered by a stray +;; keypress (the 2026-07-01 archsetup agent-buffer incident). +;; keybindings.el retires both bindings; these tests pin that. + +;;; Code: + +(require 'ert) + +(add-to-list 'load-path (expand-file-name "modules" user-emacs-directory)) + +(require 'keybindings) + +(ert-deftest test-keybindings-two-column-f2-unbound () + "Normal: F2 no longer reaches the 2C-command prefix." + (should-not (keymap-lookup global-map ""))) + +(ert-deftest test-keybindings-two-column-c-x-6-unbound () + "Normal: C-x 6 no longer reaches the 2C-command prefix." + (should-not (keymap-lookup global-map "C-x 6"))) + +(provide 'test-keybindings-two-column-unbound) +;;; test-keybindings-two-column-unbound.el ends here -- cgit v1.2.3