aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-24 17:01:40 -0500
committerCraig Jennings <c@cjennings.net>2026-05-24 17:01:40 -0500
commitf84bba186dca1543f9c5f02c03af355188b6e87c (patch)
tree5f5e8e57ae1eac99ea489a44435eb6e1e86cbc79 /modules
parentcad351ec00c3f78cfb6e203d87c7309a620e485c (diff)
downloaddotemacs-f84bba186dca1543f9c5f02c03af355188b6e87c.tar.gz
dotemacs-f84bba186dca1543f9c5f02c03af355188b6e87c.zip
docs(load-graph): classify remaining domain and optional modulesload-graph-classify-end
Final classification batch: the last 19 modules — linear-config, local-repository, lorem-optimum, mail-config, markdown-config, music-config, pdf-config, quick-video-capture, reconcile-open-repos, restclient-config, slack-config, system-commands, telega-config, tramp-config, transcription-config, video-audio-recording, vterm-config, weather-config, wrap-up. I annotated each header, added a Batch 9 table to the inventory, and extended the validation allowlist. 101 of 102 modules are now classified; only elfeed-config remains, deferred on its test fix. Two more hidden dependencies turned up. video-audio-recording uses the boundp shim for its C-; r binding, and mail-config registers C-; e directly without requiring keybindings, so it errors standalone rather than degrading. Both recorded for Phase 2.
Diffstat (limited to 'modules')
-rw-r--r--modules/linear-config.el11
-rw-r--r--modules/local-repository.el11
-rw-r--r--modules/lorem-optimum.el10
-rw-r--r--modules/mail-config.el13
-rw-r--r--modules/markdown-config.el11
-rw-r--r--modules/music-config.el10
-rw-r--r--modules/pdf-config.el11
-rw-r--r--modules/quick-video-capture.el11
-rw-r--r--modules/reconcile-open-repos.el9
-rw-r--r--modules/restclient-config.el9
-rw-r--r--modules/slack-config.el11
-rw-r--r--modules/system-commands.el9
-rw-r--r--modules/telega-config.el10
-rw-r--r--modules/tramp-config.el8
-rw-r--r--modules/transcription-config.el9
-rw-r--r--modules/video-audio-recording.el12
-rw-r--r--modules/vterm-config.el13
-rw-r--r--modules/weather-config.el9
-rw-r--r--modules/wrap-up.el11
19 files changed, 190 insertions, 8 deletions
diff --git a/modules/linear-config.el b/modules/linear-config.el
index 0a62c870..85191828 100644
--- a/modules/linear-config.el
+++ b/modules/linear-config.el
@@ -2,7 +2,16 @@
;; author: Craig Jennings <c@cjennings.net>
;;; Commentary:
-
+;;
+;; Layer: 3 (Domain Workflow).
+;; Category: D/P.
+;; Load shape: eager.
+;; Eager reason: none; Linear integration commands, a command-loaded deferral
+;; candidate.
+;; Top-level side effects: package configuration via use-package.
+;; Runtime requires: system-lib.
+;; Direct test load: yes.
+;;
;; Wires the local pearl checkout (~/code/pearl) into the config,
;; pointed at DeepSat's Linear workspace.
;;
diff --git a/modules/local-repository.el b/modules/local-repository.el
index e95b88df..b97b74f4 100644
--- a/modules/local-repository.el
+++ b/modules/local-repository.el
@@ -2,7 +2,16 @@
;; author Craig Jennings <c@cjennings.net>
;;; Commentary:
-
+;;
+;; Layer: 4 (Optional).
+;; Category: O/D/P.
+;; Load shape: eager.
+;; Eager reason: none; local package-mirror workflow, a command-loaded deferral
+;; candidate.
+;; Top-level side effects: none.
+;; Runtime requires: elpa-mirror.
+;; Direct test load: yes.
+;;
;;; Code:
(require 'elpa-mirror nil t) ;; optional; cj/update-localrepo-repository fails at call-time if absent
diff --git a/modules/lorem-optimum.el b/modules/lorem-optimum.el
index a6bec657..8aa96345 100644
--- a/modules/lorem-optimum.el
+++ b/modules/lorem-optimum.el
@@ -7,6 +7,16 @@
;; URL: https://github.com/yourname/cj-lipsum
;;; Commentary:
+;;
+;; Layer: 4 (Optional).
+;; Category: O/L.
+;; Load shape: eager.
+;; Eager reason: none; placeholder-text generator, a command-loaded deferral
+;; candidate.
+;; Top-level side effects: none.
+;; Runtime requires: cl-lib.
+;; Direct test load: yes.
+;;
;; Generate pseudo-Latin placeholder text using a simple order-two
;; Markov chain. You can train the chain on region, buffer, or file.
;; By default, it learns from a bundled Latin wordlist, which you can
diff --git a/modules/mail-config.el b/modules/mail-config.el
index 7e8773e3..5050d761 100644
--- a/modules/mail-config.el
+++ b/modules/mail-config.el
@@ -2,6 +2,19 @@
;; author Craig Jennings <c@cjennings.net>
;;
;;; Commentary:
+;;
+;; Layer: 3 (Domain Workflow).
+;; Category: D/P.
+;; Load shape: eager.
+;; Eager reason: daily mail; registers cj/email-map. mu4e/org-msg are heavy, so a
+;; command-loaded deferral candidate for Phase 5.
+;; Top-level side effects: registers cj/email-map under cj/custom-keymap, one
+;; add-hook, two advice-add, one global key, package config.
+;; Runtime requires: user-constants, system-lib, mu4e-attachments. keybindings
+;; is needed for the C-; e registration but is not required, so the module
+;; errors standalone. Phase 2 fix.
+;; Direct test load: conditional (needs cj/custom-keymap from keybindings).
+;;
;; I found Aime Bertrand's blog post to be an excellent walkthrough of how to
;; setup a Mu4e config.
;;
diff --git a/modules/markdown-config.el b/modules/markdown-config.el
index 1fc4cb0e..4faa4474 100644
--- a/modules/markdown-config.el
+++ b/modules/markdown-config.el
@@ -2,7 +2,16 @@
;; author Craig Jennings <c@cjennings.net>
;;; Commentary:
-
+;;
+;; Layer: 3 (Domain Workflow).
+;; Category: D/P.
+;; Load shape: eager.
+;; Eager reason: none; markdown editing, a mode-loaded deferral candidate.
+;; Top-level side effects: package configuration via use-package; org-src lang
+;; mapping registered after-load.
+;; Runtime requires: none (configures packages via use-package).
+;; Direct test load: yes.
+;;
;;; Code:
;;;; ------------------------- Markdown-Mode -------------------------
diff --git a/modules/music-config.el b/modules/music-config.el
index 10cad062..27a282e2 100644
--- a/modules/music-config.el
+++ b/modules/music-config.el
@@ -2,6 +2,16 @@
;;
;;; Commentary:
;;
+;; Layer: 4 (Optional).
+;; Category: O/D/P/S.
+;; Load shape: eager.
+;; Eager reason: none; optional music workflow that registers a music keymap, a
+;; command-loaded deferral candidate. EMMS hooks should run only after EMMS.
+;; Top-level side effects: defines a music keymap under cj/custom-keymap, one
+;; global key, package config.
+;; Runtime requires: subr-x, user-constants, keybindings.
+;; Direct test load: yes (requires keybindings explicitly).
+;;
;; Music management in Emacs via EMMS with MPV backend.
;; Focus: simple, modular helpers; consistent error handling; streamlined UX.
;;
diff --git a/modules/pdf-config.el b/modules/pdf-config.el
index cc32f62b..ca231230 100644
--- a/modules/pdf-config.el
+++ b/modules/pdf-config.el
@@ -2,7 +2,16 @@
;; author Craig Jennings <c@cjennings.net>
;;; Commentary:
-
+;;
+;; Layer: 3 (Domain Workflow).
+;; Category: D/P.
+;; Load shape: eager.
+;; Eager reason: none; heavy PDF packages should load on PDF open, a file/mode
+;; deferral candidate.
+;; Top-level side effects: package configuration via use-package.
+;; Runtime requires: none (configures packages via use-package).
+;; Direct test load: yes.
+;;
;;; Code:
;; --------------------------------- PDF Tools ---------------------------------
diff --git a/modules/quick-video-capture.el b/modules/quick-video-capture.el
index a14fefab..05d569b1 100644
--- a/modules/quick-video-capture.el
+++ b/modules/quick-video-capture.el
@@ -1,7 +1,16 @@
;;; quick-video-capture.el --- Video Capturing with Org Capture -*- coding: utf-8; lexical-binding: t; -*-
;;; Commentary:
-
+;;
+;; Layer: 4 (Optional).
+;; Category: O/D/S.
+;; Load shape: eager.
+;; Eager reason: none; runs via org-protocol/command, a protocol/command-loaded
+;; deferral candidate. (Startup timers were already removed.)
+;; Top-level side effects: org-protocol handler registration.
+;; Runtime requires: system-lib.
+;; Direct test load: yes.
+;;
;; This package provides a seamless "fire-and-forget" workflow for downloading
;; videos from the browser to your local system using yt-dlp and task-spooler.
;;
diff --git a/modules/reconcile-open-repos.el b/modules/reconcile-open-repos.el
index 20a324b6..dd82ef0f 100644
--- a/modules/reconcile-open-repos.el
+++ b/modules/reconcile-open-repos.el
@@ -3,6 +3,15 @@
;;
;;; Commentary:
;;
+;; Layer: 3 (Domain Workflow).
+;; Category: D/S.
+;; Load shape: eager.
+;; Eager reason: none; registers one key, but repo scanning should run on command
+;; not at startup, a command-loaded deferral candidate.
+;; Top-level side effects: one global key.
+;; Runtime requires: cl-lib, subr-x.
+;; Direct test load: yes.
+;;
;; Git repository reconciliation workflow for multiple projects. The workflow
;; iterates through all git repositories in projects-dir and code-dir, skips
;; local-only repos and remotes matching `cj/reconcile-skipped-remote-regexp',
diff --git a/modules/restclient-config.el b/modules/restclient-config.el
index 6d38739d..0511eddb 100644
--- a/modules/restclient-config.el
+++ b/modules/restclient-config.el
@@ -2,6 +2,15 @@
;; author: Craig Jennings <c@cjennings.net>
;;; Commentary:
+;;
+;; Layer: 3 (Domain Workflow).
+;; Category: D/P.
+;; Load shape: eager.
+;; Eager reason: none; API exploration, a command-loaded deferral candidate.
+;; Top-level side effects: package configuration via use-package.
+;; Runtime requires: none (configures packages via use-package).
+;; Direct test load: yes.
+;;
;; Integrates restclient.el for interactive API exploration from within Emacs.
;;
;; Write HTTP requests in plain text buffers, execute with C-c C-c, see
diff --git a/modules/slack-config.el b/modules/slack-config.el
index e63b720a..48af9c93 100644
--- a/modules/slack-config.el
+++ b/modules/slack-config.el
@@ -2,7 +2,16 @@
;; author Craig Jennings <c@cjennings.net>
;;; Commentary:
-
+;;
+;; Layer: 4 (Optional).
+;; Category: O/D/P.
+;; Load shape: eager.
+;; Eager reason: none; optional Slack client, a command-loaded deferral
+;; candidate. Auth and which-key labels should be after-load.
+;; Top-level side effects: package configuration via use-package.
+;; Runtime requires: system-lib, cl-lib.
+;; Direct test load: yes.
+;;
;; Slack client using emacs-slack (https://github.com/emacs-slack/emacs-slack).
;;
;; Authentication:
diff --git a/modules/system-commands.el b/modules/system-commands.el
index afb59747..9aa8b3e1 100644
--- a/modules/system-commands.el
+++ b/modules/system-commands.el
@@ -3,6 +3,15 @@
;;
;;; Commentary:
;;
+;; Layer: 3 (Domain Workflow).
+;; Category: D/S.
+;; Load shape: eager.
+;; Eager reason: registers the C-; ! system-command keymap; high-impact commands
+;; that should run only by command (command-loaded target).
+;; Top-level side effects: defines a system-command keymap under cj/custom-keymap.
+;; Runtime requires: keybindings, rx.
+;; Direct test load: yes (requires keybindings explicitly).
+;;
;; System commands for logout, lock, suspend, shutdown, reboot, and Emacs
;; exit/restart. Provides both a keymap (C-; !) and a completing-read menu.
;;
diff --git a/modules/telega-config.el b/modules/telega-config.el
index 789fa533..55682447 100644
--- a/modules/telega-config.el
+++ b/modules/telega-config.el
@@ -3,6 +3,16 @@
;;; Commentary:
;;
+;; Layer: 4 (Optional).
+;; Category: O/D/P.
+;; Load shape: eager.
+;; Eager reason: none; optional Telegram client that registers a keymap, a
+;; command-loaded deferral candidate.
+;; Top-level side effects: registers a telega keymap under cj/custom-keymap,
+;; package config.
+;; Runtime requires: keybindings.
+;; Direct test load: yes (requires keybindings explicitly).
+;;
;; Configures telega.el (https://github.com/zevlg/telega.el) as an
;; in-Emacs Telegram client.
;;
diff --git a/modules/tramp-config.el b/modules/tramp-config.el
index 5f58678a..23010b3e 100644
--- a/modules/tramp-config.el
+++ b/modules/tramp-config.el
@@ -3,6 +3,14 @@
;;; Commentary:
;;
+;; Layer: 3 (Domain Workflow).
+;; Category: D/P.
+;; Load shape: eager.
+;; Eager reason: none; remote-access config, a package-loaded deferral candidate.
+;; Top-level side effects: package configuration via use-package.
+;; Runtime requires: none (configures packages via use-package).
+;; Direct test load: yes.
+;;
;; TRAMP (Transparent Remote Access, Multiple Protocol)
;;
;; To handle fancy prompts on remote servers, add this to your shell configuration:
diff --git a/modules/transcription-config.el b/modules/transcription-config.el
index 344ec473..0a4b4b39 100644
--- a/modules/transcription-config.el
+++ b/modules/transcription-config.el
@@ -5,6 +5,15 @@
;;; Commentary:
;;
+;; Layer: 4 (Optional).
+;; Category: O/D/P.
+;; Load shape: eager.
+;; Eager reason: none; optional auth/process transcription workflow, a
+;; command-loaded deferral candidate.
+;; Top-level side effects: one add-to-list.
+;; Runtime requires: dired, notifications, system-lib, user-constants.
+;; Direct test load: yes.
+;;
;; Audio transcription workflow with multiple backend options.
;;
;; USAGE:
diff --git a/modules/video-audio-recording.el b/modules/video-audio-recording.el
index 282fdf85..38c1931c 100644
--- a/modules/video-audio-recording.el
+++ b/modules/video-audio-recording.el
@@ -3,6 +3,18 @@
;;
;;; Commentary:
;;
+;; Layer: 4 (Optional).
+;; Category: O/D/S.
+;; Load shape: eager.
+;; Eager reason: none; registers a recording keymap, but device probing should
+;; run only on command (command-loaded target).
+;; Top-level side effects: defines cj/record-map and conditionally registers it
+;; under C-; r.
+;; Runtime requires: system-lib. keybindings is needed for the C-; r binding but
+;; only reached through a boundp guard, so the binding silently drops
+;; standalone. Phase 2 fix.
+;; Direct test load: conditional (C-; r registration skipped without keybindings).
+;;
;; Desktop video and audio recording from within Emacs using ffmpeg.
;; Records from both microphone and system audio simultaneously, which
;; makes it suitable for capturing meetings, presentations, and desktop activity.
diff --git a/modules/vterm-config.el b/modules/vterm-config.el
index 20c85468..a87d354e 100644
--- a/modules/vterm-config.el
+++ b/modules/vterm-config.el
@@ -2,7 +2,18 @@
;; author Craig Jennings <c@cjennings.net>
;;; Commentary:
-
+;;
+;; Layer: 3 (Domain Workflow).
+;; Category: D/P.
+;; Load shape: eager.
+;; Eager reason: registers terminal keymaps and the F12 toggle; a command/hook
+;; deferral candidate.
+;; Top-level side effects: defines two keymaps (one under cj/custom-keymap), one
+;; global key, two add-hook, package config.
+;; Runtime requires: keybindings, seq, subr-x, cj-window-geometry-lib,
+;; cj-window-toggle-lib.
+;; Direct test load: yes (requires keybindings explicitly).
+;;
;; VTERM
;; At the moment, vterm behaves like a real terminal. For most keys, vterm will
;; just send them to the process that is currently running. So, C-a may be
diff --git a/modules/weather-config.el b/modules/weather-config.el
index efcc7393..93b0a614 100644
--- a/modules/weather-config.el
+++ b/modules/weather-config.el
@@ -2,6 +2,15 @@
;; author: Craig Jennings <c@cjennings.net>
;;; Commentary:
;;
+;; Layer: 4 (Optional).
+;; Category: O/D/P.
+;; Load shape: eager.
+;; Eager reason: none; optional weather command, a command-loaded deferral
+;; candidate. Degrades cleanly when wttrin is absent.
+;; Top-level side effects: package configuration via use-package.
+;; Runtime requires: none (configures packages via use-package).
+;; Direct test load: yes.
+;;
;; Call M-W to open wttrin with your preferred location list immediately.
;; Adjust the city list by editing `wttrin-default-locations` or answering wttrin prompts when asked.
;; Forecasts arrive in an Emacs buffer, so you can stay keyboard-only while checking weather.
diff --git a/modules/wrap-up.el b/modules/wrap-up.el
index 93b74776..503d4a6b 100644
--- a/modules/wrap-up.el
+++ b/modules/wrap-up.el
@@ -2,7 +2,16 @@
;; author Craig Jennings <c@cjennings.net>
;;; Commentary:
-
+;;
+;; Layer: 2 (Core UX).
+;; Category: S.
+;; Load shape: eager.
+;; Eager reason: runs end-of-startup cleanup, burying the scratch/dashboard
+;; buffers via a short startup timer.
+;; Top-level side effects: a one-shot startup timer that buries buffers.
+;; Runtime requires: system-lib.
+;; Direct test load: yes.
+;;
;;; Code:
(require 'system-lib)