aboutsummaryrefslogtreecommitdiffstats
path: root/speeddial.js
diff options
context:
space:
mode:
authormattn2008-06-23 10:16:10 +0000
committermattn2008-06-23 10:16:10 +0000
commit62b785243e71bd93100ac55b61f9f3b4bcf150b9 (patch)
treeea7cd4f6ba71c8b8e526f05b5995c6064737ead4 /speeddial.js
parent5f4a91f21955ca69f5107dc6d1726b51c3b7c542 (diff)
downloadvimperator-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
Diffstat (limited to 'speeddial.js')
-rw-r--r--speeddial.js36
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: