next up previous contents
Next: 3.8 チュートリアルとヘルプ機能 Up: 3. Emacsの便利な機能 Previous: 3.6 編集モード



3.7 オートセーブ

ユーザの誤操作やシステムの障害などによって編集中のバッファが消えたり,Emacsがキー入力を受けつけなくなってしまうことがある.そのような場合に備えて,Emacsでは編集前や編集中のファイルを保存している.

編集前のファイル

編集したファイルを保存するとき,編集開始前のファイル内容はファイル名の後に~をつけて保存される.例えば,test.txtという名前のファイルをEmacsで編集してから保存すると,test.txtの他に編集前のファイルがtest.txt~という名前で保存される.

編集内容を取り消したい場合などは取り消し機能を利用する他に,~のついたファイルをバッファに読み込み,編集開始前の内容に戻してから編集作業をし, C-x C-wでファイル名を指定して保存すればよい.

~のついたファイルには`編集開始時点'での内容が保存される.保存する度に`前回セーブした時点'での内容が保存されているわけではないので 注意すること.

編集中のファイル

Emacsは,定期的にバックアップとして編集中のファイルを保存している.このときのファイル名は,ファイル名の前後に#をつけた名前が使われる.このファイルは,C-x C-sなどによって,バッファの内容がファイルにセーブされた時点で削除される.


リカバーファイルからの復帰 -- (M-x recover-file)

何らかの原因により編集中のバッファが消えてしまったときは,ファイル名の前後に#がついたファイルから,編集のある程度の段階までを復帰できる.例えば,test.texというファイルを編集中にバッファが消えてしまったときは,#test.tex#というファイルから編集途中の状態に復帰できる.M-x recover-fileと入力すると,エコーラインに次のようなメッセージが表示される.

Recover file: ~/_
ここで復帰させたいファイル名を入力する.この例ではtest.tex と入力すると,#test.tex#をもとにtest.texを復帰させてよいか確認してくる(図3.2).ここでyesと答えれば,ファイルをバッファ上に復帰できる.この際, #test.tex#の名前をmvコマンドtest.texに変更してもファイルは復帰しないので注意すること.


図 3.2:ファイルの復帰
図 3.2:ファイルの復帰


オートセーブは便利であるが,作業が無事に終了すれば最後に~#のついたファイルは不要となるので,適宜削除すること.CNSでは,#ではじまるファイルは3日間で自動的に消去される



next up previous contents
Next: 3.8 チュートリアルとヘルプ機能 Up: 3. Emacsの便利な機能 Previous: 3.6 編集モード