-diff --git a/llwe.c b/llwe.c
-index 0e6aded..3a24f28 100644
---- a/llwe.c
-+++ b/llwe.c
-@@ -66,7 +66,7 @@ static int bread(void)
+diff --git a/src/llwe.c b/src/llwe.c
+index b9d5196..fb3e1f2 100644
+--- a/src/llwe.c
++++ b/src/llwe.c
+@@ -70,7 +70,7 @@ bread(void)
  		err("memory");
  		return 0;
  	}

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

 			if (t <= buffer)
 				continue;
 			t--;
@@ -441,12 +442,8 @@ jumptolinecmd(void)
 
 static command_fn cmdtbl[512] = {
 	[C_D] = scrolldown,
-	[KEY_DOWN] = scrolldown,
-	[KEY_NPAGE] = scrolldown,
 	['j'] = scrolldown,
 	[C_U] = scrollup,
-	[KEY_UP] = scrollup,
-	[KEY_PPAGE] = scrollup,
 	['k'] = scrollup,
 	['q'] = quitcmd,
 	['i'] = insertcmd,
@@ -493,8 +490,6 @@ main(int argc, char **argv)
 		cbreak();
 		noecho();
 		nonl();
