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

30.28 X リソース

本節では、Xリソース(またはお使いのオペレーティングシステムにおける同等の機能)を照会・利用するための関数や変数の一部について説明します。Xリソースの詳細については、The GNU Emacs ManualのX Resourcesを参照してください。

関数: x-get-resource attribute class &optional component subclass

関数 x-get-resource は、X Window のデフォルトデータベースからリソース値を取得します。

リソースは、キーとクラスの組み合わせによってインデックス付けされています。この関数は、‘instance.attribute’(ここでinstanceはEmacsが起動された際の名前)という形式のキーと、‘Emacs.class’をクラスとして検索します。

オプション引数 component と subclass は、それぞれキーとクラスに追加されます。両方を指定するか、あるいはどちらも指定しないかのいずれかとなります。これらを指定した場合、キーは ‘instance.component.attribute’ となり、クラスは ‘Emacs.class.subclass’ となります。

変数: x-resource-class

この変数は、x-get-resource が参照すべきアプリケーション名を指定します。デフォルト値は "Emacs" です。x-get-resource の呼び出しの前後でこの変数を別の文字列にバインドすることで、他のアプリケーション名に対する X リソースを確認できます。

変数: x-resource-name

この変数は、x-get-resource が参照すべきインスタンス名を指定します。デフォルト値は、Emacs の起動時に指定された名前、または ‘-name’ や ‘-rn’ スイッチで指定された値となります。

上記の例をいくつか挙げるため、次のような行があるとします。

xterm.vt100.background: yellow

Xリソースファイル(通常は ~/.Xdefaults または ~/.Xresources という名前)に記述します。次に:

(let ((x-resource-class "XTerm") (x-resource-name "xterm"))
  (x-get-resource "vt100.background" "VT100.Background"))
     ⇒ "yellow"
(let ((x-resource-class "XTerm") (x-resource-name "xterm"))
  (x-get-resource "background" "VT100" "vt100" "Background"))
     ⇒ "yellow"
変数: inhibit-x-resources

この変数が nil 以外の場合、Emacs は X リソースを参照せず、新しいフレームを作成する際に X リソースは一切影響しません。