diff options
author | mattn | 2008-06-23 10:16:10 +0000 |
---|---|---|
committer | mattn | 2008-06-23 10:16:10 +0000 |
commit | 62b785243e71bd93100ac55b61f9f3b4bcf150b9 (patch) | |
tree | ea7cd4f6ba71c8b8e526f05b5995c6064737ead4 | |
parent | 5f4a91f21955ca69f5107dc6d1726b51c3b7c542 (diff) | |
download | vimperator-plugins-62b785243e71bd93100ac55b61f9f3b4bcf150b9.tar.bz2 |
added speeddial.js
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@14467 d0d07461-0603-4401-acd4-de1884942a52
-rw-r--r-- | speeddial.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/speeddial.js b/speeddial.js new file mode 100644 index 0000000..5d5ac9d --- /dev/null +++ b/speeddial.js @@ -0,0 +1,36 @@ +// Vimperator plugin: "SpeedDial"
+// Last Change: 23-Jun-2008. Jan 2008
+// License: Creative Commons
+// Maintainer: mattn <mattn.jp@gmail.com> - http://mattn.kaoriya.net/
+//
+// Commands:
+// :sd 1
+// open url registered as 1 in current tab.
+// :sd! 1
+// open url registered as 1 in new tab.
+// Note:
+// you can able to complete urls with tab key.
+
+(function() {
+ const pref = Components.classes["@mozilla.org/preferences;1"].getService(Components.interfaces.nsIPrefBranch);
+ var nsISupportsString = Components.interfaces.nsISupportsWString ||
+ Components.interfaces.nsISupportsString;
+ liberator.commands.addUserCommand(["sd"], "speeddial",
+ function(arg, special){
+ if (arg.match(/^[0-9]+$/))
+ arg = pref.getComplexValue("extensions.speeddial.thumbnail-" + arg + "-url", nsISupportsString).data;
+ if (arg) liberator.open(arg, special ? liberator.NEW_TAB : liberator.CURRENT_TAB);
+ }, {
+ completer: function(filter) {
+ candidates = [];
+ for (var n = 1; n <= 9; n++) {
+ var url = pref.getComplexValue("extensions.speeddial.thumbnail-" + n + "-url", nsISupportsString).data;
+ var label = pref.getComplexValue("extensions.speeddial.thumbnail-" + n + "-label", nsISupportsString).data;
+ if (url && label) candidates.push([url, n + ":" + label]);
+ }
+ return [0,candidates];
+ }
+ }
+ );
+})();
+// vim:sw=4 ts=4 et:
|