Dianne Skoll
d75587fa7b
Update change log.
2025-09-12 11:43:15 -04:00
Dianne Skoll
d9a2b15814
Bump version number to 06.01.01.
2025-09-12 11:33:15 -04:00
Dianne Skoll
aa090bf319
Add tests for PrintValue string truncation.
2025-09-12 11:22:51 -04:00
Dianne Skoll
dc6a229f5f
Add some const qualifiers, as recommended by cppcheck.
2025-09-12 11:15:10 -04:00
Dianne Skoll
5a3840759a
Make PrintValue truncate long strings on a multibyte-character boundary instead of potentially splitting a UTF-8 sequence.
2025-09-12 11:12:19 -04:00
Dianne Skoll
779174ae32
Proper font formatting.
2025-09-11 17:26:43 -04:00
Dianne Skoll
2f70b37d4c
Be stricter about parsing hex constants.
2025-09-11 17:22:24 -04:00
Dianne Skoll
d15c8f106b
Support hexadecimal integer constants in expressions; add hex() function.
2025-09-11 17:02:22 -04:00
Dianne Skoll
9d999a0074
Support hexacdecimal integer constants in expressions.
2025-09-11 16:50:13 -04:00
Dianne Skoll
097dda1750
Make asc() always return a number between 0 and 255.
2025-09-11 16:42:32 -04:00
Dianne Skoll
565bca4380
Add statistic for max expr node evaluations per line.
2025-09-11 12:04:32 -04:00
Dianne Skoll
adb38fe82e
Fix off-by-one error.
2025-09-11 11:25:20 -04:00
Dianne Skoll
57545ddc3f
Add test for --max-expr-complexity
2025-09-11 11:20:29 -04:00
Dianne Skoll
804cf14a78
Implement --max-expr-complexity
2025-09-11 11:11:11 -04:00
Dianne Skoll
641b5cec57
Mode docs on columns() vs mbstrlen()
2025-09-10 23:07:23 -04:00
Dianne Skoll
df53db19c4
Fix typo
2025-09-10 23:02:15 -04:00
Dianne Skoll
d9bf902153
Put #ifdef guards around wide char code.
2025-09-10 17:56:32 -04:00
Dianne Skoll
53a12de2f9
Fix typo
2025-09-10 17:54:26 -04:00
Dianne Skoll
fe2b34da68
Avoid memory leak.
2025-09-10 17:54:06 -04:00
Dianne Skoll
7e70ffe7f5
Fix typo
2025-09-10 17:43:59 -04:00
Dianne Skoll
55975154b1
Add codepoint() and mbchar() functions.
2025-09-10 17:33:57 -04:00
Dianne Skoll
3c6191ba61
Add tests where index() does not find the needle.
2025-09-10 13:48:28 -04:00
Dianne Skoll
b00cf9c5b7
Remove some unnecessary assignments.
2025-09-10 13:48:18 -04:00
Dianne Skoll
a6838802ad
Use mbsubstr and mbstrlen.
2025-09-10 13:27:57 -04:00
Dianne Skoll
375576fcc5
Add better support for multi-byte character set.
...
The functions mbindex, mbstrlen and mbsubstr are just like
index, strlen and substr, but they use and return 1-based
character indexes rather than 1-based byte indexes.
2025-09-10 13:25:27 -04:00
Dianne Skoll
2c9087aa79
Update WHATSNEW and prep for 06.01.00 release.
2025-09-08 12:27:27 -04:00
Dianne Skoll
928f65ae47
Add a few more time zone tests.
2025-09-08 12:26:34 -04:00
Dianne Skoll
ed7b4f5ecc
Nicer output.
2025-09-06 21:17:36 -04:00
Dianne Skoll
9aad9401ea
Fix man page wording.
2025-09-06 18:15:47 -04:00
Dianne Skoll
4574b552b6
Update WHATSNEW.
2025-09-06 12:05:46 -04:00
Dianne Skoll
21e0940257
Add distro-beta target.
2025-09-06 12:02:20 -04:00
Dianne Skoll
7064893ff2
Reorder man page; add explanation of how omit interacts with time zone.
2025-09-06 11:08:34 -04:00
Dianne Skoll
f8781276e2
Clarify that OMITFUNC also sees dates in the TZ timezone.
2025-09-06 11:00:50 -04:00
Dianne Skoll
b02f61ea05
Make alignment.rem executable.
2025-09-05 18:33:59 -04:00
Dianne Skoll
60447d530d
Add a small example.
2025-09-05 18:32:05 -04:00
Dianne Skoll
2835176ad3
Make "make test" run all tests by default. Add individual test-basic and test-tz makefile targets.
2025-09-05 17:46:25 -04:00
Dianne Skoll
b0784feb1a
Bump version to 06.01.00.
2025-09-04 15:58:07 -04:00
Dianne Skoll
ef7021972e
Add trigimetz and trigeventstarttz functions.
2025-09-04 15:36:27 -04:00
Dianne Skoll
e449fcdfcf
Add tests for trigtz
2025-09-04 14:29:00 -04:00
Dianne Skoll
47a4456c20
Explicitly initialize LastTrigger.tz to NULL.
2025-09-04 14:26:35 -04:00
Dianne Skoll
e9ee7492f7
Check for setuid/setgid early.
2025-09-04 14:25:09 -04:00
Dianne Skoll
2baa0405f3
Document new JSON key pairs.
2025-09-04 13:54:34 -04:00
Dianne Skoll
3425530c1c
Add Makefile for running tests from tests/ with "make test"
2025-09-04 11:00:03 -04:00
Dianne Skoll
eeae3298ef
Nicer formatting.
2025-09-04 10:59:58 -04:00
Dianne Skoll
4237dc4a3f
Allow empty string to be used in tzconvert to designate system default time zone.
2025-09-04 10:09:46 -04:00
Dianne Skoll
faf8947dda
Properly cache stdin in interactive mode.
2025-09-04 00:15:21 -04:00
Dianne Skoll
41a3db3a37
Fix abort.
2025-09-03 23:14:58 -04:00
Dianne Skoll
f12bcf3fe6
Restructure test targets.
2025-09-03 22:36:46 -04:00
Dianne Skoll
f9261bb24f
Better target name
2025-09-03 19:35:28 -04:00
Dianne Skoll
2ff9aedba5
Add test.
2025-09-03 19:34:48 -04:00
Dianne Skoll
1b793eff2e
Hard-code datetimes so slight astronomical function variations don't mess up test.
2025-09-03 19:33:18 -04:00
Dianne Skoll
e4c41e0f45
More TZ tests.
2025-09-03 19:13:55 -04:00
Dianne Skoll
9ec1006804
Make an empty TZ (ie, TZ "") the same as no TZ.
2025-09-03 19:10:26 -04:00
Dianne Skoll
dd048c0557
Formatting.
2025-09-03 19:06:23 -04:00
Dianne Skoll
dce1f282f4
Improve Makefile.
2025-09-03 19:05:41 -04:00
Dianne Skoll
7120d07d84
Add testtz and test-all targets.
2025-09-03 19:03:59 -04:00
Dianne Skoll
127358db02
The official IANA name of UTC is "Universal".
2025-09-03 18:55:43 -04:00
Dianne Skoll
a89aaf18b6
Add another distclean target
2025-09-03 18:37:33 -04:00
Dianne Skoll
5734bd7524
Start adding TZ tests.
2025-09-03 18:36:13 -04:00
Dianne Skoll
dfabda7dee
add trigtz() function
2025-09-03 14:19:31 -04:00
Dianne Skoll
da146d7989
Always output time_in_tz in JSON when needed.
2025-09-03 14:08:56 -04:00
Dianne Skoll
e147925462
Make tests pass; update remind conf mode.
2025-09-03 13:58:09 -04:00
Dianne Skoll
703907c94d
Update JSON output.
2025-09-03 13:57:25 -04:00
Dianne Skoll
bcfee04cae
Handle another time zone edge case.
2025-09-03 13:21:16 -04:00
Dianne Skoll
5f9e71f9eb
More timezone fixification.
2025-09-03 13:05:54 -04:00
Dianne Skoll
272336226e
Add timezone support to evaltrig.
2025-09-03 12:42:59 -04:00
Dianne Skoll
32f4b125b5
Seemingly (?) working time zone support!!
2025-09-03 12:35:51 -04:00
Dianne Skoll
7979a69cb9
First semi-sorta-working time zone adjustment.
2025-09-03 12:22:09 -04:00
Dianne Skoll
651368fedc
More work on timezone support.
2025-09-03 11:35:21 -04:00
Dianne Skoll
fe002557cf
New approach to handling time zone specs in REM command.
2025-09-03 11:02:01 -04:00
Dianne Skoll
d2785d909c
Remember DSEToday and SysTime in Local* variables so we can switch timezones.
2025-09-03 10:36:30 -04:00
Dianne Skoll
c2345a240b
Update docs to reflect multi-type system variables.
2025-09-02 09:39:32 -04:00
Dianne Skoll
5b6bf25a20
Document readline support.
2025-09-01 10:14:22 -04:00
Dianne Skoll
44f9f0f0d4
Better quotes.
2025-09-01 10:09:27 -04:00
Dianne Skoll
0416d6da9c
Update to version 06.00.02.
2025-09-01 10:02:14 -04:00
Dianne Skoll
5d46df871f
Clamp trigger() to "1 January 1990 AT 00:00" if UTC flag is used.
2025-08-28 13:30:21 -04:00
Dianne Skoll
c5d661124c
Never return a year < 1990 from trigger()
2025-08-28 12:53:28 -04:00
Dianne Skoll
2f239f77a5
Default $ParseUntriggered to 0 instead of 1
2025-08-27 11:34:10 -04:00
Dianne Skoll
1ef05d3f85
Slight efficiency improvement.
2025-08-21 11:50:45 -04:00
Dianne Skoll
7c56aad791
FIx tests.
2025-08-21 11:49:16 -04:00
Dianne Skoll
5f0f68f508
Allow '-i$foo' to be interpreted as '-i$foo=0'
2025-08-20 10:27:22 -04:00
Dianne Skoll
71bfe31002
Make IS_INTERACTIVE() macro.
2025-08-19 21:39:31 -04:00
Dianne Skoll
4661b454c0
Don't add *everything* to history, LOL.
2025-08-19 21:32:26 -04:00
Dianne Skoll
d41520a04f
Better example.
2025-08-19 15:54:03 -04:00
Dianne Skoll
0206e538e0
Avoid -Wunused-result warning.
2025-08-19 15:22:05 -04:00
Dianne Skoll
6689cbfda3
Explicitly set latitude and longitude in test files.
2025-08-19 15:04:03 -04:00
Dianne Skoll
5baf102bfe
Update WHATSNEW.
2025-08-19 12:43:00 -04:00
Dianne Skoll
c9002d5b54
Bump version to 06.00.01
2025-08-19 12:38:38 -04:00
Dianne Skoll
ac3ee7e22b
Use constant-time DBufLen instead of O(n) strlen()
2025-08-19 10:21:01 -04:00
Dianne Skoll
f366037b8d
Truncate over-long variable name in DUMP.
2025-08-19 10:13:09 -04:00
Dianne Skoll
a46488a50d
Remove incorrect assignment that could cause a segfault.
2025-08-19 09:58:04 -04:00
Dianne Skoll
f91a1a2d65
If we don't have readline, don't declare unused variable.
2025-08-18 21:05:56 -04:00
Dianne Skoll
2ac8fb50e1
Fix typos.
2025-08-18 21:01:48 -04:00
Dianne Skoll
7df826f635
Add whole line at a time to history buffer.
2025-08-18 20:35:10 -04:00
Dianne Skoll
f8ce7b51da
Change prompt depending on whether or not we're ignoring lines.
2025-08-18 16:26:58 -04:00
Dianne Skoll
35ee94ca6b
If stdin and stdout are TTYs, use readline() where possible.
2025-08-18 16:20:45 -04:00
Dianne Skoll
c2a3468e04
Prep for 6.0.0 RELEASE.
2025-08-18 10:56:18 -04:00
Dianne Skoll
4ff2064452
Fix typos.
2025-08-18 10:50:52 -04:00
Dianne Skoll
8e00bd5acc
Fix typo in comment.
2025-08-16 18:32:08 -04:00
Dianne Skoll
86f65e11bb
Use keypress-slash to auto-fill COMPLETE-THROUGH field instead of double-click.
2025-08-16 11:54:19 -04:00
Dianne Skoll
0c9ec11fce
Add clarifying comment.
2025-08-16 10:09:44 -04:00
Dianne Skoll
07dcaec176
Fix typos.
2025-08-15 22:57:13 -04:00
Dianne Skoll
e87849256b
Make --flush simply set standard I/O streams to unbuffered.
2025-08-15 22:41:18 -04:00
Dianne Skoll
fd8ecd88a8
Add --flush option; use it in tests.
...
Should help with weird systems whose C libraries have different flushing rules.
2025-08-15 22:36:20 -04:00
Dianne Skoll
5e36a6563a
Format improvement.
2025-08-15 22:26:18 -04:00
Dianne Skoll
274a2bf067
Don't unconditionally set RunDIsabled.
2025-08-15 20:53:07 -04:00
Dianne Skoll
4aa737e542
Tweak man page
2025-08-15 20:46:05 -04:00
Dianne Skoll
6474f4e0b6
Note that user-defined functions defined in a RUN-OFF context will have RUN OFF during evaluation.
2025-08-15 20:43:59 -04:00
Dianne Skoll
7b7b861399
Disable RUN in callbacks to ordx and subst_xxx functions.
2025-08-15 20:27:51 -04:00
Dianne Skoll
5cb0e82be2
Remove stray ^G.
2025-08-15 20:10:50 -04:00
Dianne Skoll
d9a4bd19f2
Remove extraneous semicolons.
2025-08-15 19:12:14 -04:00
Dianne Skoll
1004946d26
Add a couple of missing .PPs
2025-08-15 18:15:37 -04:00
Dianne Skoll
d877a6cb48
Fix a couple of typos.
2025-08-15 18:05:48 -04:00
Dianne Skoll
3eea329b32
Add some missing .fi directives.
2025-08-15 18:04:42 -04:00
Dianne Skoll
7bf23912ae
Improve man page slightly.
2025-08-15 15:46:08 -04:00
Dianne Skoll
6ae0340137
Document tkremind bug fix.
2025-08-15 15:36:59 -04:00
Dianne Skoll
0e48ace855
Update WHATSNEW.
2025-08-15 15:35:57 -04:00
Dianne Skoll
d1f1ddf5b7
Document the TODO introspection functions.
2025-08-15 15:33:04 -04:00
Dianne Skoll
5f9e227dc8
Document and test overriding of %: %! %? %@ %#
2025-08-15 15:28:23 -04:00
Dianne Skoll
b770676cb6
Add tests for trigistodo, trigcompletethrough, trigmaxoverdue
2025-08-15 15:22:39 -04:00
Dianne Skoll
5ee415c2fb
Add trigistodo(), trigcompletethrough() and trigmaxoverdue() introspection functions.
2025-08-15 15:20:57 -04:00
Dianne Skoll
6c2a4b66fd
Add tests and translations for %:
2025-08-15 15:07:32 -04:00
Dianne Skoll
6c2d65c08e
Allow non-alphanumeric substitution sequences to be overridden.
2025-08-15 14:55:03 -04:00
Dianne Skoll
cd2dc3bea3
Add test for %:
2025-08-15 14:35:31 -04:00
Dianne Skoll
b1b80316ab
Implement %: substitution sequence.
2025-08-15 11:54:31 -04:00
Dianne Skoll
f04835cf6f
Another eval that should be a catch.
2025-08-15 08:34:41 -04:00
Dianne Skoll
fb19ea6b7e
Use "catch" instead of "eval". What was I thinking??
2025-08-15 08:33:49 -04:00
Dianne Skoll
e2d7796d4a
Clarify wording.
2025-08-14 21:53:06 -04:00
Dianne Skoll
de2ec1aa7b
In --json mode, redirect any RUN ... command stdout to stderr
...
We really don't want to mess up the JSON we produce on stdout!!
2025-08-14 21:47:40 -04:00
Dianne Skoll
b9fb215d9d
Don't try to process stderr output as JSON. :)
2025-08-14 20:52:38 -04:00
Dianne Skoll
a62ed0e0c5
Always output well-formed JSON in --json mode.
2025-08-14 20:43:35 -04:00
Dianne Skoll
eceb5e3f82
Suppress some output in --json mode.
2025-08-14 20:35:07 -04:00
Dianne Skoll
d5aa93ae57
Document TkRemind support for max-overdue.
2025-08-14 19:05:17 -04:00
Dianne Skoll
a66da78b4a
Add support for MAX-OVERDUE to TkRemind.
2025-08-14 19:03:32 -04:00
Dianne Skoll
af69f54bff
Add max_overdue to JSON.
2025-08-14 18:54:15 -04:00
Dianne Skoll
a000a7f17e
Add MAX-OVERDUE feature.
2025-08-14 18:50:39 -04:00
Dianne Skoll
582f388500
Disable ANSI colors in JSON mode.
2025-08-14 13:57:23 -04:00
Dianne Skoll
7762f4f2d6
Add $HideCompletedTodos, $JSONMode and $TodoFilter system variables.
2025-08-14 13:56:02 -04:00
Dianne Skoll
31c9b2afb7
Disable ANSI color sequences in -p mode.
2025-08-14 13:43:32 -04:00
Dianne Skoll
119e954e9e
Update WHATSNEW
2025-08-14 12:38:52 -04:00
Dianne Skoll
6aa07edffd
Document "ordx" override of "ord"
2025-08-13 21:05:46 -04:00
Dianne Skoll
bdb9ad1a5d
Document new TkRemind features.
2025-08-13 20:33:15 -04:00
Dianne Skoll
05384fe7cf
Document --json.
2025-08-13 20:25:30 -04:00
Dianne Skoll
6125001e55
Make file not modify global function/variable context.
2025-08-13 19:02:37 -04:00
Dianne Skoll
78b307e387
Proper way of defaulting a variable.
2025-08-13 19:00:27 -04:00
Dianne Skoll
460d0a8d88
Separate out actual Jewish religious holidays from Israeli holidays.
2025-08-13 18:57:37 -04:00
Dianne Skoll
add35377ad
Boldification.
2025-08-13 17:37:39 -04:00
Dianne Skoll
fccd9ed42e
More word tweakage.
2025-08-13 17:36:12 -04:00
Dianne Skoll
a49ecccb34
Update README
2025-08-13 17:34:19 -04:00
Dianne Skoll
ae9fe78817
Proper horizontal resizing too.
2025-08-13 17:30:10 -04:00
Dianne Skoll
dbc5576312
Make today's reminders window properly resizable.
2025-08-13 17:27:35 -04:00
Dianne Skoll
6cbbebceaf
Pass all command-line options to Remind.
2025-08-13 16:57:29 -04:00
Dianne Skoll
4dc27ca7f5
Better error message.
2025-08-13 15:02:53 -04:00
Dianne Skoll
d8f97ce0f1
Tweak wording.
2025-08-13 15:01:26 -04:00
Dianne Skoll
0e1a80f2bd
Properly populate complete_through for existing reminders.
2025-08-13 14:58:49 -04:00
Dianne Skoll
4a7f703ab5
Update %! documentation; add %? documentation.
2025-08-13 14:39:36 -04:00
Dianne Skoll
101de948b2
Add support for TODO-style reminders in TkRemind.
2025-08-13 14:09:03 -04:00
Dianne Skoll
0e2d382b33
Proper calculation of --margin-bottom in -e mode
2025-08-13 13:06:48 -04:00
Dianne Skoll
a6c5c3cb90
Update docs on JSON trigger dump and SCANFROM changes.
2025-08-13 12:39:35 -04:00
Dianne Skoll
da573929ee
Document purge rules for TODOs.
2025-08-13 12:06:59 -04:00
Dianne Skoll
5217d9b675
Start adding TODO tests.
2025-08-13 11:53:56 -04:00
Dianne Skoll
79a87c6f1a
TkRemind now requires Remind 06.00.00
2025-08-13 11:36:01 -04:00
Dianne Skoll
cde5ffc84a
Bump version to 06.00.00
2025-08-13 11:34:41 -04:00
Dianne Skoll
6ef323a4f0
Document TODOs.
2025-08-13 11:28:04 -04:00
Dianne Skoll
8331ea2991
Fix TODO-issuing logic
2025-08-13 11:19:41 -04:00
Dianne Skoll
db28648d9d
Better spacing
2025-08-12 22:24:17 -04:00
Dianne Skoll
1a5915bba9
Show long options in help output.
2025-08-12 22:23:00 -04:00
Dianne Skoll
94a50fa22c
Refactor some code.
2025-08-12 22:13:36 -04:00
Dianne Skoll
fad6076568
Convert out-of-range SPECIAL COLOR to MSG.
2025-08-12 19:31:54 -04:00
Dianne Skoll
287039ac40
Convert color with components out of range to normal MSG-type reminders.
2025-08-12 19:26:23 -04:00
Dianne Skoll
8523218ef2
Add %? substitution sequence and translations for "are" and "were"
2025-08-12 19:08:34 -04:00
Dianne Skoll
fdaaf2b57a
Add comment; fix cppcheck warning.
2025-08-12 18:37:14 -04:00
Dianne Skoll
19eac9b8d5
nl - use "eergisteren" and "overmorgen"
2025-08-12 18:34:07 -04:00
Dianne Skoll
cda4877229
Fix "make cppcheck" warning.
2025-08-12 18:30:36 -04:00
Dianne Skoll
0976cd64f3
If evaluating ordx(n) yields an error, then error out instead of continuing with ord(n)
2025-08-12 18:27:20 -04:00
Dianne Skoll
10f7889ef2
Add balloon help and URL support to daily reminders view.
2025-08-12 15:49:04 -04:00
Dianne Skoll
2391ff4bc7
Add --hide-completed-todos option
2025-08-12 15:23:40 -04:00
Dianne Skoll
d21ae56deb
Sort out from/scanfrom and how todos work in calendar mode.
2025-08-12 15:12:54 -04:00
Dianne Skoll
773980afa6
Preserve "from" and "scanfrom"
2025-08-12 14:50:19 -04:00
Dianne Skoll
46a80da0e1
Preserve relative scanfroms in t->scanfrom; compute when needed.
2025-08-12 14:44:47 -04:00
Dianne Skoll
23516aebcb
Make the "x reminders queued" message clickable to show queue.
2025-08-12 00:16:17 -04:00
Dianne Skoll
b48ce0b245
Better queue display
2025-08-12 00:08:18 -04:00
Dianne Skoll
e4c090374d
Ugh, proper test reference.
2025-08-12 00:05:03 -04:00
Dianne Skoll
39fcbb72fd
%*! is not reproducible.
2025-08-12 00:03:19 -04:00
Dianne Skoll
5f2bf48752
Add ordinal number tests.
2025-08-11 23:51:37 -04:00
Dianne Skoll
9e5354fcb8
Add ordx definitions.
2025-08-11 23:44:21 -04:00
Dianne Skoll
49bdd135f7
Define ordx(n) for Dutch and French.
2025-08-11 23:34:08 -04:00
Dianne Skoll
f9a6aba81d
Allow ord(n) to be overridden with user-defined function ordx(n)
...
Lets language packs customize ord.
2025-08-11 23:29:08 -04:00
Dianne Skoll
175772d959
Make it work with Wish 9.0
2025-08-11 23:15:07 -04:00
Dianne Skoll
2f03c75826
Nicer today's reminders formatting.
2025-08-11 23:06:42 -04:00
Dianne Skoll
d617000e95
Show banner in bold.
2025-08-11 22:54:58 -04:00
Dianne Skoll
04dee13996
Hyperlink reminders in "show today's reminders"
2025-08-11 22:39:53 -04:00
Dianne Skoll
ebcf6fd534
Respect color settings in more dialogs.
...
Use --json to give better display of today's reminders.
2025-08-11 22:32:06 -04:00
Dianne Skoll
c7c58e20f3
Fix silly typo
2025-08-11 22:26:48 -04:00
Dianne Skoll
a66ca7cce7
In --json mode, try to always emit a banner.
2025-08-11 21:40:38 -04:00
Dianne Skoll
35cae5f97c
Make right-button on a day number show reminders for that day.
2025-08-11 21:40:25 -04:00
Dianne Skoll
6d86d88037
Make Show Queue and Show Today's Reminders respect color scheme.
2025-08-11 21:22:32 -04:00
Dianne Skoll
89f60358c6
Add "noreminders" JSON element.
2025-08-11 21:04:50 -04:00
Dianne Skoll
781e5a6acd
Take out ms windows check.
2025-08-11 20:57:28 -04:00
Dianne Skoll
1b5d34e5e6
Include banner in --json output.
2025-08-11 20:47:00 -04:00
Dianne Skoll
cb5fa62022
Make --json cancel -g
2025-08-11 20:18:52 -04:00
Dianne Skoll
9d6ce5b674
Implement --json - JSON mode output.
2025-08-11 20:16:22 -04:00
Dianne Skoll
1cdd9531a5
Add --only-todos and --only-events args. Still have to implement JSON output.
2025-08-11 19:36:23 -04:00
Dianne Skoll
da4633fab3
Add "-nt" option to only show todos.
2025-08-11 19:00:20 -04:00
Dianne Skoll
aeff3606d2
Handle interaction between complete-through and from.
2025-08-11 18:44:28 -04:00
Dianne Skoll
2af36b7241
Add comments detailing TODO-handling logic.
2025-08-11 18:36:22 -04:00
Dianne Skoll
a7a22d20a2
Add is_todo and complete_through JSON key pairs.
2025-08-11 18:26:00 -04:00
Dianne Skoll
3fdbf8b3bc
Add language tests for yesterda, etc.
2025-08-11 18:20:34 -04:00
Dianne Skoll
a7696d659c
Add note.
2025-08-11 18:15:08 -04:00
Dianne Skoll
865ebae6f8
Fix source code to properly generate xlat.c
2025-08-11 18:13:47 -04:00
Dianne Skoll
f21f8ee8d0
Add translations for "yesterday"; update subst_bx to handle negative differences.
2025-08-11 18:05:07 -04:00
Dianne Skoll
76b7736266
More TODO logic.
2025-08-11 17:39:53 -04:00
Dianne Skoll
0769e3e9cb
Proper trigger logic for TODOs.
2025-08-11 17:35:54 -04:00
Dianne Skoll
d9ab9e91b5
Trigger TODOs that are in the past if they haven't yet been completed.
2025-08-11 17:09:45 -04:00
Dianne Skoll
9199ed5cf7
Make sure remind -ppp preserves scanfrom even if it's today.
2025-08-11 16:55:20 -04:00
Dianne Skoll
68a4b23b6f
Rework scanfrom so it's computed as needed.
2025-08-11 16:52:41 -04:00
Dianne Skoll
814dd51270
Start working on TODO and COMPLETE-THROUGH. Still a WIP!!!
2025-08-11 16:29:34 -04:00
Dianne Skoll
59fdf70732
Fix spelling error.
2025-08-10 09:14:57 -04:00
Dianne Skoll
24ed30fee0
Add RETURN command
...
Suggestion from Hymie! on Remind mailing list.
2025-08-06 11:08:41 -04:00
Dianne Skoll
86dcd9ce89
Set release date.
2025-07-28 10:21:26 -04:00
Dianne Skoll
4915dc1e8d
Make torture tests even worse!!! :)
2025-07-25 16:50:49 -04:00
Dianne Skoll
8c4cff22a5
Update WHATSNEW.
2025-07-25 12:07:50 -04:00
Dianne Skoll
50850134f6
Fix typom... sigh.
2025-07-25 11:29:52 -04:00
Dianne Skoll
a5de77cc91
Call DBufInit.
2025-07-25 11:29:33 -04:00
Dianne Skoll
87e4ed23bf
Bump version to 05.05.00.
2025-07-25 11:02:30 -04:00
Dianne Skoll
0fe1d1591e
Add comment
2025-07-24 15:27:13 -04:00
Dianne Skoll
dfb137085a
Defensive programming.
2025-07-24 15:26:17 -04:00
Dianne Skoll
143cdecb9e
Avoid memory leak; make popping more efficient.
2025-07-24 15:25:01 -04:00
Dianne Skoll
183ccf9d1c
Add torture test for PUSH-VARS / POP-VARS
2025-07-24 14:59:00 -04:00
Dianne Skoll
56ad4efb1a
Use PUSH-VARS/POP-VARS to preserve state.
2025-07-24 14:54:53 -04:00
Dianne Skoll
f4805a443b
Prevent segfault if we just say "push-funcs"
2025-07-24 14:45:52 -04:00
Dianne Skoll
977aa3d6cf
More torture-testing.
2025-07-24 14:38:47 -04:00
Dianne Skoll
fe7ac980e5
Add a torture test for PUSH-FUNCS / POP-FUNCS
2025-07-24 14:37:39 -04:00
Dianne Skoll
aebab73dfa
Update docs to user PUSH-FUNCS/POP-FUNCS rather than FRENAME.
2025-07-24 14:33:32 -04:00
Dianne Skoll
9bd0055d4d
Add PUSH-FUNCS and POP-FUNCS.
2025-07-24 14:31:12 -04:00
Dianne Skoll
d944ceb32d
Implement clone_expr_tree in preparation for supporting PUSH-FUNCS / POP-FUNCS.
2025-07-24 12:06:23 -04:00
Dianne Skoll
3eadb3f767
Tweak man page wording.
2025-07-23 19:39:29 -04:00
Dianne Skoll
be8a0621d1
Properly trace set-but-not-used variables interacting with PUSH-VARS / POP-VARS
2025-07-23 19:37:03 -04:00
Dianne Skoll
235f947dd1
Replace PUSH-SYSVARS / POP-SYSVARS with better PUSH-VARS / POP-VARS commands.
2025-07-23 19:27:09 -04:00
Dianne Skoll
93dddec24a
Initialize pushed value to ERR_TYPE to avoid inappropriate possible free() later on.
2025-07-23 10:07:58 -04:00
Dianne Skoll
c13b721550
Propagate errors.
2025-07-22 19:12:26 -04:00
Dianne Skoll
1c961dca83
One more test.
2025-07-22 17:37:05 -04:00
Dianne Skoll
700ac85e54
Make warnings for unmatched PUSH-SYSVARS correspond to those for unmatched PUSH-OMIT-CONTEXT
2025-07-22 17:35:21 -04:00
Dianne Skoll
e20a14109a
Use PUSH-SYSVARS / POP-SYSVARS in example.
2025-07-22 17:30:15 -04:00
Dianne Skoll
a3703173e2
Clarify documentation of PUSH-/POP-SYSVARS.
2025-07-22 17:24:27 -04:00
Dianne Skoll
7325375ccd
Add PUSH-SYSVARS and POP-SYSVARS commands.
2025-07-22 17:20:58 -04:00
Dianne Skoll
4b898b2ba1
Add cppcheck top-level makefile target.
2025-07-22 16:18:10 -04:00
Dianne Skoll
aa3760bc04
Make a bunch of functions static, on the recommendation of cppcheck.
2025-07-22 15:44:57 -04:00
Dianne Skoll
ea5e8c90ff
More const stuff.
2025-07-21 18:46:31 -04:00
Dianne Skoll
609b68ab21
Add const-correctness to various hash table functions.
2025-07-21 18:28:24 -04:00
Dianne Skoll
c3ab2a15cf
Add some consts as recommended by make cppcheck.
2025-07-21 17:44:13 -04:00
Dianne Skoll
418b050b1c
Fix typo
2025-07-16 11:20:33 -04:00
Dianne Skoll
4ab8897577
Update WHATSNEW.
2025-07-16 11:07:43 -04:00
Dianne Skoll
9613417a2e
Bump version to 05.04.02
2025-07-16 11:03:25 -04:00
Dianne Skoll
f808a2963d
When using -dt, print the trigger date for a fully-specified but expired trigger.
2025-07-09 12:11:38 -04:00
Dianne Skoll
96a4dc3189
Make macro safer.
2025-07-07 22:21:53 -04:00
Dianne Skoll
3c60285466
Add Chinese new year dates 2051 through 2100.
2025-07-05 17:50:53 -04:00
Dianne Skoll
6fed350e1f
Give better error messages thant "Type mismatch" for bad month or weekday names.
2025-07-05 09:52:30 -04:00
Dianne Skoll
9f220555af
Exit early from FromDSE if all we need is the year.
2025-07-02 14:39:15 -04:00
Dianne Skoll
005ccef953
Pass NULLs in a bunch of places where FromDSE result is not needed.
2025-07-02 14:21:32 -04:00
Dianne Skoll
578c98c865
Pass NULLs to FromDSE for info we don't need.
2025-07-02 14:10:42 -04:00
Dianne Skoll
64bf3381c6
Document mon(STRING)
2025-07-02 14:02:42 -04:00
Dianne Skoll
02ade6fc58
Add tests.
2025-07-02 11:42:03 -04:00
Dianne Skoll
2954fca8d8
Allow month to be specified by name in all places where it can be specified by number.
2025-07-02 11:40:02 -04:00
Dianne Skoll
8356dacf2a
Allow first argument of daysinmon to be a string.
2025-07-02 11:20:15 -04:00
Dianne Skoll
4fd145cf4e
Allow daysinmon() to take a single DATE or DATETIME argument.
2025-07-02 10:14:48 -04:00
Dianne Skoll
1af2bdf8f1
Add test to ensure "unsatisfied" SATISFY clears trigvalid()
2025-07-01 16:51:16 -04:00
Dianne Skoll
9b98e65e01
Don't set trigvalid() for a reminder whose SATISFY clause is never satisfied.
2025-07-01 16:49:06 -04:00
Dianne Skoll
0f83b98698
Fix bug that didn't save trigger date for a fully-specified REM in the past.
2025-06-30 19:23:45 -04:00
Dianne Skoll
4fd62f9894
Move contents of NOTE-ABOUT-AI.txt into README.md
2025-06-26 10:51:34 -04:00
Dianne Skoll
cc06592fe0
Update documentation to reflect reality.
2025-06-18 11:02:37 -04:00
Dianne Skoll
21d28ebfc3
Bump version to 05.04.01.
2025-06-15 09:29:36 -04:00
Dianne Skoll
b300422cdb
Update release notes.
2025-06-15 09:27:57 -04:00
Dianne Skoll
37e09f4671
Fix bug in processing UNTIL clause.
...
Bug found by Ian! D. Allen.
2025-06-15 09:15:48 -04:00
Dianne Skoll
b6e53341c8
Add utils/add-html-anchors.rem standard file.
2025-06-10 14:26:51 -04:00
Dianne Skoll
896fcf1d7f
Yet more wording.
2025-06-07 23:05:34 -04:00
Dianne Skoll
72155329f2
Tweak wording, again.
2025-06-07 23:04:47 -04:00
Dianne Skoll
36c7db510a
Tweak wording.
2025-06-07 23:03:46 -04:00
Dianne Skoll
d4aa73747d
Add some comments.
2025-06-07 22:45:02 -04:00
Dianne Skoll
3ed657b708
Add a couple more SPECIALs to test.
2025-06-07 22:40:55 -04:00
Dianne Skoll
0441c0263b
Make rem2pdf *ACTUALLY* support "special colour"
2025-06-07 22:38:19 -04:00
Dianne Skoll
c40d4ee672
Fix misleading comment.
2025-06-07 22:13:08 -04:00
Dianne Skoll
96f2d6537a
Update the main README.md file.
2025-06-06 21:54:49 -04:00
Dianne Skoll
dc777c95df
Fix cppcheck warning.
2025-06-03 16:54:47 -04:00
Dianne Skoll
3090d77346
Update WHATSNEW.
2025-06-03 12:34:08 -04:00
Dianne Skoll
157d2821f3
Don't Eprint errors if we're supposed to be ignoring lines.
2025-05-28 14:52:12 -04:00
Dianne Skoll
71d2da19a8
Introduce "FSET - f(args) expr" syntax to define a function and suppress any "redefined function" warnings.
2025-05-28 14:40:46 -04:00
Dianne Skoll
516b9c81b3
Get rid of ancient cruft.
2025-05-28 14:23:56 -04:00
Dianne Skoll
58d0e38f1a
Remove superfluous assignments.
2025-05-28 14:17:21 -04:00
Dianne Skoll
68d487ade9
Make a macro DBGX to avoid typo-ing '&' as '&&' in future. :)
2025-05-26 22:44:28 -04:00
Dianne Skoll
9d42879170
Make "value" constant iff variable exists and is constant.
...
Otherwise, it's non-constant.
2025-05-26 22:22:49 -04:00
Dianne Skoll
db70aabc97
Use ParseIdentifier instead of ParseToken with "PRESERVE"
...
to avoid creating illegal variable names.
2025-05-26 22:09:21 -04:00
Dianne Skoll
c8f55ef60b
Note that value evaluates its second argument lazily.
2025-05-26 21:59:24 -04:00
Dianne Skoll
44b50fc6be
Make "value()" evaluate its second argument lazily.
...
If the variable whose name is the first argument exists, don't
bother evaluating the second argument.
2025-05-26 21:56:04 -04:00
Dianne Skoll
a69a96529b
Update WHATSNEW.
2025-05-26 10:49:41 -04:00
Dianne Skoll
f4e5cc63a6
Dedup
2025-05-25 14:56:37 -04:00
Dianne Skoll
136122b1db
Fix a couple of minor problems found by "remind -du"
2025-05-25 14:54:49 -04:00
Dianne Skoll
4cc63b1548
Add some details about nuances of "u" debugging flag.
2025-05-25 13:38:21 -04:00
Dianne Skoll
9390b4335b
Make another string translatable.
2025-05-24 23:35:16 -04:00
Dianne Skoll
1fcf11a816
Change the help text for the -d flag.
2025-05-24 23:20:45 -04:00
Dianne Skoll
c4107e6a6f
Fix up Bevrijdingsdag
2025-05-24 23:19:13 -04:00
Dianne Skoll
ab03232341
Minor tweak
2025-05-24 23:15:51 -04:00
Dianne Skoll
51a65841cd
Warn if a variable is UNSET without having been used (if -du is in effect)
2025-05-24 23:13:39 -04:00
Dianne Skoll
5035deaff1
Tweak warning wording; add tests.
2025-05-24 23:09:57 -04:00
Dianne Skoll
09caa8988a
Add warning if we SET a variable that has already been set, but not used (if -du debug flag is set)
2025-05-24 23:06:50 -04:00
Dianne Skoll
9624b1045c
Track filename and line number where variables are defined.
2025-05-24 22:58:28 -04:00
Dianne Skoll
102748397f
Remove a couple of inappropriate "free" calls.
2025-05-24 22:58:16 -04:00
Dianne Skoll
f852f7e7e5
Refactor conversion of "-" to "-stdin-"
2025-05-24 22:55:02 -04:00
Dianne Skoll
8d88192483
Keep a hash table of filenames we've seen so we don't need to strdup the current filename all over the place.
2025-05-24 22:51:16 -04:00
Dianne Skoll
a6ca571fe5
Fix indentation.
2025-05-24 22:13:47 -04:00
Dianne Skoll
2af783a58d
Use isany() in preference to || operator.
2025-05-24 10:36:03 -04:00
Dianne Skoll
af2daa7a87
Use "is_constant" attribute for Var to be consistent with UserFunc.
2025-05-24 10:10:44 -04:00
Dianne Skoll
c5bc459dd9
Add "-du" debugging flag to print a list of variables that were set but never used.
2025-05-23 16:55:10 -04:00
Dianne Skoll
edf26eaa14
Add more "const" debugging messages.
2025-05-23 13:38:38 -04:00
Dianne Skoll
7e5dc26ee5
*PROPERLY* disable RUN in eval. :)
2025-05-23 12:03:09 -04:00
Dianne Skoll
4c2b6031cd
Disable shell() inside an eval("...") for safety.
...
Based on email from Tim Chase.
2025-05-23 11:48:06 -04:00
Dianne Skoll
af8c1630c3
Add more clarification.
2025-05-23 08:56:01 -04:00
Dianne Skoll
0ec43d570c
Add "const" function, which is the inverse of "nonconst"
2025-05-23 08:47:12 -04:00
Dianne Skoll
1df8b12e71
Clarification.
2025-05-23 08:42:00 -04:00
Dianne Skoll
3fb10fe946
Don't put anchors in HTML output.
...
Can be achieved with a REM statement:
REM SPECIAL HTML <a id="[$T]"></a>
2025-05-23 07:36:45 -04:00
Dianne Skoll
e11dbcf52a
Revert "Put anchor <a name="dN"></a> for day N's day box."
...
This reverts commit 398100c6e3 .
2025-05-23 07:34:57 -04:00
Dianne Skoll
88cc25e53f
Update release notes.
2025-05-22 21:57:14 -04:00
Dianne Skoll
0c93e045bd
Bump version to 05.04.00.
2025-05-22 21:40:38 -04:00
Dianne Skoll
99e5b3f43d
Document "trigbase" entry in JSON output.
2025-05-22 18:05:31 -04:00
Dianne Skoll
f0f0cec2d3
Add $Tu == triguntil() system variable.
2025-05-22 18:00:24 -04:00
Dianne Skoll
70a97a8fe5
Add trigbase() built-in function.
2025-05-22 17:44:42 -04:00
Dianne Skoll
8a6857b787
Add test to ensure recursive eval() yields error rather than segfault.
2025-05-22 15:00:46 -04:00
Dianne Skoll
95b82a4457
"eval" can itself now be recursive, so we need to guard built-in functions against recursion.
2025-05-22 14:59:08 -04:00
Dianne Skoll
8fd39e477f
A bit more non-const documentation.
2025-05-22 14:44:17 -04:00
Dianne Skoll
3118f8d2a4
Add "eval()" built-in function.
2025-05-22 13:52:07 -04:00
Dianne Skoll
acf570512d
Correct documentation for maximum IF nest level.
2025-05-22 10:08:34 -04:00
Dianne Skoll
cf2114e2ef
Update tests.
2025-05-22 10:04:32 -04:00
Dianne Skoll
357f7105bd
Better coerce error messages.
2025-05-22 10:03:32 -04:00
Dianne Skoll
e7094b71c2
Clarify FSET syntax.
2025-05-22 09:51:05 -04:00
Dianne Skoll
8a3db4cba1
Document "DUMP -c ..."
2025-05-22 09:45:04 -04:00
Dianne Skoll
b33a3191f5
Better nonconst diagnostic messages.
2025-05-22 09:38:06 -04:00
Dianne Skoll
caa900d38d
Fix tests.
2025-05-22 09:35:52 -04:00
Dianne Skoll
1d3c1f006f
Take care of some corner-cases of non-const tracking.
2025-05-22 09:35:18 -04:00
Dianne Skoll
633812d961
Add "-c" option to "dump" to show constness when dumping variables.
2025-05-21 23:43:40 -04:00
Dianne Skoll
ec8cae6d4b
Mark a few functions as non-const that were incorrectly marked const before.
2025-05-21 23:43:26 -04:00
Dianne Skoll
5019d54379
Document a practical use of nonconst.
2025-05-21 15:50:05 -04:00
Dianne Skoll
56e4f14a2f
Don't use bitfields. They don't save space and are slower.
2025-05-21 13:42:06 -04:00
Dianne Skoll
af5854d0c6
Improve diagnostic message.
2025-05-21 12:27:08 -04:00
Dianne Skoll
43d0066780
Add test for additional non-constant debugging message.
2025-05-21 12:24:44 -04:00
Dianne Skoll
de2d15009f
Document all the non-constant tracking machinery.
2025-05-21 12:23:08 -04:00
Dianne Skoll
8ca5c7e56e
Add test for "hush mode" in conjunction with "purge mode"
2025-05-21 11:21:24 -04:00
Dianne Skoll
bd6218d7e2
Update man page.
2025-05-21 11:21:04 -04:00
Dianne Skoll
5d822e294d
Make "Hush Mode" suppress all purge-mode diagnostics.
...
We only get the "#!P: Expired" lines in that case.
2025-05-21 11:15:56 -04:00
Dianne Skoll
1e3657b728
Overhaul how IF/ELSE work so we can track "constant-ness" of variables.
...
We now keep track of whether a variable holds a "constant" value
(ie, a value that will stay the same on successive Remind runs)
so Purge Mode can be more accurate.
2025-05-20 22:11:39 -04:00
Dianne Skoll
a309af731f
Minor code-formatting improvement.
2025-05-20 16:42:50 -04:00
Dianne Skoll
31c8893a2a
Add tests for non-const-expression debugging output.
2025-05-20 12:03:53 -04:00
Dianne Skoll
e3a6c65983
Fix silly typo
2025-05-20 11:57:20 -04:00
Dianne Skoll
1355b99560
Document non-constant expressions.
2025-05-20 11:55:19 -04:00
Dianne Skoll
21904e708f
Add "n" debugging flag to diagnose non-constant expressions.
2025-05-20 11:17:04 -04:00
Dianne Skoll
e4a6a5cf01
Properly parse unary '+' operator. It's ignored, essentially.
2025-05-17 11:33:27 -04:00
Dianne Skoll
098cf4707a
Do not use obsolete "tail +2" syntax. Instead use "tail -n+2"
...
Fix courtesy of Dick Marinus.
2025-05-17 10:59:28 -04:00
Dianne Skoll
1be6ff23fb
Optimmize away ! INT_CONSTANT.
2025-05-16 10:48:02 -04:00
Dianne Skoll
4db201945c
Optimize "- INT_CONSTANT" to be simply -INT_CONSTANT rather than (- INT_CONSTANT)
2025-05-16 08:30:44 -04:00
Dianne Skoll
6aa217044b
Implement wkdaynum("dayname")
2025-05-14 18:30:47 -04:00
Dianne Skoll
c64d939237
Allow argument to monnum to be a string, in which case it's parsed as a month name.
2025-05-14 09:57:16 -04:00
Dianne Skoll
398100c6e3
Put anchor <a name="dN"></a> for day N's day box.
2025-05-12 09:22:49 -04:00
Dianne Skoll
3fb1db0880
Add catcherr() built-in function.
2025-05-10 09:33:24 -04:00
Dianne Skoll
76bf57af60
Tweak "catch()" documentation.
2025-05-09 23:32:03 -04:00
Dianne Skoll
a8fc88be17
Clarify that catch() doesn't catch errors when evaluating its second argument.
2025-05-09 17:21:34 -04:00
Dianne Skoll
a50f40d652
Don't use repeated DBG() macros. Instead, wrap everything in a conditional
2025-05-09 17:17:37 -04:00
Dianne Skoll
71b3564c03
Add catch to list of built-in functions.
2025-05-09 17:10:46 -04:00
Dianne Skoll
a35de17b00
Add the "catch()" built-in function.
2025-05-09 17:09:00 -04:00
Dianne Skoll
ab44f93f37
Update man page with info about how Remind folds years.
2025-05-08 14:47:48 -04:00
Dianne Skoll
ab69fee895
No need for timetis64bit guards (I hope...)
2025-05-08 14:33:33 -04:00
Dianne Skoll
db31214060
Fix up year-folding logic.
2025-05-08 14:30:07 -04:00
Dianne Skoll
758e2c1a9d
Add some more year-folding tests.
2025-05-08 14:22:01 -04:00
Dianne Skoll
ed7c5103ff
Fold years so even 32-bit systems can handle astronomical stuff past 2038
2025-05-08 14:14:49 -04:00
Dianne Skoll
4590e746c5
Force year-folding on 32-bit time_t machines.
2025-05-08 12:10:15 -04:00
Dianne Skoll
bc8ce3e2cc
Change FoldArray to use years as close as possible to (but less than) 2038.
2025-05-08 11:56:53 -04:00
Dianne Skoll
3e82fe8712
Update WHATSNEW
2025-05-06 12:52:37 -04:00
Dianne Skoll
ea3126645c
Prevent eclipse files from barfing on systems with 32-bit time_t
2025-05-06 12:43:38 -04:00
Dianne Skoll
e107ed5482
Bump version to 05.03.07.
2025-05-06 12:37:43 -04:00
Dianne Skoll
66523b1b3b
Use llabs instead of labs for systems that normally have 32-bit time_t
...
but are configured to use 64-bit time_t.
2025-05-06 12:36:43 -04:00
Dianne Skoll
8590cf6207
Add more verbiage
2025-05-06 12:33:21 -04:00
Dianne Skoll
c85a8a7614
Make tests pass on systems with 32-bit time_t.
2025-05-06 12:32:03 -04:00
Dianne Skoll
416ee87dd0
Try to make tests pass on systems with 32-bit time_t.
2025-05-06 12:20:59 -04:00
Dianne Skoll
7705278575
Update remind-conf-mode with $TimetIs64bit
2025-05-06 12:14:55 -04:00
Dianne Skoll
59f978a9db
Add $TimetIs64bit system variable.
2025-05-06 12:14:18 -04:00
Dianne Skoll
4515291720
Move moonrise/moonset after sunrise/sunset.
2025-05-06 12:02:16 -04:00
Dianne Skoll
65eaf67a06
Add license text for lunar and solar eclipse files.
2025-05-06 11:41:51 -04:00
Dianne Skoll
3f4f00890a
Add solar and lunar eclipses in the 21st century.
2025-05-06 11:34:37 -04:00
Dianne Skoll
e96875c698
Fix typo.
2025-05-01 10:29:04 -04:00
Dianne Skoll
d65348bf83
Fix Bevrijdingsdag
2025-04-28 17:15:54 -04:00
Dianne Skoll
c1704b9d52
Fix up rules for Bevrijdingsdag courtesy of Adrian P. van Bloois
2025-04-28 10:00:53 -04:00
Dianne Skoll
e87d285170
Remove unbalanced .RE from man page source.
2025-04-27 12:15:03 -04:00
Dianne Skoll
c6b00b616e
Change the comment from:
...
also include [$SysInclude]/holidays/...
to:
also SYSINCLUDE holidays/...
2025-04-27 10:04:48 -04:00
Dianne Skoll
084dbd71b1
Move Koningsdag to Saturday instead of Monday if 27 April is a Sunday.
...
Bug pointed out by Adri P. van Bloois.
2025-04-26 10:23:51 -04:00
Dianne Skoll
ce123d1b41
Bump to version 05.03.06.
2025-04-25 11:02:22 -04:00
Dianne Skoll
4ed8331369
Add a note about $SuppressLRM right under the "-c" option documentation.
2025-04-24 16:11:32 -04:00
Dianne Skoll
44b920e080
Make "remind -s" respect $DefaultColor
...
https://dianne.skoll.ca/pipermail/remind-fans/2025/005051.html
2025-04-23 10:15:20 -04:00
Dianne Skoll
dc75c8f49b
Tweak astro output.
2025-03-25 15:22:49 -04:00
Dianne Skoll
cef6e6717c
Convert C++-style comments to C-style comments.
2025-03-24 11:42:54 -04:00
Dianne Skoll
5ec78739cd
Add moonrise, moonset, etc. to remind-conf-mode.
2025-03-23 17:03:56 -04:00
Dianne Skoll
79f45169c8
Set release date.
2025-03-23 13:37:51 -04:00
Dianne Skoll
b9f09b9a2d
Fix some cppcheck warnings.
2025-03-23 13:24:38 -04:00
Dianne Skoll
f53a174d65
Update WHATSNEW
2025-03-23 13:15:14 -04:00
Dianne Skoll
ed15b7deb5
Update JSON parser to latest version from https://github.com/udp/json-parser
2025-03-22 12:09:30 -04:00
Dianne Skoll
caf5f81eb0
Add a few more removals to "make distclean"
2025-03-22 11:18:56 -04:00
Dianne Skoll
d48910eca9
Update "make distclean" target; remove obsolete unconfigure script.
2025-03-22 11:16:54 -04:00
Dianne Skoll
c004944a59
Replace '1440' with 'MINUTES_PER_DAY' in a bunch of spots.
2025-03-20 17:20:25 -04:00
Dianne Skoll
f2d1a21a4e
Update docs.
2025-03-20 15:40:33 -04:00
Dianne Skoll
81a5241097
Add tests for soleq.
2025-03-20 11:53:11 -04:00
Dianne Skoll
eced4de4a2
Explicitly supply date.
2025-03-20 11:45:11 -04:00
Dianne Skoll
2c8fa39af0
Add tests for astronomical functions.
2025-03-20 11:38:18 -04:00
Dianne Skoll
6ac5e96260
Fix logic bug in astro.
2025-03-20 10:20:08 -04:00
Dianne Skoll
deda94a69e
Comment and code cleanups.
2025-03-19 18:08:28 -04:00
Dianne Skoll
abb8cbb1bf
Update docs
2025-03-19 17:43:38 -04:00
Dianne Skoll
ee4e3e9073
Bump version to 05.03.05.
2025-03-19 17:38:33 -04:00
Dianne Skoll
220014e60f
Document moonrise and moonset functions.
2025-03-19 17:31:29 -04:00
Dianne Skoll
3d0d07ce29
Remove note about OS/2.
2025-03-19 15:41:15 -04:00
Dianne Skoll
38615adb41
Update tests for fixes to 12:XXam
2025-03-19 12:38:36 -04:00
Dianne Skoll
3d8f0e3907
Code cleanup; fix astro example.
2025-03-19 12:35:51 -04:00
Dianne Skoll
160f85a1f8
Fix %2 and %@ formatters to print "12:XXam" instead of "0:XXam"
2025-03-19 12:35:25 -04:00
Dianne Skoll
5cb062166c
Add moonrise/moonset to astro example.
2025-03-19 12:18:19 -04:00
Dianne Skoll
81fa6c667f
Update unit test.
2025-03-19 11:57:23 -04:00
Dianne Skoll
190dfa3a8f
Add moonrisedir and moonsetdir functions.
2025-03-19 11:57:01 -04:00
Dianne Skoll
a22c674846
Add moonrise and moonset functions.
2025-03-19 11:45:34 -04:00
Dianne Skoll
ba224445b1
Allocate 256 expr_nodes in a chunk instead of 64.
2025-03-16 10:55:42 -04:00
Dianne Skoll
6aeee47bfa
Remove unused code.
2025-03-16 10:47:54 -04:00
Dianne Skoll
c506fa4613
Refactor code.
2025-03-13 23:51:22 -04:00
Dianne Skoll
04404a252e
Remove check for '%' in parse_atom.
2025-03-13 23:45:21 -04:00
Dianne Skoll
be746f9fa7
Print placeholder args when printing error message for user function invoked with incorrect number of arguments.
2025-03-13 23:33:19 -04:00
Dianne Skoll
2393a86970
Fix typo that broke opening reminder file from queue listing.
2025-03-10 17:52:59 -04:00
Dianne Skoll
143ad08b3f
Update release notes.
2025-03-09 10:51:13 -04:00
Dianne Skoll
44afdfcb44
Update version to 05.03.04
2025-03-09 10:48:43 -04:00
Dianne Skoll
4b905dbc02
Set LC_ALL and LANG right before sort.
2025-03-08 23:09:30 -05:00
Dianne Skoll
0f76750e05
Set locale for sorting.
2025-03-08 23:04:38 -05:00
Dianne Skoll
b32f56134e
Don't redirect stderr to /dev/null on failure to use a required Perl module.
2025-03-04 11:11:34 -05:00
Dianne Skoll
60b0b468df
Fix typo
2025-03-03 19:55:52 -05:00
Dianne Skoll
52ce99af80
Document changes since 05.03.02.
2025-03-03 11:27:29 -05:00
Dianne Skoll
5915eb4973
Bump version to 05.03.03.
2025-03-03 11:23:10 -05:00
Dianne Skoll
aa8d23fd87
Add a couple of Dutch translations.
2025-03-01 13:34:37 -05:00
Dianne Skoll
917d943953
Avoid memory leak.
2025-03-01 12:01:15 -05:00
Dianne Skoll
9ade3876b2
Make TkRemind open editor at first line of reminder.
2025-02-16 20:36:50 -05:00
Dianne Skoll
471ecff267
Report both starting and ending lines for commands spanning multiple lines because of \-line continuation.
...
This affects error and warning messages primarily. The JSON
interchange format has an additional lineno_start entry for
reminders that span multiple lines. (Historically, lineno
was the *last* line of the reminder statement and I kept
that for compatibility.)
2025-02-16 20:30:16 -05:00
Dianne Skoll
762bf97473
Add some URLs and a couple of miscellaneous days.
2025-02-13 17:43:02 -05:00
Dianne Skoll
563f3ea088
Remove obsolete files.
2025-02-12 14:39:55 -05:00
Dianne Skoll
939078428f
Add some miscellaneous holidays not found in other files.
2025-02-12 13:13:08 -05:00
Dianne Skoll
5acbb907b4
Issue warning if a substitution sequence related to time is used without an AT clause.
Remind unit tests / tests (push) Successful in 31s
2025-02-10 09:23:43 -05:00
Dianne Skoll
21ecc28ea4
Prep for 05.03.02 release.
Remind unit tests / tests (push) Successful in 34s
2025-02-09 09:56:45 -05:00
Dianne Skoll
b37a7cd993
Revert change to how -y generates tags.
...
Remind unit tests / tests (push) Successful in 48s
Commit e7ec975ff0 changed how the
MD5 sum was calculated to include the filename and line number.
This commit reverts that change; the tag is generated purely
on the REM command line.
2025-02-08 22:25:09 -05:00
Dianne Skoll
64679817ae
Update WHATSNEW in preparation for release.
Remind unit tests / tests (push) Successful in 52s
2025-02-07 13:08:20 -05:00
Dianne Skoll
1ef1033379
Add dependencies to Makefile.PL.in
Remind unit tests / tests (push) Successful in 45s
2025-02-05 10:58:47 -05:00
Dianne Skoll
7d42750043
Better checks for Perl modules.
2025-02-05 10:57:28 -05:00
Dianne Skoll
1dc0afc0ca
Improve small calendar display.
Remind unit tests / tests (push) Successful in 26s
2025-02-04 22:27:32 -05:00
Dianne Skoll
a0aede4069
Add clickable URL in popup reminder if we have an INFO "Url: ..." string.
2025-02-04 13:58:23 -05:00
Dianne Skoll
a5a7637696
Bump version in preparation for next release.
2025-02-04 13:49:00 -05:00
Dianne Skoll
38a597a374
We're releasing today!
Remind unit tests / tests (push) Successful in 53s
2025-02-04 10:28:25 -05:00
Dianne Skoll
66ba9257a5
Add INFO strings for Jewish holidays.
2025-02-04 10:23:13 -05:00
Dianne Skoll
c5374c09fb
Yet more INFO strings.
2025-02-04 10:11:36 -05:00
Dianne Skoll
9c93e7e6a1
Better error message.
Remind unit tests / tests (push) Successful in 1m17s
2025-02-03 23:09:17 -05:00
Dianne Skoll
3487f6f46a
Document that it takes at least -pp to pass info strings to a back-end.
2025-02-03 23:05:18 -05:00
Dianne Skoll
da8a72d7cd
Add info strings.
2025-02-03 22:59:43 -05:00
Dianne Skoll
f391b6221f
Add INFO strings.
2025-02-03 22:54:10 -05:00
Dianne Skoll
a8c0b20f9e
Line things up better.
2025-02-03 22:47:40 -05:00
Dianne Skoll
5684a86df9
Add INFO strings.
2025-02-03 22:45:26 -05:00
Dianne Skoll
3abaaacd98
Add some more INFO strings.
2025-02-03 22:38:50 -05:00
Dianne Skoll
7eae7a9157
Add some INFO strings.
2025-02-03 22:36:09 -05:00
Dianne Skoll
a0d8c93a34
Make tkremind handle "Url:" info strings.
Remind unit tests / tests (push) Successful in 39s
2025-02-03 15:18:44 -05:00
Dianne Skoll
8bf22dbb36
Document support for "Url:" info string.
2025-02-03 14:52:42 -05:00
Dianne Skoll
6b2622f3d3
Document "Url" INFO string support.
2025-02-03 14:38:23 -05:00
Dianne Skoll
8abdf6d988
Make rem2html respect "Url:" INFO string for moon phases and week numbers.
2025-02-03 14:32:52 -05:00
Dianne Skoll
991e409739
Make rem2pdf obey the "Url:" INFO string.
2025-02-03 14:20:45 -05:00
Dianne Skoll
3c2bb76523
Turn reminders with a "Url:" info string into hyper-links.
2025-02-03 13:56:21 -05:00
Dianne Skoll
8555352c18
Add popup for location and description in HTML calendar.
2025-02-03 11:36:19 -05:00
Dianne Skoll
34f8486c10
Update docs.
Remind unit tests / tests (push) Successful in 42s
2025-02-02 11:21:38 -05:00
Dianne Skoll
5adb5d893e
Final (??) tweaks of popup appearance. :)
Remind unit tests / tests (push) Successful in 34s
2025-02-01 15:58:51 -05:00
Dianne Skoll
2f11b6fdc8
Tweak appearance of popups and background reminders.
2025-02-01 15:52:13 -05:00
Dianne Skoll
49d46c1397
Improve reminder popups.
2025-02-01 15:38:13 -05:00
Dianne Skoll
1641f99f97
Include the "info" element in pop-up reminders.
2025-02-01 15:02:54 -05:00
Dianne Skoll
f9f9552850
Avoid segfault if we call dosubst("%<foo>")
2025-02-01 14:50:49 -05:00
Dianne Skoll
3b43222585
Add the triginfo("header") function and corresponding %<...> substitution sequence.
2025-02-01 14:39:06 -05:00
Dianne Skoll
231d9d77e7
Save the info chain when saving the last trigger.
2025-02-01 14:16:17 -05:00
Dianne Skoll
6140221bf3
Make a function static.
2025-02-01 11:15:52 -05:00
Dianne Skoll
51b831fb6a
Check for proper escaping in JSON and TRANSLATE DUMP.
2025-02-01 11:15:25 -05:00
Dianne Skoll
35a4994b3e
Document changes.
2025-02-01 10:59:04 -05:00
Dianne Skoll
0ebaaa4097
Add optional add_quote argument to escape()
2025-02-01 10:58:55 -05:00
Dianne Skoll
2f43aca21c
Update version to 05.03.00
2025-02-01 10:58:34 -05:00
Dianne Skoll
930bab0fde
Add more tests.
2025-02-01 10:45:34 -05:00
Dianne Skoll
694c4099d1
Add \xAA sequence for parsing quoted strings; add the escape() built-in function; update docs.
2025-02-01 10:36:38 -05:00
Dianne Skoll
ca56b4c90e
Disallow "\x00"
2025-02-01 10:12:51 -05:00
Dianne Skoll
5c965e2083
Add "\xAB" escapes to string parser.
...
\x followed by one or two hex digits gets converted to that character.
2025-02-01 10:08:12 -05:00
Dianne Skoll
d58ccbef69
Improve how add/edit reminder dialog resizes.
Remind unit tests / tests (push) Successful in 37s
2025-01-31 21:31:47 -05:00
Dianne Skoll
17ad03be69
Add a bit of space after labels.
2025-01-31 21:22:48 -05:00
Dianne Skoll
75a4e98de2
Call the reminder body the "Summary" rather than "Subject" to be consistent with ical.
2025-01-31 21:21:30 -05:00
Dianne Skoll
1408f77303
Use concat instead of list to flatten lists.
...
Bug report: https://dianne.skoll.ca/pipermail/remind-fans/2025/004986.html
2025-01-31 19:36:41 -05:00
Dianne Skoll
af76dd67fb
Remove dead code; count lines better.
2025-01-31 17:02:03 -05:00
Dianne Skoll
f7a19d1570
Change "Body:" to "Subject:" and update man page.
2025-01-31 16:48:48 -05:00
Dianne Skoll
e7ec975ff0
Support location and description fields in tkremind.
2025-01-31 16:30:07 -05:00
Dianne Skoll
8c4ca12ca7
When creating the "info" JSON hash, make the keys lower-case instead of upper-case.
Remind unit tests / tests (push) Successful in 46s
2025-01-31 08:07:53 -05:00
Dianne Skoll
e832eb868c
Make INFO require "Header: Value" strings; make the "info" element in the JSON output a hash instead of an array.
Remind unit tests / tests (push) Successful in 36s
2025-01-30 16:58:56 -05:00
Dianne Skoll
cb0acb3077
Document INFO
Remind unit tests / tests (push) Successful in 54s
2025-01-29 19:07:26 -05:00
Dianne Skoll
9376c7a36d
Add INFO keyword.
2025-01-29 18:55:22 -05:00
Dianne Skoll
e6ceeee2ec
Add the "INFO" clause to the REM command.
...
Remind unit tests / tests (push) Successful in 33s
Intended to pass additional information to a back-end to use as it wishes.
One example is to add extra info such as locaiton, description, etc. to ical
files.
2025-01-28 15:51:28 -05:00
Dianne Skoll
bbeece644e
Use "custom.h" rather than <custom.h> for our header file.
2025-01-24 08:10:06 -05:00
Dianne Skoll
8d09abc363
Use snprintf in favor of sprintf almost everywhere.
Remind unit tests / tests (push) Successful in 35s
2025-01-22 11:11:08 -05:00
Dianne Skoll
3dcd353fb5
Update release notes.
2025-01-22 10:56:05 -05:00
Dianne Skoll
124c5c4e7e
Make test mode warning more verbose.
Remind unit tests / tests (push) Successful in 35s
2025-01-21 11:54:24 -05:00
Dianne Skoll
77024562b3
Fix SystemDate to always return 2025-01-06 in --test mode.
Remind unit tests / tests (push) Successful in 38s
2025-01-21 11:52:20 -05:00
Dianne Skoll
35c33ae915
Prevent infinite test loop.
2025-01-21 11:48:56 -05:00
Dianne Skoll
901831ff75
Add --test long option to make the test suite repeatable.
Remind unit tests / tests (push) Failing after 3h14m50s
2025-01-20 13:33:00 -05:00
Dianne Skoll
e0c5e878a8
Explicitly unset REMIND_RUNNING_TEST at the start.
2025-01-20 11:35:32 -05:00
Dianne Skoll
ffba7fcb03
Make queue tests work at any time of the day.
...
Remind unit tests / tests (push) Successful in 33s
If the REMIND_RUNNING_TEST environment variable is set to 1, then
SystemTime adjusts times near midnight so the queue tests pass.
Remind prints a warning if it is set so you don't accidentally
set it in normal use.
2025-01-20 10:15:19 -05:00
Dianne Skoll
b3f3cb9ce0
Add test for previous change
Remind unit tests / tests (push) Successful in 31s
2025-01-19 22:05:25 -05:00
Dianne Skoll
6f11e727f8
Truncate any absurdly-long translations of "am" or "pm" rather than letting a buffer overflow.
2025-01-19 22:01:45 -05:00
Dianne Skoll
9f7ea96e87
Make it a bit easier to read
Remind unit tests / tests (push) Successful in 41s
2025-01-18 10:45:35 -05:00
Dianne Skoll
d650b8564c
Update release notes
Remind unit tests / tests (push) Successful in 33s
2025-01-17 13:26:06 -05:00
Dianne Skoll
4f2e4030eb
Bump version go 05.02.03.
2025-01-17 13:21:11 -05:00
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
6b31778973
Better error message.
Remind unit tests / tests (push) Successful in 32s
2025-01-16 19:24:57 -05:00
Dianne Skoll
dcf8b46beb
Skip queueing tests between 23:55 and 00:00 UTC.
2025-01-16 19:23:49 -05:00
Dianne Skoll
0f582ccb60
Sleep until midnight if test starts after 23:55 UTC
Remind unit tests / tests (push) Successful in 35s
2025-01-16 13:52:34 -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
436526c27d
Fix -Wformat-security warnings.
2025-01-16 12:37:13 -05:00
Dianne Skoll
5f3f3b410f
Fix tests for previous commit.
Remind unit tests / tests (push) Successful in 52s
2025-01-15 11:02:30 -05:00
Dianne Skoll
4f79b0d42a
Remove leading space from translatable.
2025-01-15 11:02:06 -05:00
Dianne Skoll
c96f9f21ed
Properly print already-translated TRANS-type system variables in TRANSLATE GENERATE output.
Remind unit tests / tests (push) Successful in 36s
2025-01-14 15:02:08 -05:00
Dianne Skoll
dc192f2a69
Final good version of TRANSLATE GENERATE.
2025-01-14 14:59:01 -05:00
Dianne Skoll
ac3dd1ec7c
Better translation template
2025-01-14 14:54:26 -05:00
Dianne Skoll
b5717828f0
Make "TRANSLATE GENERATE" emit a BANNER command.
2025-01-14 14:08:46 -05:00
Dianne Skoll
c0d73fb9d1
Use @ to suppress echoing, not -.
2025-01-14 13:55:47 -05:00
Dianne Skoll
3a2ac067b0
Fix tests.
2025-01-14 13:49:13 -05:00
Dianne Skoll
1d467ab9ed
Remove trailing \n from translation strings.
2025-01-14 13:48:45 -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
96c11e89eb
Add the TRANSLATE GENERATE command to generate a skeleton .rem file for localization.
2025-01-14 13:27:04 -05:00
Dianne Skoll
a35920f28e
Put quotes around function name when issuing "redefined" warning.
2025-01-14 11:30:06 -05:00
Dianne Skoll
17ccf5d2b4
Make more messages translatable.
2025-01-14 11:27:47 -05:00
Dianne Skoll
788a09b2cd
Properly fix printing of ^-- here in error diagnosis.
Remind unit tests / tests (push) Successful in 1m36s
2025-01-13 12:55:14 -05:00
Dianne Skoll
9f0e23a307
More localization.
2025-01-13 11:58:42 -05:00
Dianne Skoll
542620c188
Allow "did you mean" to be localized.
2025-01-13 11:56:43 -05:00
Dianne Skoll
50419bd83a
Translate "here" to French.
2025-01-13 11:55:32 -05:00
Dianne Skoll
2b7c582392
Let "here" be localized.
2025-01-13 11:54:14 -05:00
Dianne Skoll
812a2af64b
Better location of the ^-- here marker.
2025-01-13 11:52:55 -05:00
Dianne Skoll
17d7abd4a4
Add country-specific LGBTQ holidays.
Remind unit tests / tests (push) Successful in 34s
2025-01-11 14:12:56 -05:00
Dianne Skoll
098e98c59e
Add holidays/lgbtq.rem
Remind unit tests / tests (push) Successful in 37s
2025-01-10 20:34:37 -05:00
Dianne Skoll
c5e0dbf2e5
Add license identifier.
2025-01-10 20:34:29 -05:00
Dianne Skoll
18c8bc719f
Update tests to match commit 195ed15167
Remind unit tests / tests (push) Successful in 35s
2025-01-07 17:59:06 -05:00
Dianne Skoll
195ed15167
Print ^-- here for a few more error types.
2025-01-07 17:58:03 -05:00
Dianne Skoll
51677cd7b5
Use "info patchlevel" to display detailed Tcl/Tk version.
2025-01-07 15:57:07 -05:00
Dianne Skoll
aef5b353cd
Add a missing update.
Remind unit tests / tests (push) Successful in 28s
2025-01-06 10:40:25 -05:00
Dianne Skoll
8a99c29533
Update WHATSNEW in preparation for release.
Remind unit tests / tests (push) Successful in 33s
2025-01-05 12:14:04 -05:00
Dianne Skoll
0bf2b0772a
Bump version to 05.02.02.
Remind unit tests / tests (push) Successful in 1m41s
2025-01-05 10:34:28 -05:00
Dianne Skoll
a033a48acd
Make rem2html support weekly calendars.
...
Remind unit tests / tests (push) Successful in 1m29s
rem2html is a mess and needs refactoring, but oh well... it works.
2025-01-04 18:10:34 -05:00
Dianne Skoll
0feb81c8cc
Make "rem2html" accept "remind -ppp" as input (as well as -p and -pp)
2025-01-04 17:07:06 -05:00
Dianne Skoll
1850607542
Use hex constants for flags that are bitmasks.
Remind unit tests / tests (push) Successful in 37s
2024-12-31 15:26:18 -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
18b57d26b4
Properly detect and handle requests for multi-page --svg or --eps output.
Remind unit tests / tests (push) Successful in 42s
2024-12-26 09:38:05 -05:00
Dianne Skoll
c80d72f623
Add --weeks-per-page option.
Remind unit tests / tests (push) Successful in 44s
2024-12-25 13:29:51 -05:00
Dianne Skoll
2739a41651
If we ask for multiple weekly calendars, render then two weeks to a page.
2024-12-25 10:37:18 -05:00
Dianne Skoll
5a56f4c61b
Pass in index and total number of calendars to "render".
2024-12-25 10:00:21 -05:00
Dianne Skoll
77080ff600
Make copyright notices consistent.
Remind unit tests / tests (push) Successful in 37s
2024-12-24 20:02:08 -05:00
Dianne Skoll
c4aa21ff51
Remove unused functions.
2024-12-24 15:05:15 -05:00
Dianne Skoll
34c513ba3b
Add $CalType system variable.
2024-12-24 14:45:57 -05:00
Dianne Skoll
35c16a060a
Fix typo again.
Remind unit tests / tests (push) Successful in 1m26s
2024-12-24 13:20:19 -05:00
Dianne Skoll
69dedc577f
Fix typo
2024-12-24 13:19:28 -05:00
Dianne Skoll
a7d8f3c887
Support --verbose in weekly calendars
2024-12-24 13:18:19 -05:00
Dianne Skoll
800a4b15b2
Add support for weekly PDF calendars with "-p+n" Remind option.
2024-12-24 13:07:45 -05:00
Dianne Skoll
3e981fd8be
Convert README file to Markdown. That is what all the cool kids use.
Remind unit tests / tests (push) Successful in 33s
2024-12-19 10:20:35 -05:00
Dianne Skoll
7c530d3068
Remove unnecesary .gitignore entry
Remind unit tests / tests (push) Successful in 1m27s
2024-12-18 11:19:45 -05:00
Dianne Skoll
58f9cf641b
Remove some truly ancient docs.
2024-12-18 11:19:04 -05:00
Dianne Skoll
53906035fe
Warn if a POP-OMIT-CONTEXT matches a PUSH-OMIT-CONTEXT in a different file.
Remind unit tests / tests (push) Successful in 37s
2024-12-17 17:26:51 -05:00
Dianne Skoll
4804325863
Merge branch 'fix_typo' into 'master'
...
Fix typo
See merge request dskoll/remind!9
2024-12-17 15:29:09 +00:00
Jochen Sprickerhof
5f5e7054f4
Fix typo
2024-12-17 09:22:42 +01:00
Dianne Skoll
078dba1e98
Prepare for 05.02.01 release.
Remind unit tests / tests (push) Successful in 28s
2024-12-16 19:37:31 -05:00
Dianne Skoll
8ebec9584c
Fix incorrect comparison code.
2024-12-16 19:33:41 -05:00
Dianne Skoll
2504b39be2
Remove const qualifier.
Remind unit tests / tests (push) Successful in 32s
2024-12-16 17:10:45 -05:00
Dianne Skoll
e394f402f8
Set release date.
Remind unit tests / tests (push) Successful in 32s
2024-12-16 09:31:02 -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
6373ae8ca5
Update release notes.
2024-12-13 15:08:54 -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
4e7cfc20ce
Make use of SYSINCLUDE.
Remind unit tests / tests (push) Successful in 32s
2024-12-13 08:28:14 -05:00
Dianne Skoll
0c9a35a584
Add SYSINCLUDE to release notes.
2024-12-13 08:22:43 -05:00
Dianne Skoll
5e333f6162
Add the SYSINCLUDE directive.
2024-12-13 08:18:22 -05:00
Dianne Skoll
af8b4e6df1
Add const qualifier on Sysvar.value.
Remind unit tests / tests (push) Successful in 44s
2024-12-12 20:27:54 -05:00
Dianne Skoll
3fa798523a
Document the difference between %(foo) and [_("foo")]
2024-12-12 16:56:38 -05:00
Dianne Skoll
53001f9fbc
Update WHATSNEW
2024-12-12 16:48:53 -05:00
Dianne Skoll
9cd76eae84
Fix typo
2024-12-12 16:47:34 -05:00
Dianne Skoll
c8295b6251
Convert files we ship to use %(foo) in place of [_("foo")]
2024-12-12 16:43:30 -05:00
Dianne Skoll
3c95245407
In the substitution filter, make %(foo) equivalent to [_("foo")]
2024-12-12 16:35:31 -05:00
Dianne Skoll
3362c7226c
Add regression test for commit 356b562d75
Remind unit tests / tests (push) Successful in 31s
2024-12-12 12:17:15 -05:00
Dianne Skoll
356b562d75
Fix logic error in resetting IF flags and Popfile interaction.
2024-12-12 12:14:29 -05:00
Dianne Skoll
6eebcdc39d
Handle error return from GetSysVar.
2024-12-12 11:58:27 -05:00
Dianne Skoll
5a80d63060
Add localization tests.
2024-12-12 11:55:07 -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
dc89a6fba9
Eliminate unnecessary test.
2024-12-12 10:12:50 -05:00
Dianne Skoll
f83fec5563
Add missing three Chinese New Year animals.
2024-12-12 09:55:30 -05:00
Dianne Skoll
9c38161430
Merge branch 'translation_de' into 'master'
...
Add German translations
See merge request dskoll/remind!8
2024-12-12 14:53:21 +00:00
Jochen Sprickerhof
68f5fe1d10
Add German translations
...
Based on nl.rem
2024-12-12 12:51:38 +01:00
Dianne Skoll
bc7c57e53b
Add another translation-propagation test.
Remind unit tests / tests (push) Successful in 27s
2024-12-11 20:10:11 -05:00
Dianne Skoll
88aacb3905
Get two-way propagation working properly.
2024-12-11 20:08:09 -05:00
Dianne Skoll
a894076bfc
Verify two-way correspondence between translation table and system variables.
2024-12-11 19:48:19 -05:00
Dianne Skoll
82e068fcca
Refactor SetSysVar.
2024-12-11 19:22:30 -05:00
Dianne Skoll
a119d97539
Make mapping between translatable system variables and TRANSLATE table table-driven.
2024-12-11 19:15:44 -05:00
Dianne Skoll
01afb63a3d
Sent translations with only the first month, in a multi-month (-pN) output.
2024-12-11 18:07:48 -05:00
Dianne Skoll
54fccabdfe
Escape the result of translation, in case a bad translation file includes HTML special characters.
2024-12-11 17:15:01 -05:00
Dianne Skoll
ba4d44664f
Clarify docs.
Remind unit tests / tests (push) Successful in 34s
2024-12-11 15:36:17 -05:00
Dianne Skoll
d76c5499b5
Document how translation table is passed to back-ends.
2024-12-11 15:35:31 -05:00
Dianne Skoll
84e8244e48
Use localized names for "Full Moon", etc.
2024-12-11 15:35:23 -05:00
Dianne Skoll
92a6115a5c
Send the translation table to back-ends.
2024-12-11 15:24:37 -05:00
Dianne Skoll
b98e336e9e
Tweak release notes.
2024-12-11 14:02:30 -05:00
Dianne Skoll
ffcd21446e
Update WHATSNEW
2024-12-11 13:55:23 -05:00
Dianne Skoll
af9ca68d99
Document the need for %-style escape sequences in translations to match those in the original message.
2024-12-11 13:42:49 -05:00
Dianne Skoll
71db7168a1
Increase update-for-changes delay to 250ms
2024-12-11 10:25:45 -05:00
Dianne Skoll
54f284c43f
Note that strlen returns number of bytes, not characters.
2024-12-11 09:45:40 -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
3d97f87bcd
Remove obsolet error messages
2024-12-11 09:33:31 -05:00
Dianne Skoll
dcfa6d8ef8
Add translation for No reminders.
Remind unit tests / tests (push) Successful in 33s
2024-12-10 19:59:00 -05:00
Dianne Skoll
52dd5332f4
Fix banner for Dutch translation.
2024-12-10 19:57:08 -05:00
Dianne Skoll
7b5fafe1ab
Document how _() looks for translations.
2024-12-10 19:48:26 -05:00
Dianne Skoll
929af71a10
Fix test.
2024-12-10 18:21:24 -05:00
Dianne Skoll
abf7c74ff2
When dumping translation table NOT to JSON, always start with LANGID
2024-12-10 18:20:48 -05:00
Dianne Skoll
5b9d9a67b2
Make daemon not respond at all to a TRANSLATE for which there is no entry.
2024-12-10 17:16:25 -05:00
Dianne Skoll
16ca2ade23
Clear out translations when we prepare to ask for new ones.
2024-12-10 17:09:25 -05:00
Dianne Skoll
d3e6c81a3a
Synthesize mixed-case translations.
2024-12-10 17:02:41 -05:00
Dianne Skoll
13ae49d3cd
Put LANGID near the top.
2024-12-10 15:35:53 -05:00
Dianne Skoll
78adc9f61d
Document how translators should use LANGID.
2024-12-10 15:33:22 -05:00
Dianne Skoll
a622d4fad4
Add LANGID translations to all language packs.
2024-12-10 15:27:41 -05:00
Dianne Skoll
6c0e7b4ff5
Add a second torture test to test hash-table resizing.
Remind unit tests / tests (push) Successful in 31s
2024-12-10 15:12:24 -05:00
Dianne Skoll
28e0599380
Get new translations if inotify says something has changed.
2024-12-10 15:05:48 -05:00
Dianne Skoll
87445f639c
Don't print the "" error message for translators.
2024-12-10 14:09:02 -05:00
Dianne Skoll
af6e159eaa
Refresh translations if they seem to have changed. :)
2024-12-10 13:32:50 -05:00
Dianne Skoll
bffa28e258
Implement the "TRANSLATE" command to translate just one string;
...
rename "JSONTRANSLATE" to "TRANSLATE_DUMP"
2024-12-10 13:06:12 -05:00
Dianne Skoll
1781f84d84
Merely schedule an update when we get the translation table.
2024-12-10 12:24:53 -05:00
Dianne Skoll
ed6e65182e
Document JSONTRANSLATE daemon command.
2024-12-10 12:21:06 -05:00
Dianne Skoll
f5cc0ec686
Get translation table; translate moon phases in TkRemind.
2024-12-10 12:16:27 -05:00
Dianne Skoll
a2c818f96c
Fully implement JSONTRANSLATE daemon command.
2024-12-10 11:57:52 -05:00
Dianne Skoll
0bbbaaf3d9
Implement JSONTRANSLATE -zj command.
2024-12-10 11:48:01 -05:00
Dianne Skoll
1c81d4cae3
Add sunrise/sunset standard include file.
2024-12-10 11:38:57 -05:00
Dianne Skoll
56c684087b
Add Sunrise and Sunset translations.
2024-12-10 11:34:44 -05:00
Dianne Skoll
9500a929ea
Fix indentation.
2024-12-10 11:00:13 -05:00
Dianne Skoll
585d45e4a1
Completely remove support for compile-time localization.
...
All localization is now done at run-time.
2024-12-10 10:58:09 -05:00
Dianne Skoll
67d1d1366d
Add error message translations.
2024-12-10 10:39:13 -05:00
Dianne Skoll
f4018892e8
Be pickier about syntax.
2024-12-10 10:25:38 -05:00
Dianne Skoll
ffd309f89d
Add missing translations.
2024-12-09 23:28:10 -05:00
Dianne Skoll
286babc1bf
Avoid memory leak.
2024-12-09 23:23:39 -05:00
Dianne Skoll
cc3c0040e9
Fix comment.
Remind unit tests / tests (push) Successful in 28s
2024-12-09 23:21:53 -05:00
Dianne Skoll
b33a1ee98b
Better error message if we hit EOLN after TRANSLATE.
2024-12-09 23:19:48 -05:00
Dianne Skoll
99706741bb
Translate error messages in pl.rem
2024-12-09 23:04:52 -05:00
Dianne Skoll
df73a74503
Better colors (for me, at any rate...)
Remind unit tests / tests (push) Successful in 34s
2024-12-09 21:11:01 -05:00
Dianne Skoll
c747ebebb4
Don't escape high chars. :)
2024-12-09 20:55:26 -05:00
Dianne Skoll
6b412062c2
Dump translation table in a way that it can be re-ingested.
2024-12-09 20:53:44 -05:00
Dianne Skoll
27b688f82c
Highlight strings first.
2024-12-09 20:46:44 -05:00
Dianne Skoll
4c314ff81c
Add --print-errs and localize error messages in lang/fr.rem.
2024-12-09 20:40:41 -05:00
Dianne Skoll
d2955ec733
Fix solstice translation.
2024-12-09 20:15:37 -05:00
Dianne Skoll
480216db9e
Update test file
2024-12-09 20:08:46 -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
e0b0d043c6
Add release notes
2024-12-09 19:09:37 -05:00
Dianne Skoll
fe4499ab72
Make comparison function also useful for ordering.
2024-12-09 18:39:49 -05:00
Dianne Skoll
e50d583659
Use case-sensitive hashing for dedup and translation hash tables.
2024-12-09 18:36:53 -05:00
Dianne Skoll
6b05d772f0
Exit if we run out of memory initializing hash tables. There's no sane way to recover.
2024-12-09 18:10:03 -05:00
Dianne Skoll
84dd73f023
Note connection between translation-related special variables and translation table.
2024-12-09 18:06:21 -05:00
Dianne Skoll
00dca8b70f
Bump version to 05.02.00.
2024-12-09 17:59:40 -05:00
Dianne Skoll
c4bc145cd9
Document the translation table.
2024-12-09 17:56:52 -05:00
Dianne Skoll
bd614c1cde
Make only one call to malloc() per XlateItem.
2024-12-09 17:07:58 -05:00
Dianne Skoll
1446ac0552
Make the output of "make test" considerably less verbose.
Remind unit tests / tests (push) Successful in 33s
2024-12-09 14:33:02 -05:00
Dianne Skoll
26ded447ab
Fix some translations.
2024-12-09 14:24:14 -05:00
Dianne Skoll
a4ccb0738e
Make Chinese New Year file translatable.
2024-12-09 14:20:27 -05:00
Dianne Skoll
27a1b449bd
Add new keywords and built-in function.
2024-12-09 14:14:29 -05:00
Dianne Skoll
1443282859
Add a whack more torture tests.
2024-12-09 14:09:40 -05:00
Dianne Skoll
4a2d707654
Properly handle deleting everything out of a hash table.
2024-12-09 13:59:41 -05:00
Dianne Skoll
fd2a61928c
Fix NL translation.
2024-12-09 13:32:21 -05:00
Dianne Skoll
a05d9eefc9
Make "SET $foo" also add a translation table entry if $foo is a dynamic translation variable.
2024-12-09 13:29:05 -05:00
Dianne Skoll
6f230e81bd
Add translations for moon phases and seasons.
2024-12-09 13:05:34 -05:00
Dianne Skoll
973019c4c7
Implement TRANSLATE keyword.
2024-12-09 12:56:40 -05:00
Dianne Skoll
cb712ad7e7
Replace the individual hash table implementations with a unified one.
2024-12-09 11:54:52 -05:00
Dianne Skoll
be7c67b6fd
Add ParseQuotedString function for eventually implementing TRANSLATE directive.
2024-12-08 11:54:49 -05:00
Dianne Skoll
a933c8bc69
Document that we don't read subdirectories when expanding *.rem.
Remind unit tests / tests (push) Successful in 31s
2024-12-06 20:21:09 -05:00
Dianne Skoll
087fbfd8e6
If a path returned by glob is a directory, ignore it.
2024-12-06 20:18:45 -05:00
Dianne Skoll
ff641d7990
Refuse to open directories.
2024-12-06 20:09:30 -05:00
Dianne Skoll
54e788b765
Make the sun functions return E_SWERR if BASE != 1990.
Remind unit tests / tests (push) Successful in 44s
2024-12-04 13:12:40 -05:00
Dianne Skoll
4283feff31
Change #error to #warning so cppcheck can analyze funcs.c
2024-12-04 13:10:03 -05:00
Dianne Skoll
062a84b758
Simplify HAS_DATE and HAS_TIME macros by making type values into bitmasks.
Remind unit tests / tests (push) Successful in 34s
2024-12-02 09:50:33 -05:00
Dianne Skoll
d161a8ff1a
Actually allow up to 9 levels of INCLUDE nesting.
Remind unit tests / tests (push) Successful in 42s
2024-11-30 23:03:09 -05:00
Dianne Skoll
0df4a79531
Use memcpy to copy omit contexts.
2024-11-30 22:42:40 -05:00
Dianne Skoll
1b26e39e2f
Update holidays as per recent commits to the Python library.
Remind unit tests / tests (push) Successful in 25s
2024-11-24 21:44:30 -05:00
Dianne Skoll
c63c4cf07e
Make token name const.
2024-11-19 22:59:47 -05:00
Dianne Skoll
586b3565f0
Sort token types.
2024-11-19 22:58:19 -05:00
Dianne Skoll
877aaed1a1
Fix spelling error in comment.
2024-11-18 11:20:13 -05:00
Dianne Skoll
57fa1a6099
Make it clearer what went wrong if we use "remind" rather than "../src/remind"
Remind unit tests / tests (push) Successful in 1m44s
2024-11-18 11:05:21 -05:00
Dianne Skoll
6cdb12b5a8
Instead of searching test-rem for "remind" without "../src/remind", simply alias remind to false.
...
Trick suggested by Jochen Sprickerhof.
2024-11-18 11:00:10 -05:00
Dianne Skoll
c73e1b6f97
Make test-rem test itself to ensure it always invokes remind as ../src/remind.
2024-11-18 10:50:43 -05:00
Dianne Skoll
e8c779c785
Update to 05.01.01.
2024-11-18 10:44:08 -05:00
Dianne Skoll
96e076a13f
Prep for release.
2024-11-18 10:31:56 -05:00
Dianne Skoll
80d258621a
Merge branch 'fix_test' into 'master'
...
Fix `remind` call in test
See merge request dskoll/remind!7
2024-11-18 15:31:27 +00:00
Jochen Sprickerhof
ed6d35e418
Fix remind call in test
2024-11-18 16:28:18 +01:00
Dianne Skoll
9dca1840a1
Fix typo
Remind unit tests / tests (push) Failing after 30s
2024-11-16 20:54:40 -05:00
Dianne Skoll
f4ec23df90
Make uk a symlink to gb
Remind unit tests / tests (push) Failing after 28s
2024-11-16 09:17:02 -05:00
Dianne Skoll
a0536a8141
Fix paths to files in comments. Noted by Martin Ziemer.
Remind unit tests / tests (push) Failing after 29s
2024-11-15 09:19:17 -05:00
Dianne Skoll
553899127a
Diagnose redefinition of built-in functions by checking newname before oldname
Remind unit tests / tests (push) Failing after 30s
2024-11-14 22:27:54 -05:00
Dianne Skoll
73519889c7
Add UK Remembrance Day
Remind unit tests / tests (push) Failing after 29s
2024-11-14 11:21:57 -05:00