EmacsをMotifまたはLessTifウィジェットを用いてXツールキットサポート付きでコンパイルした場合、Xリソースを使用してメニューバー(メニューバーを参照)、ポップアップメニュー、およびダイアログボックス(ダイアログボックスの使用を参照)の外観をカスタマイズできます。ただし、リソースの構成はLucidウィジェットとは異なります。
メニューバーのリソース名は ‘pane.menubar’ クラスに属しており、以下の形式で指定する必要があります:
Emacs.pane.menubar.subwidget.resource: value
ポップアップメニューの場合、リソースは ‘pane.menubar’ ではなく ‘menu*’ クラスに配置されます。ダイアログボックスの場合は ‘dialog’ に配置されます。いずれの場合も、個々のメニュー文字列はサブウィジェットとなり、そのサブウィジェットの名前はメニュー項目の文字列と同じになります。例えば、メニューバーの ‘File’ メニューは、‘emacs.pane.menubar.File’ という名前のサブウィジェットです。
通常、メニューバー全体に同じリソースを指定します。そのためには、特定のサブウィジェット名の代わりに ‘*’ を使用します。例えば、サブメニューを含むすべてのメニューバー項目にフォント ‘8x16’ を指定するには、次のように記述します。
Emacs.pane.menubar.*.fontList: 8x16
サブメニュー内の各アイテムにも、Xリソース用の固有の名前があります。例えば、‘File’サブメニューには‘Save (current buffer)’という名前のアイテムがあります。サブメニューアイテムのリソース指定は、次のようになります。
Emacs.pane.menubar.popup_*.menu.item.resource: value
例えば、「Save (current buffer)」項目のフォントを指定する方法は以下の通りです。
Emacs.pane.menubar.popup_*.File.Save (current buffer).fontList: 8x16
‘Tools’配下の‘Spell Checking’配下の‘Complete Word’のように、第2レベルのサブメニューにある項目の場合、リソースはこのテンプレートに該当します:
Emacs.pane.menubar.popup_*.popup_*.menu.resource: value
例えば、
Emacs.pane.menubar.popup_*.popup_*.Spell Checking.Complete Word: value
(これは1行であるべきです。)
サブメニューの項目をメニューバー本体とは異なる見た目にしたい場合は、まずすべての項目に対してリソースを指定し、その後サブメニューのみの値を上書きする必要があります。以下に例を示します。
Emacs.pane.menubar.*.fontList: 9x18 Emacs.pane.menubar.popup_*.fontList: 8x16
LessTifのファイル選択ボックスにリソースを指定するには、次のように‘fsb*’を使用します。
Emacs.fsb*.fontList: 8x16
LessTifのメニューバーおよびポップアップメニューに関するリソースの一覧です:
armColor武装ボタンに表示する色。
fontList使用するフォント。
marginBottommarginHeightmarginLeftmarginRightmarginTopmarginWidth枠内で、アイテムの周囲に確保する余白の量。
borderWidthメニュー項目の周囲の枠線の幅(全辺)。
shadowThicknessボーダーシャドウの幅。
bottomShadowColor下部と右側のボーダーシャドウの色。
topShadowColor上部と左側のボーダーシャドウの色。