ヘルパー・アプリケーション・データベース・ファイル
ここでは PiHelperAppDB.txt ファイルの用途とフォーマットを説明します。
用途
PiHelperAppDB.txt ファイルは、ヘルパー・アプリケーションの説明を含むデータベースです。ヘルパー・アプリケーションは、Cosmo Create および Cosmo Worlds プラグイン・アーキテクチャを通して起動できるプログラムです。
フォーマット
ファイルのフォーマットは 1 行ずつ記述する単純な形式です。ファイルにはアプリケーションの説明ブロックが含まれ (含まれない場合もあります)、それぞれの先頭は "Begin" で始まり "End" で終わります。ブロック内の各行は、それぞれがアプリケーションの 1 つの属性を表します。各行はフィールドの ID と、コロンに続く属性の値で構成されます。
Begin
ID: com.sgi.cosmo.photoshop
UINAME: Photoshop
REPTYPE: PiUnixApp
FLAVOR: Editor
EXECUTABLE: photoshop
ARGS: -open %f
PIXMAP: photoshop.xpm
NATIVE: PhotoshopDocument
FILETYPES: PhotoshopDocument GIFImageFile TIFFImage SGIImage
End
フィールドの意味
-
ID: ヘルパー・アプリケーションに固有の文字列による ID を表します。
-
UINAME: ユーザ・インターフェイスに表示される、このアプリケーションの名前を表します。
-
REPTYPE: 実行時にこのアプリケーションを表すクラス名です。現在は "PiUnixApp" のみサポートされています。PiUnixApp は forks() で起動され、FAM (File Alteration Monitor) は編集中のファイルの変更を監視します。
-
FLAVOR: "Editor" を指定します。
-
EXECUTABLE: 実行されるプログラムです。絶対パスでも指定できます。相対パスの場合、ユーザのパスが検索されます。
-
ARGS: プログラムの起動時に渡される引数です。
-
PIXMAP: ヘルパー・アプリケーションのピクスマップを含む XPM ファイルの名前です。
-
NATIVE: アプリケーションが"通常使用する"ファイル・タイプ、つまり新規ファイルを作成するときに作成されるファイル・タイプの FTR 名です。このフィールドには 1 つの値だけを指定します。この値は FILETYPES フィールドに含まれます。
-
FILETYPES: アプリケーションが扱うファイル・タイプの FTR 名です。リストには NATIVE に指定した名前を含めます。注記: アプリケーションが扱うすべてのファイル・タイプを指定しないでください。データベースに処理させるタイプだけを指定します。
PiUnixApp による起動
PiUnixApp はアプリケーションを起動する際に、アプリケーションの EXECUTABLE および ARGS フィールドを使用します。
アプリケーションは PiEditSession によってディスク上のファイルの編集に使用されるので、引数をファイルの情報によって (mailcap ファイルと同様に) パラメータ化できます。基本入力は操作されるファイルです。異なるパラメータを利用して別部分の情報を提供できます。
ファイルを表すパラメータ
-
%D -- 編集するファイルのディレクトリです。
-
%f -- 編集するファイルの (ディレクトリを除いた) 名前です。
-
%F-- 編集するファイルの絶対パスです。
-
%copy -- 入力ファイルのコピーの (ディレクトリを除いた) ファイル名です。
-
%COPY -- 入力コピー・ファイルの絶対パスです。
プログラムによっては、入力と出力の両方のファイルが必要です。これらのプログラムでは %copy と %COPY を使用します。PiUnixApp にこれらのいずれかのパラメータが渡されると、入力ファイルを同じディレクトリの一時ファイルにコピーし、%copy と %COPY を適切に設定します。
ウィンドウ・マッピング・パラメータ
-
%wr -- ウィンドウの役割を正しく設定します。このパラメータは次のように置き換えられます。
-xrm *windowRole: PiUnixAppXXXXXXX
%wr は -xrm 引数がサポートされている場合にだけ使用してください。引数を XtInitialize に渡す場合、通常は引数がサポートされています。