diff options
Diffstat (limited to 'speeddial.js')
-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:
|