]> code.delx.au - gnu-emacs/blobdiff - lisp/startup.el
Merge from emacs--rel--22
[gnu-emacs] / lisp / startup.el
index 8ab56eee180092325488e8407ad74cf018d53ece..1f0cff2ccecba1b96e1bb9ebd734d8435e125d9e 100644 (file)
@@ -56,6 +56,7 @@ directory using `find-file'.  If t, open the `*scratch*' buffer."
 
 (defcustom inhibit-startup-screen nil
   "Non-nil inhibits the startup screen.
+It also inhibits display of the initial message in the `*scratch*' buffer.
 
 This is for use in your personal init file (but NOT site-start.el), once
 you are familiar with the contents of the startup screen."
@@ -1154,7 +1155,9 @@ opening the first frame (e.g. open a connection to an X server).")
 
 ")
   "Initial message displayed in *scratch* buffer at startup.
-If this is nil, no message will be displayed."
+If this is nil, no message will be displayed.
+If `inhibit-startup-screen' is non-nil, then no message is displayed,
+regardless of the value of this variable."
   :type '(choice (text :tag "Message")
                 (const :tag "none" nil))
   :group 'initialization)
@@ -2239,6 +2242,14 @@ A fancy display is used on graphic displays, normal otherwise."
       ;; (with-no-warnings
       ;;       (setq menubar-bindings-done t))
 
+      ;; If *scratch* exists and is empty, insert initial-scratch-message.
+      (and initial-scratch-message
+          (get-buffer "*scratch*")
+          (with-current-buffer "*scratch*"
+            (when (zerop (buffer-size))
+              (insert initial-scratch-message)
+              (set-buffer-modified-p nil))))
+
       (if (> file-count 0)
          (display-startup-screen t)
        (display-startup-screen nil)))))