From 918acf5dc55fa27f2ba4121b8dd07fd5cde036bd Mon Sep 17 00:00:00 2001 From: Oskar Date: Fri, 5 Apr 2024 13:48:29 +0200 Subject: Working on 'N' now. Works pretty well. But it's not finished so i cant say how well it will go when i do N plus continue or N immediate. --- process_multiples.c | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) (limited to 'process_multiples.c') diff --git a/process_multiples.c b/process_multiples.c index 6c3b6b7..e59811c 100644 --- a/process_multiples.c +++ b/process_multiples.c @@ -165,9 +165,33 @@ uint64_t call_L(char *multiple, uint64_t focus, uint64_t Flines) { return focus; } -int call_N(char *multiple) { +uint64_t call_N(char *multiple, uint64_t focus, uint64_t Flines, char *filename) { - fprintf(stdout, "%s\n", multiple); + int imm = _IMM_NUMBER; + + if (multiple[1] == '\n') { // N will add just 1 line. + imm = _NA; + new_line(filename, focus); + return 0; + } + + if (multiple[1] == '+') { // N+ is the same as N. It will only add 1 line. + imm = _NA; + if (multiple[2] == '\n') { + new_line(filename, focus); + return 0; + } + + // N plus continue. Still figuring out how this is gonna work. + return 0; + } + + if (imm == _IMM_NUMBER) { + // N immediate, I will make its on function for it i think. + return 0; + } + + fprintf(stdout, "%s %ld\n", multiple, Flines); return 0; } -- cgit v1.2.3