aboutsummaryrefslogtreecommitdiff
path: root/todo.org
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-24 00:22:08 -0400
committerCraig Jennings <c@cjennings.net>2026-06-24 00:22:08 -0400
commit0276a855956cf73d9ee3976d0f7448a35c69d1d6 (patch)
tree82c56d3bfd534eebd1976a7c6134f6776d05bfde /todo.org
parent02db8729485e86323141c4d1e6676438dbe6dc9f (diff)
downloaddotemacs-0276a855956cf73d9ee3976d0f7448a35c69d1d6.tar.gz
dotemacs-0276a855956cf73d9ee3976d0f7448a35c69d1d6.zip
chore(todo): file C-arrow copy-mode regression from roam inbox
Claude-Session: https://claude.ai/code/session_01BqrdWUo9GcznYX2pZr76gZ
Diffstat (limited to 'todo.org')
-rw-r--r--todo.org3
1 files changed, 2 insertions, 1 deletions
diff --git a/todo.org b/todo.org
index d9597a58d..3191d4819 100644
--- a/todo.org
+++ b/todo.org
@@ -55,7 +55,8 @@ Tags are additive. For example, a small wrong-behavior fix can be
=:bug:quick:=, and a feature that requires internal restructuring can be
=:feature:refactor:=.
* Emacs Open Work
-** TODO [#B] ai-term wrap-teardown + shutdown functions :feature:
+** TODO [#B] C-<left>/<right>/<down> wrongly enter terminal copy-mode :bug:quick:
+Regression from today's modified-arrow copy-mode work (commit 83f2ac01). In a ghostel buffer, C-<left>/<right>/<down> now enter copy-mode, but they should pass through to the terminal — C-<left>/C-<right> are readline word-movement at the shell prompt, so intercepting them breaks command-line editing. Only C-<up> (the scroll-up-into-history gesture) should enter copy-mode. Fix: drop C-<left>/<right>/<down> from both the ghostel-mode-map bindings and ghostel-keymap-exceptions in modules/term-config.el, keep C-<up>. Open call (gates :solo:): whether the same exclusion applies to M-<left>/<right>/<down> or M-arrows stay fully bound (the original task heading asked for the M-<arrow> family; M-arrows don't collide with readline the way C-arrows do). From the roam inbox, Craig's testing 2026-06-24.
The .emacs.d half of the rulesets wrap-it-up teardown / shutdown feature. Implement three functions in =modules/ai-term.el=, all callable headlessly via =emacsclient -e= (no interactive frame): =cj/ai-term-quit "<project>"= (teardown a project's aiv- tmux session + buffer + geometry restore), =cj/ai-term-live-count= (integer, the safety gate), =cj/ai-term-shutdown-countdown= (run-at-time timer). Craig's 2026-06-23 decisions: non-destructive qualifier = "with summary"/"and summarize"; countdown is a run-at-time timer (not a tty writer); safety gate uses cj/ai-term-live-count. Lands with the rulesets half (workflow + Stop hook already built/pushed). Spec: =inbox/PROCESSED-2026-06-23-2331-from-rulesets-ai-term-teardown-companion.org= (rulesets proposal: docs/design/2026-06-23-wrap-teardown-shutdown-proposal.org). Own focused session.
** TODO [#C] ai-term multi-LLM support — Claude / Codex / ollama :feature:
Allow creating an ai-term that launches any of Claude, Codex, or a local LLM via ollama, switchable at session start. From rulesets/Craig via the roam inbox. Spec note: =inbox/PROCESSED-2026-06-23-2123-from-rulesets-ai-term-multi-llm-support-from-craig.org=.