InDesignのファイルタイプ・クリエータ等を調べてみる

以前に起こしたエントリに対して頂いたコメントを元に、ちょーど良い機会と思い、InDesignのファイルタイプ・クリエータ情報などについて調べてみました。

DTPアプリケーションの話でもあるけれども、直接は関係ないので、カテゴリはApple関連で。

まず、調べた環境について記載しておきます。

  • OS:Mac OS X 10.4.11(2.0/CS/CS2)、10.5.6(CS3/CS4)
  • Hardware:PowerMac G5(上記OSとも同一H/Wにて確認)
  • ファイルタイプ・クリエータ確認アプリ:iLikeYouMore 3.02u



まずは、InDesign 2.0/CS1/CS2におけるファイルタイプ・クリエータを。
ただし「iLikeYouMore」上でのアイコンは、その環境に入れている最上位バージョンであるCS3になってしまっていますが、間違いなくそれぞれのバージョンです。

090404_MacInDesignResource(1)

090404_MacInDesignResource(2)

090404_MacInDesignResource(3)

InDesign 2.0はTypeが「InDd」となっていますが、CS/CS2はバージョンを示す数字として表されています。ともあれ、バージョンによって異なるファイルタイプになっていることがわかります。



次にInDesign CS3/CS4です。実は最初はこちらから調べたので、「LikeYouMore」の起動直後画面も入れています。

090404_MacInDesignResource(4)

090404_MacInDesignResource(5)

090404_MacInDesignResource(6)

中央がCS3の、下がCS4のものではありますが、ともにファイルタイプは「IDd5」となってしまっています。
InDesign CS4は本来「6.0」がバージョンなので、それまでのファイルタイプから推測する場合は「IDd6」になるはず。また、アプリごとに異なるファイルタイプを植え付けるのであればこれも異なるはずですが、どう見ても同じように見えます。



次に、それをFAT32フォーマットのUSBメモリにコピーし、Windows XPで確認した場合は以下の結果です。

090404_MacInDesignResource(7)

先にご紹介したエントリのように、リソースフォーク部分(AppleDouble Header file)が分離した状態になっています。
触れている通り、HFS/HFS+以外のファイルシステムでは直接扱うことができないため、結果としてこうせざるを得ないわけです。



そのリソースフォーク部分(AppleDouble Header file)の中身を16進のダンプで見るとこうなります。今回はてっとり早く、「Ariadne」の内蔵ビュアーを使ってます。

090404_MacInDesignResource(8)

090404_MacInDesignResource(9)

いずれも、30番地台に先ほど確認したファイルタイプ・クリエータが記載されているのが確認できます。間違いなくこれに情報が書かれているんだな、と。
ちなみに情報量が増えすぎるので入れていませんが、この中にはPICTによるアイコン・プレビュー情報も含まれています。



では、このリソースフォークを同一のパスに配置していない場合、Mac OS Xではファイルはどのように認識されるのでしょうか。
てっとり早く削除してもいいですが、今回は別フォルダに移動させた場合で確認しています。

090404_MacInDesignResource(10)

「_リソースさようなら」というフォルダを作り、そちらにリソースフォークファイルをぶち込んでいます。ついでに、CS3/CS4のファイル冒頭には「REN_」と、ファイル名を変更しています。特に意味はないですが。
なお、それぞれのファイルはWindows側では一切開くことはしていません。



で、その状態でMacのHDDにコピーし、それを「iLikeYouMore」で確認した結果は以下の通り。CS3/4ともに同じなので、画像も省略してひとつだけにしています。

090404_MacInDesignResource(11)

まあ、まっさらです。
つまり、先のエントリのタイトルのように「リソースフォーク(AppleDouble Header file)に含まれるファイルタイプ・クリエータははさよならしてしまった」(所謂「データフォーク」側にファイルタイプ・クリエータは保持されていない)ということと、Mac OS X自体もリソースフォーク無しにアプリケーションのアイコンを付加してしまっている、ということが判断できるわけです。ちなみにこれが旧Mac OSの場合であればアイコンは白紙になることが多いです。リソースフォーク(AppleDouble Header file)に含まれるファイルタイプ・クリエータを利用してアプリケーションとの関連づけを判断してたわけですから。



