From f2d2fe6fc8ef0b6087c4a8a69d05a4e521b23047 Mon Sep 17 00:00:00 2001 From: Sean Whitton Date: Tue, 3 May 2022 18:08:14 -0700 Subject: [PATCH] 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. --- lisp/server.el | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) 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 -- 2.39.5