From 4d9c9fa672ec57551fa8c9d2d25ea60b59dbef52 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Fri, 12 Jun 2026 10:12:31 -0500 Subject: fix(org-drill): let-bind org-refile-targets and target real drill files cj/drill-refile used setq, permanently replacing the session-wide org-refile-targets so every refile anywhere offered only drill targets until restart; and its (drill-dir :maxlevel . 1) entry named a bound variable, which org reads as a directory string rather than a file list, so the drill side yielded nothing. Let-bind org-refile-targets and supply (directory-files drill-dir t "\\.org$") as the file list. The stale test (which asserted the buggy drill-dir spec) is rewritten into two: file-list targets and no global clobber. --- todo.org | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'todo.org') diff --git a/todo.org b/todo.org index d1c03ae6b..1f565cbbb 100644 --- a/todo.org +++ b/todo.org @@ -813,8 +813,9 @@ From the 2026-06 config audit, =modules/calendar-sync.el=: - =:1284= — curl runs without =--fail=: an HTTP 404/500 error page exits 0 and the HTML proceeds into conversion. - =:1229-1233= — =--parse-ics= returns nil for both garbage and a valid calendar with zero in-window events, so healthy near-empty calendars report "parse failed" in =calendar-sync-status=. Distinguish the cases. -** TODO [#B] drill-refile clobbers global org-refile-targets with an invalid spec :bug:quick:solo: -=modules/org-drill-config.el:95-98= — =setq org-refile-targets= replaces the session-wide value, so after one drill refile every org-refile everywhere offers only drill targets until restart; and the =(drill-dir :maxlevel . 1)= spec names a directory-path variable where org expects files, so the drill side yields nothing usable. Let-bind around the call with =((directory-files drill-dir t "\\.org$") :maxlevel . 1)=. From the 2026-06 config audit. +** DONE [#B] drill-refile clobbers global org-refile-targets with an invalid spec :bug:quick:solo: +CLOSED: [2026-06-12 Fri] +Fixed in =modules/org-drill-config.el=: =cj/drill-refile= now =let=-binds =org-refile-targets= (the session-wide value survives) and supplies =(directory-files drill-dir t "\\.org$")= as the file list instead of the bound =drill-dir= symbol (org reads a bound symbol as a directory string, which yielded nothing). Rewrote the stale test (it asserted the buggy =(assoc 'drill-dir ...)=) into two: targets are a real .org file list, and the global is not clobbered. Both red before, green after. Live-reloaded into the daemon. ** TODO [#B] ERC: double mention notifications + tautological server list :bug:quick:solo: From the 2026-06 config audit, =modules/erc-config.el=: -- cgit v1.2.3