diff options
author | mattn | 2008-06-20 02:26:48 +0000 |
---|---|---|
committer | mattn | 2008-06-20 02:26:48 +0000 |
commit | 4e24594529fa6b090aa9cebaf91ca4777aea19f9 (patch) | |
tree | 7e37052048281d09bfa5d1ebbf3a313f767bfcbf /twitter.js | |
parent | b1b2797045d126e780b1a5d86c56b614a2735466 (diff) | |
download | vimperator-plugins-4e24594529fa6b090aa9cebaf91ca4777aea19f9.tar.bz2 |
「:twitter!? vimperator」でtwitter検索から「vimperator」の検索結果を表示する様修正
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@14279 d0d07461-0603-4401-acd4-de1884942a52
Diffstat (limited to 'twitter.js')
-rw-r--r-- | twitter.js | 24 |
1 files changed, 23 insertions, 1 deletions
@@ -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 <trapezoid.g@gmail.com> - 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 = <style type="text/css"><![CDATA[
+ span.twitter.entry-content a { text-decoration: none; }
+ ]]></style>.toSource()
+ .replace(/(?:\r?\n|\r)[ \t]*/g, " ");
+ for (var n = 0; n < items.length; n++)
+ html += <>
+ <strong>{items[n].getElementsByTagName('title')[0].textContent}‬</strong>
+ : <span class="twitter entry-content">{items[n].getElementsByTagName('description')[0].textContent}‬</span>
+
+ <br />
+ </>.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
|