Next: , Previous: , Up: Starting Up   [Contents][Index]


40.1.2 initファイル

Emacsの開始時は通常はユーザーのinitファイル(init file)のロードを試みます。これはユーザーのホームディレクトリー内にある.emacs.emacs.elという名前のファイル、あるいはホームディレクトリーの.emacs.dという名前のサブディレクトリー内にあるinit.elという名前のファイルのいずれかのファイルです。

コマンドラインスイッチ‘-q’、‘-Q’、‘-u’はinitファイルを探すべきか、およびどこで探すべきかを制御します。‘-u user’はそのユーザーではなくuserのinitファイルのロードを指示しますが、‘-q’ (‘-Q’のほうが強力)はinitファイルをロードしないことを指示します。Entering Emacs in The GNU Emacs Manualを参照してください。いずれのオプションも指定されていなければユーザーのホームディレクリーからinitファイルを探すために、Emacsは環境変数LOGNAMEUSER (ほとんどのシステム)、またはUSERNAME (MSシステム)を使用します。この方法によりたとえsuしていたとしても、依然としてEmacsはそのユーザー自身のinitファイルをロードできるのです。これらの環境変数が存在していなくてもEmacsはユーザーIDからユーザーのホームディレクトリーを探します。

インストールしたEmacsによってはdefault.elというLispライブラリーのデフォルトinitファイル(default init file)が存在するかもしれません。Emacsはライブラリーの標準検索パスからこのファイルを探します(How Programs Do Loadingを参照)。このファイルはEmacsディストリビューション由来ではありません。このファイルはローカルなカスタマイズを意図しています。デフォルトinitファイルが存在する場合には常にこのファイルがEmacs開始時にロードされます。しかしユーザー自身のinitファイルが存在する場合にはそれが最初にロードされます。それによりinhibit-default-initが非nil値にセットされた場合には、Emacsは後続するdefault.elファイルのロードを行いません。batchモードまたは‘-q’ (または‘-Q’)を指定した場合には、Emacsは個人的なinitファイルトでデフォルトinitファイのいずれもロードしません。

サイトのカスタマイズのためのファイルはsite-start.elです。Emacsはユーザーのinitファイルのにこれをロードします。オプション‘--no-site-file’により、このファイルのロードを抑制できます。

User Option: site-run-file

この変数はユーザーのinitファイルの前にロードするサイト用のカスタマイズファイルを指定する。通常の値は"site-start"。実際に効果があるようにこれを変更するには、Emacsのdump前に変更するのが唯一の方法である。

一般的に必要とされる.emacsファイルのカスタマイズ方法についてはInit File Examples in The GNU Emacs Manualを参照のこと。

User Option: inhibit-default-init

この変数が非nilならEmacsがデフォルトの初期化ライブラリーファイルをロードするのを防ぐ。デフォルト値はnil

Variable: before-init-hook

このノーマルフックはすべてのinitファイル(site-start.el、ユーザーのinitファイル、およびdefault.el)のロード直前に一度実行される(実際に効果があるようにこれを変更するにはEmacsのdump前に変更するのが唯一の方法)。

Variable: after-init-hook

このノーマルフックはすべてのinitファイル(site-start.el、ユーザーのinitファイル、およびdefault.el)のロード直後、端末固有ライブラリーのロードとコマンドラインアクション引数の処理の前に一度実行される。

Variable: emacs-startup-hook

このノーマルフックはコマンドライン引数の処理直後に一度実行される。batchモードではEmacsはこのフックを実行しない。

Variable: window-setup-hook

このノーマルフックはemacs-startup-hookと非常に類似している。このフックは若干遅れてフレームパラメーターのセット後に実行されるのが唯一の違い。window-setup-hookを参照のこと。

Variable: user-init-file

この変数はユーザーのinitファイルの絶対ファイル名を保持する。実際にロードされたinitファイルが.emacs.elcのようにコンパイル済なら、値はそれに対応するソースファイルを参照する。

Variable: user-emacs-directory

この変数は.emacs.dディレクトリーの名前を保持する。これはMS-DOS以外のプラットフォームでは~/.emacs.d