スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ファイルの自動保存 ちょっと一工夫

 Emacs22の時には一度も体験したことなかったのですが,最近Emacs23を使っているとよくクラッシュします.メールの下書き,TODOや議事録などをEmacsで作成しているので,突然のクラッシュは思いのほかダメージが大きいです.
 コンパイルオプションやら,site-start.elをカスタマイズしたりとコンパイル方法を色々凝っていることが原因かもしれません.いずれにせよ,突然死によるデータロストはなんとしても避けたいので,何かよい方法がないか調べてみたところSatoru Takabayashiさんのページより,一定時間間隔で自動保存するというelisp(auto-save-buffers.el)が紹介されていました.
 ただし,この方法をそのまま適用すると,例えば閲覧目的だけでファイルオープンした設定ファイルを気づかないうちに編集してしまうかもしれません(人によってはあまり気にならないかもしれませんが,個人的にはちょっと問題なので…)

 そこでファイルオープンする時はどんなファイルでも read-onlyにして,編集したいときに意図的に編集可能に変更(toggle-read-only)することで上記の問題を解決してみました.
 ついでに C-xC-sはもう使わない(はずな)ので,toggle-read-onlyに割り当てています.
(require 'auto-save-buffers)
(run-with-idle-timer 0.5 t 'auto-save-buffers)

;; 常に読み込み専用でファイルをオープン
(add-hook 'find-file-hooks
          (lambda() (unless buffer-read-only (toggle-read-only) )) )

;; C-xC-sで読み込み専用ON/OFF
(global-set-key "\C-x\C-s" 'toggle-read-only)
スポンサーサイト

テーマ : UNIX/Linux
ジャンル : コンピュータ

コメントの投稿

非公開コメント

リンク
最新コメント
カテゴリー
最近の記事
月別アーカイブ
ブログ内検索
最新トラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。