save-visited-files 20170228.2250(in MELPA)
save opened files across sessions

概要

<2015-02-13 Fri> persp-mode.el にもこの機能が含まれています。

Emacsを再起動しても開いているファイルバッファを復元したい人もいます。

標準機能の desktop.el もその機能が含まれていますが、
この save-visited-files.el はその名の通り
開いているファイルのリストを保存し、
再起動時に復元するだけの機能です。

psession.el(レビュー)persp-mode.el(レビュー)
windows.el にもその機能が含まれています。

もしhelm(カテゴリ)anything.el を使っているのであれば、
特に必要はないでしょう。

M-x helm-miniM-x helm-for-files
M-x anything-miniM-x anything-filelist+
使っていればまだ開かれていないファイルは、
recentf の情報源が見付けてくれるからです。

また、バッファを削除する習慣がなく、
たくさんのファイルを開いている状態では
当然復元するのに時間がかかります。

helm/anythingアンチならば導入する価値があるでしょう。

こういうEmacsの内部情報を保存・復元するelispの多くは
kill-emacs-hook でEmacs終了時のみに保存しているのですが、
これは auto-save-hook でauto-saveのタイミングでも
開かれているファイルリストを保存します。

そのため、Emacsがクラッシュしても
クラッシュ当時のEmacsのファイルリストを復元できます。

インストール

パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。

(package-initialize)
(setq package-archives
      '(("gnu" . "http://elpa.gnu.org/packages/")
        ("melpa" . "http://melpa.org/packages/")
        ("org" . "http://orgmode.org/elpa/")))

初めてsave-visited-filesを使う方は
以下のコマンドを実行します。

M-x package-install save-visited-files

アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。

M-x package-install package-utils (初めてアップグレードする場合のみ)
M-x package-utils-upgrade-by-name save-visited-files

設定 150208060801.save-visited-files.el(以下のコードと同一)

;;; tramp(remote)ファイルは復元しない
(setq save-visited-files-ignore-tramp-files t)
(turn-on-save-visited-files-mode)

実行方法

$ wget http://rubikitch.com/f/150208060801.save-visited-files.el
$ emacs -Q -f package-initialize -l 150208060801.save-visited-files.el

本サイト内の関連パッケージ


本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。