aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-11 13:14:56 -0500
committerCraig Jennings <c@cjennings.net>2026-07-11 13:14:56 -0500
commitd9897243c88b39109996e67f214ebff63d000742 (patch)
tree3a84a6dd7b8f3e540ed5da2ad2c86872b5c734a3 /modules
parent559530a208f8287d450cd842bfbdda92da97971c (diff)
downloaddotemacs-d9897243c88b39109996e67f214ebff63d000742.tar.gz
dotemacs-d9897243c88b39109996e67f214ebff63d000742.zip
refactor: retire unreferenced modules to an archive directory
A reachability sweep from init.el found eight .el files that nothing in the config loads or references. I moved them under archive/ (off the load-path, still tracked in git) so they stay readable and restorable rather than deleted. archive/README.org records the rule (every .el outside archive/ should be actively used) and why each file was retired. I retired show-kill-ring, duet-config, and mu4e-org-contacts-setup from modules/, and eplot, profile-dotemacs, titlecase, titlecase-data, and edit-indirect from custom/. Retiring show-kill-ring also removed the orphaned M-K -> M-S-k translation in keyboard-compat, which had left M-K a dead key. Its tests now assert seventeen translations and guard M-K's absence.
Diffstat (limited to 'modules')
-rw-r--r--modules/duet-config.el19
-rw-r--r--modules/keyboard-compat.el3
-rw-r--r--modules/mu4e-org-contacts-setup.el31
-rw-r--r--modules/show-kill-ring.el122
4 files changed, 1 insertions, 174 deletions
diff --git a/modules/duet-config.el b/modules/duet-config.el
deleted file mode 100644
index 2dc7ad2e..00000000
--- a/modules/duet-config.el
+++ /dev/null
@@ -1,19 +0,0 @@
-;;; duet-config.el --- DUET dual-pane commander configuration -*- lexical-binding: t -*-
-
-;;; Commentary:
-;; Personal configuration glue for the DUET package, developed locally at
-;; ~/code/duet. Keybindings, defcustom values, and connection storage live
-;; here; the package itself stays free of personal opinions.
-;;
-;; Not yet required from init.el — DUET is a pre-alpha skeleton. Wire it in
-;; once Stage 1 provides usable commands.
-
-;;; Code:
-
-(use-package duet
- :load-path "~/code/duet"
- :ensure nil
- :commands (duet))
-
-(provide 'duet-config)
-;;; duet-config.el ends here
diff --git a/modules/keyboard-compat.el b/modules/keyboard-compat.el
index b72362e7..73138ca5 100644
--- a/modules/keyboard-compat.el
+++ b/modules/keyboard-compat.el
@@ -98,8 +98,7 @@ Meta+Shift+letter triggers M-S-letter keybindings."
(define-key key-translation-map (kbd "M-D") (kbd "M-S-d"))
(define-key key-translation-map (kbd "M-I") (kbd "M-S-i"))
(define-key key-translation-map (kbd "M-C") (kbd "M-S-c"))
- (define-key key-translation-map (kbd "M-B") (kbd "M-S-b"))
- (define-key key-translation-map (kbd "M-K") (kbd "M-S-k"))))
+ (define-key key-translation-map (kbd "M-B") (kbd "M-S-b"))))
;; In daemon mode, no frame exists at startup so env-gui-p returns nil.
;; Use server-after-make-frame-hook to set up translations when the first
diff --git a/modules/mu4e-org-contacts-setup.el b/modules/mu4e-org-contacts-setup.el
deleted file mode 100644
index bfb9b1f2..00000000
--- a/modules/mu4e-org-contacts-setup.el
+++ /dev/null
@@ -1,31 +0,0 @@
-;;; mu4e-org-contacts-setup.el --- Setup mu4e with org-contacts -*- lexical-binding: t; -*-
-;; author: Craig Jennings <c@cjennings.net>
-
-;;; Commentary:
-;;
-;; Thin activation wrapper for mu4e-org-contacts-integration. If mu4e is loaded,
-;; enable org-contacts completion and disable mu4e's internal contact collector
-;; so completion has one source of truth.
-
-;;; Code:
-
-(defvar mu4e-compose-complete-only-personal)
-(defvar mu4e-compose-complete-only-after)
-(declare-function cj/activate-mu4e-org-contacts-integration "mu4e-org-contacts-integration")
-
-;; Load the integration module. Activation only runs when the module loaded
-;; cleanly AND mu4e is present; otherwise this file is a no-op so the rest
-;; of the config can load without mu4e installed.
-(when (require 'mu4e-org-contacts-integration nil t)
- (when (featurep 'mu4e)
- (cj/activate-mu4e-org-contacts-integration)))
-
-;; Optional: If you want to use org-contacts as the primary source,
-;; you might want to disable mu4e's contact caching to save memory
-(with-eval-after-load 'mu4e
- ;; Disable mu4e's internal contact collection
- (setq mu4e-compose-complete-only-personal nil)
- (setq mu4e-compose-complete-only-after nil))
-
-(provide 'mu4e-org-contacts-setup)
-;;; mu4e-org-contacts-setup.el ends here \ No newline at end of file
diff --git a/modules/show-kill-ring.el b/modules/show-kill-ring.el
deleted file mode 100644
index e65d48b5..00000000
--- a/modules/show-kill-ring.el
+++ /dev/null
@@ -1,122 +0,0 @@
-;;; show-kill-ring.el --- Displays Previous Kill Ring Entries -*- lexical-binding: t; coding: utf-8; -*-
-;; Show Kill Ring
-;; Stolen from Steve Yegge when he wasn't looking
-;; enhancements and bugs added by Craig Jennings <c@cjennings.net>
-;;
-;;; Commentary:
-;; Browse items you've previously killed.
-;; Yank text using C-u, the index, then C-y.
-;;
-;; I've lovingly kept the nice 1970s aesthetic, complete with wood paneling.
-;; Maybe I'll give it a makeover at some point.
-;;
-;;; Code:
-
-(require 'cl-lib)
-
-(defvar show-kill-max-item-size 1000
- "This represents the size of a \='kill ring\=' entry.
-A positive number means to limit the display of \='kill-ring\=' items to
-that number of characters.")
-
-(defun show-kill-ring-exit ()
- "Exit the show-kill-ring buffer."
- (interactive)
- (quit-window t))
-
-(defun show-kill-ring ()
- "Show the current contents of the kill ring in a separate buffer.
-This makes it easy to figure out which prefix to pass to yank."
- (interactive)
- ;; kill existing one, since erasing it doesn't work
- (let ((buf (get-buffer "*Kill Ring*")))
- (and buf (kill-buffer buf)))
-
- (let* ((buf (get-buffer-create "*Kill Ring*"))
- (temp kill-ring)
- (count 1)
- (bar (make-string 32 ?=))
- (bar2 (concat " " bar))
- (item " Item ")
- (yptr nil) (ynum 1))
- (set-buffer buf)
- (erase-buffer)
-
- (show-kill-insert-header)
-
- ;; show each of the items in the kill ring, in order
- (while temp
- ;; insert our little divider
- (insert (concat "\n" bar item (prin1-to-string count) " "
- (if (< count 10) bar2 bar) "\n"))
-
- ;; if this is the yank pointer target, grab it
- (when (equal temp kill-ring-yank-pointer)
- (setq yptr (car temp) ynum count))
-
- ;; insert the item and loop
- (show-kill-insert-item (car temp))
- (cl-incf count)
- (setq temp (cdr temp)))
-
- ;; show info about yank item
- (show-kill-insert-footer yptr ynum)
-
- ;; use define-key instead of local-set-key
- (use-local-map (make-sparse-keymap))
- (define-key (current-local-map) "q" #'show-kill-ring-exit)
-
- ;; show it
- (goto-char (point-min))
- (setq buffer-read-only t)
- (set-buffer-modified-p nil)
- ;; display-buffer rather than pop-to-buffer
- ;; easier for user to C-u (item#) C-y
- ;; while the point is where they want to yank
- (display-buffer buf)))
-
-(defun show-kill-insert-item (item)
- "Insert an ITEM from the kill ring into the current buffer.
-If it's too long, truncate it first."
- (let ((max show-kill-max-item-size))
- (cond
- ((or (not (numberp max))
- (< max 0)
- (< (length item) max))
- (insert item))
- (t
- ;; put ellipsis on its own line if item is longer than 1 line
- (let ((preview (substring item 0 max)))
- (if (< (length item) (- (frame-width) 5))
- (insert (concat preview "..."))
- (insert (concat preview "\n..."))))))))
-
-(defun show-kill-insert-header ()
- "Insert the show-kill-ring header or a notice if the kill ring is empty."
- (if kill-ring
- (insert "Contents of the kill ring:\n")
- (insert "The kill ring is empty")))
-
-(defun show-kill-insert-footer (yptr ynum)
- "Insert final divider and the yank-pointer (YPTR YNUM) info."
- (when kill-ring
- (save-excursion
- (re-search-backward "^\\(=+ Item [0-9]+ =+\\)$"))
- (insert "\n")
- (insert (make-string (length (match-string 1)) ?=))
- ;; Use number-to-string instead of int-to-string
- (insert (concat "\n\nItem " (number-to-string ynum)
- " is the next to be yanked:\n\n"))
- (show-kill-insert-item yptr)
- (insert "\n\nThe prefix arg will yank relative to this item.")))
-
-(defun empty-kill-ring ()
- "Force garbage collection of huge kill ring entries that I don't care about."
- (interactive)
- (setq kill-ring nil)
- (garbage-collect))
-
-(keymap-global-set "M-S-k" #'show-kill-ring) ;; was M-K, overrides kill-sentence
-
-(provide 'show-kill-ring)
-;;; show-kill-ring.el ends here