Next: , Previous: , Up: Customization Types   [Contents][Index]


14.4.4 Type Keywords

カスタマイズ型内の型名シンボルの後にキーワード/引数ペアーを指定できます。以下は使用できるキーワードと、それらの意味です:

:value default

デフォルト値を提供する。

その候補にたいしてnilが有効な値でない場合は、:valueに有効なデフォルトを指定することが必須になります。

choiceの内部の候補として出現する型にたいしてこれを使用する場合、ユーザーがカスタマイズバッファー内のメニューによりこの候補を選択したときに、使用するデフォルト値を最初に指定します。

もちろんオプションの実際の値がこの候補に適合する場合は、defaultではなく実際の値が表示されます。

:format format-string

この文字列は、その型に対応する値を説明するために、バッファーに挿入されます。format-string内では、以下の‘%’エスケープが利用できます:

%[button%]

ボタンとしてマークされたテキストbuttonを表示する。:action属性は、ユーザーがそれを呼び出したときに、そのボタンが何を行うか指定する。この属性の値は2つの引数 — ボタンが表示されるのでウィジェットとイベント — をとる関数。

異なるアクションを行う2つの異なるボタンを指定する方法はない。

%{sample%}

:sample-faceにより指定された、スペシャルフェイス内のsampleを表示する。

%v

そのアイテムの値を代替えする。その値がどのように表示されるかはアイテムの種類と、(カスタマイズ型にたいしては)カスタマイズ型にに依存する。

%d

そのアイテムのドキュメント文字列を代替えする。

%h

%d’と同様ふぁが、ドキュメント文字列が複数行の場合に、ドキュメント文字列全体か最初の行だけかを制御するボタンを追加する。

%t

その位置でタグに置き換える。:tagキーワードでタグを指定する。

%%

リテラル‘%’を表示する。

:action action

ユーザーがボタンをクリックした場合はactionを実行します。

:button-face face

%[…%]’で表示されたボタンテキストにたいして、フェイスface(フェイス名、またはフェイス名のリスト)を使用します。

:button-prefix prefix
:button-suffix suffix

これらはボタンの前、または後に表示されるテキストを指定します。以下が指定できます:

nil

テキストは挿入されない。

文字列

その文字列がリテラルに挿入される。

シンボル

そのシンボルの値が使用される。

:tag tag

この型に対応する値(または値の一部)にたいするタグとしてtag(文字列)を使用する。

:doc doc

この型に対応する値(または値の一部)にたいするドキュメント文字列としてdocを使用する。これが機能するためには、:formatにたいする値を指定し、その値にたいして‘%d’か‘%h’を使用しなければならない。

ある型にたいしてドキュメント文字列を指定するのは、:choice内の候補の型や、他の複合型の一部について情報を提供するのが通常の理由である。

:help-echo motion-doc

widget-forwardwidget-backwardでこのアイテムに移動したときに、エコーエリアに文字列motion-docを表示する。さらに、マウスのhelp-echo文字列としてmotion-docが使用され、これは実際にはヘルプ文字列を生成するために評価される関数またはフォームかもしれない。もし関数の場合、これは1つの引数(そのウィジェット)で呼び出される。

:match function

値がその型にマッチするか判断する方法を指定する。対応する値functionは、2つの引数(ウィジェットと値)をとる関数で、値が適切なら非nilをリターンすること。

:validate function

入力にたいして検証を行う関数を指定する。functionは引数としてウィジェットをとり、そのウィジェットのカレント値がウィジェットにたいして有効ならnilをリターンすること。それ以外は無効なデータを含むウィジェットをリターンして、そのウィジェットの:errorプロパティに、そのエラーを説明する文字列をセットすること。