From: Sean Whitton <spwhitton@spwhitton.name> Date: Wed, 4 May 2022 01:08:14 +0000 (-0700) Subject: server-execute: Initialize the *scratch* buffer X-Git-Tag: emacs-29.0.90~1931^2~85 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=f2d2fe6fc8ef0b6087c4a8a69d05a4e521b23047;p=emacs.git server-execute: Initialize the *scratch* buffer * lisp/server.el: Require subr-x when compiling. (server-execute): Initialize the *scratch* buffer in the same way that the scratch-buffer command does, for consistency. --- diff --git a/lisp/server.el b/lisp/server.el index 763cf27f7ac..fc6991df5f1 100644 --- a/lisp/server.el +++ b/lisp/server.el @@ -82,7 +82,9 @@ ;;; Code: -(eval-when-compile (require 'cl-lib)) +(eval-when-compile + (require 'cl-lib) + (require 'subr-x)) (defgroup server nil "Emacs running as a server process." @@ -1366,9 +1368,14 @@ The following commands are accepted by the client: (find-file-noselect initial-buffer-choice)) ((functionp initial-buffer-choice) (funcall initial-buffer-choice))))) - (switch-to-buffer - (if (buffer-live-p buf) buf (get-buffer-create "*scratch*")) - 'norecord))) + (if (buffer-live-p buf) + (switch-to-buffer buf 'norecord) + (if-let ((scratch (get-buffer "*scratch*"))) + (switch-to-buffer scratch 'norecord) + (switch-to-buffer (get-buffer-create "*scratch*") 'norecord) + (when initial-scratch-message + (insert initial-scratch-message)) + (funcall initial-major-mode))))) ;; Delete the client if necessary. (cond