Next: , Previous: Starting Up, Up: Starting Up


37.1.1 概要:始動時の動作手順

Emacsが始動したときに行う(startup.elでの) 処理の順序はつぎのとおりです。

  1. load-pathにある各ディレクトリファイルにおいて subdirs.elという名前のファイルを実行することで load-pathにサブディレクトリを追加する。
  2. LANGなどの環境変数で要求されていれば、 言語環境と端末のコーディングシステムを設定する。
  3. ウィンドウシステムを使用している場合には、 そのウィンドウシステム向けの初期化ライブラリをロードする。 そのライブラリ名はterm/windowsystem-win.elである。
  4. 初期化オプションを処理する。 (初期化オプションの一部は、これより初期の段階で扱われる。)
  5. 必要ならば、ウィンドウフレームとフェイスを初期化する。
  6. ノーマルフックbefore-init-hookを実行する。
  7. オプション‘-no-site-file’が指定されていなければ、 ライブラリsite-startをロードする。 このライブラリの名前は普通はsite-start.elである。
  8. コマンド行で‘-q’や‘-batch’が指定されていなければ、 ファイル~/.emacsをロードする。 オプション‘-u’で、~のかわりに用いるホームディレクトリを持つ 他のユーザー名を指定できる。
  9. inhibit-default-initnil以外でなければ、 ライブラリdefaultをロードする。 (コマンド行で‘-q’を指定したり、 ‘-batch’モードでは、これを行わない。) ライブラリのファイル名は普通はdefault.elである。
  10. ノーマルフックafter-init-hookを実行する。
  11. バッファ‘*scratch*’がカレントバッファであり 基本(fundamental)モードであるならば、 initial-major-modeに従ってメジャーモードを設定する。
  12. バッチモードやウィンドウシステムを用いていなければ、 あれば端末固有のLispファイルが存在するならロードする。
  13. inhibit-startup-echo-area-messageで抑制していなければ、 初期メッセージをエコー領域に表示する。
  14. コマンド行の引数を処理する。
  15. term-setup-hookを実行する。
  16. 初期化ファイルの指定に従って 選択されているフレームのパラメータを修正する frame-notice-user-settingsを呼び出す。
  17. window-setup-hookを実行する。 see Window Systems
  18. 未処理のコマンド行引数(上の数手順)がなく、 inhibit-startup-messageの値がnilであり、 バッファが空であれば、 コピーレフト/無保証/基本的な利用情報を表示する。
— User Option: inhibit-startup-message

この変数は、(無保証などの)初期の始動メッセージを禁止する。 これがnil以外であるとメッセージを表示しない。

始動メッセージの内容に十分慣れたら、 読者個人の初期化ファイルで設定できるようにこの変数がある。 新規ユーザーが受け取るはずである情報を隠してしまうため、 新規ユーザーの初期化ファイルや複数のユーザーに影響するような方法で この変数に設定しないこと。

— User Option: inhibit-startup-echo-area-message

この変数は、エコー領域に表示する始動メッセージを制御する。 個人のファイル.emacsにつぎのフォームを追加することで エコー領域の始動メッセージを抑制できる。

          (setq inhibit-startup-echo-area-message
                "your-login-name")

Emacsは、読者のファイル.emacsで上に示した式を明示的に検査する。 読者のログイン名はLisp文字列定数として式に現れる必要がある。 inhibit-startup-echo-area-messageに同じ値を 設定する別の方法では、始動メッセージを禁止できない。

このように、望むならば自身のためにメッセージを簡単に禁止できるが、 読者の.emacsをむやみにコピーしても、 他人に対してはメッセージを禁止できない。