認識方法の選択エントリは、ファイルマネージャなどの DeskSet アプリケーションでファイルの現在のクラス (選択されたファイル形式エントリ) を識別する方法を決定します。ファイルのクラスは、以下の項の定義に従って、「名前で (by Name)」または 「内容で (by Content)」で識別されます。
認識方法の選択エントリが 「名前で (by Name)」のときは、ファイルはパターンテキストフィールドのパターンによって識別されます。この場合、パターンはほとんどの場合アプリケーション名です。たとえば、図 16-9 は clock-prog バインダエントリにバインドされた時計ファイル形式エントリを示しています。時計と呼ばれる任意のファイルは、時計アイコンやベースウィンドウのスクローリングリストで表示されたカラーでファイルマネージャによって表示されます (アイコンとカラーは clock-prog アイコンプロパティによって定義されます)。
認識方法の選択エントリが「名前で (by Name)」であり、「パターン」テキストフィールドにアスタリスク (*) がある場合、パターン内のアスタリスクは「ここではすべてのファイル名とマッチする」ということを意味しています。たとえば、図 16-10 に示すようなファイル形式エントリ *.ps は .ps で終わるすべてのファイルとマッチします。これらのファイルは PostScript ファイルであり、バインダベースウィンドウのスクローリングリストに表示される PostScript ファイルアイコンとともに DeskSet 環境に表示されます。
パターンとファイル名のマッチング規則の例外は、バインダエントリの default-app、default-dir、default-doc です。ファイルマネージャでは、これらのエントリを使ってそのデフォルトアプリケーションファイル、ディレクトリ (フォルダ)、およびドキュメントのバインディングを決定します。これらのバインディングのファイル形式パターンは default|app、default|dir、default|doc です。ただし、実際には default|app、default|dir、または default|docというファイルはありません。これらデフォルトのファイルマネージャのバインディングを変更する方法の詳細については、「バインディングの変更」を参照してください。
識別方法の選択エントリが 「内容で (by Content)」のときは、ファイルはファイル名ではなくファイル内容を照合することによって識別されます。「内容で (by Content)」を選択すると、識別方法の設定の下の 4 つのフィールドが有効になります。これらのフィールドは、現在のファイル形式のファイルを定義するファイル内容を以下のように定義します。
「Tag オフセット (Tag Offset)」は、内容を照合するファイルの開始位置 (0 からカウント) を決定します。デフォルト値は 0 であり、「内容の照合をファイルの最初の文字から開始する」ということを意味します。バイトオフセットが 1 のときは、ファイルの 2 番目の文字から内容の照合を開始することになります。
「Tag 形式 (Tag Type)」は、ファイル内容で照合を行う値の形式、「バイト (Byte)」、「Short」、「Long」、または「ストリング (String)」を決定します。ほとんどのファイルは、「ストリング」データ型で構成される ASCII ファイル (つまり入力できる語と文字) です。「Byte」形式は 1 バイトの数値、「Short」は 2 バイトの数値、「Long」は 4 バイトの数値です。
「Tag 値 (Tag Value)」は、ファイル内容で検索する内容を決定します。この値は、 「Tag 形式 (Tag Type)」設定で定義した形式でなければなりません。
「Tag マスク (Tag Mask)」は、「Byte」、「Short」、または「Long」データ型のマスク値を定義するのに使うオプションフィールドです。マスク値が定義されると、論理 AND 操作が、バインドしようとするファイルの「Tag 形式 (Tag Type)」と「Tag マスク (Tag Mask)」に対して行われ、照合値 (照合される内容) を決定します。このフィールドは、主に DeskSet 環境に統合するアプリケーションを開発するプログラマのためのものです。
「Tag 形式 (Tag Type)」、「Tag マスク (Tag Mask)」、「Tag 値 (Tag Value)」フィールドに関する詳細については、magic のマニュアルページを参照してください。
図 16-11は、ファイルの先頭の文字列「%!」によって PostScript ファイルを識別できることを示しています (「Tag オフセット (Tag Offset)」=0、「Tag 形式 (Tag Type)」=「ストリング (String)」、「Tag 値 (Tag Value)」=%)。前述の節「名前による識別」で説明したように、PostScript ファイルは .ps で終了するファイルでも識別することができます。 「名前による識別」.
図 16-12は sun-raster ファイル形式エントリを示しています。このクラスのファイルは Long 値 0x59a66a95 から始まるすべてのファイルとして定義されます。