aboutsummaryrefslogtreecommitdiff
path: root/bin/main.ml
diff options
context:
space:
mode:
Diffstat (limited to 'bin/main.ml')
-rw-r--r--bin/main.ml8
1 files changed, 7 insertions, 1 deletions
diff --git a/bin/main.ml b/bin/main.ml
index 827e6f2..896a6bd 100644
--- a/bin/main.ml
+++ b/bin/main.ml
@@ -21,6 +21,12 @@ let temporal_report y =
| Ok t -> t
| Error e -> failwith e
in
+ (* [week] is "" for roughly 30 days a year (outside any numbered week);
+ printed as-is, that collapses two of the seven space-separated fields
+ into a double space, so naive field-position parsing (e.g. awk '{print
+ $4}') silently reads the wrong column on those days. Emit "-" instead,
+ so every line always has exactly seven single-space-separated fields. *)
+ let field s = if s = "" then "-" else s in
let d = ref jan1 in
while D.compare !d dec31 <= 0 do
let t = Rite_ef.Temporal_ef.temporal !d in
@@ -30,7 +36,7 @@ let temporal_report y =
in
Printf.printf "%s %s %s %s %s %s %s\n" r.Colitur_kernel.Record.date
r.Colitur_kernel.Record.weekday r.Colitur_kernel.Record.season
- r.Colitur_kernel.Record.week r.Colitur_kernel.Record.slug
+ (field r.Colitur_kernel.Record.week) r.Colitur_kernel.Record.slug
r.Colitur_kernel.Record.rank r.Colitur_kernel.Record.colour;
d := D.add_days !d 1
done