aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chime.el28
1 files changed, 14 insertions, 14 deletions
diff --git a/chime.el b/chime.el
index a629939..582d61a 100644
--- a/chime.el
+++ b/chime.el
@@ -1621,6 +1621,18 @@ especially when buffer names contain angle brackets)."
;;;; Configuration Validation
+(defun chime--display-validation-results (issues)
+ "Display validation ISSUES via message/warning system.
+ISSUES is a list of (SEVERITY MESSAGE) pairs."
+ (if (null issues)
+ (message "Chime: ✓ All validation checks passed!")
+ (let ((errors (cl-remove-if-not (lambda (i) (eq (car i) :error)) issues))
+ (warnings (cl-remove-if-not (lambda (i) (eq (car i) :warning)) issues)))
+ (dolist (err errors)
+ (display-warning 'chime (cadr err) :error))
+ (dolist (warn warnings)
+ (display-warning 'chime (cadr warn) :warning)))))
+
;;;###autoload
(defun chime-validate-configuration ()
"Validate chime's runtime environment and configuration.
@@ -1672,21 +1684,9 @@ When called programmatically, returns structured validation results."
(push '(:warning "global-mode-string not available.\nModeline display may not work in this Emacs version.")
issues))
- ;; Display results if interactive
(when (called-interactively-p 'any)
- (if (null issues)
- (message "Chime: ✓ All validation checks passed!")
- ;; Show errors and warnings
- (let ((errors (cl-remove-if-not (lambda (i) (eq (car i) :error)) issues))
- (warnings (cl-remove-if-not (lambda (i) (eq (car i) :warning)) issues)))
- (when errors
- (dolist (err errors)
- (display-warning 'chime (cadr err) :error)))
- (when warnings
- (dolist (warn warnings)
- (display-warning 'chime (cadr warn) :warning))))))
-
- ;; Return issues for programmatic use
+ (chime--display-validation-results issues))
+
issues))
;;;; Core Lifecycle