ということで、結果としては以下のことが言えます。

  • Adobeはやはり、先のエントリで推測したように、InDesignではリソースフォーク(AppleDouble Header fileにおけるファイルタイプ・クリエータ)の利用と更新を行わなくなっている模様
  • ファイルタイプやクリエータは、いまでもリソースフォークに情報を格納している(厳密には、HFS+以外のファイルシステムの場合には、というべきかもしれませんが)
  • 修正→ファイルタイプやクリエータは、HFS/HFS+以外のファイルシステムにデータ保存する場合は、「AppleDouble Header file」に、リソースフォークとともに情報を格納している
  • Mac OS Xも、ファイルタイプ・クリエータ以外に、拡張子も利用してアプリケーション判定を行っているため、何がなんてもそれらが必要であるというわけではない

結局は推測していた事を実証したにすぎませんが、いずれにしてもアプリケーション側がファイルタイプ・クリエータを含むおよびリソースフォークを積極的には利用しなくても良いようになっていること、また利用しなくても構わないようにMac OS X自体が作られていること、ということがこれらの挙動から確信できるわけです。
マルチプラットフォームに対して対応せざるを得ないAdobeの場合、なおさら最大公約数的に、利用しなくても済む固有のプラットフォームの情報を扱わなくなっているというのはある意味必然的な方向性なのも事実だと思います。



ファイルタイプ・クリエータ・リソースフォークといった情報は便利ではあるんですが、書き換えや削除ができてしまう限り必ずしも過信できる情報でもないことや、ひと目で把握できる情報ではない(把握するためにはそれを行うための仕組みが必要で、現状では標準では用意されてない処理体系を用いる必要がある)ため、オープンな処理になればなるほど、このような形になっていくのは致し方ないのかもしれません。




上げた直後にちょっとだけ追記。

