diff options
| author | Bruce Hill <bruce@bruce-hill.com> | 2019-05-22 01:50:46 -0700 |
|---|---|---|
| committer | Bruce Hill <bruce@bruce-hill.com> | 2019-05-22 01:50:46 -0700 |
| commit | 3a2438dc081e624570a000e2e3c5617837ba0892 (patch) | |
| tree | fe228675386196853b663764ab3281dd1454d34b /bb.c | |
| parent | f9eabe730dfadedf2a029dc584ea2f36b3339e60 (diff) | |
Better arg parsing and updated docs
Diffstat (limited to 'bb.c')
| -rw-r--r-- | bb.c | 26 |
1 files changed, 19 insertions, 7 deletions
@@ -952,13 +952,25 @@ int main(int argc, char *argv[]) char sep = '\n'; int print_dir = 0, print_selection = 0; for (int i = 1; i < argc; i++) { - if (strcmp(argv[i], "-d") == 0) { - print_dir = 1; - } else if (strcmp(argv[i], "-0") == 0) { - sep = '\0'; - } else if (strcmp(argv[i], "-s") == 0) { - print_selection = 1; - } else if (path[0]) { + if (argv[i][0] == '-' && argv[i][1] == '-') + continue; + if (argv[i][0] == '-') { + for (char *c = &argv[i][1]; *c; c++) { + switch (*c) { + case 'd': + print_dir = 1; + break; + case '0': + sep = '\0'; + break; + case 's': + print_selection = 1; + break; + } + } + continue; + } + if (argv[i][0]) { path = argv[i]; break; } |
