GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/emacs/Init-Syntax.html ・ emacs-doc.conao3.com

51.4.1 初期化ファイルの構文

initファイルには、1つ以上のLisp式が含まれています。これらの式はそれぞれ、関数名に続いて引数が記述され、全体が括弧で囲まれています。例えば、(setq fill-column 60)は関数setqを呼び出して、変数fill-column(テキストの入力を参照)を60に設定します。

任意のLisp変数はsetqで設定できますが、特定の変数については、初期化ファイル内でsetqを使ってもおそらく意図した動作にはなりません。一部の変数はsetqで設定すると自動的にバッファローカルになります。初期化ファイルで行いたいのは、setq-defaultを用いてデフォルト値を設定することです。(次のセクションに、これら両方の手法の例を示します。)

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

setq の第2引数は、変数の新しい値を表す式です。これは定数、変数、または関数呼び出し式のいずれかになります。初期化ファイルでは、ほとんどの場合、定数が使用されます。定数には以下のようなものがあります:

数字:

数値は10進数で表記され、先頭に任意でマイナス記号を付けることができます。

文字列:

Lispの文字列構文はCの文字列構文と同様ですが、いくつかの追加機能があります。文字列定数の開始と終了にはダブルクォート文字を使用してください。

文字列内では、改行や特殊文字をリテラルとして記述できます。しかし、バックスラッシュシーケンスを使用する方が簡潔な場合が多いです。具体的には、改行に ‘\n’、バックスペースに ‘\b’、キャリッジリターンに ‘\r’、タブに ‘\t’、フォームフィード(control-L)に ‘\f’、エスケープに ‘\e’、バックスラッシュに ‘\\’、ダブルクォートに ‘\"’、あるいは8進数コードが ooo である文字に ‘\ooo’ を使用します。バックスラッシュシーケンスが必須となるのは、バックスラッシュとダブルクォートのみです。

‘\C-’は、ASCIIのcontrol-Sを表す‘\C-s’のように、制御文字の接頭辞として使用でき、‘\M-’は、Meta-Aを表す‘\M-a’やCtrl-Meta-Aを表す‘\M-\C-a’のように、Meta文字の接頭辞として使用できます。

initファイルに非ASCII文字を含める方法については、Initファイルにおける非ASCII文字を参照してください。

文字:

Lispの文字定数の構文は、‘?’ に続き、文字または ‘\’ で始まるエスケープシーケンスが配置される形式となっています。例:?x, ?\n, ?\", ?\)。なお、Lispでは文字列と文字は相互に置き換え可能ではなく、文脈によって一方が必要とされる場合と他方が必要とされる場合があります。

非ASCII文字を送信するキーにコマンドをバインドする方法については、Initファイルにおける非ASCII文字を参照してください。

真:

tは「true」を表します。

誤り:

nilは「false」を表します。

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

シングルクォート (') を書き、続けて目的の Lisp オブジェクトを記述してください。

Emacs Lispの構文に関する詳細については、The Emacs Lisp Reference ManualのIntroductionを参照してください。