aboutsummaryrefslogtreecommitdiff
path: root/args.c
diff options
context:
space:
mode:
authorRiley Beckett <rbeckettvt@gmail.com>2025-10-31 17:11:26 -0400
committerJack Jamison <jackqjamison@gmail.com>2025-11-06 19:45:03 -0500
commit668c3bf3d33d023b6b3faa8dc38308731432f4ee (patch)
treedecfd67c09f794c60aa65e92f49198cd01dcd883 /args.c
parent4ce78657afd8850a9c838444f646043e3dba370d (diff)
orderless and case insensitive flags
Diffstat (limited to 'args.c')
-rw-r--r--args.c13
1 files changed, 11 insertions, 2 deletions
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;
}
}