summary refs log tree commit diff stats
path: root/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'main.c')
-rw-r--r--main.c40
1 files changed, 22 insertions, 18 deletions
diff --git a/main.c b/main.c
index 1d4577f..713fcae 100644
--- a/main.c
+++ b/main.c
@@ -14,8 +14,8 @@ _print_gemlog(struct gemlog_entry **list)
 	char timestamp[50];
 
 	for (i = 0; list[i] != NULL; i++) {
-		strftime(timestamp, sizeof(timestamp), "%F: ", &(list[i]->date));
-		printf("%s%s\n", timestamp, list[i]->title);
+		strftime(timestamp, sizeof(timestamp), "%F", &(list[i]->date));
+		printf("%s %d: %s\n", timestamp, list[i]->date.tm_hour, list[i]->title);
 	}
 }
 
@@ -23,35 +23,29 @@ int
 main(int argc, char *argv[])
 {
 	struct gemlog_entry **log;
-	int aflag;
-	int hflag;
+	char *aflag;
+	char *hflag;
 	int ch;
 
-	aflag = 0;
-	hflag = 0;
+	aflag = NULL;
+	hflag = NULL;
 
-	while ((ch = getopt(argc, argv, "ah")) != -1) {
+	while ((ch = getopt(argc, argv, "a:h:")) != -1) {
 		switch (ch) {
 		case 'a':
-			aflag = 1;
+			aflag = optarg;
 			break;
 		case 'h':
-			hflag = 1;
+			hflag = optarg;
 			break;
 		default:
-			fprintf(stderr, "Usage: %s <-a | -h> <path>\n", argv[0]);
+			fprintf(stderr, "Usage: %s [-a file] [-h path] path\n", argv[0]);
 			return 1;
 		}
 	}
 
-	if (aflag && hflag)
-		errx(1, "can't have -a and -h used simultaneously");
-	if (!aflag && !hflag) {
-		fprintf(stderr, "Usage: %s <-a | -h> <path>\n", argv[0]);
-		return 1;
-	}
 	if (optind >= argc) {
-		fprintf(stderr, "Usage: %s <-a | -h> <path>\n", argv[0]);
+		fprintf(stderr, "Usage: %s [-a file] [-h path] path\n", argv[0]);
 		return 1;
 	}
 
@@ -59,7 +53,17 @@ main(int argc, char *argv[])
 	if (log == NULL)
 		err(1, "gemlog_readdir");
 
-	_print_gemlog(log);
+	if (!aflag && !hflag)
+		_print_gemlog(log);
+
+//	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");
+	}
 
 	gemlog_entry_list_free(log);
 	return 0;