diff options
Diffstat (limited to 'main.c')
-rw-r--r-- | main.c | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/main.c b/main.c index fd0c64a..fb39b91 100644 --- a/main.c +++ b/main.c @@ -26,13 +26,15 @@ main(int argc, char *argv[]) char *aflag; char *hflag; char *iflag; + char *lflag; int ch; aflag = NULL; hflag = NULL; iflag = NULL; + lflag = NULL; - while ((ch = getopt(argc, argv, "a:h:i:")) != -1) { + while ((ch = getopt(argc, argv, "a:h:i:l:")) != -1) { switch (ch) { case 'a': aflag = optarg; @@ -43,14 +45,17 @@ main(int argc, char *argv[]) case 'i': iflag = optarg; break; + case 'l': + lflag = optarg; + break; default: - fprintf(stderr, "Usage: %s [-a file] [-h path] path\n", argv[0]); + fprintf(stderr, "Usage: %s [-a file] [-h path] [-i file] [-l file] path\n", argv[0]); return 1; } } if (optind >= argc) { - fprintf(stderr, "Usage: %s [-a file] [-h path] path\n", argv[0]); + fprintf(stderr, "Usage: %s [-a file] [-h path] [-i file] [-l file] path\n", argv[0]); return 1; } @@ -58,13 +63,13 @@ main(int argc, char *argv[]) if (log == NULL) err(1, "gemlog_readdir"); - if (!aflag && !hflag && !iflag) + if (!aflag && !hflag && !iflag && !lflag) _print_gemlog(log); -// if (aflag) { -// if (gemlog_write_atom(log, aflag) == -1) -// err(1, "gemlog_write_atom"); -// } + if (aflag) { + if (gemlog_write_atom(log, aflag) == -1) + err(1, "gemlog_write_atom"); + } if (hflag) { if (gemlog_write_html(log, hflag) == -1) err(1, "gemlog_write_html"); @@ -73,6 +78,10 @@ main(int argc, char *argv[]) if (gemlog_write_index(log, iflag) == -1) err(1, "gemlog_write_index"); } + if (lflag) { + if (gemlog_write_html_index(log, lflag) == -1) + err(1, "gemlog_write_html_index"); + } gemlog_entry_list_free(log); return 0; |