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

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

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

木下 幹司

執筆者:木下 幹司

Macガイド

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> と書かれた範囲が設定内容です。

  • 1
  • 2
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます