diff options
-rw-r--r-- | module/system/repl/repl.scm | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/module/system/repl/repl.scm b/module/system/repl/repl.scm index d83d28759..fc525b547 100644 --- a/module/system/repl/repl.scm +++ b/module/system/repl/repl.scm @@ -26,7 +26,7 @@ #:use-module (system repl common) #:use-module (system repl command) #:use-module (ice-9 control) - #:export (start-repl run-repl)) + #:export (start-repl run-repl %inhibit-welcome-message)) ;;; @@ -127,6 +127,11 @@ ;;; The repl ;;; +;; Provide a hook for users to inhibit the welcome message. +;; For example, .guile might include +;; ((@ (system repl repl) %inhibit-welcome-message) #f) +(define %inhibit-welcome-message (make-parameter #f)) + (define* (start-repl #:optional (lang (current-language)) #:key debug) (start-repl* lang debug prompting-meta-read)) @@ -158,7 +163,8 @@ (% (with-fluids ((*repl-stack* (cons repl (or (fluid-ref *repl-stack*) '())))) - (if (null? (cdr (fluid-ref *repl-stack*))) + (if (and (null? (cdr (fluid-ref *repl-stack*))) + (not (%inhibit-welcome-message))) (repl-welcome repl)) (let prompt-loop () (let ((exp (prompting-meta-read repl))) |