Какие альтернативные менеджеры сеансов доступны для Emacs?

Да, это похоже. Оба представления будут вызывать конструктор Thread(Runnable runnable) .

Более поздний код в вашем вопросе

() -> { //implement }

представляет собой лямбда-представление анонимного класса в предыдущем коде:

new Runnable() {
    @Override
    public void run() {
        //implement
    }
}

14
задан Community 23 May 2017 в 12:32
поделиться

3 ответа

Поскольку вам не нравятся базовые функции desktop.el, добавьте немного elisp:

(defvar my-desktop-session-dir
  (concat (getenv "HOME") "/.emacs.d/desktop-sessions/")
  "*Directory to save desktop sessions in")

(defvar my-desktop-session-name-hist nil
  "Desktop session name history")

(defun my-desktop-save (&optional name)
  "Save desktop with a name."
  (interactive)
  (unless name
    (setq name (my-desktop-get-session-name "Save session as: ")))
  (make-directory (concat my-desktop-session-dir name) t)
  (desktop-save (concat my-desktop-session-dir name) t))

(defun my-desktop-read (&optional name)
  "Read desktop with a name."
  (interactive)
  (unless name
    (setq name (my-desktop-get-session-name "Load session: ")))
  (desktop-read (concat my-desktop-session-dir name)))

(defun my-desktop-get-session-name (prompt)
  (completing-read prompt (and (file-exists-p my-desktop-session-dir)
                               (directory-files my-desktop-session-dir))
                   nil nil nil my-desktop-session-name-hist))

EDIT :

Получите несколько голосов, поэтому добавьте тонкости, например, завершение -читать и историю

34
ответ дан 1 December 2019 в 06:48
поделиться

Уже ответили:

Подробное объяснение ваших требований позволит нам предложить более конкретное решение для вас.

Edit

Режим рабочего стола позволяет вам иметь более одного сеанса - сохраненные рабочие столы имеют не имя , а каталог.

Из главы Сохранение сеансов Emacs :

Вы можете сохранить текущий рабочий стол и перезагрузить один сохраненный в другом каталоге набрав Mx desktop-change-dir.

Кроме того, переменная desktop-path позволяет вам определить список каталогов для поиска сохраненных рабочих столов.

Edit 2

Фрагмент кода Elisp, отправленный scottfrazer , позволяет вам дать имя вашей сессии, поскольку в фоновом режиме он переводит имя в правильное имя каталога для режима рабочего стола.

5
ответ дан 1 December 2019 в 06:48
поделиться

Попробуйте рабочий стол Emacs. Иди сюда

0
ответ дан 1 December 2019 в 06:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: