summaryrefslogtreecommitdiff
path: root/modules/chrono-tools.el
Commit message (Collapse)AuthorAgeFilesLines
* refactor: consolidate runtime state into persist/Craig Jennings2026-05-161-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Six previously-scattered runtime state files now live under persist/ in user-emacs-directory: - theme-file (was .emacs-theme) - pdf-view-restore-filename (was .pdf-view-restore) - time-zones--city-list-file (was .time-zones.el) - calendar-sync--state-file (was data/calendar-sync-state.el) - prescient-save-file (was var/prescient-save.el) - org-id-locations-file (was .org-id-locations) The defaults in each module now expand to persist/<name> instead of the user-emacs-directory root or ad-hoc subdirs. Existing files moved into persist/ alongside this change so the next launch picks up the state without regenerating. test-ui-theme-default-theme-file-is-emacs-dotfile renamed to test-ui-theme-default-theme-file-is-under-persist and updated to assert the new default path. lsp-session-file is left at the root for now -- prog-lsp.el has no (require) reference anywhere, so the use-package block that would carry the redirect never runs. Tier 3 follow-up: confirm the module is dead, then delete it or wire it into the load chain. The var/ directory is now empty and removed. data/ retains the calendar agenda content (dcal/gcal/pcal.org) and the .rest API examples -- content, not state, stays where it is.
* refactor(foundation): hygiene pass across early-init, user-constants, ↵Craig Jennings2026-05-161-63/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | system-defaults, chrono-tools Six small fixes the 2026-05-15 module-by-module re-review surfaced: - Consolidate `user-home-dir` -- canonical defconst stays in early-init.el (package-archive bootstrap needs it before normal modules load); user-constants.el switches to a `defvar` with the identical `(getenv "HOME")` expression so the module still loads / byte-compiles standalone, but at runtime early-init's defconst wins. - Drop the redundant `(autoload 'env-bsd-p ...)` line in system-defaults.el. The `(eval-when-compile (require 'host-environment))` already exposes the symbol to the byte compiler, and at runtime host-environment is loaded earlier in init.el. Added a comment documenting the boundary. - Convert `cj/debug-modules` and `cj/use-online-repos` from `defvar` to `defcustom`, with `:type`, `:group 'cj`, and a top-level `(defgroup cj ...)` so both show up in M-x customize. - Name the package-archive priorities in early-init.el. Nine new defconsts replace the magic numbers (200 / 125 / 120 / 115 / 100 / 25 / 20 / 15 / 5) with one constant each, plus a header comment explaining the local-first ordering and the gnu > nongnu > melpa > melpa-stable trust ranking within each tier. - Delete the 19-line commented-out `use-package time` world-clock block in chrono-tools.el. `time-zones` immediately above is the active replacement; git history preserves the old config if anyone needs it. - Add coverage for `cj/tmr-select-sound-file`. Collapsed the prefix-arg branch into a delegation to `cj/tmr-reset-sound-to-default` (single reset source) and extracted `cj/tmr--available-sound-files` as a pure helper that tests directly. 9 ERT tests across Normal / Boundary / Error cover the available-sounds helper, the reset path, the prefix-arg delegation (no prompt), the normal selection path, and the empty-dir / missing-dir / cancel boundaries.
* fix(chrono-tools): correct undefined variable in timer reset messageCraig Jennings2026-02-151-1/+1
| | | | | notification-package → notification-sound in cj/tmr-reset-sound-to-default. Also remove 10 untestable modules from ERT checklist [13/14].
* fix(chrono-tools): fix trailing paren in time-zones bindingCraig Jennings2026-01-241-1/+1
|
* fix(terminal): add console/mosh compatibilityCraig Jennings2026-01-231-1/+1
| | | | | | | | - Create terminal-compat.el for arrow key escape sequences - Fix M-uppercase keybindings (M-O → M-S-o, etc.) that conflicted with terminal escape sequences ESC O A/B/C/D - Add GUI-only guards for emojify and icon rendering - 18 keybindings updated across 13 modules with override comments
* refactor(keybindings): reorganize time-zones and kill-buffer-and-window bindingsCraig Jennings2025-11-241-1/+1
| | | | | | Move time-zones from C-x c to M-C for easier access. Move cj/kill-buffer-and-window from M-C to C-; b k to group with other buffer operations. Updated documentation and which-key labels.
* chrono-tools: integrate and test time-zones packageCraig Jennings2025-11-111-19/+27
| | | | | | | Replaced the world-clock configuration with the new time-zones package to provide an interactive world clock with fuzzy search and time shifting features. The previous world-clock code is commented out for potential fallback testing.
* feat: calendar: fix calendar navigation keys to be more intuitiveCraig Jennings2025-10-151-6/+7
| | | | | | arrow keys move by day C-arrow move by month M-arrow move by year
* changing repositoriesCraig Jennings2025-10-121-0/+118