emacs-daemon startup freezes if file has auto-save

2019-04-28 04:20发布

I set up desktop.el so that emacs automatically reopens all files on startup that were left open last time I killed emacs.

Now when I start emacs as a daemon and one of the reopened files has auto-save-data, the daemon displays the usual auto-save-data-message ("...file has auto save data...") and waits for confirmation - but does not continue the initialization. Without confirmation the daemon will stay in this state and new connections (eg via emacsclient -c) are accepted but not processed.

Is there a way to disable confirmations during the daemons startup?

1条回答
等我变得足够好
2楼-- · 2019-04-28 04:49

edit: Updated to match Zarza's working version:

(defadvice desktop-restore-file-buffer
  (around my-desktop-restore-file-buffer-advice)
  "Be non-interactive while starting a daemon."
  (if (and (daemonp)
           (not server-process))
      (let ((noninteractive t))
        ad-do-it)
    ad-do-it))
(ad-activate 'desktop-restore-file-buffer)

(command-line) starts the server process, but only "after loading the user's init file and after processing all command line arguments".

查看更多
登录 后发表回答