Pages

2009-02-05

OMにおける最近使ったタグ

Tagitでタグを付けたり検索したりすると、パネルのクラウドっぽい感じのところにそのタグが追加されます。このタグはcom.openmeta.shared.plistっていうplistファイルに記録されてるってのはもう既に色々なところで耳にされた方も多いと思います。このデータはなにもTagit専用のものではなくて、他のOM対応アプリからも利用されます。QSBOpenMetaやOMSavePanelのタグ補完もこれを使ってますし、OMWizardのタグ一覧もこの内容をそのまま表示しています。

ところが、このcom.openmeta.shared.plistには最近使ったタグが200件までしか記録されません。「最近」だから件数に制限があるのは当たり前で、普段はそれで不便なことはありません。

ところが、OMWizardの場合は話は別です。タグ検索フィールドを廃止したので、OMWでファイルを検索するにはリストからタグを選ぶしかありませんが、タグリストには200件しか表示されないのでそれより古いタグは検索することができません(表示されないのはリストの最左カラムで、それより右のカラムでは古いタグも表示されます)。

これを解決しようとしたら、やっぱり何らかの方法で全てのタグを集めなきゃ行けないんだけど、毎回それはそれで大変。どうしたらいいものか…

5 件のコメント:

  1. GravityのTags.appは、他のアプリで付けたタグも、ほぼリアルタイムで収集してタグパネルに表示しているようですし、特にCPU使用率が跳ね上がることもあいありません。一体、どうやっているのでしょうね。少なくとも、com.openmeta.shared.plistを使っていないようですが。

    返信削除
  2. ちょっと確認してみたところ、確かにその通りでしたね。外部からOpenMetaクラスを介してタグ付けしたものはTagsに即座に反映されるものの、件のplistを直接編集しても反映されませんでした。どういう仕組みなのか気になりますね。
    # TagsではそもそもOpenMetaクラスを使ってませんでした…

    返信削除
  3. 現在、AppleScriptを使って「ニコ動からローカルにDLしたファイルに親サイトと同じタグを付けるドロップレット」を作ってます。公開できるレベルになったらお知らせします。pixivやyoutubeもいずれ。あと、コマンドラインのomtoolを使って制御してるのですが、タグ付けした後OMWizardを立ち上げてもそれが反映されません。spotlight tag:では検索できるのですが。omtoolはcom.openmeta.shared.plistに書き込んでくれないんですね(泣)

    返信削除
  4. omtoolのソースを眺めてみたところ、タグ履歴にはタッチしていないようですね。
    OpenMetaのようなファイルのちょこっとした情報をいじるのにAppleScript(やAutomator)はぴったりだと思うんですが、現状ではdo shell scriptからomtoolを呼び出すしかない状況ですので、これに不具合があるとどうしようもなくなるのが残念です。
    # AppleScriptはバイナリplistを扱えないので直接xattrを、というわけにもいきませんし…
    OMを扱うOSAXとかあれば格段に便利になると思うんですけどね。

    返信削除
  5. 「ニコ動からローカルにDLしたファイルに親サイトと同じOpenMetaタグを付けるドロップレット」作ってみました。よかったら覗いてみてください。

    返信削除