resource - Macintoshリソースを操作します。
resource option ?arg arg ...?
resourceコマンドはMacintoshリソースを取り扱うためのいくつかの一般的な操作を提供します。このコマンドはMacintoshプラットフォームでのみサポートされます。各Macintoshファイルは2つのforks
から構成されています。 dataフォークとresourceフォーク。
データフォークを操作するためには、普通open、puts、close等のコマンドを用います。しかしリソースフォークと相互に作用し合うには、当コマンドを使う必要があります。optionはどのようなリソースコマンドを使うべきかを示します。
optionは、区別できるなら全ての省略形が認められます。認められているオプションは下記の通りです。
- resource close rsrcRef
- resource delete ?options? resourceType
- -id resourceId
- -name resourceName
- -file resourceRef
- resource files ?resourceRef?
- resource list resourceType ?resourceRef?
- resource open fileName ?access?
- resource read resourceType resourceId ?resourceRef?
- resource types ?resourceRef?
- resource write ?options? resourceType data
- -id resourceId
- -name resourceName
- -file resourceRef
- -force
- resource close rsrcRef
- 与えられたリソース参照(resource openで取得された)
を閉じます。このリソースファイルからのリソースは使えなくなります。
- resource delete ?options? resourceType、
- このコマンドはoptions とタイプresourceType (リソースタイプ参照)によって指定されたリソースを削除します。
下記オプションは削除されるリソースを指定するいくつかの方法を定義します。
- -id resourceId
- -idオプションが与えられると、IDresourceId (リソースID参照)
は削除されるリソースを指定するために使われます。 IDは番号でなければなりません--名前を指定するには、-nameオプションを使います。
- -name resourceName
- -nameが指定されると、resourceName という名前のリソースは削除されます。-idも与えられる場合、
この名前とこのIDの両方を持っているリソースが存在しなければなりません。名前が提供されない場合、実際のリソースの名前に関係なく、IDが使われます。
- -file resourceRef
- -fileオプションが指定される場合には、resourceRef に示されたファイルからリソースが削除されます。そうでない場合には、リソースファイルパスで見つかった与えられたresourceName
及び(あるいは)resourceId を持つ最初のリソースが削除されます。ファイルパスを検査するために、resource
files コマンドを使用します。
- resource files ?resourceRef ?
- resourceRef
が提供されなかったら、このコマンドは現在オープンされたリソースファイルの全てへのリソース参照のTclリストを返します。
このリストはリソースの正常なMicintos検索順です。resourceRef が指定される場合、このコマンドはリソースフォークがそのトークンに表されるファイルへパスを返します。
- resource list resourceType ?resourceRef ?
- タイプresourceType (リソースタイプ参照)のすべてのリソースIDをリストします。resourceRef
が指定されると、コマン
ドはその特定のリソースファイルに検索を限定します。そうでなければ、アプリケーションにより現在オープンされているすべてのリソースファイルが検索されます。見つかったリソースのリソース名かリソースIDのいずれかのTclリストが返されます。
- resource open fileName ?access?
- ファイルfileNameのリソースをオープンします。標準のファイルアクセス許可も指定できます(open 参照)。
他のリソースコマンドによって使われるリソース参照(resourceRef)が返されます。ファイルが存在しなかったり、ファイルがリソースフォー
クを持たないと、エラーが発生することがあります。しかし、書込み許可でオープンするとエラーを生成しないで、ファイル、かつ(または)リソースフォークが作成されます。
- resource read resourceType resourceId ?resourceRef
?
- タイプresourceType (後述のリソースタイプを参照)のリソース全体、そしてresourceId
(下のリソースIDを参照)の名前かIDをメモリへ読み込み、結果を返します。resourceType
が指定されると、そのリソースファイルに検索を限定します。そうでなければアプリケーションでオープンされているリソースフォークすべてを検索します。ほとんどのMacintosh
リソースがバイナリ形式を使っていることと、このコマンドから返されるデータがNULLや他の非ASCIIデータを含んでいるかも知れないことに
注意することが重要です。
- resource types ?resourceRef ?
- このコマンドはresourceRef で指定されたリソースファイルで見つかったすべてのリソースタイプ(リソースタイプ参照)のTclのリストを返します。
resourceRef が指定されないと、現在アプリケーションでオープンされているすべてのリソースファイルで見つかったすべてのリソースタイプを返します。
- resource write ?options? resourceType
data
- このコマンドはdataに渡されたものを、resourceType タイプ(後述のリソースタイプを参照)の新しいリソースとして書き出します。リソースがどこに、どのように格納されるかを記述するいくつかのオプションが利用可能です。
- -id resourceId
- -idオプションが与えられれば、IDのresourceId (リソースID参照)は新しいリソースに使われます。そうでなければ、既存のソースと衝突しないユニークなIDが生成されます。IDは番号でなければなりません--
名前を指定するには-nameオプションを使います。
- -name resourceName
- -nameが指定されれば、リソースはresourceName
という名前になります。指定されなければ、名前として空文字列を持ちます。
- -file resourceRef
- -fileオプションが指定されれば、リソースはresourceRef で示されるファイルに書き出されます。指定されなければ、もっとも最近オープンされたリソースが使われます。
- -force
- ターゲットリソースが既に存在すれば、デフォルトでは、Tclはそれに上書きしないで、その代りにエラーを生成します。
-forceフラグは現存しているリソースへの上書きを強制します。
リソースタイプは内在のIDにマップされる4文字の文字列と定義されます。例えば、TEXTはテキストのMacintoshリソースタイプを参照します。タイプSTR#はカウントされた文字列のリストです。
すべてのMacintoshリソースは、かならずいずれかのタイプでなければなりません。一般的に使われるリソースタイプの完全なリストについては、Macintosh
のドキュメンテーションを参照します。
このコマンドに対するリソースIDの概念は、実際Macintosh
リソースの2つの項目を参照しています。リソースIDが使用できる場所なら、どこででもリソース名かリソース番号の両方が使用できます。名前は番号より優先に検索され、返されます。
例えば、resource listコマンドは名前が存在すれば名前を、名前がNULLならば番号を返します。
リソースコマンドはMacintoshのみで利用可能です。
open
open, resource
Copyright © 1997 Sun Microsystems, Inc.
Copyright © 1995-1997 Roger E. Critchlow Jr.
|