Next: , Previous: , Up: Fringes   [Contents][Index]


37.13.4 フリンジのビットマップ

フリンジビットマップ(fringe bitmaps)は行の切り詰めや継続、バッファー境界、オーバーレイ矢印等にたいする論理的フリンジインジケーターを表現する実際のビットマップです。それぞれのビットマップはシンボルにより表されます。 これらのシンボルはフリンジインジケーターからビットマップへのマッピングを行う変数fringe-indicator-alist (Fringe Indicatorsを参照)、およびフリンジカーソルからビットマップへのマッピングを行う変数fringe-cursor-alist (Fringe Cursorsを参照)から参照されます。

Lispプログラムも行内に出現する文字の1つにdisplayプロパティを使用することにより、左フリンジまたは右フリンジ内にビットマップを直接表示することができます。そのような表示指定は以下の形式をもちます

(fringe bitmap [face])

fringeは、left-fringeright-fringeいずれかのシンボルです。bitmapは表示するビットマップを識別するシンボルです。オプションのfaceは、そのフォアグラウンドカラーをビットマップの表示に使用するフェイスの名前です。このフェイスは自動的にfringeフェイスにマージされます。

以下はEmacsが定義する標準的なフリンジビットマップと、(fringe-indicator-alistfringe-cursor-alistを通じて)Emacs内で現在それらが使用される方法のリストです。

left-arrowright-arrow

切り詰められた行を示すために使用される。

left-curly-arrowright-curly-arrow

継続された行を示すために使用される。

right-triangleleft-triangle

前者はオーバーレイ矢印により使用され、後者は使用されない。

up-arrowdown-arrowtop-left-angle top-right-angle
bottom-left-anglebottom-right-angle
top-right-angletop-left-angle
left-bracketright-brackettop-right-angletop-left-angle

バッファー境界を示すために使用される。

filled-rectanglehollow-rectangle
filled-squarehollow-square
vertical-barhorizontal-bar

フリンジカーソルの異なるタイプにたいして使用される。

empty-lineexclamation-markquestion-markexclamation-mark

Emacsの中核機能では使用されない。

次のサブセクションではフリンジビットマップを独自に定義する方法を説明します。

Function: fringe-bitmaps-at-pos &optional pos window

この関数はウィンドウwindow内の位置posを含むディスプレイ行のフリンジビットマップをリターンする。リターン値は(left right ov)という形式をもつ。ここでleftは左フリンジ内のフリンジビットマップにたいするシンボル(ビットマップなしならnil)、rightは同様に右フリンジにたいして、ovが非nilなら左フリンジにオーバーレイ矢印が存在することを意味する。

window内でposが可視でなければ値はnilwindownilなら選択されたウィンドウを意味する。posnilならwindow内のポイントの値を意味する。