itsv2agenda: more straightforward approach for generating output - ics2txt - convert icalendar .ics file to plain text Err bitreich.org 70
hgit clone git://bitreich.org/ics2txt git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/ics2txt URL:git://bitreich.org/ics2txt git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/ics2txt bitreich.org 70
1Log /scm/ics2txt/log.gph bitreich.org 70
1Files /scm/ics2txt/files.gph bitreich.org 70
1Refs /scm/ics2txt/refs.gph bitreich.org 70
1Tags /scm/ics2txt/tag bitreich.org 70
1README /scm/ics2txt/file/README.md.gph bitreich.org 70
i--- Err bitreich.org 70
1commit 46202b022c22d7e917ece6bcdb5f8235ac314e09 /scm/ics2txt/commit/46202b022c22d7e917ece6bcdb5f8235ac314e09.gph bitreich.org 70
1parent cf5ca595cdbe8c8d7d3358e58a43452cc222d7c2 /scm/ics2txt/commit/cf5ca595cdbe8c8d7d3358e58a43452cc222d7c2.gph bitreich.org 70
hAuthor: Josuah Demangeon <me@josuah.net> URL:mailto:me@josuah.net bitreich.org 70
iDate: Sun, 20 Jun 2021 21:27:23 +0200 Err bitreich.org 70
i Err bitreich.org 70
itsv2agenda: more straightforward approach for generating output Err bitreich.org 70
i Err bitreich.org 70
iDiffstat: Err bitreich.org 70
i M tsv2agenda.c | 36 +++++++++++++++++-------------- Err bitreich.org 70
i Err bitreich.org 70
i1 file changed, 20 insertions(+), 16 deletions(-) Err bitreich.org 70
i--- Err bitreich.org 70
1diff --git a/tsv2agenda.c b/tsv2agenda.c /scm/ics2txt/file/tsv2agenda.c.gph bitreich.org 70
i@@ -59,7 +59,7 @@ print_time(struct tm *tm) Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i static void Err bitreich.org 70
i-print_header1(struct tm *old, struct tm *new) Err bitreich.org 70
i+print_header0(struct tm *old, struct tm *new) Err bitreich.org 70
i { Err bitreich.org 70
i int same; Err bitreich.org 70
i Err bitreich.org 70
i@@ -70,7 +70,7 @@ print_header1(struct tm *old, struct tm *new) Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i static void Err bitreich.org 70
i-print_header2(struct tm *beg, struct tm *end) Err bitreich.org 70
i+print_header1(struct tm *beg, struct tm *end) Err bitreich.org 70
i { Err bitreich.org 70
i int same; Err bitreich.org 70
i Err bitreich.org 70
i@@ -83,18 +83,26 @@ print_header2(struct tm *beg, struct tm *end) Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i static void Err bitreich.org 70
i-print_header3(void) Err bitreich.org 70
i+print_headerN(void) Err bitreich.org 70
i { Err bitreich.org 70
i print_date(NULL); Err bitreich.org 70
i print_time(NULL); Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i static void Err bitreich.org 70
i-print_row(AgendaCtx *ctx, char **fields, size_t i) Err bitreich.org 70
i+print_header(AgendaCtx *ctx, struct tm *beg, struct tm *end, size_t *num) Err bitreich.org 70
i { Err bitreich.org 70
i- if (i > ctx->fieldnum || *fields[i] == '\0') Err bitreich.org 70
i- return; Err bitreich.org 70
i- fprintf(stdout, "%s\n", fields[i]); Err bitreich.org 70
i+ switch ((*num)++) { Err bitreich.org 70
i+ case 0: Err bitreich.org 70
i+ print_header0(&ctx->beg, beg); Err bitreich.org 70
i+ break; Err bitreich.org 70
i+ case 1: Err bitreich.org 70
i+ print_header1(beg, end); Err bitreich.org 70
i+ break; Err bitreich.org 70
i+ default: Err bitreich.org 70
i+ print_headerN(); Err bitreich.org 70
i+ break; Err bitreich.org 70
i+ } Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i static void Err bitreich.org 70
i@@ -102,7 +110,6 @@ print(AgendaCtx *ctx, char **fields) Err bitreich.org 70
i { Err bitreich.org 70
i struct tm beg = {0}, end = {0}; Err bitreich.org 70
i time_t t; Err bitreich.org 70
i- size_t i = FIELD_OTHER; Err bitreich.org 70
i char const *e; Err bitreich.org 70
i Err bitreich.org 70
i t = strtonum(fields[FIELD_BEG], INT64_MIN, INT64_MAX, &e); Err bitreich.org 70
i@@ -120,14 +127,11 @@ print(AgendaCtx *ctx, char **fields) Err bitreich.org 70
i localtime_r(&t, &end); Err bitreich.org 70
i Err bitreich.org 70
i fputc('\n', stdout); Err bitreich.org 70
i- Err bitreich.org 70
i- print_header1(&ctx->beg, &beg); Err bitreich.org 70
i- print_row(ctx, fields, i++); Err bitreich.org 70
i- print_header2(&beg, &end); Err bitreich.org 70
i- print_row(ctx, fields, i++); Err bitreich.org 70
i- while (i < ctx->fieldnum) { Err bitreich.org 70
i- print_header3(); Err bitreich.org 70
i- print_row(ctx, fields, i++); Err bitreich.org 70
i+ for (size_t i = FIELD_OTHER, row = 0; i < ctx->fieldnum; i++) { Err bitreich.org 70
i+ if (*fields[i] == '\0') Err bitreich.org 70
i+ continue; Err bitreich.org 70
i+ print_header(ctx, &beg, &end, &row); Err bitreich.org 70
i+ fprintf(stdout, "%s\n", fields[i]); Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i ctx->beg = beg; Err bitreich.org 70
.
Response:
text/plain