2009/01/27


よく検索エンジンなんかでtwitterの発言が引っかかった時、@付きの会話があり話の前後を辿ってみたりする事があります。
非常にめんどくさいですね。

例えば先日あったkuさんとの会話の一部が見つかったとしましょう。
http://twitter.com/ku/status/1136652052
twitter-20090127
http://twitter.com/ku/status/1136652052
この発言から会話の前後を辿るには、時刻が記述されたリンクをポチポチとクリックして行くしかなく、とても大変な手間になります。

これを簡単に知る方法はないか...あります。

twitterは検索機能を持っているのですが、この結果に会話の前後を辿る機能があるのです。試しに「mattn_jp ku」という検索語で検索し、結果にある「Show Conversation」という部分をクリックしてみましょう。
twitter-search-result-20090127
綺麗に会話のツリーが出ますね。この「Show Conversation」は、search.twitter.com の http://search.twitter.com/search/thread/{ステータスID} からのHTML出力結果をインライン表示している処理になっています。
つまり、上記の
http://twitter.com/ku/status/1136652052
から会話のツリーを得るには
http://search.twitter.com/search/thread/1136652052
にアクセスすれば良い事が分かります。
但しインライン用に用意されたHTMLなのでCSSも付きませんし、ドメインが twitter.com ではなく、search.twitter.com なので twitter が使っている jQuery で get メソッド呼び出しする事も出来ません。
ここはいたし方無くGrasemonkeyと行きましょう。twitterのタイムラインのHTMLにはmicroformatと共に返信があるかどうかを示すクラス属性値「reply」が付いています。これが付いているステータスのみ「Show Conversation」を付け、クリックしたらインラインで会話を表示する物を作ってみました。
twitter-show-conversation
タイムラインに「Show Conversation」と付いているリンクをクリックすると、前後の会話が表示されます。何気に便利かもしれません。
ソースはこの辺においておきます。
宜しければどうぞ。
Posted at by



2008/09/02


追記
teramakoさんがもっと良いの 作ってくれました。
きっとそっち使う方が幸せな、ともだちんこになれます。
ですので、私のはubiquityNeta.jsにリネームする事にします。


こう使うのですね?わかります。
(function() {
    if (typeof gUbiquity === 'undefined'return;
    liberator.commands.addUserCommand(["ubiquity"], "Ubiquity",
        function(arg, special){
            var anchor = document.getElementById("content");
            if (window.location == "chrome://browser/content/browser.xul")
                anchor = anchor.selectedBrowser;
            gUbiquity.openWindow(anchor);
            gUbiquity.__textBox.value = arg||'';
            var context = gUbiquity.__makeContext();
            var previewBlock = document.getElementById("cmd-preview").contentDocument.getElementById("preview");
            gUbiquity.__cmdManager.updateInput(arg||'', context, previewBlock);
            if (special) {
                gUbiquity.__cmdManager.execute(context);
                gUbiquity.closeWindow();
            }
        },
    { });
})();
使い方は
:ubiquity map osaka
でプレビュー表示
:ubiquity! map osaka
で直実行です。
ubiquity-vimperator
ソースはcodereposに置いておきます。
ubiquityNeta.js
ubiquityとvimperatorは、ともだちんこですね。わかります。

参考:
ゆびきちが相当面白い!! - ネットランダム

指基地なのか、指既知なのかは置いておいて、ユビキタス度アップ間違いなしのFirefoxアドオンである。

今後、Greasemonkeyにとって変わる可能性すらある。

っていうか、Vimperatorユーザ涙目!

http://d.hatena.ne.jp/fk_2000/20080901/p2
Posted at by



2008/08/05


途中まで書いて助けを求めたんですが、結局自分で書きました。
CodeRepos::Share - Trac

mattn誰か後は頼んだ... ゴブッ(吐血)

http://coderepos.org/share/changeset/17104
このリンク先のソースは不完全なソースです。

使い方は
:mixiecho
でエコーの一覧表示
:mixiecho ○○遺跡に落書きした!
でポストです。

これでtwitterの様にmixiを使って、マイミク外される事うけあいですね。
mixiecho.js
よかったらどうぞ。
i love vimperator!
※ teramakoさんからi love vimperatorの画像頂きました。
Posted at by