<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotemacs/modules/cj-window-toggle.el, branch load-graph-classify-start</title>
<subtitle>My Emacs configuration
</subtitle>
<id>https://git.cjennings.net/dotemacs/atom?h=load-graph-classify-start</id>
<link rel='self' href='https://git.cjennings.net/dotemacs/atom?h=load-graph-classify-start'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/'/>
<updated>2026-05-10T20:28:31+00:00</updated>
<entry>
<title>refactor(cj-window-toggle): rename to cj-window-toggle-lib for naming consistency</title>
<updated>2026-05-10T20:28:31+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-10T20:28:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=a2e41803d7d29a43ed37a5cf9fd7fe53ca5c15b5'/>
<id>urn:sha1:a2e41803d7d29a43ed37a5cf9fd7fe53ca5c15b5</id>
<content type='text'>
Rename modules/cj-window-toggle.el -&gt; modules/cj-window-toggle-lib.el
and tests/test-cj-window-toggle.el -&gt; tests/test-cj-window-toggle-lib.el.
Update provide forms, file headers, and the (require 'cj-window-toggle)
call sites in ai-vterm.el, vterm-config.el, and the test file.

Same rationale as the cj-cache and cj-org-text renames -- library files
in this codebase are suffixed `-lib'.  No behavior change.
</content>
</entry>
<entry>
<title>refactor: split eshell-vterm-config into eshell-config and vterm-config</title>
<updated>2026-05-10T08:25:35+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-10T08:25:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=b099c779343119ce40f2636469e118ec104002e0'/>
<id>urn:sha1:b099c779343119ce40f2636469e118ec104002e0</id>
<content type='text'>
The combined module had grown to 573 lines covering two unrelated subsystems with no shared state — the eshell shell-mode commands and the vterm/F12 toggle. The header even rendered this with two `;; ----` dividers. Split into two focused modules. eshell-config.el keeps the eshell user commands and package wiring (~170 lines). vterm-config.el keeps the vterm package, the tmux history capture command, the F12 toggle, and the C-; V keymap (~400 lines). Update init.el to require both, point the four vterm test files at vterm-config, and refresh the cross-module commentary in cj-window-geometry.el and cj-window-toggle.el.

No behavior change. Full test suite green; validate-modules clean.
</content>
</entry>
<entry>
<title>refactor: extract toggle-state helpers shared by F9 and F12</title>
<updated>2026-05-10T08:19:03+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-10T08:19:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=9712c2e122bd6923298910fcb53b33ca675ddd82'/>
<id>urn:sha1:9712c2e122bd6923298910fcb53b33ca675ddd82</id>
<content type='text'>
The F12 commit (554b32d) flagged this as a follow-up: ~120 lines of capture-state and display-saved logic were duplicated between modules/ai-vterm.el and modules/eshell-vterm-config.el. The only differences were the default direction (right for F9, below for F12) and the customization name for the fallback size. Extract the shared logic into modules/cj-window-toggle.el so both consumers reduce to thin delegates that pass their state-var symbols and defaults. The state vars stay where they were, so existing tests against each consumer's helpers keep working.

10 new tests cover the parameterized helpers in isolation. All consumer tests still pass.
</content>
</entry>
</feed>
