Module: RemLint::Tables

Defined in:
lib/remlint/tables.rb

Overview

Remind's vocabulary, exactly as the interpreter knows it.

Constant Summary collapse

NO_MAX_ARGS =

Remind's variadic sentinel: char(...) and friends take any number of arguments above their minimum.

127
KEYWORD_ROWS =

[keyword, minimum abbreviation length, token type]. Remind accepts any prefix at least minlen characters long, which is why INC is INCLUDE and SCAN is SCANFROM.

[
  ["ADDOMIT"           , 7 , "T_AddOmit"          ],
  ["AFTER"             , 5 , "T_Skip"             ],
  ["APRIL"             , 3 , "T_Month"            ],
  ["AT"                , 2 , "T_At"               ],
  ["AUGUST"            , 3 , "T_Month"            ],
  ["BANNER"            , 3 , "T_Banner"           ],
  ["BEFORE"            , 6 , "T_Skip"             ],
  ["CAL"               , 3 , "T_RemType"          ],
  ["CLEAR-OMIT-CONTEXT", 5 , "T_Clr"              ],
  ["COMPLETE-THROUGH"  , 16, "T_CompleteThrough"  ],
  ["COMPLETED-THROUGH" , 17, "T_CompleteThrough"  ],
  ["DEBUG"             , 5 , "T_Debug"            ],
  ["DECEMBER"          , 3 , "T_Month"            ],
  ["DO"                , 2 , "T_IncludeR"         ],
  ["DUMPVARS"          , 4 , "T_Dumpvars"         ],
  ["DURATION"          , 8 , "T_Duration"         ],
  ["ELSE"              , 4 , "T_Else"             ],
  ["ENDIF"             , 5 , "T_EndIf"            ],
  ["ERRMSG"            , 6 , "T_ErrMsg"           ],
  ["EXIT"              , 4 , "T_Exit"             ],
  ["EXPR"              , 4 , "T_Expr"             ],
  ["FEBRUARY"          , 3 , "T_Month"            ],
  ["FIRST"             , 5 , "T_Ordinal"          ],
  ["FLUSH"             , 5 , "T_Flush"            ],
  ["FOURTH"            , 6 , "T_Ordinal"          ],
  ["FRENAME"           , 7 , "T_Frename"          ],
  ["FRIDAY"            , 3 , "T_WkDay"            ],
  ["FROM"              , 4 , "T_Scanfrom"         ],
  ["FSET"              , 4 , "T_Fset"             ],
  ["FUNSET"            , 6 , "T_Funset"           ],
  ["IF"                , 2 , "T_If"               ],
  ["IFTRIG"            , 6 , "T_IfTrig"           ],
  ["IN"                , 2 , "T_In"               ],
  ["INCLUDE"           , 3 , "T_Include"          ],
  ["INCLUDECMD"        , 10, "T_IncludeCmd"       ],
  ["INFO"              , 4 , "T_Info"             ],
  ["JANUARY"           , 3 , "T_Month"            ],
  ["JULY"              , 3 , "T_Month"            ],
  ["JUNE"              , 3 , "T_Month"            ],
  ["LAST"              , 4 , "T_Ordinal"          ],
  ["LASTDAY"           , 7 , "T_BackAdj"          ],
  ["LASTWORKDAY"       , 11, "T_BackAdj"          ],
  ["MARCH"             , 3 , "T_Month"            ],
  ["MAX-OVERDUE"       , 11, "T_MaxOverdue"       ],
  ["MAY"               , 3 , "T_Month"            ],
  ["MAYBE-UNCOMPUTABLE", 5 , "T_MaybeUncomputable"],
  ["MONDAY"            , 3 , "T_WkDay"            ],
  ["MSF"               , 3 , "T_RemType"          ],
  ["MSG"               , 3 , "T_RemType"          ],
  ["NOQUEUE"           , 7 , "T_NoQueue"          ],
  ["NOVEMBER"          , 3 , "T_Month"            ],
  ["OCTOBER"           , 3 , "T_Month"            ],
  ["OMIT"              , 4 , "T_Omit"             ],
  ["OMITFUNC"          , 8 , "T_OmitFunc"         ],
  ["ONCE"              , 4 , "T_Once"             ],
  ["POP-FUNCS"         , 9 , "T_PopFuncs"         ],
  ["POP-OMIT-CONTEXT"  , 3 , "T_Pop"              ],
  ["POP-VARS"          , 8 , "T_PopVars"          ],
  ["PRESERVE"          , 8 , "T_Preserve"         ],
  ["PRIORITY"          , 8 , "T_Priority"         ],
  ["PS"                , 2 , "T_RemType"          ],
  ["PSFILE"            , 6 , "T_RemType"          ],
  ["PUSH-FUNCS"        , 10, "T_PushFuncs"        ],
  ["PUSH-OMIT-CONTEXT" , 4 , "T_Push"             ],
  ["PUSH-VARS"         , 9 , "T_PushVars"         ],
  ["REM"               , 3 , "T_Rem"              ],
  ["RETURN"            , 6 , "T_Return"           ],
  ["RUN"               , 3 , "T_RemType"          ],
  ["SATISFY"           , 7 , "T_RemType"          ],
  ["SATURDAY"          , 3 , "T_WkDay"            ],
  ["SCANFROM"          , 4 , "T_Scanfrom"         ],
  ["SCHED"             , 5 , "T_Sched"            ],
  ["SECOND"            , 6 , "T_Ordinal"          ],
  ["SEPTEMBER"         , 3 , "T_Month"            ],
  ["SET"               , 3 , "T_Set"              ],
  ["SKIP"              , 4 , "T_Skip"             ],
  ["SPECIAL"           , 7 , "T_RemType"          ],
  ["SUNDAY"            , 3 , "T_WkDay"            ],
  ["SYSINCLUDE"        , 10, "T_IncludeSys"       ],
  ["TAG"               , 3 , "T_Tag"              ],
  ["THIRD"             , 5 , "T_Ordinal"          ],
  ["THROUGH"           , 7 , "T_Through"          ],
  ["THURSDAY"          , 3 , "T_WkDay"            ],
  ["TODO"              , 4 , "T_Todo"             ],
  ["TRANSLATE"         , 5 , "T_Translate"        ],
  ["TUESDAY"           , 3 , "T_WkDay"            ],
  ["TZ"                , 2 , "T_Tz"               ],
  ["UNSET"             , 5 , "T_UnSet"            ],
  ["UNTIL"             , 5 , "T_Until"            ],
  ["WARN"              , 4 , "T_Warn"             ],
  ["WEDNESDAY"         , 3 , "T_WkDay"            ],
].freeze
FUNCTION_ROWS =

