Dianne Skoll
fa1033db6f
Don't warn about assuming REM type if we've already warned about assuming "REM"
2024-08-21 15:09:41 -04:00
Dianne Skoll
6e64b175aa
Diagnose lines that are implicitly treated as REM lines.
...
Diagnose REM commands that are implicitly treated as having MSG type.
Properly start all lines that should start with REM, with REM.
2024-08-21 12:45:30 -04:00
Dianne Skoll
ac033d75c0
Add the $OnceFile special variable.
...
This lets us specify a timestamp file that Remind
uses to track the last run for the purpose of handling
the ONCE keyword, rather than using the last access date
of the reminder file.
Keeping a timestamp file is a more reliable way to track
when Remind was last run.
2024-07-09 09:23:15 -04:00
Dianne Skoll
691185f22c
Update test file so tests pass.
2024-06-02 20:50:34 -04:00
Dianne Skoll
a8bfb41a9e
Add $ExpressionTimeLimit system variable.
2024-06-02 14:01:17 -04:00
Dianne Skoll
07fca94a7f
Properly handle purging of SCANFROM reminders.
2024-06-02 12:07:12 -04:00
Dianne Skoll
73917ee537
Only set nonconst_expr in purge mode in a couple of cases.
2024-06-02 12:02:29 -04:00
Dianne Skoll
76f9edecf6
Don't purge reminders with a SCANFROM clause.
2024-06-02 10:36:21 -04:00
Dianne Skoll
d77d9854d2
Remove src/expr.h - everything in it is now in types.h or protos.h
2024-06-02 10:26:41 -04:00
Dianne Skoll
b78702cc53
Assume all function names are lower-case.
2024-06-01 08:46:27 -04:00
Dianne Skoll
d2b43605ad
Completely revamp expression engine.
2024-06-01 08:19:12 -04:00
Dianne Skoll
27c8737f3a
Only save trigger date when computing it, not while parsing.
2024-04-18 23:41:47 -04:00
Dianne Skoll
0a1178cfd7
Don't clear out last trigger time unnecessarily.
2024-04-18 17:56:49 -04:00
Dianne Skoll
0d55e04284
Make a local OMIT that doesn't specify a weekday name into a syntax error.
2024-03-03 14:51:53 -05:00
Dianne Skoll
f4cce54b70
Warn if a local OMIT doesn't actually omit any weekdays.
2024-03-03 11:00:35 -05:00
Dianne Skoll
0f782f7697
Set CLOEXEC flag on files we open.
...
When running programs in server mode, connect stdin and stdout to /dev/null
2024-02-29 09:22:15 -05:00
Dianne Skoll
22ccce0934
Lay groundwork for having TriggerReminder put the results in a DynamicBuffer rather than sending to stdout
...
Eventually should allow us to make a JSON-based daemon mode.
2024-02-25 09:17:54 -05:00
Dianne Skoll
8e99ed27e7
Take is_queued into account when deciding to issue banner.
2024-02-24 09:33:59 -05:00
Dianne Skoll
72d10178bf
Mass-update copyright year to 2024.
2023-12-31 12:05:03 -05:00
Dianne Skoll
bb516946be
If we de-queue a reminder without issuing it, send a NOTE queued %d message in server mode.
2023-12-15 14:16:26 -05:00
Dianne Skoll
6e53fd6924
Refactor code: Replace SystemTime(x)/60 with MinutesPastMidnight(x)
2023-12-09 10:41:03 -05:00
Dianne Skoll
ec9b30c616
Don't let "REM ... MSG NOTE endreminder" mess with daemon protocol.
...
Pad with a leading space. :)
2023-12-06 13:28:17 -05:00
Dianne Skoll
03fdc06b65
Make AT optional: If we encounter a TIME, then implicitly start an AT clause.
2023-09-18 12:59:00 -04:00
Dianne Skoll
85b0348fa7
Add $ParseUntriggered system variable.
2023-07-20 09:21:37 -04:00
Dianne Skoll
e63d4be4e8
Make "-tn" explicitly set a delta of ++n for *all* REM statements.
...
Also change the name of $DeltaOffset to $DeltaOverride.
2023-06-03 13:36:58 -04:00
Dianne Skoll
65561e7f34
Add "-tz" option to suppress all deltas. Document -tn better.
2023-05-21 20:14:07 -04:00
Dianne Skoll
ec76554d41
Treat a null -k option as no -k option
2023-03-15 09:22:44 -04:00
Dianne Skoll
e3ec6565e9
Add support for -k: option --- applies command only to *queued* reminders.
2023-03-13 15:16:24 -04:00
Dianne Skoll
f9656edc51
Make "SPECIAL MSG" the same as "MSG" and same for MSF, RUN, PS and PSFILE
...
This lets us use variables to set the type of a REM command:
SET t "MSG"
REM SPECIAL [t] A message
SET t "CAL"
REM SPECIAL [t] A calendar message
SET t "RUN"
REM SPECIAL [t] /bin/some_cmd
2023-03-03 11:53:45 -05:00
Dianne Skoll
2f196e3c9f
Update copyright year. :)
2022-12-30 13:43:28 -05:00
Dianne Skoll
0cea410529
Add a bunch of: "SPDX-License-Identifier: GPL-2.0-only" comments.
2022-12-26 14:24:33 -05:00
Dianne Skoll
a1eafb2c89
Add NOQUEUE modifier; reverse order of args to soleq and make second arg optional (defaults to today())
2022-12-23 11:04:18 -05:00
Dianne Skoll
4aacf74e25
More renaming of jul -> dse
2022-12-21 13:35:12 -05:00
Dianne Skoll
387125d983
Start fixing terminology: Julian becomes DSE
...
Remind's so-called "Julian" date is not a true Julian date.
It's really the number of days since the Remind Epoch, so rename
to DSE (Days Since Epoch)
2022-12-21 13:14:00 -05:00
Dianne Skoll
07fd975935
Add the $AddBlankLines system variable.
2022-10-10 22:49:28 -04:00
Dianne Skoll
e0998a3991
Implement trigtags()
2022-10-09 21:31:24 -04:00
Dianne Skoll
dedb9766c9
Make a SATISFY-type reminder with ADDOMIT but no MSG actually add to the omits.
...
Previously, something like: REM 1 May ADDOMIT SATISFY 1
would not add to the global OMIT list.
2022-10-06 08:35:50 -04:00
Dianne Skoll
a01e05c1db
Fix bug introduced in commit 98c5bf511e:
...
Don't print a banner when issuing a queued reminder.
2022-09-21 18:17:25 -04:00
Dianne Skoll
efecf2e1ea
Make "remind -c" optionally support the SPECIAL SHADE
2022-09-16 11:41:18 -04:00
Dianne Skoll
8666e6357e
Start working on support for SHADE in remind -c output.
2022-09-16 08:42:20 -04:00
Dianne Skoll
98c5bf511e
Print banner prior to first MSG-type reminder.
2022-09-06 09:14:55 -04:00
Dianne Skoll
4d17494371
Bump copyright date.
2022-03-14 21:12:20 -04:00
Dianne Skoll
eb100e57e2
Parse untriggered reminder lines to catch expression-pasting errors.
2022-03-12 15:48:31 -05:00
Dianne Skoll
61d665ef7d
Turn a bunch of Eprint calls into Wprint calls to indicate warnings instead of errors.
2022-03-12 10:27:58 -05:00
Dianne Skoll
e1fa11c94c
Add the First/Second/Third/Fourth/Last syntactic sugar and the
...
~N/~~N forms of "back"
2022-03-11 20:53:52 -05:00
Dianne Skoll
6d2bbbd7e2
Another diagnostic message.
2022-03-02 15:25:27 -05:00
Dianne Skoll
1453be83b2
Add more diagnostics for bad UNTIL dates.
2022-03-02 15:17:03 -05:00
Dianne Skoll
8659131be2
Use proper keyword in error message.
2022-03-02 14:43:11 -05:00
Dianne Skoll
0276ce322d
Diagnose if UNTIL is earlier than start date unless there is a nonconst expr
2022-03-02 09:11:01 -05:00
Dianne Skoll
b36c99a34b
Move successful exit to one spot.
2022-03-02 09:01:33 -05:00