Dianne Skoll
ea2312c0b2
Add mblower and mbupper functions.
...
These are Unicode-safe versions of lower() and upper()
2026-02-05 12:41:36 -05:00
Dianne Skoll
86e94009a4
Better error than "type mismatch" if we assign a bad value to a system variable.
2026-01-19 18:49:03 -05:00
Dianne Skoll
f6253d0fca
Add $TerminalHyperlinks system variable.
...
This lets you turn any reminder with an INFO "Url: ..." string
into a hyperlink on the terminal.
2026-01-08 14:13:34 -05:00
Dianne Skoll
3399646896
Correct the spelling of Sivan - should be סיון and not סיוון
2025-12-29 14:59:43 -05:00
Dianne Skoll
0f4326726a
Allow alternate transliterations of Hebrew months.
2025-12-27 15:44:21 -05:00
Dianne Skoll
1d208400cd
Add tests for invalid multibyte sequences and mbpad
2025-12-24 16:17:21 -05:00
Dianne Skoll
93316d754c
Add the mbpad function.
2025-12-24 16:05:25 -05:00
Dianne Skoll
5118ccd120
Add ivritmon built-in function.
2025-12-22 11:11:18 -05:00
Dianne Skoll
18c4ed1c6d
Allow use of Hebrew month spellings in hebdate()
2025-12-22 10:55:46 -05:00
Dianne Skoll
a2f760fb91
Better diagnostics for errors like: SET a 3 * * 4
2025-11-01 21:07:39 -04:00
Dianne Skoll
ce6061a29b
Add test for bug fixed in commit 878a5d9bed
2025-11-01 20:00:14 -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
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
2f239f77a5
Default $ParseUntriggered to 0 instead of 1
2025-08-27 11:34:10 -04:00
Dianne Skoll
6689cbfda3
Explicitly set latitude and longitude in test files.
2025-08-19 15:04:03 -04:00
Dianne Skoll
5f9e227dc8
Document and test overriding of %: %! %? %@ %#
2025-08-15 15:28:23 -04:00
Dianne Skoll
9bd0055d4d
Add PUSH-FUNCS and POP-FUNCS.
2025-07-24 14:31:12 -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
7325375ccd
Add PUSH-SYSVARS and POP-SYSVARS commands.
2025-07-22 17:20:58 -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
02ade6fc58
Add tests.
2025-07-02 11:42:03 -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
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
37e09f4671
Fix bug in processing UNTIL clause.
...
Bug found by Ian! D. Allen.
2025-06-15 09:15:48 -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
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
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
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
3118f8d2a4
Add "eval()" built-in function.
2025-05-22 13:52:07 -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
43d0066780
Add test for additional non-constant debugging message.
2025-05-21 12:24:44 -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
31c8893a2a
Add tests for non-const-expression debugging output.
2025-05-20 12:03:53 -04:00
Dianne Skoll
1be6ff23fb
Optimmize away ! INT_CONSTANT.
2025-05-16 10:48:02 -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
3fb1db0880
Add catcherr() built-in function.
2025-05-10 09:33:24 -04:00
Dianne Skoll
a35de17b00
Add the "catch()" built-in function.
2025-05-09 17:09:00 -04: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
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
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
bc7c57e53b
Add another translation-propagation test.
Remind unit tests / tests (push) Successful in 27s
2024-12-11 20:10:11 -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
d3e6c81a3a
Synthesize mixed-case translations.
2024-12-10 17:02:41 -05:00