Qtopiaアプリケーションとファイルとの関連付けは、直接ファイルに対してでは無く、システムで登録されたMIMEのContent-Typeに対して行います。
MIMEとは、ファイルの判別方法の一つですが、Qtopia環境に依存するものでは無いため、MIMEそのものの詳細については本頁では割愛します。
MIMEの詳細については以下の頁等が参考になるかと思います。
Content-Typeとはファイルの種別を示すもので、主型と副型を半角スラッシュで区切った形で表記されます。
Linux Zaurusでは/home/Qtpalmtop/etc/mime.typesで設定されています。
#/home/QtPalmtop/etc/mime.types先頭がファイルの種別を示すContent-Type、続けて関連付けられた拡張子が記述されています。application/activemessage application/andrew-inset ez application/applefile application/atomicmail application/cu-seeme csm cu application/dca-rft application/dec-dx application/excel xls application/ghostview application/hancompresenter hpt application/hancomsheet hst application/hancomword hmw | 後 略 |
実際のファイルとアプリケーションの関連付け作業は、*.desktopファイル内のMimeType項目に任意のContent-Typeを記述することで設定します。
例として、拡張子「txt」のテキストファイルをZEditorに割り付ける例を示してみます。
まず、関連付けたいファイルの拡張子(今回は「txt」)が、どのContent-Typeに割り付けられているのか、mime.typesを確認します。
#/home/QtPalmtop/etc/mime.typesこの場合、Content-Type: text/plain に割り付けられていることが分かります。前 略 | text/html html htm text/plain asc txt c cc h hh cpp hpp text/richtext rtx | 後 略
#/home/QtPalmtop/apps/Applications/zeditor.desktop複数のMimeTypeを割り付ける場合は「;」で区切って列記します。[Desktop Entry] MimeType = text/plain <- Content-Typeを記述 MimeTypesIcon = MusicPlayer <- アイコン名を記述 Comment=Zaurus Text Editor Exec=zeditor Icon=zeditor Type=Application Name=ZEditor Display=640x480/144dpi,480x640/144dpi CanFastload=1
で行うことも出来ます。上記のqcopコマンドで再起動させる場合は、Qtopia環境のみの再起動となるため、本体まるごとの再起動よりは多少起動時間が短縮されます。qcop QPE/System 'restart()'
#/home/QtPalmtop/.mimetypes.cache.mimetypes.cache自体は、システムの動作に必須のものでは無く、実際、SL-A300では存在していません。このファイルが存在しない場合は、mime.typesと、*.desktopファイルの内容が直接参照されます。前 略 | application/hancomword <- Content-Type /home/QtPalmtop/apps/Applications/hancomword.desktop <- 関連付けアプリケーションのdesktopファイルパス DocumentTypeHancomWord <- アイコン名。アイコンが指定されない場合は空行 | 後 略、ここまでの三行で1セット
mime.typs及び、desktopファイルの設定変更については、再起動を行わなくとも
qcop QPE/System 'mimeChanged()' qcop QPE/System 'linkChanged(QString)'
desktopファイルでのContent-typeの指定は、text/plainと言った指定の他、text/*と記述することで、textを主型に持つContent-Type(text/html、text/richtext等)を一括して関連付けることが出来ます。
さらに、その上で別アプリケーションでより狭い範囲での指定を行った場合はそちらが有効になります。
具体的には、textedit.desktop(メモ帳)でtext/*を設定した上で、さらにzeditor.desktopでtext/plainを設定した場合、text/plainのファイルはZEditorが、それ以外のtext/htmlやtext/richtextはメモ帳が関連づけられます。
このへんのContent-typeの範囲等に関しては、歌鈴Kさんがレポートをまとめておられます。
スズノネ
はけのザウルス備忘録別館
長らく放ってましたが、ようやっとまとめ直すことが出来ました。
まだまだ不備はありますが、とりあえず暫定の文字外せるくらいには何とか形に出来たと思います。
例によって、旧版の方も残してはおきます。
過去LOG(暫定版)