Next: , Previous: , Up: ディスプレーの制御   [Contents][Index]


14.8 テキストのフェイス

Emacsはフェイス(faces)と呼ばれる仕組みを通じて、テキストをいくつかの異なるスタイルで表示できます。フェイスにはfont(フォント)、height(高さ)、weight(太さ)、slant(傾き)、foreground(前景)およびbackground(背景)、underline(アンダーライン)、overline(オーバーライン)などの様々なフェイス属性(face attributes)を指定できます。ほとんどのメジャーモードはFont Lockモードを通じて、テキストに自動的にフェイスを割り当てます。これらのフェイスを割り当てる方法については、Font Lockモードを参照してください。

現在定義されているフェイスと、それがどのような外観なのかを見るには、M-x list-faces-displayとタイプします。プレフィクス引数を指定すると、このコマンドは正規表現の入力を求め、その正規表現にマッチするフェイスだけを表示します(正規表現の構文を参照してください)。

あるフェイスが、フレームが異なると違って見えるのことがあり得ます。たとえばいくつかのテキスト端末ではすべてのフェース属性、特に特にfont、height、widthはサポートされておらず、指定できるcolorも限られているものがあります。加えて、ほとんどのEmacsフェースは視認性をよくするために、フレームのバックグラウンドが明るい(light)か暗い(dark)かで属性が異なります。デフォルトでは、Emacsはフレームの現在のバックグラウンドカラーに基づいて、表示するフェイスの属性を自動的に選択します。しかし変数frame-background-modeに非nil値を与えると、これをオーバーライドできます。値darkではすべてのフレームの背景色が暗い色であるかのように処理し、値lightではすべてのフレームの背景色が明るい色であるかのように処理させることができます。

フェイスの属性を変えてフェイスをカスタマイズして、将来のEmacsセッション用にカスタマイズ結果を保存することができます。詳細については、フェイスのカスタマイズを参照してください。

defaultフェイスはテキストを表示するデフォルトのフェイスで、そのすべての属性は指定されています。バックグラウンドカラーは、フレームのバックグラウンドカラーとしても使用されます。フェイスのカラーを参照してください。

他の特別なフェイスとしては、cursorフェイスがあります。グラフィカルなディスプレーでは、このフェイスのバックグラウンドカラーは、テキストカーソルを描画するのに使用されます。このフェイスで効果があるのはこの属性だけです。カーソルの下のテキストのフォアグラウンドカラーには、そのテキストのバックグラウンドカラーが使われます。テキスト端末でのテキストカーソルの外観は、cursorフェイスではなく端末により決定されます。

特定のフェイスの属性を指定するのにXのリソースを使うこともできます。Xリソースを参照してください。

Emacsは可変幅フォント(variable-width fonts)を表示できますが、いくつかのコマンド、特にインデントを行うコマンドは、可変幅の文字幅の表示をうまく処理できません。そのため、ほとんどのフェイスにたいして可変幅フォントを使わないこと、特にそれがFont Lockモードに割り当てられている場合は、使わないことを推奨します。