[Remind-Fans] timezone handling

Dianne Skoll dianne at skoll.ca
Mon Mar 6 16:11:12 EST 2023


On Mon, 6 Mar 2023 20:17:38 +0000
Tim Chase <remind at tim.thechases.com> wrote:

> On 2023-03-06 13:43, Dianne Skoll via Remind-fans wrote:
> > I let Remind (or more precisely, my C library) do the heavy lifting.

> > REM Sun November SATISFY [isdst($T) != isdst($T+1)] MSG Daylight
> > Saving Time Ends REM Sun March SATISFY [isdst($T) != isdst($T+1)]
> > MSG Daylight Saving Time Starts

> That's deviously elegant.  I love it! (and have updated my reminder
> file accordingly)

Nice! :) The following should work for anywhere on Earth that observes
Daylight Saving Time, no matter what the rules are or whether it's the
Northern or Southern hemisphere.  It's way less efficient than the
above:

  REM SATISFY [ isdst($T) && !isdst($T+1)] MSG Daylight Saving Time Ends
  REM SATISFY [!isdst($T) &&  isdst($T+1)] MSG Daylight Saving Time Starts

If your time always changes early on a Sunday morning, then these
variants are far more efficient:

  REM Sun SATISFY [ isdst($T) && !isdst($T+1)] MSG Daylight Saving Time Ends
  REM Sun SATISFY [!isdst($T) &&  isdst($T+1)] MSG Daylight Saving Time Starts

If your location doesn't observe daylight saving time, you'll get a
warning that no trigger date could be computed.

Regards,

Dianne.


More information about the Remind-fans mailing list