chiark / gitweb /
dot/emacs: Look for running server before leaping at starting a new one.
[profile] / dot / emacs
index 16006ae9a8cc1639fdef4065e5c690793ede842b..07c1e3320ac31f6f95d9ceafbc983d3f635b2fe8 100644 (file)
--- a/dot/emacs
+++ b/dot/emacs
@@ -33,7 +33,7 @@
     (if (file-exists-p boot)
        (load boot))))
 
-(require 'cl)
+(require 'cl-lib)
 (require 'dot-emacs)
 
 (unless (mdw-emacs-version-p 25)
      (not (and (fboundp 'daemonp) (daemonp)))
      (progn (setq server-temp-file-regexp (concat "^" tmpdir "\\|/draft$")
                  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)
 (setq linum-format "%7d ")
 (setq next-line-add-newlines nil)      ;Don't add weird newlines
 (setq split-height-threshold nil)      ;Reuse windows where sensible
-(setq compilation-scroll-output t)
+(setq compilation-scroll-output 'first-error)
 (setq iswitchb-default-method 'samewindow ;Don't confuse me by showing
       ido-default-file-method 'selected-window ;buffers in other random
       ido-default-buffer-method 'selected-window) ;frames
                    ("application/x-pdf" "\\.pdf\\'" ("xdg-open" file) nil))))
      (dolist (e entries)
        (setq w3m-content-type-alist
-              (cons e (remove* (car e) w3m-content-type-alist
-                               :key #'car :test #'string=))))))
+              (cons e (cl-remove (car e) w3m-content-type-alist
+                                 :key #'car :test #'string=))))))
 
 (setq w3-do-incremental-display t
       w3-use-menus '(file edit view go bookmark options
 
 (eval-after-load "hippie-exp"
   '(setq hippie-expand-try-functions-list
-          (remove-if (lambda (name)
-                       (memq name '(try-expand-list
-                                    try-expand-list-all-buffers)))
-                     hippie-expand-try-functions-list)))
+          (cl-remove-if (lambda (name)
+                          (memq name '(try-expand-list
+                                       try-expand-list-all-buffers)))
+                        hippie-expand-try-functions-list)))
 
 (autoload 'dired-jump "dired-x")
 (autoload 'dired-jump-other-window "dired-x")
 
 (setq completion-ignored-extensions
        (append `(".hc" ".hi") completion-ignored-extensions))
-(dolist (dir (remove-if-not (lambda (ext)
-                             (= (aref ext (- (length ext) 1)) ?/))
-                           completion-ignored-extensions))
+(dolist (dir (cl-remove-if-not (lambda (ext)
+                                (= (aref ext (- (length ext) 1)) ?/))
+                              completion-ignored-extensions))
   (if (/= (aref dir 0) ?/)
       (setq completion-ignored-extensions
              (cons (concat "/" dir)