Snow Leopard ではクリエーターが無視される?


Snow Leopard Mac OS X 10.6 からプレインテキストファイルの扱いが変更になったらしい。

例えば、有名なエディタ「JEdit X」でテキストファイルを作成し適当な名前で保存する。
ファインダーからそのファイルをダブルクリックすると、これまではファイルを作成したアプリ(クリーター。この場合ならJEdit X)でファイルを開くことができたが、Snow Leopardからは「テキストエディタ」で開くようになった。

Macintoshのファイルは、ファイルタイプとファイルクリエイターの属性を持っているのが特長だが、そのクリエイターが特定の条件では無視されるということである。
実際InDesignのファイルが全然違うアプリで開かれて大騒ぎになっている事例も報告されていたりするので、これは、ワークフローを組んで(さらに一部自動化して)作業しているような、例えばDTP業界とか、あるいは文章を書く事を生業としているような人などにとってはかなり重大な仕様変更ではないだろうか?

TidBITSに暫定的な対応方法が掲載されていたので紹介するが、これは本当に暫定的なもので既存のファイルを意図したアプリケーションで開けるようにするものにすぎない。
新たに作成するテキストファイルは毎回この方法でクリエイターを変更するしかないが、それはめちゃくちゃ手間がかかる。
根本的にはアプリケーション側で回避方法を工夫してもらうか、アップルが対応してくれるのを待つしかなさそうである。

対応方法だが、要するにプレインテキストファイルを検索し、どのアプリケーションで開くかを明示的に指定するというもの。

手順は、
まずファインダーで「ファイル」→「検索」を選んで検索ダイアログボックスを表示させる。
検索ダイアログボックスの「種類」と書かれているリストボックスから「その他...」を選択する(一番上の図)
検索属性の一覧が表示されるので「生のクエリー」を選択する(上から二番目の図)
検索ダイアログボックスに戻ったら、”生のクエリーが” の右側のテキストボックスに以下の文字列を入力して検索する。
kMDItemFSCreatorCode == "JEDX"

検索結果が出たらCMD+Aまたは「ファイル」→「全てを選択」で、全ファイルを選択する。

CMD+I または「ファイル」→「情報を見る」で左図の情報ダイアログを出す。

”このアプリケーションで開く” が「テキストエディット.app」になっているので、これを開きたいアプリケーションに変更する。

これで既存の全てのプレインテキストファイルを特定のアプリケーションで開けるようになります。

また、上記の例ではプレインテキストファイルは全て一つのアプリケーションで開く事になります。
元々Aというエディタで作ったファイルはAで、Bというエディタで作ったファイルはBで開きたい場合は、生のクエリー(Raw Query)として
kMDItemFSCreatorCode == "JEDX"
の”JEDX”の部分を開きたいアプリケーションのクリエイターに変更して検索します。
ちなみに、ミミカキエディットはMMKE、BBEditなら R*chがクリエイターです。

ちょっと未だ情報不足だったり合点の行かない部分もあるので、この記事は適宜アップデートします。
このエントリーをはてなブックマークに追加