| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
The assignment-view dropdown listed package faces in APPS build order (bespoke apps first, then inventory). generate.py builds them that way, so the list wasn't alphabetical. I added a pure appViewKeysSorted helper that orders the app keys by display label, and buildViewSel uses it. The @code and @ui editor entries above the divider are unchanged.
|
| |
|
|
|
|
| |
theme-studio work
Cause C (per-filetype file icons) is fixed and committed. Cause B reframed per Craig: items already default to fg, coloring routes through theme-studio (task 2418), no hardcoded hex. Filed a visual-verify VERIFY.
|
| |
|
|
| |
I enabled dashboard-set-file-icons so the project, bookmark, and recent-file rows show nerd-icons file icons, colored per filetype. They render now that the dashboard is out of global font-lock, which was stripping the icon faces too. Bookmarks fall back to a generic icon since there's no filetype to map.
|
| |
|
|
| |
Cause A of the dashboard-theming task is fixed and committed. Causes B (item color, themeable not hardcoded) and C (enable file/section icons, per-filetype color) stay open.
|
| |
|
|
|
|
| |
The dashboard banner title and section headings render in the default face instead of their theme colors. The faces are defined correctly. Global font-lock fontifies the dashboard buffer and strips the `face' text properties dashboard sets by hand: it owns `face' and clears props it didn't apply. Items and the navigator survive because their color rides a dashboard-items-face overlay, which font-lock leaves alone.
Excluding dashboard-mode from global font-lock keeps the banner and heading faces. I set it at top level so it applies regardless of the use-package body.
|
| |
|
|
| |
Closed the gptel-switch-backend bug (fixed this session). Filed a VERIFY for the dedup decision (keep switch-backend or fold into change-model) and a manual-test VERIFY for the C-; a B interactive check.
|
| |
|
|
|
|
| |
cj/gptel-switch-backend set gptel-model to the raw completing-read string. gptel's modeline code calls symbolp on gptel-model and signals wrong-type-argument on a string, which surfaces as a redisplay hang (reachable from C-; a B). The sibling command cj/gptel-change-model already interns. This one didn't.
I added a pure cj/gptel--model-to-symbol helper (mirroring cj/gptel--model-to-string) and route the model through it before the setq. The existing switch-backend test asserted the buggy string value. It now asserts a symbol plus an explicit symbolp guard.
|
| |
|
|
| |
Close the tasks fixed this session and park the rest as VERIFY with what's needed (fixture / measurement / design pick / confirm). Child-priority sync bumps, lint mechanical fixes, and PROPERTIES-drawer repairs from the wrap-up cleanup.
|
| |
|
|
| |
make task-sorted wraps todo-cleanup.el --archive-done, moving DONE/CANCELLED level-2 subtrees from Open Work into Resolved. Ran it: archived this session's closed tasks.
|
| |
|
|
| |
deploy-wip (mechanism), calendar-sync x2 (need .ics fixture), org-roam refile (measurement-first), dashboard icons (font approach), transcription (focused pass), music faces (theme-side colours), music tests (audit session), alphabetize + sort-newest (focused studio pass), compact-contrast (clarify intent), fullscreen-terminal (confirm gesture). Each carries what I need or the plan.
|
| |
|
|
| |
The warning box under the palette wasn't useful there; the same ΔE info is reachable per-chip via the nearest-ΔE tooltip and inline contrast. Remove renderPaletteWarnings, the #palwarn element, its CSS, and the #deltatest gate. paletteWarnings still runs for the per-chip nearest distance.
|
| | |
|
| | |
|
| |
|
|
| |
A buffer-local face remap lightens the *scratch* default background by cj/scratch-background-lighten percent (default 5) so it reads as the scratch buffer, applied on emacs-startup-hook. The colour math is display-dependent (verified live); the pure helper's guard contract is unit-tested.
|
| |
|
|
| |
native-comp re-enable (stability judgment), stale-elpa-gptel (needs the gptel-magit dep resolved), org-agenda theme-studio app (multi-phase feature), dirvish hard-delete (confirm key + dangerous sudo rm -rf), remove system-power keys (confirm which to keep), face-consistency check (needs a spec). Each carries what I need from Craig.
|
| |
|
|
| |
<next>/<prior> weren't bound in vertico-map, so in a long completing-read they fell through and selected-then-dismissed the list. Bind them to vertico-scroll-up / vertico-scroll-down.
|
| |
|
|
| |
The heavy-box empty and text lines began with a bare decoration char, so in line-comment languages (elisp, Python) C-; C h injected syntax-breaking lines. Prefix the interiors with the comment char and suffix them like cj/--comment-box does. Add the missing min-length guard so small or negative widths error cleanly instead of failing inside make-string. Updated the two characterization assertions to the corrected output.
|
| |
|
|
| |
dired-mark advances point itself, so the loop's extra forward-line skipped every other file (and could mark a directory). Use dired-get-filename + file-directory-p with an if/else: a marked file line advances once via dired-mark, non-file/directory lines advance manually. Replaces the regex line predicate (retired with its mock test) with a real-Dired marked-count test.
|
| | |
|
| |
|
|
| |
Mark the 12 batch fixes DONE (eww, prog electric-pair/line-numbers, auth-config, system-defaults, prog-go, eshell, split-window, dashboard keys, undo-kill-buffer, ai-term, Signal launcher, groundPair) with their commit refs, then archive all newly-resolved subtrees into Resolved.
|
| |
|
|
| |
A cursor that changed color by buffer state was confusing. Remove cj/set-cursor-color-according-to-mode, its two cache defvars, and the post-command / server-after-make-frame hook registrations; the cursor now uses the theme cursor face. The cj/buffer-status-state / cj/buffer-status-color classifier stays in user-constants.el for the modeline buffer-name indicator. Delete the cursor-function integration test; keep the classifier tests.
|
| | |
|
| |
|
|
| |
Close reconcile-open-repos and dupre-theme-test-failures (the latter moot since dupre was retired and its test file deleted). File four roam-inbox studio/music captures. Note on the stale-elpa-gptel task that deleting the elpa copy standalone introduces a gptel-magit activation warning, so it must be paired with the gptel-magit dependency fix.
|
| |
|
|
| |
Same fragility as the sibling tests: it stubbed env-laptop-p (now unused by the direction logic) and passed only because the batch frame is landscape. Stub the direction directly.
|
| |
|
|
| |
These tests stubbed env-laptop-p to pin the dock edge, but the aspect-ratio rework dropped env-laptop-p from the direction logic, so the laptop case resolved to the batch frame's real (landscape) aspect and split a third window. Stub cj/--ai-term-default-direction directly.
|
| |
|
|
| |
The literal {bg:MAP['bg'],fg:MAP['p']} repeated 32 times across app.js, palette-actions.js, and the browser gates. Replace it with a groundPair() helper. Named groundPair, not ground, to avoid colliding with the local ground bindings destructured from columnsFromPalette. No behavior change; node tests and browser gates are the safety net.
|
| |
|
|
| |
Signal joins the dashboard launchers on key S (icon nf-md-message), opening cj/signel-message. Row sizes go 4-4-3-3 so Slack, Linear, and Signal share the last navigator row.
|
| |
|
|
| |
The aspect-ratio rework dropped env-laptop-p from the direction logic, so these tests stubbed a dead function and depended on the batch frame's real dimensions. Stub cj/--ai-term-default-direction directly.
|
| |
|
|
| |
The agent window now docks from whichever edge conserves more space, chosen at display time: right on a landscape frame, bottom on a square or portrait one, replacing the host (laptop/desktop) branch. cj/--ai-term-direction-for-aspect is the pure decision; default-size pairs the width or height fraction with it.
|
| |
|
|
| |
The visited-file filter used delq, comparing expand-file-name strings by eq, so an already-open file was never removed from the candidates (the skip logic was dead). Use delete (equal). Adds a test with the open file at the head of the list, where the eq/equal difference actually shows.
|
| |
|
|
|
| |
- g on the dashboard now runs dashboard-refresh-buffer (the dired/magit convention) instead of opening Telegram. Telegram moves to G in the launcher table.
- cj/dashboard-only (F1) refreshes before showing, so re-displaying the dashboard always lands on fresh content.
|
| |
|
|
| |
Splitting with C-x 2 or C-x 3 now shows *dashboard* in the freshly created window and keeps point in the original, instead of mirroring the current buffer. cj/--split-show-buffer does the placement; cj/--dashboard-buffer fetches or opens the dashboard without disturbing windows.
|
| |
|
|
|
| |
- eshell-visual-commands is a flat string list, but add-to-list pushed the whole list as one element, so lf/ranger/htop/top never opened in a visual terminal. dolist the strings instead. (visual-subcommands/options are alists and were already correct.)
- The xterm-color before-prompt hook was registered as eshell-before-prompt-hook, which use-package turned into eshell-before-prompt-hook-hook and never ran. Use the real hook name, and actually install xterm-color-filter into eshell-preoutput-filter-functions (dropping eshell-handle-ansi-color) so color output is interpreted.
|
| |
|
|
| |
.go opens the built-in go-ts-mode, so nothing triggered the go-mode package: gofmt was never autoloaded (C-; f signalled void-function) and the :config setting goimports + exec-path never ran. Add :commands (gofmt) so the first format pulls go-mode and its config.
|
| |
|
|
| |
A raw module load under --batch started a server and dropped a throwaway custom-file temp on every run; the suite only passed because a testutil stubbed the server. Guard both with (unless noninteractive ...), the established pattern here. Adds a batch-load test for the custom-file guard.
|
| |
|
|
|
| |
- The bare call-process to gpg-connect-agent in :config aborted init with file-missing on a machine without the binary. Guard it with cj/executable-find-or-warn.
- user-constants was required only eval-when-compile, but authinfo-file is read at load time, so a standalone .elc load failed. Require it at runtime.
|
| |
|
|
|
|
| |
- Go/C/shell setup hooks called the global electric-pair-mode, so one prog buffer turned pairing on in org and text everywhere. Use electric-pair-local-mode.
- prog-general set display-line-numbers-type inside the hook, after the mode turned on, so the first prog buffer of a session got absolute numbers. Set the type and width at top level instead.
- Updated the go/c tests to stub the local mode.
|
| |
|
|
| |
cj/eww-bookmark-quick-add let-bound eww-bookmarks-directory to a path and created a directory there, so B (eww-list-bookmarks) read an unreadable path and quick-added bookmarks vanished after restart. Use the default store both commands share.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
- The color dropdown opens a grid, not a long list.
- The grid mirrors the palette: ground strip, then a row per family.
- Members run dark to light, with the current color outlined.
- A default chip clears the assignment.
- A (gone) cell shows a color no longer in the palette.
- The trigger and step buttons stay the same.
- All three tiers share the one dropdown.
|
| |
|
|
| |
I added paletteUsages, which enumerates every place a color is assigned, grouped by view area (the view dropdown's names: color/code assignments, ui faces, each package app) and the element within it. renderPalette builds the per-area scopes once and appends the list to each used tile's hover title, under the existing name/hex/nearest-deltaE line. Node tests and a #usagetest gate cover it.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
border
The single-color dashed outline blended in. I replaced it with a ring of two alternating contrasting colors, drawn as a masked repeating gradient so it overlays without shifting layout. Unused tiles and columns use gold and black; gone assignments use red and white, keeping the two states distinct at a glance.
|
| | |
|
| |
|
|
| |
An assignment pointing at a color no longer in the palette showed only as "(gone)" on hover. I added a distinct solid border to the swatch whenever its current value resolves to "(gone)", so a broken assignment reads at a glance. The solid red outline is set apart from the dashed unused-tile flag, keeping the two palette-state cues distinguishable. A #gonetest gate covers the flagged and unflagged cases.
|
| |
|
|
|
|
| |
I added usedPaletteHexes, a reverse lookup over the syntax, ui, and package assignments (plus the ground endpoints) that resolves each reference to a hex. renderPalette outlines a tile whose color is referenced nowhere and outlines a whole column when none of its colors are used, so dead colors stand out for pruning before a theme ships. The check is biased safe: an unresolvable reference marks nothing, so a color that is actually used is never flagged.
Node tests cover the lookup. A #unusedtest gate covers the tile and column flags.
|
| |
|
|
| |
I added an arrow control to the palette that collapses every column to its base color (right arrow) or expands to the full spans (down arrow), to conserve vertical space. Ground steps collapse too, leaving bg and fg. A #paltoggletest gate covers the collapse and the expand.
|
| | |
|