1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2025-12-21 21:58:00 +01:00

add an initial implementation of :sidebar

This commit is contained in:
Doug Kearns
2007-09-17 12:43:17 +00:00
parent 28e15cb66c
commit 8266a2517a
4 changed files with 38 additions and 1 deletions

1
NEWS
View File

@@ -2,6 +2,7 @@
2007-xx-xx: 2007-xx-xx:
* version 0.6 * version 0.6
* THIS VERSION ONLY WORKS WITH FIREFOX 3.0 * THIS VERSION ONLY WORKS WITH FIREFOX 3.0
* added a new :sidebar command
* added 'more' and standard more-prompt key mappings to control * added 'more' and standard more-prompt key mappings to control
behaviour of the message list pager behaviour of the message list pager
* added 'hlsearchstyle' option to allow for user CSS styling of the * added 'hlsearchstyle' option to allow for user CSS styling of the

1
TODO
View File

@@ -19,7 +19,6 @@ BUGS:
FEATURES: FEATURES:
9 :command for new commands 9 :command for new commands
9 :sidebar {addons/bookmarks/history/downloads/...} command with tab completion 9 :sidebar {addons/bookmarks/history/downloads/...} command with tab completion
(and automatically getting possible sidebar elements from View->sidebar
9 make hints smarter, not only with characters from from hintchars, but use "NE" or "NP" for 'new posts' e.g. (might be too slow) 9 make hints smarter, not only with characters from from hintchars, but use "NE" or "NP" for 'new posts' e.g. (might be too slow)
8 add an interface for navigating document relationships 8 add an interface for navigating document relationships
8 middleclick in content == p, and if command line is open, paste there the clipboard buffer 8 middleclick in content == p, and if command line is open, paste there the clipboard buffer

View File

@@ -1076,6 +1076,32 @@ function Commands() //{{{
completer: function(filter) { return vimperator.completion.get_options_completions(filter); } 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]"], addDefaultCommand(new Command(["so[urce]"],
function(args) function(args)
{ {

View File

@@ -461,6 +461,17 @@ vimperator.completion = (function() // {{{
return build_longest_common_substring(items, filter); 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) //{{{ exTabCompletion: function(str) //{{{
{ {
var [count, cmd, special, args] = vimperator.commands.parseCommand(str); var [count, cmd, special, args] = vimperator.commands.parseCommand(str);