本節の関数は、特定のディスプレイの基本機能を記述したものです。Lispプログラムはこれらを利用して、ディスプレイの機能に合わせて動作を調整できます。例えば、通常はポップアップメニューを使用するプログラムでも、ポップアップメニューがサポートされていない場合にはミニバッファを利用できます。
これらの関数におけるオプション引数 display
は、どのディスプレイについて問い合わせるかを指定します。指定できるのは、ディスプレイ名、フレーム(そのフレームが配置されているディスプレイを指定)、または
nil(選択中のフレームのディスプレイを指します。入力フォーカスを参照してください)です。
ディスプレイに関する情報を取得するためのその他の機能については、色名およびテキストターミナルの色を参照してください。
この関数は、display でポップアップメニューがサポートされている場合は t を、そうでない場合は nil
を返します。ポップアップメニューのサポートには、マウスが利用可能である必要があります。これは、Emacs
ディスプレイの任意の箇所をマウスでクリックすることでメニューがポップアップ表示されるためです。
この関数は、display
が複数のフレームと複数の異なるフォントを同時に表示可能なグラフィックディスプレイである場合に t
を返します。これは、X などのウィンドウシステムを使用するディスプレイでは真となり、テキスト端末では偽となります。
この関数は、display でマウスが利用可能な場合は t を、そうでない場合は nil を返します。
この関数は、画面がカラー画面の場合に t を返します。
この関数は、画面にグレーの濃淡を表示できる場合に t
を返します。(すべてのカラーディスプレイで可能です。)
この関数は、attributes 内のすべての面属性がサポートされている場合、non-nil を返します(面属性を参照)。
「サポートされている」の定義はある程度ヒューリスティックですが、基本的には、attributes のすべての属性を含むフェイスをディスプレイ用のデフォルトフェイスとマージした際に、~な形で表現できることを意味します。
点(2)は、太字を表示できるあらゆるディスプレイであれば:weight
black属性が満たされ、何らかの黄色系の色を表示できる限り:foreground
"yellow"も同様に満たされるが、:slant
italicについては、ttyディスプレイコードが斜体の代わりに淡い色の面を自動的に置換するため、満たされないことを意味している。
この関数は、display が選択に対応している場合に t を返します。ウィンドウ表示では通常選択に対応していますが、その他のケースでも対応している場合があります。
この関数は、display が画像を表示できる場合に t
を返します。ウィンドウ形式のディスプレイは原則として画像を扱うはずですが、一部のシステムではそのサポートが欠けています。画像をサポートしていないディスプレイでは、Emacs
はツールバーを表示できません。
この関数は、ディスプレイに関連付けられた画面数を返します。
この関数は、画面の高さをピクセル単位で返します。キャラクタ端末では、高さを文字数で返します。
グラフィカル端末の場合、マルチモニター環境では、これが display に関連付けられたすべての物理モニターのピクセル高さを指す点にご注意ください。複数の端末を参照してください。
この関数は、画面の幅をピクセル単位で返します。キャラクタ端末では、幅を文字数で返します。
グラフィカル端末の場合、マルチモニター環境では、これが display に関連付けられたすべての物理モニターのピクセル幅を指す点にご注意ください。複数の端末を参照してください。
この関数は、画面の高さをミリメートル単位で返します。Emacsがその情報を取得できない場合は nil
を返します。
グラフィカル端末の場合、マルチモニター環境では、これが display に関連付けられたすべての物理モニターの高さを指す点にご注意ください。複数の端末を参照してください。
この関数は、画面の幅をミリメートル単位で返します。Emacsがその情報を取得できない場合は nil
を返します。
グラフィカル端末の場合、マルチモニター環境では、これが display に関連付けられたすべての物理モニターの幅を指す点にご注意ください。複数の端末を参照してください。
この変数により、システムが誤った値を返した場合に、display-mm-height および
display-mm-width が返すグラフィカル表示の寸法をユーザーが指定できます。
この関数は、ディスプレイのバッキングストア機能を返します。バッキングストアとは、露出していないウィンドウ(およびウィンドウの一部)のピクセルを記録しておくことで、露出した際に極めて高速に表示できるようにすることを指します。
値にはシンボル always、when-mapped、または not-useful
が指定できます。また、質問が特定の種類の表示に適用されない場合、関数は nil
を返すこともあります。
この関数は、ディスプレイが SaveUnder 機能をサポートしている場合に non-nil
を返します。この機能は、ポップアップウィンドウが遮ったピクセルを保存し、素早く表示できるようにするために使用されます。
この関数は、ディスプレイがサポートするプレーン数を返します。通常、これはピクセルあたりのビット数となります。ttyディスプレイの場合は、サポートされる色数の2を底とする対数となります。
この関数は、画面のビジュアルクラスを返します。値は、static-gray(限定的で変更不可能な数のグレー)、gray-scale(グレーの全範囲)、static-color(限定的で変更不可能な数の色)、pseudo-color(限定的な数の色)、true-color(色の全範囲)、およびdirect-color(色の全範囲)のいずれかのシンボルとなります。
この関数は、画面がサポートするカラーセルの数を返します。
これらの関数は、Emacsが指定されたdisplayを表示する際に使用されているウィンドウシステムに関する追加情報を取得します。(歴史的な経緯により、名称はx-から始まります。)
この関数は、GNUおよびUnixシステム上のXサーバーなど、display上で動作しているGUIウィンドウシステムのバージョン番号の一覧を返します。戻り値は3つの整数からなるリストで、プロトコルのメジャーバージョン番号とマイナーバージョン番号、およびウィンドウシステムソフトウェア自体のディストリビュータ固有のリリース番号です。GNUおよびUnixシステムでは、これらは通常、XプロトコルのバージョンとXサーバーソフトウェアのディストリビュータ固有のリリース番号となります。MS-Windowsでは、これはWindows OSのバージョンとなります。
この関数は、ウィンドウシステムソフトウェアを提供したベンダーを(文字列として)返します。GNUおよびUnixシステムでは、これは実質的にXサーバーの配布元を指します。MS-Windowsでは、Windows OS(Microsoft)のベンダーID文字列となります。
Xの開発者がソフトウェア販売業者を「ベンダー」と呼んだことは、いかなるシステムも非商用で開発・配布することはあり得ないという、彼らの誤った思い込みを露呈していた。