Emacs が落ちたけど,余裕でした。
どもです。
おかげさまで,軽度のぎっくり腰的な症状も良くなっております。
というか,腰痛くて歩行に障害がある中,プールへ行ってまいりましたよ。
今年はあと1回くらい行く予定。
Emacs がてんぱったので,強制終了したけど,今回は余裕でした。
前回,前々回と Emacs がクラッシュしたときには,セッション情報を
失うという悲惨な目にあったでの,対策をしていたのですが,
今朝,その対策が効力を発揮したのです。
あー,つまり,30分ごとに セッション情報5つのファイルに順番に
保存していたので大丈夫でした,ということです。
んで,落ちたら,慌てずに,.sessin.ntemacs.{0,1,2,3,4} のうち,
最新のものをコピーするだけです。
これで失われるセッション情報は,高々30分ということになるのです。
その方法はというと,なんのこたーない,タイマーで30分ごとにセッション情報を
ファイルに保存するというものです。
つまり,以下。
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; session.el ;; http://emacs-session.sourceforge.net/ (defvar my-timer-for-session-save-session nil) (defvar my-session-save-session-index 0) (defun my-session-save-session () (let ((session-save-file (expand-file-name (format "~/.session/.session.ntemacs.%d" my-session-save-session-index)))) (session-save-session) (setq my-session-save-session-index (% (1+ my-session-save-session-index) 5)))) (when (require 'session nil t) (setq session-save-file-coding-system 'utf-8-unix) (setq session-save-file (expand-file-name "~/.session/.session.ntemacs")) (setq session-initialize '(session places)) (setq session-globals-max-size 1024) (setq session-globals-max-string (* 1024 1024)) (setq session-globals-include '((kill-ring 512) (session-file-alist 512) (file-name-history 512) (tags-table-set-list 128) (tags-table-list 128))) (add-hook 'after-init-hook 'session-initialize) ;; Save session info every 30 minutes (setq my-timer-for-session-save-session (run-at-time t 1800 'my-session-save-session)))
まとめ
備えあればなんとやら。
発展させて,1日に1回別のパーティションに保存するとか色々ありそうですね。
そうなってくると,それは,cron さんの仕事になるのかにゃ。