diff --git a/NEWS b/NEWS index 05794c45..0f133e47 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,7 @@
2007-XX-XX:
* version 0.5.2
+ * added a new :sidebar command
* added 'more' and standard more-prompt key mappings to control
behaviour of the message list pager
* added 'hlsearchstyle' option to allow for user CSS styling of the
diff --git a/chrome/content/vimperator/commands.js b/chrome/content/vimperator/commands.js
index 15f63d00..79422b1a 100644
--- a/chrome/content/vimperator/commands.js
+++ b/chrome/content/vimperator/commands.js
@@ -1076,6 +1076,32 @@ function Commands() //{{{
completer: function(filter) { return vimperator.completion.get_options_completions(filter); }
}
));
+ addDefaultCommand(new Command(["sideb[ar]"],
+ function(args)
+ {
+ if (!args)
+ {
+ vimperator.echoerr("E471: Argument required");
+ return;
+ }
+
+ var menu = document.getElementById("viewSidebarMenu")
+
+ for (var i = 0; i < menu.childNodes.length; i++)
+ {
+ if (menu.childNodes[i].label == args)
+ {
+ eval(menu.childNodes[i].getAttribute('oncommand'))
+ break;
+ }
+ }
+ },
+ {
+ short_help: "Open the sidebar",
+ help: "TODO",
+ completer: function(filter) { return vimperator.completion.get_sidebar_completions(filter); }
+ }
+ ));
addDefaultCommand(new Command(["so[urce]"],
function(args)
{
diff --git a/chrome/content/vimperator/completion.js b/chrome/content/vimperator/completion.js
index b290f42a..3a6603f8 100644
--- a/chrome/content/vimperator/completion.js
+++ b/chrome/content/vimperator/completion.js
@@ -461,6 +461,17 @@ vimperator.completion = (function() // {{{
return build_longest_common_substring(items, filter);
}, //}}}
+ get_sidebar_completions: function(filter) //{{{
+ {
+ var menu = document.getElementById("viewSidebarMenu")
+ var nodes = [];
+
+ for (var i = 0; i < menu.childNodes.length; i++)
+ nodes.push([[menu.childNodes[i].label], ""]);
+
+ return build_longest_starting_substring(nodes, filter);
+ }, //}}}
+
exTabCompletion: function(str) //{{{
{
var [count, cmd, special, args] = vimperator.commands.parseCommand(str);