[name, minimum arguments, maximum arguments].

[
  ["_"                  , 1, 1  ],
  ["abs"                , 1, 1  ],
  ["access"             , 2, 2  ],
  ["adawn"              , 0, 1  ],
  ["adusk"              , 0, 1  ],
  ["ampm"               , 1, 4  ],
  ["ansicolor"          , 1, 5  ],
  ["args"               , 1, 1  ],
  ["asc"                , 1, 1  ],
  ["baseyr"             , 0, 0  ],
  ["catch"              , 2, 2  ],
  ["catcherr"           , 0, 0  ],
  ["char"               , 1, 127],
  ["choose"             , 2, 127],
  ["codepoint"          , 1, 1  ],
  ["coerce"             , 2, 2  ],
  ["columns"            , 0, 1  ],
  ["const"              , 1, 1  ],
  ["current"            , 0, 0  ],
  ["date"               , 3, 3  ],
  ["datepart"           , 1, 1  ],
  ["datetime"           , 2, 5  ],
  ["dawn"               , 0, 1  ],
  ["day"                , 1, 1  ],
  ["daysinmon"          , 1, 2  ],
  ["defined"            , 1, 1  ],
  ["dosubst"            , 1, 3  ],
  ["dusk"               , 0, 1  ],
  ["easterdate"         , 0, 1  ],
  ["escape"             , 1, 2  ],
  ["eval"               , 1, 1  ],
  ["evaltrig"           , 1, 2  ],
  ["filedate"           , 1, 1  ],
  ["filedatetime"       , 1, 1  ],
  ["filedir"            , 0, 0  ],
  ["filename"           , 0, 0  ],
  ["getenv"             , 1, 1  ],
  ["hebdate"            , 2, 5  ],
  ["hebday"             , 1, 1  ],
  ["hebmon"             , 1, 1  ],
  ["hebyear"            , 1, 1  ],
  ["hex"                , 1, 1  ],
  ["hour"               , 1, 1  ],
  ["htmlescape"         , 1, 1  ],
  ["htmlstriptags"      , 1, 1  ],
  ["iif"                , 1, 127],
  ["index"              , 2, 3  ],
  ["isany"              , 1, 127],
  ["isconst"            , 1, 1  ],
  ["isdst"              , 0, 2  ],
  ["isleap"             , 1, 1  ],
  ["isomitted"          , 1, 1  ],
  ["ivritmon"           , 1, 1  ],
  ["language"           , 0, 0  ],
  ["localtoutc"         , 1, 1  ],
  ["lower"              , 1, 1  ],
  ["max"                , 1, 127],
  ["mbchar"             , 1, 127],
  ["mbindex"            , 2, 3  ],
  ["mblower"            , 1, 1  ],
  ["mbpad"              , 3, 4  ],
  ["mbstrlen"           , 1, 1  ],
  ["mbsubstr"           , 2, 3  ],
  ["mbupper"            , 1, 1  ],
  ["min"                , 1, 127],
  ["minsfromutc"        , 0, 2  ],
  ["minute"             , 1, 1  ],
  ["mon"                , 1, 1  ],
  ["monnum"             , 1, 1  ],
  ["moondate"           , 1, 3  ],
  ["moondatetime"       , 1, 3  ],
  ["moonphase"          , 0, 2  ],
  ["moonrise"           , 0, 1  ],
  ["moonrisedir"        , 0, 1  ],
  ["moonset"            , 0, 1  ],
  ["moonsetdir"         , 0, 1  ],
  ["moontime"           , 1, 3  ],
  ["multitrig"          , 1, 127],
  ["ndawn"              , 0, 1  ],
  ["ndusk"              , 0, 1  ],
  ["nonconst"           , 1, 1  ],
  ["nonomitted"         , 2, 127],
  ["now"                , 0, 0  ],
  ["ord"                , 1, 1  ],
  ["orthodoxeaster"     , 0, 1  ],
  ["ostype"             , 0, 0  ],
  ["pad"                , 3, 4  ],
  ["plural"             , 1, 3  ],
  ["psmoon"             , 1, 4  ],
  ["psshade"            , 1, 3  ],
  ["realcurrent"        , 0, 0  ],
  ["realnow"            , 0, 0  ],
  ["realtoday"          , 0, 0  ],
  ["rows"               , 0, 0  ],
  ["sgn"                , 1, 1  ],
  ["shell"              , 1, 2  ],
  ["shellescape"        , 1, 1  ],
  ["slide"              , 2, 127],
  ["soleq"              , 1, 2  ],
  ["stdout"             , 0, 0  ],
  ["strlen"             , 1, 1  ],
  ["substr"             , 2, 3  ],
  ["sunrise"            , 0, 1  ],
  ["sunset"             , 0, 1  ],
  ["time"               , 2, 2  ],
  ["timepart"           , 1, 1  ],
  ["timezone"           , 0, 1  ],
  ["today"              , 0, 0  ],
  ["trig"               , 0, 127],
  ["trigback"           , 0, 0  ],
  ["trigbase"           , 0, 0  ],
  ["trigcompletethrough", 0, 0  ],
  ["trigdate"           , 0, 0  ],
  ["trigdatetime"       , 0, 0  ],
  ["trigdelta"          , 0, 0  ],
  ["trigduration"       , 0, 0  ],
  ["trigeventduration"  , 0, 0  ],
  ["trigeventstart"     , 0, 0  ],
  ["trigeventstarttz"   , 0, 0  ],
  ["trigfrom"           , 0, 0  ],
  ["trigger"            , 1, 3  ],
  ["triginfo"           , 1, 1  ],
  ["trigistodo"         , 0, 0  ],
  ["trigmaxoverdue"     , 0, 0  ],
  ["trigpriority"       , 0, 0  ],
  ["trigrep"            , 0, 0  ],
  ["trigscanfrom"       , 0, 0  ],
  ["trigtags"           , 0, 0  ],
  ["trigtime"           , 0, 0  ],
  ["trigtimedelta"      , 0, 0  ],
  ["trigtimerep"        , 0, 0  ],
  ["trigtimetz"         , 0, 0  ],
  ["trigtz"             , 0, 0  ],
  ["triguntil"          , 0, 0  ],
  ["trigvalid"          , 0, 0  ],
  ["typeof"             , 1, 1  ],
  ["tzconvert"          , 2, 3  ],
  ["upper"              , 1, 1  ],
  ["utctolocal"         , 1, 1  ],
  ["value"              , 1, 2  ],
  ["version"            , 0, 0  ],
  ["weekno"             , 0, 3  ],
  ["wkday"              , 1, 1  ],
  ["wkdaynum"           , 1, 1  ],
  ["year"               , 1, 1  ],
].freeze
SYSVAR_ROWS =

