Next: , Up: Emacs初期化ファイル   [Contents][Index]


49.4.1 initファイルの構文

initファイルには、1つ以上のLisp式が含まれています。式のそれぞれは引数をともなう関数名で、それらはすべてカッコで括られています。たとえば(setq fill-column 60)は、変数fill-column(テキストのフィルを参照してください)を60にセットするために、関数setqを呼び出します。

setqで任意のLisp変数をセットできますが、initファイルの特定の変数にたいして、setqは多分あなたの望むとおりには動作しないでしょう。いくつかの変数はsetqでセットしたとき、自動的にバッファーローカルになります。あなたが望むのは、initファイルでデフォルト値をセットすることなので、setq-defaultを使用します(以下のセクションには両方の方法の例あり)。

マイナーモードのカスタマイズ可能な変数のいくつかはCustomizeでセットするとモードを有効にするために特別なことを行ないますが、通常のsetqではそれを行ないません。initファイルでモードを有効にするには、マイナーモードコマンドを呼び出します。最後に複雑な方法で初期化される少数のカスタマイズ可能なユーザーオプションはCustomizeインターフェイス(カスタマイズを参照)、あるいはcustomize-set-variable (変数の確認とセットを参照)を使用してセットする必要があります。

setqの2番目の引数は、変数にたいする新しい値の式です。これには、定数、変数、関数呼び出し式を指定できます。initファイルでは、定数が使用される場合がほとんどです。これは以下のとおりです:

数字:

数字は10進で記述され、オプションで最初にマイナス記号がある場合があります。

文字列:

Lispの文字列構文は、少数の例外を除き、Cの文字列構文と同じです。文字列定数の開始と終了にはダブルクォートを使用します。

文字列には改行を含む、特別なリテラル文字を含めることができます。しかし、それらにたいして、バックスラッシュシーケンスを使う方が明確になる場合が多くあります。改行は‘\n’、バックスペースは‘\b’、キャリッジリターンは‘\r’、タブは‘\t’、フォームフィード(control-L)は‘\f’、エスケープは‘\e’、バックスラッシュは‘\\’、ダブルクォートは‘\"’、そして8進コードがoooの文字は‘\ooo’です。バックスラッシュとダブルクォートだけは、バックスラッシュシーケンスが必須な文字です。

\C-’はコントロール文字のプレフィクスとして使用でき、‘\C-s’はASCIIのcontrol-Sです。‘\M-’はメタ文字のプレフィクスとして使用でき、‘\M-a’はMeta-Aで、‘\M-\C-a’はCtrl-Meta-Aです。

initファイルに非ASCII文字を含めるための情報は、initファイル内の非ASCII文字を参照してください。

文字:

Lispの文字定数の構文は、たとえば?x?\n?\"?\)のように、文字‘?’と、その後ろに文字または‘\’で始まるエスケープシーケンスからなります。Lispでは、文字列と文字は置き換え可能ではないことに注意してください。あるコンテキストでは一方が、他のコンテキストでは他方が要求されます。

ASCII文字を送るキーにコマンドをバインドする情報については、initファイル内の非ASCII文字を参照してください。

True:

tは“true(真)”という意味です。

False:

nilは“false(偽)”という意味です。

その他のLispオブジェクト:

シングルクォートに続けてLispオブジェクトを記述します。

Emacs Lisp構文についての詳細な情報はIntroduction in The Emacs Lisp Reference Manualを参照してください。