From 199e4c7e5d116a37d76698f611133aa84fcbac63 Mon Sep 17 00:00:00 2001 From: Martin Rudalics Date: Fri, 30 Sep 2011 15:21:29 +0200 Subject: [PATCH] Insert initial-scratch-message before displaying *scratch*. (Bug#9636) * startup.el (command-line-1): Fix last fix by inserting initial-scratch-message into *scratch* before displaying it. (Bug#9626) and (Bug#9636) --- lisp/ChangeLog | 6 ++++++ lisp/startup.el | 21 ++++++++++++--------- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 42bd14094ba..13efd17cfac 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,9 @@ +2011-09-30 Martin Rudalics + + * startup.el (command-line-1): Fix last fix by inserting + initial-scratch-message into *scratch* before displaying it. + (Bug#9626) and (Bug#9636) + 2011-09-29 Eli Zaretskii * simple.el (line-move): If auto-hscroll-mode is disabled and the diff --git a/lisp/startup.el b/lisp/startup.el index 4e6f0af0368..16cf41506bd 100644 --- a/lisp/startup.el +++ b/lisp/startup.el @@ -2307,23 +2307,26 @@ A fancy display is used on graphic displays, normal otherwise." ;; abort later. (unless (frame-live-p (selected-frame)) (kill-emacs nil)))))) - (when initial-buffer-choice - (cond ((eq initial-buffer-choice t) - (switch-to-buffer (get-buffer-create "*scratch*"))) - ((stringp initial-buffer-choice) - (find-file initial-buffer-choice)))) + (when (eq initial-buffer-choice t) + ;; When initial-buffer-choice equals t make sure that *scratch* + ;; exists. + (get-buffer-create "*scratch*")) ;; If *scratch* exists and is empty, insert initial-scratch-message. + ;; Do this before switching to *scratch* below to handle bug#9605. (and initial-scratch-message (get-buffer "*scratch*") (with-current-buffer "*scratch*" (when (zerop (buffer-size)) - ;; Insert before markers to make sure that window-point - ;; appears at end of buffer when *scratch* is displayed - ;; (Bug#9605). - (insert-before-markers initial-scratch-message) + (insert initial-scratch-message) (set-buffer-modified-p nil)))) + (when initial-buffer-choice + (cond ((eq initial-buffer-choice t) + (switch-to-buffer (get-buffer-create "*scratch*"))) + ((stringp initial-buffer-choice) + (find-file initial-buffer-choice)))) + (if (or inhibit-startup-screen initial-buffer-choice noninteractive -- 2.39.2