summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Makefile4
-rw-r--r--busybox.def.h2
-rw-r--r--cmdedit.c15
-rw-r--r--shell/cmdedit.c15
4 files changed, 32 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index 38d518eed..1f03754f9 100644
--- a/Makefile
+++ b/Makefile
@@ -27,9 +27,7 @@ BUILDTIME := $(shell TZ=UTC date --utc "+%Y.%m.%d-%H:%M%z")
# eg: `make DODEBUG=true tests'
DODEBUG = false
-# If you want a static binary, turn this on. I can't think
-# of many situations where anybody would ever want it static,
-# but...
+# If you want a static binary, turn this on.
DOSTATIC = false
# This will choke on a non-debian system
diff --git a/busybox.def.h b/busybox.def.h
index b05f17a68..cb864120b 100644
--- a/busybox.def.h
+++ b/busybox.def.h
@@ -29,7 +29,7 @@
#define BB_FREE
//#define BB_FREERAMDISK
//#define BB_FSCK_MINIX
-//#define BB_GREP
+#define BB_GREP
#define BB_GUNZIP
#define BB_GZIP
//#define BB_HALT
diff --git a/cmdedit.c b/cmdedit.c
index b3e7fd58c..2c16276db 100644
--- a/cmdedit.c
+++ b/cmdedit.c
@@ -281,6 +281,14 @@ extern int cmdedit_read_input(char* prompt, int inputFd, int outputFd,
if ((ret = read(inputFd, &c, 1)) < 1)
return ret;
+ fprintf(stderr, "\n\nkey=%d (%c)\n\n", c, c);
+ /* Go to the next line */
+ xwrite(outputFd, "\n", 1);
+ /* Rewrite the prompt */
+ xwrite(outputFd, prompt, strlen(prompt));
+ /* Rewrite the command */
+ xwrite(outputFd, parsenextc, len);
+
switch (c) {
case 1:
/* Control-a -- Beginning of line */
@@ -514,10 +522,17 @@ extern int cmdedit_read_input(char* prompt, int inputFd, int outputFd,
len--;
}
break;
+
+ //case '5': case '6': /* pgup/pgdown */
+
+ case '7':
+ /* rxvt home */
case '1':
/* Home (Ctrl-A) */
input_home(outputFd, &cursor);
break;
+ case '8':
+ /* rxvt END */
case '4':
/* End (Ctrl-E) */
input_end(outputFd, &cursor, len);
diff --git a/shell/cmdedit.c b/shell/cmdedit.c
index b3e7fd58c..2c16276db 100644
--- a/shell/cmdedit.c
+++ b/shell/cmdedit.c
@@ -281,6 +281,14 @@ extern int cmdedit_read_input(char* prompt, int inputFd, int outputFd,
if ((ret = read(inputFd, &c, 1)) < 1)
return ret;
+ fprintf(stderr, "\n\nkey=%d (%c)\n\n", c, c);
+ /* Go to the next line */
+ xwrite(outputFd, "\n", 1);
+ /* Rewrite the prompt */
+ xwrite(outputFd, prompt, strlen(prompt));
+ /* Rewrite the command */
+ xwrite(outputFd, parsenextc, len);
+
switch (c) {
case 1:
/* Control-a -- Beginning of line */
@@ -514,10 +522,17 @@ extern int cmdedit_read_input(char* prompt, int inputFd, int outputFd,
len--;
}
break;
+
+ //case '5': case '6': /* pgup/pgdown */
+
+ case '7':
+ /* rxvt home */
case '1':
/* Home (Ctrl-A) */
input_home(outputFd, &cursor);
break;
+ case '8':
+ /* rxvt END */
case '4':
/* End (Ctrl-E) */
input_end(outputFd, &cursor, len);