XP側でCS3/CS4が区別できているのは自分でもよくわかりません(ぉ

以前にCLさんが挙げて頂いたのが関連していると思いますけど。当時話した記憶があるんですが、忘れました orz
もっとも、アイコンの表示だけしか変わらず、ダブルクリックで起動するアプリは拡張子判定されてますが。

リソースフォーク+データフォークはマルチストリームに含まれる

また、データ自体にバージョン情報は含まれる(以前のエントリ参照)ため、それをOS(この場合はMac OS XのFinder)レベルで読み出してあげるような仕組みさえ作れば、別にファイルタイプ・クリエータに依存せずにダブルクリックでバージョン処理を行うこともできるはずなんですが。本来はそれをやってもおかしくないはずのBridgeですらできてないけれども。




2009.04.05
一部文言および内容の削除・追加・修正を行いました。
このエントリーを含むはてなブックマーク はてなブックマーク - InDesignのファイルタイプ・クリエータ等を調べてみる

コメント

これでおしまい

拡張子が同じでファイルタイプが異なる場合、アイコン等の表示はファイルタイプの方が優先されます。

InDesignのパッケージ内には各旧バージョンのアイコンファイルがあり、それは Info.plist で各旧バージョンのファイルタイプと関連づけられています。

それにも関わらず Info.plist の記述通りの結果にならないわけです。しかもそうなるのは Adobe CS だけ。

それを Apple の仕様だけに原因を押し付けるのは無茶苦茶です。

あさうすさんはどうやら無茶苦茶でも自説を押し通したいようですから、まったくどうしようもありませんね。

>> Shimaさん
えー、いろいろとご呈示されたことについて確認しました。

その結果、

・別に結論が揺れることはない
・確認したことによって別の新しい推測が見えてしまう
(自分の持っている細かい情報から結びつくだけで、
 具体的に確認できる環境を持っていないので裏付けは取りませんが)

という結果に落ち着いてしまいそうです。自分的には。

過程においての細かい点の反論や技術的な裏付けを行うなどを行う必要がありましたら、TB・リンク等を行っていただき、ご自身のサイトやblog等でお願いします。
でないと話が散発的になってまとめられるはずのものもまとまらないでしょう。

しつこくてスイマセン

> もうひとつのほうは、拡張子判定の宿命でもあるんですけどね。それも利用できるようにしてしまったのは、エントリ中にも触れていますが、Mac OS X自体で、Apple自身です。アイコンの処理もFinder等がそのように行っているにすぎません。

一知半解ってこのことだね。

1.InDesign の Info.plist の中を見ましょう。
2.ファイルの「情報を見る」の「このアプリケーションで開く」で、下位バージョンの InDesign を選択して、「すべてを変更...」ボタンを押してみましょう。

他のソフトで[2]のような現象が発生するものがあったら教えてください。

> 旧Mac OSですら「ResEdit」という公式のリソースフォークエディタでファイルタイプ・クリエータも同時に変更できてましたので、一緒くたに考えるケースは多いと考えます。

ファイルの作成日や修正日もリソースフォークにあると考えるケースが多いんですか? 知らなかったなあ(苦笑

まあ、とにかくデタラメにデタラメを積み重ねて流布するのはいい加減にしましょうね。

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

>>CLさん
多分そうじゃないかと思うんですが、Adobeアプリごとに異なる挙動なので明言しにくいところがあったり。
ただまあ、そこまで調べる予定はありませんが。

>>Shimaさん
「._filename」を「リソースフォーク」とするのは、別にわしだけじゃないんですけど。どこに、となると膨大すぎて列挙することも難しいですが。もっとも、旧Mac OSですら「ResEdit」という公式のリソースフォークエディタでファイルタイプ・クリエータも同時に変更できてましたので、一緒くたに考えるケースは多いと考えます。
あと、ご指摘内容に沿ったかわかりませんが、とりあえず「AppleDouble Header file」という文言の追加等を行いました。
ちなみに公式にあるAppleDoubleの説明だけ以下に示しておきます。
http://support.apple.com/kb/TA20578?viewlocale=ja_JP

もうひとつのほうは、拡張子判定の宿命でもあるんですけどね。それも利用できるようにしてしまったのは、エントリ中にも触れていますが、Mac OS X自体で、Apple自身です。アイコンの処理もFinder等がそのように行っているにすぎません。
あと、別に珍妙な操作をしているようには見えないですけどね。ファイルタイプ・クリエータ等を付加しているところはMac OSとしてのルールに則ろうとしているわけですし。

なんだかな~

> 先にご紹介したエントリのように、リソースフォーク部分が分離した状態になっています。

そのファイルはリソースフォークではなく、MacBinary です。
MacBinary にファイルタイプ・クリエータがあるのは当たり前です。
一緒くたにしないでください。

CS4 のファイルタイプが CS3 と同一の「IDd5」というのは初めて知りました。
私の不明です。

> 利用しなくても済む固有のプラットフォームの情報を扱わなくなっている

逆です。
「InDesignのアイコンを最新バージョンに無理矢理にしている」じゃないですか。
しないのではなく、
「Mac固有のプラットフォームの情報をAdobeが独自に珍妙な操作をしている」んですよ。

>XP側でCS3/CS4が区別できているのは自分でもよくわかりません(ぉ

AdobeのソフトがよくやるアイコンハンドラでInDesignファイルの中身を読みに行って表示を変えているんじゃないでしょうか。

CS4はMac版でそろえちゃったんで確認はしていない。
非公開コメント

最近の記事

はてブ数順傾向

プロフィール

あさうす

  • Author:あさうす
  • DTP業界を中心に主観だらけの毒を吐いてます。後ろ盾なし、保証なし。あくまでも独断と偏見に満ちているだけで、何かの圧力とかはありません。たぶん。いやないです。信じてください。

    なお、名無しコメント&煽り、勝手にトラックバックやリンクなどはご自由に。spam認定したもの以外は削除しません。ただしFC2の都合でTBは弾かれるかもしれません。

    当blogは、Firefoxを推奨します。

    何かお問い合わせございましたら [assause@gmail.com] までどうぞ。

月別アーカイブ