Mac OSの使い方/Macでの各種設定のトラブル

Mac OS X のファイル関連付けのしくみ

Mac OS X では Windowsとは異なった仕組みでファイルタイプや拡張子からアプリケーションへの関連付けを行っています。それはどのようなものでしょう?

この記事の担当ガイド

  • このエントリーをはてなブックマークに追加
Mac OS X でファイルの関連付けを変更する方法を御存じですか?これ、結構知らない人が多いみたいなんですが、Finderの“ファイル - 情報を見る”コマンドから「このアプリケーションで開く」という設定を変更します。



で、この設定パネルで“デフォルト”になっているアプリケーションがありますよね?それに、ファイルの拡張子によっては、利用できるソフトの数が多かったり、少なかったりします。あれって、だれがいつ、どこで設定しているものなのでしょう?

答えは、そのアプリケーション自身なのです。

Mac OS X 上ではアプリケーション毎に内蔵されている PropertyList (plist) と呼ばれるテキストの記述によりファイル関連付けのしくみを実現しています。

アプリケーションの中身を調べてみよう!

最初にパッケージ形式になっているアプリケーションの中身を見てみましょう。
アプリケーション上で、control + クリックするとメニューが開きますので、そこから“パッケージの内容を表示”を選んで下さい。

【TextEdit のパッケージの中身】

パッケージ形式のアプリケーションはだいたい上図のような構成になっています。Contents のなかに、Info.plist というファイルがあります。これが問題のPropertyListです。

PropertyListの構造

Info.plist の中身をTextEditで開くと、テキストの記述が見られます。Mac OS X はこの内容を参照して、TextEdit が利用可能なファイル、ファイル拡張子を認識します。

では、具体的にどの部分がどのような意味を持つのでしょう?
<key>CFBundleDocumentTypes</key>
と書かれた部分以降をよく見て下さい。
 <dict>
   <key>CFBundleTypeExtensions</key>
   <array>
    <string>rtf</string>
    <string>RTF</string>
   </array>
   <key>CFBundleTypeIconFile</key>
   <string>rtf.icns</string>
   <key>CFBundleTypeName</key>
   <string>NSRTFPboardType</string>
   <key>CFBundleTypeOSTypes</key>
   <array>
    <string>RTF </string>
   </array>
   <key>CFBundleTypeRole</key>
   <string>Editor</string>
   <key>LSIsAppleDefaultForType</key>
   <true/>
  </dict>
先頭と最後で<dict> </dict> と書かれた範囲が設定内容です。

更新日:2009年06月07日

(公開日:2002年02月06日)

あわせて読みたい

    この記事を読んで良かったですか?

    良かった

    0

    この記事を共有する