chiark / gitweb /
dot/emacs: Look for running server before leaping at starting a new one.
[profile] / dot / emacs
index b78c03c7a88724e980f2f2617c79a1fab601d228..07c1e3320ac31f6f95d9ceafbc983d3f635b2fe8 100644 (file)
--- a/dot/emacs
+++ b/dot/emacs
                  edit-server-new-frame nil
                  server-raise-frame nil
                  gnuserv-frame t)
-           (trap (let ((warning-suppress-types
-                        (cons '(server)
-                              (and (boundp 'warning-suppress-types)
-                                   warning-suppress-types))))
-                   (server-start)))
+           (trap (progn
+                   (require 'server)
+                   (let ((state (server-running-p)))
+                     (if state
+                         (message "Emacs server %s: not starting"
+                                  (cond ((eq state t) "already running")
+                                        (t "maybe running")))
+                       (server-start)))))
            (trap (progn
                    (require 'edit-server)
                    (edit-server-start)