以下の関数は、それぞれ変数とフェイスに関するユーザーのカスタマイズ設定の適用を担っています。ユーザーがカスタマイズインターフェースで
‘Save for future sessions’
を呼び出すと、カスタムファイルに custom-set-variables および/または
custom-set-faces 形式が書き込まれ、次回の Emacs
起動時に評価されることで設定が反映されます。
この関数は、args で指定された変数のカスタマイズを適用します。args の各引数は、以下の形式である必要があります。
(var expression [now [request [comment]]])
varは変数名(シンボル)であり、expressionは目的のカスタマイズ値を算出する式です。
この custom-set-variables の呼び出しより前に、var 用の defcustom
フォームが評価されていた場合、expression
が直ちに評価され、変数の値にその結果が設定されます。そうでない場合は、expression が変数の
saved-value プロパティに格納され、該当する defcustom が呼び出された際(通常はその変数を定義するライブラリが Emacs
にロードされた際)に評価されます。
now、request、およびcommentのエントリは内部利用専用であり、省略可能です。nowは、nilでない場合、変数のdefcustom形式が評価されていなくても、直ちに変数の値を設定することを意味します。requestは、即座にロードされる機能のリストです(Featuresを参照)。commentは、カスタマイズ内容を記述する文字列です。
この関数は、args で指定された顔のカスタマイズを適用します。args の各引数は、以下の形式である必要があります。
(face spec [now [comment]])
face はフェイス名(シンボル)であり、spec はそのフェイスに対するカスタマイズされたフェイス仕様です(フェイスの定義を参照)。
now および comment
のエントリは内部利用専用であり、省略可能です。now が nil でない場合は、defface
形式が評価されていなくても、直ちにフェイス仕様をインストールすることを意味します。comment
はカスタマイズ内容を記述する文字列です。