From d227da1d02fa94b3c0ce8b4844c2790b6084917d Mon Sep 17 00:00:00 2001 From: thing1 Date: Thu, 13 Feb 2025 07:04:26 +0000 Subject: added some cool features --- ed.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/ed.c b/ed.c index 3035c60..3b1ad8b 100644 --- a/ed.c +++ b/ed.c @@ -22,6 +22,7 @@ void eprint(char *str) { } void readcmd() { + printf("%d > ", lineno); char c; while ((c = getchar()) != '\n' && cmdlen <= MAXCMD) { command[cmdlen] = c; @@ -97,12 +98,18 @@ void runcmd(char *outpath) { int n; if ((n = readnum()) != -1) { - if (n > linecount) printf("?\n"); + if (n > linecount) { + printf("?\n"); + goto repeat; + } lineno = n; - return; } - switch (command[0]) { + int i = 0; +repeat: + switch (command[i]) { + case 0: + return; case 'd': deleteline(lineno); break; @@ -120,6 +127,8 @@ void runcmd(char *outpath) { case 'q': exit(1); } + i++; + goto repeat; } int main(int argc, char **argv) { -- cgit v1.2.3