Dianne Skoll
447bda5c91
Warn if given a bad debug flag.
2025-01-17 10:22:22 -05:00
Dianne Skoll
4f351c089e
Add the "-dq" debugging flag, for outputing TRANSLATE commands needed by a reminder script.
Remind unit tests / tests (push) Successful in 44s
2025-01-17 08:46:29 -05:00
Dianne Skoll
8d0743dd3e
Don't allow a translation entry if printf-style formatters differ.
2025-01-16 12:53:23 -05:00
Dianne Skoll
c2ec4e9d29
Don't require any translation strings to include a trailing "\n"
2025-01-14 13:46:23 -05:00
Dianne Skoll
17ccf5d2b4
Make more messages translatable.
2025-01-14 11:27:47 -05:00
Dianne Skoll
213138a7b7
Split the "-ds" debug flag into "-ds" and "-dh"
...
-ds prints parsed expressions
-dh dumps hash-table statistics on exit.
2024-12-31 12:50:15 -05:00
Dianne Skoll
562cec3dc8
Mass-update copyright date to 2025.
2024-12-29 13:47:07 -05:00
Dianne Skoll
5a2914f6c7
Start hash tables with 7 buckets instead of 17; print more detailed hash stats with -ds; consistently use ErrFp instead of stderr
Remind unit tests / tests (push) Successful in 32s
2024-12-14 11:52:16 -05:00
Dianne Skoll
a19b009f7c
Fix man page typo and cppcheck warnings.
Remind unit tests / tests (push) Successful in 32s
2024-12-13 15:22:46 -05:00
Dianne Skoll
b8c4786b33
Allow INCLUDE/DO/SYSINCLUDE to take a QuotedString argument. This allows for filenames with spaces in them.
2024-12-13 10:38:34 -05:00
Dianne Skoll
5e333f6162
Add the SYSINCLUDE directive.
2024-12-13 08:18:22 -05:00
Dianne Skoll
c7ca1b4baa
Get rid of the DyamicFoo hacks and make most translatable variables live in the translation table.
2024-12-12 11:43:03 -05:00
Dianne Skoll
0ab93f2dea
Guard against printf-style formatting attacks by malicious translation files.
2024-12-11 09:43:04 -05:00
Dianne Skoll
286babc1bf
Avoid memory leak.
2024-12-09 23:23:39 -05:00
Dianne Skoll
9dbb0de7e6
Fix bug in ParseQuotedString
2024-12-09 20:07:29 -05:00
Dianne Skoll
9f9ae77895
Bound-check GetErr
2024-12-09 20:03:15 -05:00
Dianne Skoll
d9796e72e5
Allow error messages to be localized.
2024-12-09 19:55:23 -05:00
Dianne Skoll
973019c4c7
Implement TRANSLATE keyword.
2024-12-09 12:56:40 -05:00
Dianne Skoll
be7c67b6fd
Add ParseQuotedString function for eventually implementing TRANSLATE directive.
2024-12-08 11:54:49 -05:00
Dianne Skoll
0f5de395ff
Add FRENAME command.
2024-11-13 17:29:32 -05:00
Dianne Skoll
342c229a57
Get dedup hash table stats; reduce slots to 32.
2024-11-12 21:56:27 -05:00
Dianne Skoll
e0fde98410
Add $DedupeReminders global variable.
2024-11-12 09:26:31 -05:00
Dianne Skoll
533718b0a0
Massive whitespace cleanups: Untabify everything.
2024-11-08 20:30:13 -05:00
Dianne Skoll
ad382fea25
Print hash-table statistics with "-ds" debugging.
Remind unit tests / tests (push) Failing after 29s
2024-10-11 16:34:11 -04:00
Dianne Skoll
ee1c931932
Add $SuppressImplicitWarnings system variable.
...
This suppresses warnings about missing REM or MSG tokens.
2024-09-15 09:39:15 -04:00
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
093c97ff91
Add tests for missing REM or missing MSG being diagnosed.
2024-08-21 12:50:51 -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
51cc939d0c
Suppress a couple of cppcheck warnings.
Remind unit tests / tests (push) Successful in 30s
2024-07-30 15:17:13 -04:00
Dianne Skoll
e3f9380fcd
Allow ONCE to be used if input is stdin, as long as $OnceFile is set.
...
Clarify documentation.
2024-07-10 09:32:05 -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
4454613d00
Fix typo
2024-06-06 12:51:02 -04:00
Dianne Skoll
0704808500
Don't rely on newer C feature that allows anonymous parameters
2024-06-06 12:48:44 -04:00
Dianne Skoll
e33bf4e80a
Explicitly set sa_flags in sigaction.
2024-06-06 10:42:04 -04:00
Dianne Skoll
7c86bc910a
Better diagnostics of unmatched IFs
2024-06-05 09:08:04 -04:00
Dianne Skoll
4f146a99a9
Simplify Eprint logic.
2024-06-04 21:10:17 -04:00
Dianne Skoll
a6a638e0e6
Add test for UNMATCHED PUSH
2024-06-04 16:27:23 -04:00
Dianne Skoll
325814f5e1
Print the location of unmatched PUSH
2024-06-04 16:25:14 -04:00
Dianne Skoll
2bf73987ac
Don't need to flush unless we're about to print.
2024-06-04 11:56:05 -04:00
Dianne Skoll
3e9eeea8dc
Update docs; kill time-limiter when we queue.
2024-06-04 11:51:27 -04:00
Dianne Skoll
4a7cef4644
Better error diagnostics.
2024-06-03 18:02:19 -04:00
Dianne Skoll
8125b96f0b
Add --max-excution-time cmdline option.
2024-06-03 10:40:58 -04:00
Dianne Skoll
a8bfb41a9e
Add $ExpressionTimeLimit system variable.
2024-06-02 14:01:17 -04:00
Dianne Skoll
b49c0f52bd
Implement EXPR ON and EXPR OFF
2024-06-02 12:39:00 -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
ee08ce98d7
More comments.
2024-06-01 23:33:33 -04:00
Dianne Skoll
581bd95838
Allow placing a literal [ in a reminder by using [[
2024-06-01 18:46:17 -04:00
Dianne Skoll
93eca25141
Fix spurious "Missing ']'" error reported by Jochen Sprickerhof
2024-06-01 16:30:48 -04:00
Dianne Skoll
d2b43605ad
Completely revamp expression engine.
2024-06-01 08:19:12 -04:00
Dianne Skoll
c03a95ad94
Use built-in versions of strdup, strcasecmp and strncasecmp instead of writing our own.
2024-04-21 14:44:24 -04:00