From 618bc7813b9acfcf1dfccc9c6590f6f5aece86cf Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 10 May 2026 15:37:36 -0500 Subject: refactor(external-open): extract external-open-lib for shared helpers Same shared-helpers split-pattern that ai-vterm/vterm-config use through cj-window-toggle-lib and that calendar-sync uses through cj-org-text-lib. Pull the two pure dispatch helpers out of the external-open feature module into a sibling library so consumers that only need the dispatch don't have to require the whole feature. New `modules/external-open-lib.el' carries: - `cj/external-open-command' - `cj/external-open-launcher-p' `modules/external-open.el' stays as the feature module: the `default-open-extensions' defcustom, the `find-file' advice (`cj/find-file-auto'), and the interactive commands (`cj/xdg-open', `cj/open-this-file-with'). It now requires external-open-lib for the dispatch helpers. Migrate consumers: - system-utils.el used to require `external-open' for `cj/external-open-launcher-p' alone -- now requires `external-open-lib' directly. - dirvish-config.el calls `cj/external-open-command' from `cj/dirvish-open-file-manager-here' -- add an explicit `(require \='external-open-lib)'. Test files renamed to match the system-lib naming pattern (test--.el): - test-external-open-command.el -> test-external-open-lib-command.el - test-external-open-launcher-p.el -> test-external-open-lib-launcher-p.el No behavior change. --- modules/dirvish-config.el | 1 + 1 file changed, 1 insertion(+) (limited to 'modules/dirvish-config.el') diff --git a/modules/dirvish-config.el b/modules/dirvish-config.el index d5834dac..bf91ae2e 100644 --- a/modules/dirvish-config.el +++ b/modules/dirvish-config.el @@ -27,6 +27,7 @@ (eval-when-compile (require 'system-utils)) (require 'host-environment) (require 'system-lib) +(require 'external-open-lib) ;; mark files in dirvish, attach in mu4e (add-hook 'dired-mode-hook 'turn-on-gnus-dired-mode) -- cgit v1.2.3