diff --git a/chrome/content/vimperator/buffers.js b/chrome/content/vimperator/buffers.js
index 951bf3ec..848817b0 100644
--- a/chrome/content/vimperator/buffers.js
+++ b/chrome/content/vimperator/buffers.js
@@ -222,6 +222,8 @@ function Buffer() //{{{
[number, title] = items[i][0].split(/:\s+/, 2);
url = items[i][1];
+ url = url.replace(/>/, ">").replace(/, "<");
+ title = title.replace(/>/, ">").replace(/, "<");
list += "
| " + number + " | " + indicator + " | " + title + " | " + url + " |
";
}
diff --git a/chrome/content/vimperator/find.js b/chrome/content/vimperator/find.js
index f6b68342..0c896ec7 100644
--- a/chrome/content/vimperator/find.js
+++ b/chrome/content/vimperator/find.js
@@ -129,7 +129,9 @@ function Search() //{{{
}
var leader = lastsearch_backwards ? "?" : "/";
- vimperator.commandline.echo(leader + lastsearch);
+ setTimeout(function() {
+ vimperator.commandline.echo(leader + lastsearch);
+ }, 10);
var up = reverse ? !lastsearch_backwards : lastsearch_backwards;
var result = getBrowser().fastFind.findAgain(up, false);
diff --git a/chrome/content/vimperator/modes.js b/chrome/content/vimperator/modes.js
index 9b55b259..aadfc122 100644
--- a/chrome/content/vimperator/modes.js
+++ b/chrome/content/vimperator/modes.js
@@ -133,9 +133,9 @@ vimperator.modes = (function()
MENU: 1 << 18, // a popupmenu is active
LINE: 1 << 19, // linewise visual mode
- reset: function()
+ reset: function(silent)
{
- this.set(vimperator.modes.NORMAL, vimperator.modes.NONE);
+ this.set(vimperator.modes.NORMAL, vimperator.modes.NONE, silent);
},
show: function()
diff --git a/chrome/content/vimperator/ui.js b/chrome/content/vimperator/ui.js
index b08cc866..2eda490c 100644
--- a/chrome/content/vimperator/ui.js
+++ b/chrome/content/vimperator/ui.js
@@ -342,8 +342,7 @@ function CommandLine() //{{{
{
var mode = cur_extended_mode; // save it here, as setMode() resets it
addToHistory(command);
- vimperator.modes.reset(); //FIXME: use mode stack
- //vimperator.modes.set(old_mode, old_extended_mode, true);
+ vimperator.modes.reset(true); //FIXME: use mode stack
//vimperator.focusContent();
completionlist.hide();
vimperator.statusline.updateProgress(""); // we may have a "match x of y" visible
@@ -602,11 +601,13 @@ function CommandLine() //{{{
return 2;
}
- function hide()
+ function pass(event)
{
multiline_output_widget.collapsed = true;
// FIXME: use mode stack
vimperator.modes.reset();
+
+ vimperator.events.onKeyPress(event);
}
var key = vimperator.events.toString(event);
@@ -622,7 +623,7 @@ function CommandLine() //{{{
if (canScroll() == 2)
multiline_output_widget.contentWindow.scrollByLines(1);
else
- hide();
+ pass(event);
break;
case "k":
case "":
@@ -630,19 +631,19 @@ function CommandLine() //{{{
if (canScroll() >= 1)
multiline_output_widget.contentWindow.scrollByLines(-1);
else
- hide();
+ pass(event);
break;
case "f":
if (canScroll() == 2)
multiline_output_widget.contentWindow.scrollByPages(1);
else
- hide();
+ pass(event);
break;
case "b":
if (canScroll() >= 1)
multiline_output_widget.contentWindow.scrollByPages(-1);
else
- hide();
+ pass(event);
break;
case "g":
multiline_output_widget.contentWindow.scrollTo(0, 0);
@@ -653,9 +654,9 @@ function CommandLine() //{{{
default:
if (canScroll() == 0 || vimperator.events.isCancelKey(key))
- hide();
+ pass(event);
else if (canScroll() == 1 && vimperator.events.isAcceptKey(key))
- hide();
+ pass(event);
else
; // show a more help inline like in vim
}