aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-24 14:34:57 -0500
committerCraig Jennings <c@cjennings.net>2026-05-24 14:34:57 -0500
commitad173a77fbbe2e9ffb178b8765d0a3cc6b972aac (patch)
tree861cc72c474e58a40dd5ecc7eb9350e5a46326ee /modules
parent5c0fa15d1d5bbe48f85f21e98bb6e91e9b9bcd85 (diff)
downloaddotemacs-ad173a77fbbe2e9ffb178b8765d0a3cc6b972aac.tar.gz
dotemacs-ad173a77fbbe2e9ffb178b8765d0a3cc6b972aac.zip
refactor: declare cross-module commands bound in custom keymaps
custom-ordering.el binds cj/org-sort-by-todo-and-priority (owned by org-config) and custom-text-enclose.el binds change-inner/change-outer (the change-inner package). Both work at runtime — org-config loads eagerly and text-config autoloads change-inner via use-package :commands — but byte-compiling either module standalone warned "not known to be defined", and the dependency was implicit. Added declare-function for each so the compile is clean and the cross-module relationship is explicit at the top of the file. No autoload needed: the runtime autoload/eager-load already exists, so only the compiler needed telling. custom-buffer-file.el byte-compiles clean already, so it needed no change.
Diffstat (limited to 'modules')
-rw-r--r--modules/custom-ordering.el4
-rw-r--r--modules/custom-text-enclose.el6
2 files changed, 10 insertions, 0 deletions
diff --git a/modules/custom-ordering.el b/modules/custom-ordering.el
index 69a2d465..ee2f2023 100644
--- a/modules/custom-ordering.el
+++ b/modules/custom-ordering.el
@@ -23,6 +23,10 @@
(require 'cl-lib)
(require 'keybindings) ;; provides cj/custom-keymap
+;; Bound in the ordering keymap below but owned by org-config (loaded eagerly
+;; in init); declare it so byte-compiling this module standalone is clean.
+(declare-function cj/org-sort-by-todo-and-priority "org-config")
+
(defvar cj/ordering-map)
(defun cj/--arrayify (start end quote &optional prefix suffix)
diff --git a/modules/custom-text-enclose.el b/modules/custom-text-enclose.el
index e1b735a0..e23674ff 100644
--- a/modules/custom-text-enclose.el
+++ b/modules/custom-text-enclose.el
@@ -23,6 +23,12 @@
(require 'keybindings) ;; provides cj/custom-keymap
+;; Bound in the enclose keymap below but owned by the change-inner package
+;; (autoloaded via text-config's `use-package :commands'); declare them so
+;; byte-compiling this module standalone is clean.
+(declare-function change-inner "change-inner")
+(declare-function change-outer "change-inner")
+
(defun cj/--surround (text surround-string)
"Internal implementation: Surround TEXT with SURROUND-STRING.
TEXT is the string to be surrounded.