From 7762f4f2d6837a21b40304a4110fbc560817c31c Mon Sep 17 00:00:00 2001 From: Dianne Skoll Date: Thu, 14 Aug 2025 13:56:02 -0400 Subject: [PATCH] Add $HideCompletedTodos, $JSONMode and $TodoFilter system variables. --- contrib/remind-conf-mode/remind-conf-mode.el | 6 +++--- man/remind.1.in | 12 ++++++++++++ src/var.c | 3 +++ tests/test.cmp | 3 +++ 4 files changed, 21 insertions(+), 3 deletions(-) diff --git a/contrib/remind-conf-mode/remind-conf-mode.el b/contrib/remind-conf-mode/remind-conf-mode.el index 30ecdfd9..3952170f 100644 --- a/contrib/remind-conf-mode/remind-conf-mode.el +++ b/contrib/remind-conf-mode/remind-conf-mode.el @@ -137,8 +137,8 @@ "$DefaultPrio" "$DefaultTDelta" "$DeltaOverride" "$DontFork" "$DontQueue" "$DontTrigAts" "$EndSent" "$EndSentIg" "$ExpressionTimeLimit" "$February" "$FirstIndent" "$FoldYear" - "$FormWidth" "$Friday" "$Fromnow" "$Hour" "$Hplu" "$HushMode" - "$IgnoreOnce" "$InfDelta" "$IntMax" "$IntMin" "$Is" "$January" "$July" + "$FormWidth" "$Friday" "$Fromnow" "$HideCompletedTodos" "$Hour" "$Hplu" "$HushMode" + "$IgnoreOnce" "$InfDelta" "$IntMax" "$IntMin" "$Is" "$January" "$JSONMode" "$July" "$June" "$LatDeg" "$Latitude" "$LatMin" "$LatSec" "$Location" "$LongDeg" "$Longitude" "$LongMin" "$LongSec" "$March" "$MaxFullOmits" "$MaxLateMinutes" "$MaxPartialOmits" "$MaxSatIter" "$MaxStringLen" @@ -148,7 +148,7 @@ "$PrefixLineNo" "$PSCal" "$RunOff" "$Saturday" "$September" "$SimpleCal" "$SortByDate" "$SortByPrio" "$SortByTime" "$SubsIndent" "$Sunday" "$SuppressImplicitWarnings" "$SuppressLRM" "$SysInclude" "$T" "$Tb" "$Td" - "$TerminalBackground" "$Thursday" "$TimeSep" "$TimetIs64bit" "$Tm" "$Today" + "$TerminalBackground" "$Thursday" "$TimeSep" "$TimetIs64bit" "$Tm" "$Today" "$TodoFilter" "$Tomorrow" "$Tt" "$Tuesday" "$Tw" "$Ty" "$U" "$Ud" "$Um" "$UntimedFirst" "$Use256Colors" "$UseBGVTColors" "$UseTrueColors" "$UseVTColors" "$Uw" "$Uy" "$Was" "$Wednesday") diff --git a/man/remind.1.in b/man/remind.1.in index 5ee679f0..dda2342d 100644 --- a/man/remind.1.in +++ b/man/remind.1.in @@ -2969,6 +2969,10 @@ output is not a terminal, then the default is 72.If an \fBMSF\fR-type reminder contains a word too long to fit in this width, it will not be truncated - the width limit will be ignored. .TP +.B $HideCompletedTodos (read-only) +If non-zero, then the \fB\-\-hide-completed-todos\fR option was supplied +on the command line. +.TP .B $HushMode (read-only) If non-zero, then the \fB\-h\fR option was supplied on the command line. .TP @@ -3056,6 +3060,9 @@ updates \fB$LongDeg\fR, \fB$LongMin\fR and \fB$LongSec\fR. Similar rules apply to \fB$Latitude\fR, \fB$LatDeg\fR, \fB$LatMin\fR and \fB$LatSec\fR. .RE .TP +.B $JSONMode (read-only) +If non-zero, then the \fB\-\-json\fR command-line option was supplied. +.TP .B $MaxLateMinutes This variable controls how \fBRemind\fR reacts to a computer being suspended and then woken. Normally, if a timed reminder is queued and then the @@ -3259,6 +3266,11 @@ This variable returns 1 if the internal C \fBtime_t\fR type is at least to represent dates after about 2038, and \fBRemind\fR will use a workaround to avoid problems. See also the section "MACHINES WITH A 32-BIT TIME_T TYPE" .TP +.B $TodoFilter (read-only) +If 0, then both events and TODOs are being output. If 1, then the +\fB\-\-only-todos\fR command-line option was supplied. If 2, then +the \fB\-\-only-events\fR command-line option was spplied. +.TP .B $UntimedFirst (read-only) Set to 1 if the \fB\-g\fR option is used with a fourth sort character of "d"; set to 0 otherwise. diff --git a/src/var.c b/src/var.c index df514856..b73f95de 100644 --- a/src/var.c +++ b/src/var.c @@ -992,6 +992,7 @@ static SysVar SysVarArr[] = { {"FormWidth", 1, INT_TYPE, &FormWidth, 20, 500 }, {"Friday", 1, TRANS_TYPE, "Friday", 0, 0 }, {"Fromnow", 1, TRANS_TYPE, "from now", 0, 0 }, + {"HideCompletedTodos", 0, INT_TYPE, &HideCompletedTodos, 0, 0 }, {"Hour", 1, TRANS_TYPE, "hour", 0, 0 }, {"Hplu", 1, STR_TYPE, &DynamicHplu, 0, 0 }, {"HushMode", 0, INT_TYPE, &Hush, 0, 0 }, @@ -1001,6 +1002,7 @@ static SysVar SysVarArr[] = { {"IntMin", 0, INT_TYPE, &IntMin, 0, 0 }, {"Is", 1, TRANS_TYPE, "is", 0, 0 }, {"January", 1, TRANS_TYPE, "January", 0, 0 }, + {"JSONMode", 0, INT_TYPE, &JSONMode, 0, 0 }, {"July", 1, TRANS_TYPE, "July", 0, 0 }, {"June", 1, TRANS_TYPE, "June", 0, 0 }, {"LatDeg", 1, SPECIAL_TYPE, latdeg_func, 0, 0 }, @@ -1058,6 +1060,7 @@ static SysVar SysVarArr[] = { {"TimetIs64bit", 0, SPECIAL_TYPE, timet_is_64_func, 0, 0 }, {"Tm", 0, SPECIAL_TYPE, trig_mon_func, 0, 0 }, {"Today", 1, TRANS_TYPE, "today", 0, 0 }, + {"TodoFilter", 0, INT_TYPE, &TodoFilter, 0, 0 }, {"Tomorrow", 1, TRANS_TYPE, "tomorrow", 0, 0 }, {"Tt", 0, SPECIAL_TYPE, trig_time_func, 0, 0 }, {"Tu", 0, SPECIAL_TYPE, trig_until_func, 0, 0 }, diff --git a/tests/test.cmp b/tests/test.cmp index cf1cc1e1..5996a0ad 100644 --- a/tests/test.cmp +++ b/tests/test.cmp @@ -24681,6 +24681,7 @@ $FoldYear $FormWidth $Friday $Fromnow +$HideCompletedTodos $Hour $Hplu $HushMode @@ -24690,6 +24691,7 @@ $IntMax $IntMin $Is $January +$JSONMode $July $June $LatDeg @@ -24747,6 +24749,7 @@ $TimeSep $TimetIs64bit $Tm $Today +$TodoFilter $Tomorrow $Tt $Tu