  	['k'] = scrollup,
  	['q'] = quitcmd,
  	['i'] = insertcmd,
-@@ -493,8 +490,6 @@ main(int argc, char **argv)
+@@ -656,8 +653,6 @@ int main(int argc, char **argv)
  		cbreak();
  		noecho();
  		nonl();

 		goto loop;
 	else
 		end--;
@@ -158,6 +158,7 @@ draw(void)
 static void
 doscrl(int d)
 {
+	clear();
 	lwe_scroll += d;
 	if (lwe_scroll < 0)
 		lwe_scroll = 0;
@@ -300,7 +301,7 @@ insertmode(char *t)
 			c = '\n';
 		if (c == C_D)
 			return 1;

 			if (t <= buffer)
 				continue;
 			t--;
@@ -601,12 +602,8 @@ static enum loopsig lineoverlaycmd(void)
 
 static command_fn cmdtbl[512] = {
 	[C_D] = scrolldown,