[name, modifiable, type, minimum, maximum]. Non-modifiable variables are readable but reject SET; the bounds are populated only for the integer-valued variables Remind range-checks.

[
  ["AddBlankLines"           , true , "INT_TYPE"      , 0   , 1    ],
  ["Ago"                     , true , "TRANS_TYPE"    , nil , nil  ],
  ["Am"                      , true , "TRANS_TYPE"    , nil , nil  ],
  ["And"                     , true , "TRANS_TYPE"    , nil , nil  ],
  ["April"                   , true , "TRANS_TYPE"    , nil , nil  ],
  ["At"                      , true , "TRANS_TYPE"    , nil , nil  ],
  ["August"                  , true , "TRANS_TYPE"    , nil , nil  ],
  ["CalcUTC"                 , true , "INT_TYPE"      , 0   , 1    ],
  ["CalMode"                 , false, "INT_TYPE"      , nil , nil  ],
  ["CalType"                 , false, "STR_TYPE"      , nil , nil  ],
  ["Daemon"                  , false, "INT_TYPE"      , nil , nil  ],
  ["DateSep"                 , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["DateTimeSep"             , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["December"                , true , "TRANS_TYPE"    , nil , nil  ],
  ["DedupeReminders"         , true , "INT_TYPE"      , 0   , 1    ],
  ["DefaultColor"            , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["DefaultDelta"            , true , "INT_TYPE"      , 0   , 10000],
  ["DefaultPrio"             , true , "INT_TYPE"      , 0   , 9999 ],
  ["DefaultTDelta"           , true , "INT_TYPE"      , nil , nil  ],
  ["DeltaOverride"           , false, "INT_TYPE"      , nil , nil  ],
  ["DontFork"                , false, "INT_TYPE"      , nil , nil  ],
  ["DontQueue"               , false, "INT_TYPE"      , nil , nil  ],
  ["DontTrigAts"             , false, "INT_TYPE"      , nil , nil  ],
  ["EndSent"                 , true , "STR_TYPE"      , nil , nil  ],
  ["EndSentIg"               , true , "STR_TYPE"      , nil , nil  ],
  ["ExpressionTimeLimit"     , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["February"                , true , "TRANS_TYPE"    , nil , nil  ],
  ["FirstIndent"             , true , "INT_TYPE"      , 0   , 132  ],
  ["FoldYear"                , true , "INT_TYPE"      , 0   , 1    ],
  ["FormWidth"               , true , "INT_TYPE"      , 20  , 500  ],
  ["Friday"                  , true , "TRANS_TYPE"    , nil , nil  ],
  ["Fromnow"                 , true , "TRANS_TYPE"    , nil , nil  ],
  ["HideCompletedTodos"      , false, "INT_TYPE"      , nil , nil  ],
  ["Hour"                    , true , "TRANS_TYPE"    , nil , nil  ],
  ["Hplu"                    , true , "STR_TYPE"      , nil , nil  ],
  ["HushMode"                , false, "INT_TYPE"      , nil , nil  ],
  ["IgnoreOnce"              , false, "INT_TYPE"      , nil , nil  ],
  ["InfDelta"                , false, "INT_TYPE"      , nil , nil  ],
  ["IntMax"                  , false, "CONST_INT_TYPE", nil , nil  ],
  ["IntMin"                  , false, "CONST_INT_TYPE", nil , nil  ],
  ["Is"                      , true , "TRANS_TYPE"    , nil , nil  ],
  ["January"                 , true , "TRANS_TYPE"    , nil , nil  ],
  ["JSONMode"                , false, "INT_TYPE"      , nil , nil  ],
  ["July"                    , true , "TRANS_TYPE"    , nil , nil  ],
  ["June"                    , true , "TRANS_TYPE"    , nil , nil  ],
  ["LatDeg"                  , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["Latitude"                , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["LatMin"                  , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["LatSec"                  , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["Location"                , true , "STR_TYPE"      , nil , nil  ],
  ["LongDeg"                 , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["Longitude"               , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["LongMin"                 , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["LongSec"                 , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["March"                   , true , "TRANS_TYPE"    , nil , nil  ],
  ["MaxCachedLines"          , true , "INT_TYPE"      , nil , nil  ],
  ["MaxFullOmits"            , false, "CONST_INT_TYPE", nil , nil  ],
  ["MaxIncludeCmdLines"      , true , "INT_TYPE"      , nil , nil  ],
  ["MaxLateMinutes"          , true , "INT_TYPE"      , nil , nil  ],
  ["MaxLineLength"           , true , "INT_TYPE"      , nil , nil  ],
  ["MaxPartialOmits"         , false, "CONST_INT_TYPE", nil , nil  ],
  ["MaxSatIter"              , true , "INT_TYPE"      , nil , nil  ],
  ["MaxStringLen"            , true , "INT_TYPE"      , nil , nil  ],
  ["May"                     , true , "TRANS_TYPE"    , nil , nil  ],
  ["MinsFromUTC"             , true , "INT_TYPE"      , -780, 780  ],
  ["Minute"                  , true , "TRANS_TYPE"    , nil , nil  ],
  ["Monday"                  , true , "TRANS_TYPE"    , nil , nil  ],
  ["Mplu"                    , true , "STR_TYPE"      , nil , nil  ],
  ["NextMode"                , false, "INT_TYPE"      , nil , nil  ],
  ["November"                , true , "TRANS_TYPE"    , nil , nil  ],
  ["Now"                     , true , "TRANS_TYPE"    , nil , nil  ],
  ["NumFullOmits"            , false, "INT_TYPE"      , nil , nil  ],
  ["NumPartialOmits"         , false, "INT_TYPE"      , nil , nil  ],
  ["NumQueued"               , false, "INT_TYPE"      , nil , nil  ],
  ["NumTrig"                 , false, "INT_TYPE"      , nil , nil  ],
  ["October"                 , true , "TRANS_TYPE"    , nil , nil  ],
  ["On"                      , true , "TRANS_TYPE"    , nil , nil  ],
  ["OnceFile"                , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["ParseUntriggered"        , true , "INT_TYPE"      , 0   , 1    ],
  ["Pm"                      , true , "TRANS_TYPE"    , nil , nil  ],
  ["PrefixLineNo"            , false, "INT_TYPE"      , nil , nil  ],
  ["PSCal"                   , false, "INT_TYPE"      , nil , nil  ],
  ["Repeat"                  , false, "INT_TYPE"      , nil , nil  ],
  ["RunOff"                  , false, "INT_TYPE"      , nil , nil  ],
  ["Saturday"                , true , "TRANS_TYPE"    , nil , nil  ],
  ["September"               , true , "TRANS_TYPE"    , nil , nil  ],
  ["Shaded"                  , false, "INT_TYPE"      , nil , nil  ],
  ["SimpleCal"               , false, "INT_TYPE"      , nil , nil  ],
  ["SortByDate"              , false, "INT_TYPE"      , nil , nil  ],
  ["SortByPrio"              , false, "INT_TYPE"      , nil , nil  ],
  ["SortByTime"              , false, "INT_TYPE"      , nil , nil  ],
  ["SubsIndent"              , true , "INT_TYPE"      , 0   , 132  ],
  ["Sunday"                  , true , "TRANS_TYPE"    , nil , nil  ],
  ["SuppressImplicitWarnings", true , "INT_TYPE"      , 0   , 1    ],
  ["SuppressLRM"             , true , "INT_TYPE"      , 0   , 1    ],
  ["SysInclude"              , false, "STR_TYPE"      , nil , nil  ],
  ["T"                       , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["Tb"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["Td"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["TerminalBackground"      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["TerminalHyperlinks"      , true , "INT_TYPE"      , 0   , 1    ],
  ["Thursday"                , true , "TRANS_TYPE"    , nil , nil  ],
  ["TimeSep"                 , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["TimetIs64bit"            , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["Tm"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["Today"                   , true , "TRANS_TYPE"    , nil , nil  ],
  ["TodoFilter"              , false, "INT_TYPE"      , nil , nil  ],
  ["Tomorrow"                , true , "TRANS_TYPE"    , nil , nil  ],
  ["Tt"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["Tu"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["Tuesday"                 , true , "TRANS_TYPE"    , nil , nil  ],
  ["Tw"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["Ty"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["U"                       , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["Ud"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["Um"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["UntimedFirst"            , false, "INT_TYPE"      , nil , nil  ],
  ["Use256Colors"            , false, "INT_TYPE"      , nil , nil  ],
  ["UseBGVTColors"           , false, "INT_TYPE"      , nil , nil  ],
  ["UseTrueColors"           , false, "INT_TYPE"      , nil , nil  ],
  ["UseVTColors"             , false, "INT_TYPE"      , nil , nil  ],
  ["Uw"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["Uy"                      , false, "SPECIAL_TYPE"  , nil , nil  ],
  ["WarningLevel"            , true , "SPECIAL_TYPE"  , nil , nil  ],
  ["Was"                     , true , "TRANS_TYPE"    , nil , nil  ],
  ["Wednesday"               , true , "TRANS_TYPE"    , nil , nil  ],
].freeze