[Remind-Fans] Remind fixes in git

Dianne Skoll dianne at skoll.ca
Sat Feb 22 17:35:06 EST 2020


Hi,

Please try the latest from
https://dianne.skoll.ca/projects/remind/git/Remind.git/

Jochen Sprickerhof found what I'd consider to be a bug in Remind 03.03.00's
handling over overlapping events.  Consider this example:

$ echo "5 feb 2020 through 7 feb 2020 at 21:00 duration 5:00 MSG Event" | remind
-c -

Remind 03.03.00 outputs:

+----------------------------------------------------------------------------+
|                               February 2020                                |
+----------+----------+----------+----------+----------+----------+----------+
|  Sunday  |  Monday  | Tuesday  |Wednesday | Thursday |  Friday  | Saturday |
+----------+----------+----------+----------+----------+----------+----------+
 ...
+----------+----------+----------+----------+----------+----------+----------+
|2         |3         |4         |5         |6         |7         |8         |
|          |          |          |          |          |          |          |
|          |          |          |9:00pm-2:0|12:00-2:00|12:00-2:00|12:00-2:00|
|          |          |          |0am+1     |am Event  |am Event  |am Event  |
|          |          |          |Event     |          |          |          |
|          |          |          |          |          |          |          |
|          |          |          |          |          |          |
|275b1f62b64b9591aa08eedf7d523a7ebbd009a1
+----------+----------+----------+----------+----------+----------+----------+

As you see, the "leftover" bits of the daily event show up in the calendar
because Remind always chooses the *earliest* of overlapping events.  This
is wrong; the version in git changes this decition to always choose the
*latest* of overlapping events.  The git version outputs:

+----------------------------------------------------------------------------+
|                               February 2020                                |
+----------+----------+----------+----------+----------+----------+----------+
|  Sunday  |  Monday  | Tuesday  |Wednesday | Thursday |  Friday  | Saturday |
+----------+----------+----------+----------+----------+----------+----------+
 ...

+----------+----------+----------+----------+----------+----------+----------+
|2         |3         |4         |5         |6         |7         |8         |
|          |          |          |          |          |          |          |
|          |          |          |9:00pm-2:0|9:00pm-2:0|9:00pm-2:0|12:00-2:00|
|          |          |          |0am+1     |0am+1     |0am+1     |am Event  |
|          |          |          |Event     |Event     |Event     |          |
|          |          |          |          |          |          |          |
|          |          |          |          |          |          |          |
+----------+----------+----------+----------+----------+----------+----------+

which I think is closer to what's intended.  Note that we still get the
"leftover" of the last multi-day event on the 8th.

To be completely correct, Remind should probably output both the "leftover"
from the previous night's event as well as tonight's event on the 6th and
7th.  However, this means a given REM line can have more than one
trigger date/time and that breaks all kinds of assumptions in the
Remind code.  So it will never happen.

Other changes in git:

- You can specify times in 24h format (17:30) or AM/PM format (5:30pm)
- You can specify durations as times (2:30) or minutes (150)
- The $FormWidth variable (used by MSF to format long reminders) was
  previously undocumented; now it is documented and it sets itself
  to the terminal width - 8 if the width can be determined, and 72 if not.
- "today" is highlighted with a row of asterisks in "remind -c" output.

Regards,

Dianne.


More information about the Remind-fans mailing list