diff options
author | shunirr | 2008-03-20 16:32:41 +0000 |
---|---|---|
committer | shunirr | 2008-03-20 16:32:41 +0000 |
commit | aad373b519fdaf2b04004db3e95c1571c5d9ddf8 (patch) | |
tree | 53b2ecdfea348e76a1b7180b76ead6252e02f228 /hatenabookmark_show.js | |
download | vimperator-plugins-aad373b519fdaf2b04004db3e95c1571c5d9ddf8.tar.bz2 |
lang/javascript/vimperator-plugins/trunk
lang/javascript/vimperator-plugins/tags/0.5.3
- mkdir trunk, tags
- mv some files
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@8221 d0d07461-0603-4401-acd4-de1884942a52
Diffstat (limited to 'hatenabookmark_show.js')
-rw-r--r-- | hatenabookmark_show.js | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/hatenabookmark_show.js b/hatenabookmark_show.js new file mode 100644 index 0000000..1211bd5 --- /dev/null +++ b/hatenabookmark_show.js @@ -0,0 +1,44 @@ +// Vimperator plugin: 'Show Hatena Bookmark Comments'
+// Last Change: 02-Mar-2008. Jan 2008
+// License: Creative Commons
+// Maintainer: Trapezoid <trapezoid.g@gmail.com> - http://unsigned.g.hatena.ne.jp/Trapezoid
+//
+// show hatena bookmark comments script for vimperator0.6.*
+
+(function(){
+ function showComments(url){
+ const endPoint = "http://b.hatena.ne.jp/entry/json/";
+ var xhr = new XMLHttpRequest();
+ var tagString,showString = "<div>";
+ xhr.open("GET",endPoint + url,false);
+ xhr.send(null);
+ var response;
+ if(!(response = window.eval(xhr.responseText))){
+ vimperator.echoerr("Does not exists!!");return;
+ }
+ var bookmarks = response["bookmarks"];
+ showString += response["count"] + " users : " + response["title"] + "<dl>";
+
+ for each (var bookmark in bookmarks){
+ tagString = bookmark.tags.length ? "[" + bookmark.tags.join("][") + "]":"";
+ showString += "<dt style=\"float:left;clear:both;width:10%;margin:0;\">" + bookmark.user + "</dt>";
+ showString += "<dd style=\"margin:0 0 0 10%;width:90%;border-left:1px solid;\"> "
+ showString += tagString + (bookmark.tags.length > 0 && bookmark.comment ? "<br/> ":"") + bookmark.comment + "</dd>";
+ }
+ showString += "</dl></div>";
+ vimperator.commandline.echo(showString, vimperator.commandline.HL_NORMAL, vimperator.commandline.FORCE_MULTILINE);
+ }
+ vimperator.commands.addUserCommand(["hbinfo"], "show hatena bookmark comments",
+ function(arg,special){
+ var clipboard = readFromClipboard();
+ if(special)
+ arg = window.content.document.getSelection() || clipboard;
+ showComments(arg?encodeURIComponent(arg):vimperator.buffer.URL);
+ },{ completer: vimperator.completion.url }
+ );
+ vimperator.mappings.addUserMap([vimperator.modes.VISUAL], [",h"], "show hatena bookmark comments",
+ function(count){
+ showComments(window.content.document.getSelection());
+ },{ noremap: true }
+ );
+})();
|