From 4e24594529fa6b090aa9cebaf91ca4777aea19f9 Mon Sep 17 00:00:00 2001 From: mattn Date: Fri, 20 Jun 2008 02:26:48 +0000 Subject: 「:twitter!? vimperator」でtwitter検索から「vimperator」の検索結果を表示する様修正 git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@14279 d0d07461-0603-4401-acd4-de1884942a52 --- twitter.js | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'twitter.js') diff --git a/twitter.js b/twitter.js index 229fbf5..5c474c4 100644 --- a/twitter.js +++ b/twitter.js @@ -1,5 +1,5 @@ // Vimperator plugin: "Update Twitter" -// Last Change: 11-May-2008. Jan 2008 +// Last Change: 20-Jun-2008. Jan 2008 // License: Creative Commons // Maintainer: Trapezoid - http://unsigned.g.hatena.ne.jp/Trapezoid // @@ -18,6 +18,25 @@ while (re.test(result) && i < arguments.length) result = result.replace(re, arguments[i++]); return result; } + function showTwitterSearchResult(word){ + var xhr = new XMLHttpRequest(); + xhr.open("GET", "http://twitter.1x1.jp/rss/search/?keyword=" + encodeURIComponent(word) + "&text=1", false); + xhr.send(null); + var items = xhr.responseXML.getElementsByTagName('item'); + var html = .toSource() + .replace(/(?:\r?\n|\r)[ \t]*/g, " "); + for (var n = 0; n < items.length; n++) + html += <> + {items[n].getElementsByTagName('title')[0].textContent}‬ + : {items[n].getElementsByTagName('description')[0].textContent}‬ + +
+ .toSource() + .replace(/(?:\r?\n|\r)[ \t]*/g, " "); + liberator.echo(html, true); + } function showFollowersStatus(username, password, target){ var xhr = new XMLHttpRequest(); var endPoint = target ? "http://twitter.com/statuses/user_timeline/" + target + ".json" @@ -67,6 +86,9 @@ arg = arg.replace(/%URL%/g, liberator.buffer.URL) .replace(/%TITLE%/g, liberator.buffer.title); + if (special && arg.match(/^\?.+/)) + showTwitterSearchResult(arg) + else if (special || arg.length == 0) showFollowersStatus(username, password, arg) else -- cgit v1.2.3