Как я могу поддерживать работу EMACS, когда текущее окно закрыто (x) в Windows с помощью EMACSW32?

StackOverflow https://stackoverflow.com/questions/2001485

  •  18-09-2019
  •  | 
  •  

Вопрос

я использую EMACSW32 (исправлен) в окнах. EMACS работает в режиме сервера, так что последующие вызовы EMACSClientW открывают файлы в том же сеансе сервера.

У меня есть CX CC Намечен, чтобы сделать текущий кадр невидимым и не убить процесс сервера EMACS. Я хотел бы нажать на окно Икс (Закрыть) Кнопка, чтобы просто скрыть кадр и не завершить серверный процесс, как это происходит в настоящее время.

Любые идеи ? Спасибо!

Это было полезно?

Решение

Конечно, у меня есть способ сделать это. Там могут быть возможны усовершенствования, но это хорошая отправная точка.

Сначала я настраиваю переменную и посоветую функцию Kill-Emacs

(defvar bnb/really-kill-emacs nil)
(defadvice kill-emacs (around bnb/really-exit activate)
    "Only kill emacs if the variable is true"
    (if bnb/really-kill-emacs
        ad-do-it)
      (bnb/exit))

Функция BNB/Exit просто делает кадр невидимой, похожей на то, что вы связаны CX CC.

Затем у меня есть дополнительная функция для правильного выхода EMACS, если это когда -либо необходимо. Это установит переменную и вызовут убийства-эма следующим образом.

(defun bnb/really-kill-emacs ()
    (interactive)
    (setq bnb/really-kill-emacs t)
    (kill-emacs))
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top