Next: , Previous: Getting Out, Up: Getting Out


37.2.1 Emacsの終了

Emacsを終了するとは、Emacsプロセスの実行を終らせることを意味します。 親プロセスが普通は制御を取り戻します。 Emacsを終了するための下位の基本関数はkill-emacsです。

— Function: kill-emacs &optional exit-data

この関数は、Emacsプロセスを終了しEmacsを終える。

exit-dataが整数であると、Emacsプロセスの終了状態として使われる。 (これは主にバッチ処理で有用である。 Batch Modeを参照。)

exit-dataが文字列であると、 その内容を端末入力バッファへ詰め込み、 シェル(やつぎに入力を読むプログラム)がそれらを読み取れるようにする。

保存済みのファイルを除くEmacsプロセス内のすべての情報は、 Emacsを終了すると失われます。 Emacsを不注意に終了すると多くの作業を失うことになるので、 保存する必要があるバッファがあったり動作中のサブプロセスがあると、 Emacsは確認を求めます。 これは関数save-buffers-kill-emacsが行います。

— Variable: kill-emacs-query-functions

標準的な問い合わせをしたあとで、 save-buffers-kill-emacsは、 リストkill-emacs-query-functions内の関数を 現れる順に引数なしで呼び出す。 これらの関数では、ユーザーにさらなる確認を求めることができる。 これらのどれかがnilを返すと、Emacsは終了しない。

— Variable: kill-emacs-hook

この変数はノーマルフックである。 save-buffers-kill-emacsがファイルをすべて保存し確認し終えると、 このフックの関数群を実行する。