From 151fdb4e61cf8e6a8344d10522a0825d5f6ed675 Mon Sep 17 00:00:00 2001 From: Aargh Rai Date: Mon, 15 Jun 2026 11:45:38 +0530 Subject: fixed an issue with length not have a default when mode is specified --- src/help.c | 1 + src/main.c | 44 ++++++++++++++++++++++++++++---------------- 2 files changed, 29 insertions(+), 16 deletions(-) (limited to 'src') diff --git a/src/help.c b/src/help.c index f5eedcc..14acfbf 100644 --- a/src/help.c +++ b/src/help.c @@ -16,6 +16,7 @@ int print_help() { printf(" lorem s 2\t\tgenerate 2 lines/sentences\n"); printf(" lorem 2\t\tgenerate 2 lines/sentences\n"); printf(" lorem\t\t\tgenerate 1 line/sentence\n"); + printf(" lorem p\t\tgenerate 1 paragraph\n"); printf(" lorem paragraph 2\tgenerate 2 paragraphs\n"); printf(" lorem word 2\t\tgenerate 2 words\n"); printf(" lorem line 2\t\tgenerate 2 lines/sentences\n"); diff --git a/src/main.c b/src/main.c index 2398207..ccdd119 100644 --- a/src/main.c +++ b/src/main.c @@ -6,6 +6,22 @@ #include "modes.h" #include "help.h" +#define IS_WORD(x) ( \ + (strcmp(x, "w") == 0) || \ + (strcmp(x, "word") == 0) \ + ) +#define IS_LINE(x) ( \ + (strcmp(x, "l") == 0) || \ + (strcmp(x, "s") == 0) || \ + (strcmp(x, "line") == 0) || \ + (strcmp(x, "sentence") == 0) \ + ) +#define IS_PARA(x) ( \ + (strcmp(x, "p") == 0) || \ + (strcmp(x, "para") == 0) || \ + (strcmp(x, "paragraph") == 0) \ + ) + int main(int argc, char **argv) { int mode = MODE_SENTENCE; int length = 1; @@ -22,25 +38,21 @@ int main(int argc, char **argv) { } if (argc == 2) { - length = atoi(argv[1]); + if (IS_LINE(argv[1])) { + mode = MODE_SENTENCE; + } else if (IS_PARA(argv[1])) { + mode = MODE_PARAGRAPH; + } else if (IS_WORD(argv[1])) { + mode = MODE_WORD; + } else { + length = atoi(argv[1]); + } } else if (argc == 3) { - if ( - (strcmp(argv[1], "l") == 0) || - (strcmp(argv[1], "line") == 0) || - (strcmp(argv[1], "s") == 0) || - (strcmp(argv[1], "sentence") == 0) - ) { + if (IS_LINE(argv[1])) { mode = MODE_SENTENCE; - } else if ( - (strcmp(argv[1], "p") == 0) || - (strcmp(argv[1], "para") == 0) || - (strcmp(argv[1], "paragraph") == 0) - ) { + } else if (IS_PARA(argv[1])) { mode = MODE_PARAGRAPH; - } else if ( - (strcmp(argv[1], "w") == 0) || - (strcmp(argv[1], "word") == 0) - ) { + } else if (IS_WORD(argv[1])) { mode = MODE_WORD; } length = atoi(argv[2]); -- cgit v1.2.3