Lispマクロ(Lisp
macro)はLisp言語を拡張するユーザー定義の構成です。これはオブジェクトとしてではなく関数のように表現されますが、引数の渡し方の意味が異なります。Lispマクロの形式はリストです。これは最初の要素がmacro
で、CDRがLisp関数オブジェクト(lambda
シンボルを含む)であるようなリストです。
Lispマクロオブジェクトは通常、ビルトインのdefmacro
関数で定義されますが、macro
で始まる任意のリストもEmacsにとってはマクロです。マクロを記述する方法の説明はマクロを参照してください。
警告: Lispマクロとキーボードマクロ(キーボードマクロを参照)は完全に別の物である。修飾なしで“マクロ”という単語を使用したときは、キーボードマクロではなくLispマクロのことを指す。