From 668c3bf3d33d023b6b3faa8dc38308731432f4ee Mon Sep 17 00:00:00 2001 From: Riley Beckett Date: Fri, 31 Oct 2025 17:11:26 -0400 Subject: orderless and case insensitive flags --- args.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'args.c') diff --git a/args.c b/args.c index c660eed..8c56da3 100644 --- a/args.c +++ b/args.c @@ -13,12 +13,14 @@ void parse_args(client_state* state, int argc, char* argv[]) { {"verbose", no_argument, 0, 'v'}, {"password", no_argument, 0, 'P'}, {"prompt", no_argument, 0, 'p'}, + {"orderless", no_argument, 0, 'o'}, + {"insensitive", no_argument, 0, 'i'}, {0, 0, 0, 0} }; int opt; int long_index = 0; - while ((opt = getopt_long(argc, argv, "l:p:cevP", long_opts, &long_index)) != -1) { + while ((opt = getopt_long(argc, argv, "l:p:coievP", long_opts, &long_index)) != -1) { switch (opt) { case 'l': state->lines = atoi(optarg); @@ -29,7 +31,7 @@ void parse_args(client_state* state, int argc, char* argv[]) { case 'c': state->center = true; break; - case 'a': + case 'e': state->exact_match = true; break; case 'v': @@ -38,8 +40,15 @@ void parse_args(client_state* state, int argc, char* argv[]) { case 'P': state->password = true; break; + case 'o': + state->orderless = true; + break; + case 'i': + state->strstr = strcasestr; + break; default: fprintf(stderr, "Usage: NOT WHAT YOU TYPED\n"); + fprintf(stderr, "%c\n", opt); break; } } -- cgit v1.2.3