Pages

ラベル Quick Search Box の投稿を表示しています。 すべての投稿を表示
ラベル Quick Search Box の投稿を表示しています。 すべての投稿を表示

2009-06-13

QSBでTwitter検索してみようじゃん

いつの間にか正式版が出てた我らがQSB (Google Quick Search Box) ですが、TechCrunchでQSBはTwitter検索ができないなんて言われちゃったから、できるようにしてみようじゃありませんか。幸いQSBはプラグイン機構を備えてるので結構簡単に実現できた。いつのまにかSDKも出てるし。

というわけでできたのがこのTwitter検索プラグイン。twitter検索のAPIを使ってるからちょっと重いけど、公式の検索APIは精度がお話しにならないのでこっちにしました。

Twitter Search on  QSBダウンロード / ソース

インストール方法は、ダウンロードしたzipの中身のTwitterSearch.hgsを~/Library/Application Support/Google/Quick Search Box/PlugInsに置いてQSBを再起動して環境設定からオンにするだけ。QSBのバージョンによっては起動時にプラグインを有効にするかどうかを問うダイアログが出てくるけど、そのまま有効にしちゃってください。

2009-02-06

QSBプラグインの作り方

Google Quick Search Boxプラグインの作り方。意外とまとまった情報があまりなかったので個人的メモを兼ねて。QSBのプロジェクトページからQSB本体のソースコードが手に入る。

まず、プラグイン(拡張子.hgsのCocoaバンドル)の中心となるのはHGSExtensionのサブクラス。ただしHGSExtensionをそのままサブクラス化するのではなく、すでに種類別にいくつか用意されているHGSExtensionのサブクラスをさらにサブクラス化して実装する。例えば、QSBでは選択したアイテムに対してアクションを実行することができるけど、このアクションを追加したいときはHGSActionっていうHGSExtensionのサブクラスをさらに拡張すればいい(QSBOpenMetaもローカルファイルに対するアクションだから、HGSExtension > HGSAction > QSBOpenMetaのようになっている)。サブクラスで実装しなければならない諸々のメソッド等はソースコードにコメントがあるし、デフォルトで組み込まれてるプラグインのコードがわかりやすいから参考になる。ちなみにアクション(HGSActionを継承)の場合、最低限-performActionWithInfo:と-doesActionApplyTo:の2つを実装すれば大丈夫。前者は実際にアクションを実行するメソッドで、後者はユーザの選択したアイテムがアクションの処理できるものかどうかを判定するもの。

サブクラスを実装したら、Info.plistを編集。HGSExtensionsってキーのArrayを追加して、そこに実装したHGSExtensionサブクラスの数だけDictionaryを追加していく。下はアクションを実装したときにDIctionaryで設定する内容。

HGSActionDirectObjectTypes
アクションが対象とするオブジェクトの種類。QSBOpenMetaの場合はローカルファイル限定だから、fileとした。
HGSExtensionClass
アクションを実装したHGSActionのサブクラス名
HGSExtensionIdentifier
そのアクションの識別子。バンドルの識別子ではない。プラグイン内で複数のHGSExtensionを実装した場合はそれぞれに違う識別子を与える。
HGSExtensionPoint
拡張の種類。アクションの場合はHGSExtensionPoint。
HGSExtensionUserVisibleName
実際に表示される名前。"Add OpenMeta Tag"みたいなの。

ざっとこんな感じで、別段難しいような所はないはず。ドキュメントが用意されてないので、もしかしたら間違ってるところがあるかもしれない。Developer Previewを名乗るならドキュメントぐらい用意してくれてもいいのに…。

2009-01-30

Quick Search BoxからOpenMetaタグを編集できるプラグイン:QSBOpenMeta

Macの手書き説明書さんにOMWizardを取り上げていただきました。確かにOMWizardは既にタグを付けてあるファイルを扱うのには便利なんですが、タグがなにもついていないまっさらなファイルは扱えません。あらかじめTagitなどでタグを付けておく必要があります。Tagitもいいアプリなんですけど、わざわざ画面の端までドラッグしていくのは面倒だったりします。

そこで(?)、Google Quick Search Boxから簡単にOpenMetaタグを付与・編集できるプラグインQSBOpenMetaを作ってみました。QSBOpenMetaをインストールすると、QSBでファイルを選んだ時に出てくるコマンドのリストに"Add OpenMeta Tags"というのが現れるようになります。Addって書いてあるけどDeleteだってできます。

download(Updated! v1.0.3: fixed some bugs... DON'T USE OLDER VERSION!)

QSBのバージョンアップにより、使えなくなりました。今後のアップデートで対応予定です。