HIROSE Yuuji's revive.el od dłuższego czasu działa miło. Używam standardowej konfiguracji przedstawionej w komentarzach w revive.el. Dokumentacja jest dobrze napisana, a ożywienie jest bardzo łatwe w użyciu i konfiguracji. W szczególności revive.el ma lepsze wsparcie niż niektóre do rewitalizacji konfiguracji, które są nieco bardziej skomplikowane. Szczególnie przyjemnie jest je połączyć z HIROSE Yuuji's windows.el. Są stworzone do wspólnej pracy. windows.el umożliwia przywoływanie podziałów okna, itp. revive.el jest zbudowany z myślą o rozszerzeniu w kierunku głębszej integracji trybów dla poszczególnych konfiguracji. Ale dla moich zastosowań, stwierdziłem, że jest całkiem przyjemny po wyjęciu z pudełka, chociaż myślę, że będę go później modyfikował, aby ożywić okna w3m, których aktualnie nie mam w konfiguracji (Aktualizacja: teraz robię: patrz na dole).
Oto moja konfiguracja reaktywacji. I to kilka pomocnych uwag, najpierw dla windows.el a następnie revive.el inline:
(provide 'my-revive-config)
(require 'windows) ; use this with revive so that window splits are recallable
; too
(win:startup-with-window) ; start with window 1
;;;[Key Bindings]
;;;
;;; The default prefix key stroke for Windows is `C-c C-w'. If it
;;; causes you some troubles, see the section `Customizations'.
;;; Here are the default key bindings.
;;;
;;; C-c C-w 1 Switch to window 1 (Q)
;;; C-c C-w 2 Switch to window 2 (Q)
;;; :
;;; C-c C-w 9 Switch to window 9 (Q)
;;; C-c C-w 0 Swap windows with the buffer 0 (Q)
;;; (Select unallocated frame(Emacs 19))
;;; C-c C-w SPC Switch to window previously shown (Q)
;;; C-c C-w C-n Switch to next window
;;; C-c C-w C-p Switch to previous window
;;; C-c C-w ! Delete current window (Q)
;;; C-c C-w C-w Window operation menu
;;; C-c C-w C-r Resume menu
;;; C-c C-w C-l Local resume menu
;;; C-c C-w C-s Switch task
;;; C-c C-w = Show window list (Q)
;;;
;;; The key strokes to select windows from 1 to 9 must be
;;; frequently used, so the alternative key strokes `C-c [Num.]' are
;;; available by default (And any function with (Q)mark can be
;;; invoked without C-w). To disable these quick key strokes, set
;;; the variable win:quick-selection to `nil' in your ~/.emacs.
(autoload 'save-current-configuration "revive" "Save status" t)
(autoload 'resume "revive" "Resume Emacs" t)
(autoload 'wipe "revive" "Wipe Emacs" t)
(define-key ctl-x-map "S" 'save-current-configuration)
(define-key ctl-x-map "F" 'resume)
(define-key ctl-x-map "K" 'wipe)
;;;
;;;[How to use]
;;;
;;; Call `save-current-configuration' (`C-x S' if you define key as
;;; above) when you want to save current editing status and call
;;; `resume' to restore it. Numerical prefix arg to them specifies
;;; the buffer number in which the editing status will be saved.
;;; Here the buffer refers to a revive s-exp in ~/.revive.el of
;;; which there can be n
;;;
;;; [Sample Operations]
;;; C-u 2 C-x S ;save status into the buffer #2
;;; C-u 3 C-x F ;load status from the buffer #3
Istnieją warianty tego, że inni jak revive-plus.el i slightly modified clone on github, ale wolę oryginał.
Update Poniedziałek, 12 stycznia 2015: Teraz mogę przywrócić w3m w ożywieniu (zobacz ożywienie.el docs do informacji, aw szczególności spojrzeć na przykłady w ożywić: major-mode-command-alist-default):
(setq revive:major-mode-command-alist-private
'(("*w3m*" . w3m)))
Wskazówka mówisz ożywić nazwę bufora w3m. Nawet jeśli masz wiele kart, tylko pierwsza musi być wyliczona jak wyżej.
Oto zmienna w3m mam ustawić, aby przywrócić wszystkie karty z poprzedniej sesji:
(setq w3m-session-load-last-sessions t)
Chciałbym przejść do innej grupy roboczej, aby zamknąć wszystkie bufory powiązane ze starą grupą roboczą i otworzyć nowe, zamiast _just_, otwierając nowe. – axel22
'grupa robocza' nie ma właściwego przełączania między zestawami buforów, a ładowanie/zapisywanie jest uciążliwe. Doceniam odpowiedź, ale nie sądzę, że to dobre rozwiązanie. – axel22
Zgadzam się, że przywracanie (wg-restore-workgroup) i aktualizowanie (wg-update-workgroup) może być uciążliwe, ponieważ wymaga dyscypliny. Możesz zautomatyzować to, ale to powinno być coś, co jest wbudowane. Ładowanie i zapisywanie może być łatwo zautomatyzowane, np. z auto-save-hook, tak jak ja. Przestałem dbać o otwarte bufory dawno temu. Usuwam niektóre z nich co kilka dni, a tryb ido ułatwia przełączanie. Mam teraz 91 buforów. – jpkotta