Como restaurar janelas e buffers do Emacs da última sessão?

Como restaurar janelas e buffers do Emacs da última sessão?

Como restaurar janelas e buffers do Emacs da última sessão?

O comportamento que desejo é como no navegador da web, onde você pode restaurar todas as guias da última sessão.

Responder1

Além deautomaticamenterestaurando seuúltima sessão do Emacsestado, você também pode salvar qualquer número de estados de sessão e restaurá-los sob demanda em qualquer outra sessão, quantas vezes quiser. IOW, você pode alternar facilmente entrediferentes áreas de trabalho.

A maneira mais fácil de fazer isso é carregar a bibliotecaMarcador+e use a tecla C-x r Kpara salvar o estado atual da sessão como um marcador da área de trabalho. Você pode então restaurar qualquer marcador da área de trabalho em qualquer sessão usando a tecla C-x j K.

Responder2

vá para o seu arquivo .emacs e digite (desktop-save-mode 1) isso salvará todos os buffers atuais em um arquivo "desktop", não salvará o layout real de seus frames, mas você pode procurar em "registros" para isso.

Responder3

Aqui está um código para fazer isso. Para que o código funcione, você precisa da biblioteca Lisp "tapeçaria" instalada. Se você usar o VM mailer, você já tem a biblioteca instalada. Caso contrário você podebaixe aqui.

Coloque o seguinte código em seu arquivo .emacs. Quando você quiser restaurar a configuração da janela e do quadro da última sessão do Emacs, digite M-x load-my-tapestry RET.

(require 'tapestry)

(defvar my-tapestry-file "~/.tapestry")

(defun load-my-tapestry ()
  (interactive)
  (let ((b (find-file-noselect my-tapestry-file)))
    (sit-for 0)
    (set-tapestry (read b))
    (kill-buffer b)))

(defun save-my-tapestry ()
  (interactive)
  (let ((tap (tapestry)))
    (with-temp-buffer
      (let ((standard-output (current-buffer)))
        (setcar tap (make-list (length (car tap)) nil))
        (print tap)
        (write-region (point-min) (point-max) my-tapestry-file)))))

(add-hook 'kill-emacs-hook 'save-my-tapestry)

informação relacionada