Compare commits

..

1 Commits

Author SHA1 Message Date
Dianne Skoll
ae17834610 Commit before switching branches.
All checks were successful
Remind unit tests / tests (push) Successful in 52s
2025-02-10 13:49:50 -05:00
557 changed files with 6804 additions and 15483 deletions

2
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,2 @@
liberapay: dskoll

7
.github/README.md vendored Normal file
View File

@@ -0,0 +1,7 @@
# Remind has moved
For various reasons, I have decided to move Remind off GitHub. This repo
will be archived. To create merge requests or issues, please visit
Remind's new home at https://salsa.debian.org/dskoll/remind
-- Dianne Skoll

29
.github/workflows/github-action.yml vendored Normal file
View File

@@ -0,0 +1,29 @@
# language: bash
---
name: Remind unit tests
on:
push
jobs:
tests:
runs-on: ubuntu-latest
steps:
- name: Checkout Remind
uses: actions/checkout@v2
- name: Add test user
run: |
sudo adduser --home /home/testuser --gecos 'Test User' --disabled-password testuser
- name: Fix ownership
run: |
sudo chown -R testuser .
- name: Build
run: |
sudo su -c './configure && make' testuser
- name: Run Tests
run: |
sudo su -c 'make test' testuser
- name: Fix up permissions so GitHub does not complain
run: |
sudo chmod -R a+rwX .

10
.gitignore vendored
View File

@@ -4,12 +4,12 @@
.gitignore
MYMETA.json
MYMETA.yml
Makefile
TAGS
autom4te.cache
blib/
config.log
config.status
gmon.out
man/rem.1
man/rem2ps.1
man/remind.1
@@ -18,7 +18,6 @@ pm_to_blib
rem2html/Makefile
rem2html/rem2html
rem2html/rem2html.1
rem2pdf/Makefile
rem2pdf/Makefile.PL
rem2pdf/Makefile.old
rem2pdf/Makefile.top
@@ -31,8 +30,9 @@ src/rem2ps
src/remind
src/test-*.out
src/version.h
src/xlat.c
tests/once.timestamp
tests/test.out
tests/tz.out
www/Makefile
gmon.out
tests/once.timestamp
src/xlat.c
cremind/Makefile.PL

View File

@@ -39,23 +39,12 @@ install-stripped:
@$(MAKE) -C rem2html install
@$(MAKE) -C rem2pdf -f Makefile.top install INSTALL_BASE=$(INSTALL_BASE)
test: test-basic test-tz
test-tz:
@$(MAKE) -C src -s all
@$(MAKE) -C src -s test-tz
test-basic:
@$(MAKE) -C src -s all
@$(MAKE) -C src -s test-basic
cppcheck:
@$(MAKE) -C src cppcheck
test:
@$(MAKE) -C src -s test
distclean: clean
-rm -f config.cache config.log config.status src/Makefile src/version.h src/config.h tests/test.out tests/tz.out www/Makefile rem2pdf/Makefile.top rem2pdf/Makefile.old rem2pdf/Makefile rem2pdf/Makefile.PL rem2pdf/bin/rem2pdf rem2html/rem2html
-rm -f config.cache config.log config.status src/Makefile src/config.h tests/test.out www/Makefile rem2pdf/Makefile.top rem2pdf/Makefile.old rem2pdf/Makefile rem2pdf/Makefile.PL rem2pdf/bin/rem2pdf rem2html/rem2html
-rm -f man/rem.1 man/rem2ps.1 man/remind.1 man/tkremind.1 scripts/tkremind
-rm -rf autom4te.cache rem2html/Makefile rem2html/rem2html.1
src/Makefile: src/Makefile.in
./configure

View File

@@ -6,21 +6,10 @@ the GNU General Public License, Vesion 2.
## Prerequisites:
### Remind and Rem2PS
remind and rem2ps have no prerequisites beyond the standard C library and
the standard math library.
**remind** and **rem2ps** have no prerequisites beyond the standard C
library and the standard math library. **remind** will make use of
GNU Readline if you have it installed.
- On Debian-like systems, install GNU Readline as follows:
`apt install libreadline-dev`
- On RPM-based systems, you need `readline-devel`
### Rem2HTML and Rem2PDF
**rem2html** requires the JSON::MaybeXS Perl module and **rem2pdf**
rem2html requires the JSON::MaybeXS Perl module and rem2pdf
requires the JSON::MaybeXS, Pango and Cairo Perl modules.
- On Debian-like systems, these prerequisites may be installed with:
@@ -35,9 +24,7 @@ requires the JSON::MaybeXS, Pango and Cairo Perl modules.
- On Arch linux, you need `pango-perl`, `cairo-perl` and `perl-json-maybexs`
### TkRemind
**tkremind** requires Tcl/Tk and the tcllib library.
TkRemind requires Tcl/Tk and the tcllib library.
- On Debian-like systems, install with:
@@ -50,7 +37,7 @@ requires the JSON::MaybeXS, Pango and Cairo Perl modules.
If the little arrows for "Previous Month" and "Next Month" do not display
correctly in TkRemind, you may need to install the Noto Fonts. Install
all of your distribution's Noto Font-related packages.
all of your distribution's Nonto Font-related packages.
- On Debian-like systems, install with:
@@ -58,8 +45,7 @@ all of your distribution's Noto Font-related packages.
## Installation
Assuming you have a normal C development environment installed, Remind
can be installed with the usual:
Remind can be installed with the usual:
`./configure && make && make test && sudo make install`
@@ -69,39 +55,6 @@ edit custom.h on your behalf:
`wish ./build.tk`
## Usage
Remind is a large and complex program. You can read the full manual page
with:
`man remind`
after installation. However, the man page is long and detailed and is
more of a reference than an introduction. You can get an overview
with a [slide deck](https://dianne.skoll.ca/projects/remind/download/remind-oclug.pdf)
I made a while back. There's also a (long) [YouTube video](https://www.youtube.com/watch?v=0SNgvsDvx7M) that serves as an
introduction to Remind.
## A Note about AI
1. No part of Remind was written using AI of any type.<br><br>
I certify that all of the C, Perl and Tcl code in Remind was written
by a human being. I certify that all code in `.rem` files other than
ones under `include/holidays` was written by a human being. The code
under `include/holidays` was derived from the Python "holidays" library
and I have no direct knowledge of the provenance of that library,
though I suspect it's entirely or almost entirely human-written.
2. No AI-generated patches or other sorts of contributions to Remind
will be accepted.
3. Remind's source code may not be used to train an AI model,
including an LLM model, unless all of the output of said model is
released under the GNU General Public License, version 2. If you use
any of Remind's source code to train your model, then anything that
the model produces is a derived product of Remind and must be licensed
under the same terms as Remind.
---
Contact info: dianne@skoll.ca

807
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
dnl Process this file with autoconf to produce a configure script.
AC_INIT(remind, 06.01.03, , , https://dianne.skoll.ca/projects/remind/)
AC_INIT(remind, 05.03.02, , , https://dianne.skoll.ca/projects/remind/)
AC_CONFIG_SRCDIR([src/queue.c])
cat <<'EOF'
@@ -30,8 +30,7 @@ AC_PATH_PROG([PERL], [perl])
dnl Checks for libraries.
AC_CHECK_LIB(m, sqrt)
AC_CHECK_LIB(readline, readline)
AC_CHECK_HEADERS_ONCE([sys/time.h stdint.h readline/readline.h readline/history.h])
AC_CHECK_HEADERS_ONCE([sys/time.h stdint.h])
dnl Integer sizes
AC_CHECK_SIZEOF(unsigned int)
@@ -85,7 +84,7 @@ if test "$?" != 0 ; then
echo "*** COULD NOT DETERMINE RELEASE DATE: docs/WHATSNEW is incorrect!"
exit 1
fi
AC_CHECK_FUNCS(strdup strcasecmp strncasecmp setenv unsetenv glob mbstowcs setlocale initgroups inotify_init1 readline)
AC_CHECK_FUNCS(strdup strcasecmp strncasecmp setenv unsetenv glob mbstowcs setlocale initgroups inotify_init1)
VERSION=$PACKAGE_VERSION
CONFIG_CMD="$0$ac_configure_args_raw"
@@ -96,7 +95,7 @@ AC_SUBST(VERSION)
AC_SUBST(PERL)
AC_SUBST(PERLARTIFACTS)
AC_SUBST(RELEASE_DATE)
AC_CONFIG_FILES([src/Makefile www/Makefile src/version.h rem2html/Makefile rem2html/rem2html rem2pdf/Makefile.PL rem2pdf/Makefile.top rem2pdf/bin/rem2pdf man/rem.1 man/rem2ps.1 man/remind.1 man/tkremind.1 scripts/tkremind])
AC_CONFIG_FILES([src/Makefile www/Makefile src/version.h rem2html/Makefile rem2html/rem2html rem2pdf/Makefile.PL rem2pdf/Makefile.top rem2pdf/bin/rem2pdf man/rem.1 man/rem2ps.1 man/remind.1 man/tkremind.1 scripts/tkremind cremind/Makefile.PL])
AC_OUTPUT
chmod a+x rem2pdf/bin/rem2pdf
chmod a+x scripts/tkremind

View File

@@ -110,17 +110,15 @@
(defconst remind-keywords
(sort
(list "ADDOMIT" "AFTER" "AT" "BAN" "BANNER" "BEFORE" "CAL" "CLEAR"
"CLEAR-OMIT-CONTEXT" "COMPLETE-THROUGH" "DEBUG" "DO" "DUMP" "DUMPVARS"
"DURATION" "ELSE" "ENDIF" "ERRMSG" "EXIT" "EXPR" "FIRST"
"FLUSH" "FOURTH" "FRENAME" "FROM" "FSET" "FUNSET" "IF"
"IFTRIG" "IN" "INC" "INCLUDE" "INCLUDECMD" "INFO" "LAST"
"LASTDAY" "LASTWORKDAY" "MAX-OVERDUE" "MAYBE" "MAYBE-UNCOMPUTABLE" "MSF"
"MSG" "NOQUEUE" "OMIT" "OMITFUNC" "ONCE" "POP"
"POP-OMIT-CONTEXT" "POP-FUNCS" "POP-VARS" "PRESERVE" "PRIORITY" "PS"
"PSFILE" "PUSH" "PUSH-FUNCS" "PUSH-VARS" "PUSH-OMIT-CONTEXT" "REM" "RETURN"
"RUN" "SATISFY" "SCAN" "SCANFROM" "SCHED" "SECOND" "SET"
"SKIP" "SPECIAL" "SYSINCLUDE" "TAG" "THIRD" "THROUGH" "TODO"
"TRANSLATE" "TRANS" "TZ" "UNSET" "UNTIL" "WARN")
"CLEAR-OMIT-CONTEXT" "DEBUG" "DO" "DUMP" "DUMPVARS" "DURATION" "ELSE"
"ENDIF" "ERRMSG" "EXIT" "EXPR" "FIRST" "FLUSH" "FOURTH" "FRENAME" "FROM" "FSET"
"FUNSET" "IF" "IFTRIG" "IN" "INC" "INCLUDE" "INCLUDECMD" "INFO" "LAST"
"LASTDAY" "LASTWORKDAY" "MAYBE" "MAYBE-UNCOMPUTABLE" "MSF" "MSG"
"NOQUEUE" "OMIT" "OMITFUNC" "ONCE" "POP" "POP-OMIT-CONTEXT" "PRESERVE"
"PRIORITY" "PS" "PSFILE" "PUSH" "PUSH-OMIT-CONTEXT" "REM" "RUN"
"SATISFY" "SCAN" "SCANFROM" "SCHED" "SECOND" "SET" "SKIP" "SPECIAL"
"SYSINCLUDE" "TAG" "THIRD" "THROUGH" "TRANSLATE" "TRANS" "UNSET"
"UNTIL" "WARN")
#'(lambda (a b) (> (length a) (length b)))))
@@ -137,8 +135,8 @@
"$DefaultPrio" "$DefaultTDelta" "$DeltaOverride"
"$DontFork" "$DontQueue" "$DontTrigAts" "$EndSent" "$EndSentIg"
"$ExpressionTimeLimit" "$February" "$FirstIndent" "$FoldYear"
"$FormWidth" "$Friday" "$Fromnow" "$HideCompletedTodos" "$Hour" "$Hplu" "$HushMode"
"$IgnoreOnce" "$InfDelta" "$IntMax" "$IntMin" "$Is" "$January" "$JSONMode" "$July"
"$FormWidth" "$Friday" "$Fromnow" "$Hour" "$Hplu" "$HushMode"
"$IgnoreOnce" "$InfDelta" "$IntMax" "$IntMin" "$Is" "$January" "$July"
"$June" "$LatDeg" "$Latitude" "$LatMin" "$LatSec" "$Location"
"$LongDeg" "$Longitude" "$LongMin" "$LongSec" "$March" "$MaxFullOmits"
"$MaxLateMinutes" "$MaxPartialOmits" "$MaxSatIter" "$MaxStringLen"
@@ -147,11 +145,11 @@
"$NumTrig" "$October" "$On" "$OnceFile" "$ParseUntriggered" "$Pm"
"$PrefixLineNo" "$PSCal" "$RunOff" "$Saturday" "$September"
"$SimpleCal" "$SortByDate" "$SortByPrio" "$SortByTime" "$SubsIndent"
"$Sunday" "$SuppressImplicitWarnings" "$SuppressLRM" "$SysInclude" "$T" "$Tb" "$Td"
"$TerminalBackground" "$Thursday" "$TimeSep" "$TimetIs64bit" "$Tm" "$Today" "$TodoFilter"
"$Sunday" "$SuppressImplicitWarnings" "$SuppressLRM" "$SysInclude" "$T" "$Td"
"$TerminalBackground" "$Thursday" "$TimeSep" "$Tm" "$Today"
"$Tomorrow" "$Tt" "$Tuesday" "$Tw" "$Ty" "$U" "$Ud" "$Um"
"$UntimedFirst" "$Use256Colors" "$UseBGVTColors" "$UseTrueColors"
"$UseVTColors" "$Uw" "$Uy" "$WarningLevel" "$Was" "$Wednesday")
"$UseVTColors" "$Uw" "$Uy" "$Was" "$Wednesday")
#'(lambda (a b) (> (length a) (length b)))))
(defconst remind-time-words
@@ -166,26 +164,23 @@
(defconst remind-builtin-functions
(sort
(list "_" "abs" "access" "adawn" "adusk" "ampm" "ansicolor" "args" "asc"
"baseyr" "catch" "catcherr" "char" "choose" "codepoint" "coerce" "columns" "const" "current" "date"
"baseyr" "char" "choose" "coerce" "columns" "current" "date"
"datepart" "datetime" "dawn" "day" "daysinmon" "defined" "dosubst"
"dusk" "easterdate" "escape" "eval" "evaltrig" "filedate" "filedatetime"
"filedir" "filename" "getenv" "hebdate" "hebday" "hebmon" "hebyear" "hex"
"hour" "htmlescape" "htmlstriptags" "iif" "index" "isany" "isconst" "isdst"
"isleap" "isomitted" "language" "localtoutc" "lower" "max"
"mbasc" "mbindex" "mbstrlen" "mbsubstr" "min"
"minsfromutc" "minute" "mon" "monnum" "moondate" "moondatetime"
"moonphase" "moonrise" "moonrisedir" "moonset" "moonsetdir" "moontime"
"multitrig" "ndawn" "ndusk" "nonconst" "nonomitted" "now" "ord" "orthodoxeaster"
"ostype" "pad" "plural" "psmoon" "psshade" "realcurrent" "realnow"
"realtoday" "rows" "sgn" "shell" "shellescape" "slide" "soleq"
"stdout" "strlen" "substr" "sunrise" "sunset" "time" "timepart"
"timezone" "today" "trig" "trigback" "trigbase" "trigcompletethrough" "trigdate" "trigdatetime"
"trigdelta" "trigduration" "trigeventduration" "trigeventstart" "trigeventstarttz"
"trigfrom" "trigger" "triginfo" "trigistodo" "trigmaxoverdue" "trigpriority" "trigrep"
"trigscanfrom" "trigtags" "trigtime" "trigtimedelta" "trigtimerep" "trigtimetz" "trigtz"
"dusk" "easterdate" "escape" "evaltrig" "filedate" "filedatetime" "filedir"
"filename" "getenv" "hebdate" "hebday" "hebmon" "hebyear" "hour"
"htmlescape" "htmlstriptags" "iif" "index" "isany" "isdst" "isleap"
"isomitted" "language" "localtoutc" "lower" "max" "min" "minsfromutc"
"minute" "mon" "monnum" "moondate" "moondatetime" "moonphase"
"moontime" "multitrig" "ndawn" "ndusk" "nonomitted" "now" "ord"
"orthodoxeaster" "ostype" "pad" "plural" "psmoon" "psshade"
"realcurrent" "realnow" "realtoday" "rows" "sgn" "shell" "shellescape"
"slide" "soleq" "stdout" "strlen" "substr" "sunrise" "sunset" "time"
"timepart" "timezone" "today" "trig" "trigback" "trigdate"
"trigdatetime" "trigdelta" "trigduration" "trigeventduration"
"trigeventstart" "trigfrom" "trigger" "triginfo" "trigpriority" "trigrep"
"trigscanfrom" "trigtags" "trigtime" "trigtimedelta" "trigtimerep"
"triguntil" "trigvalid" "typeof" "tzconvert" "upper" "utctolocal"
"value" "version" "weekno" "wkday" "wkdaynum" "year"
)
"value" "version" "weekno" "wkday" "wkdaynum" "year")
#'(lambda (a b) (> (length a) (length b)))))
;;; faces

21
cremind/Makefile.PL.in Normal file
View File

@@ -0,0 +1,21 @@
use ExtUtils::MakeMaker;
{
# Override pod2man options
package MY;
sub manifypods {
my ($self,%attribs) = @_;
my $result = $self->SUPER::manifypods(%attribs);
$result =~ s/^(POD2MAN_EXE\s*=\s*)(.+)$/$1$2 --center 'VERSION @VERSION@' --date '@RELEASE_DATE@'/m;
return $result;
}
}
WriteMakefile(
NAME => 'cremind"
AUTHOR => q{Dianne Skoll <dianne@skoll.ca>},
VERSION => '@VERSION@',
PREREQ_PM => {
'Curses::UI' => 0,
},
EXE_FILES => [ 'bin/cremind' ]
);

43
cremind/bin/cremind Normal file
View File

@@ -0,0 +1,43 @@
#!/usr/bin/perl
use strict;
use warnings;
use Curses::UI;
my $panes;
my $cui = Curses::UI->new(
-clear_on_exit => 1,
-color_support => 1,
);
sub check_window_size {
if ($Curses::LINES < 24 || $Curses::COLS < 80) {
$cui->dialog("This program needs a terminal window at least 24 lines by 80 columns. This one is " . $Curses::LINES . " by " . $Curses::COLS);
exit(1);
}
}
sub create_panes {
$panes->{calendar} = $cui->add(
'calendar', 'Window',
-x => 0,
-y => 0,
-bfg => 'green',
-width => 23,
-border => 1,
-height => 10);
$panes->{calendar}->add('cal', 'TextViewer',
-text =>
" March 2025\n" .
"Su Mo Tu We Th Fr Sa\n" .
" 1 2 3 4 5 6 7\n" .
" 8 9 10 11 12 13 14\n" .
"15 16 17 18 19 20 21\n" .
"22 23 24 25 26 27 28\n" .
"29 30 31\n")
}
check_window_size();
create_panes();
alarm(3);
$cui->mainloop();

View File

@@ -1,395 +1,5 @@
CHANGES TO REMIND
* VERSION 6.1 Patch 3 - 2025-09-30
- IMPROVEMENT: remind: Issue a warning that SCANFROM should be used
with ADDOMIT in cases where Remind detects a movable OMIT.
- NEW FEATURE: remind: Add $WarningLevel system variable. This lets
you suppress warnings added by new versions of Remind until you have
a chance to update your remind scripts.
- BUG FIX / IMPROVEMENT: include/holidays/*.rem: Simplify the logic
used for moving holidays before/after weekends. Also fixes bugs
found in the logic used to move New Year's Day. Thanks to Nimrod
Levy for pointing out the New Year's Day bug.
- IMPROVEMENT: include/holidays/jewish.rem: This file was reworked by
Nimrod Levy to simplify logic and optionally add the counting of the
Omer.
- BUG FIX: remind: "remind -c" would add an unnecessary blank line for
completely-empty calendar rows if you used the "-w,0,0" option.
This is now fixed. Bug pointed out by Tim Chase.
* VERSION 6.1 Patch 2 - 2025-09-19
- BUG FIX: remind: A reminder on a specific fixed date and time that
uses the TZ feature could erroneously issue a "Can't compute trigger"
error. This has been fixed.
- CHANGE: remind: The default for --max-expr-complexity is 10,000,000
(ten million) instead of unlimited. This should not affect any
real-world Remind scripts.
* VERSION 6.1 Patch 1 - 2025-09-12
- NEW FEATURE: remind: Add the new --max-expr-complexity=n
command-line argument. It is possible to write expressions that use
enormous amounts of CPU time, such as the following:
FSET fib(n) iif(n <= 2, 1, fib(n-1)+fib(n-2))
SET a fib(100)
That will take essentially forever to execute, but will not hit the
built-in recursion limit. Using a command-line argument of
--max-expr-complexity=1000000 will terminate evaluation in a few
dozen milliseconds on modern hardware, and should not affect
realistic reminder scripts. See the man page for details.
- IMPROVEMENT: remind: Add UTF-8-aware functions to complement the
byte-aware functions that could give incorrect results by splitting
a UTF-8 character sequence. The correspondence between old and new
functions is:
NON-UTF-8-AWARE UTF-8-AWARE
=============== ===========
strlen mbstrlen
substr mbsubstr
index mbindex
char mbchar
asc codepoint
See the remind(1) man page for details.
- MINOR NEW FEATURE: remind: You can use hexadecimal integer constants
like 0xFE12 in expressions. This is mostly useful for using
codepoint() since Unicode code points are often expressed in
hexadecimal.
- BUG FIX: remind: When truncating a string when executing DUMPVARS or
during debugging of expression evaluation, Remind could sometimes
cut the string in the middle of a UTF-8 sequence. This has been
fixed.
* VERSION 6.1 Patch 0 - 2025-09-08
- MAJOR NEW FEATURE: remind: The TZ keyword lets you specify a time
zone for a REM command. All trigger calculations are performed in
the named time zone.
- DOCUMENTATION: Update README.md to document prerequisites for readline
support.
- DOCUMENTATION: remind.1: Document system variables such as $T that can
have multiple types.
- BUG FIX: remind: If Remind was run interactively ("remind -c -" with
readline support enabled) it would not properly cache the input
file, but would keep asking for interactive input. This has been
fixed.
* VERSION 6.0 Patch 2 - 2025-09-01
- CHANGE: Default $ParseUntriggered to 0 instead of 1. The default
could cause spurious warnings such as "type mismatch" warnings for
untriggered reminders.
- TEST FIX: Explicitly set latitude and longitude in test files.
- BUG FIX: remind: Don't add lines to "readline" history unless they
are actually being read from standard input.
- BUG FIX: remind: On the command-line, make '-i$foo' behave the same
way as '-i$foo=0' as was documented in the man page.
- BUG FIX: remind: Clamp the output of trigger() to "1 January 1990 AT
00:00" if the UTC flag is used, even if it would actually produce a
result in 1989.
- MINOR FIX: remind: Avoid "unused result" compiler warning.
* VERSION 6.0 Patch 1 - 2025-08-19
- NEW FEATURE: remind: Add readline support if input is taken from stdin
(ie, "remind -"). This gives you full editing support if you run
Remind interactively.
- BUG FIX: remind: Fix buffer overflow in DUMPVARS command.
Thanks to Jochen Sprickerhof for helping me find this bug.
* VERSION 6.0 Patch 0 - 2025-08-18
- MAJOR NEW FEATURE: remind: Introduction of TODOs. These are similar
to normal reminders, but (in Agenda Mode) you keep getting reminded
of them even once they are in the past, unless you specifically mark
them as completed.
- MAJOR NEW FEATURE: remind: The --json long option causes Remind to
output JSON in Agenda Mode instead of the normal text output. See
tkremind for an example of how a front-end can use this output.
- MINOR NEW FEATURE: remind: The RETURN statement can be used to skip
the rest of the current file. Useful for early exit from an
INCLUDEd file.
- MINOR NEW FEATURE: remind: Allow the %:, %!, %?, %@ and %#
substitution sequences to be overridden by defining the functions
subst_colon, subst_bang, subst_question, subst_at and subst_hash,
respectively.
- SAFETY IMPROVEMENT: remind: If a function is defined in a context
where RUN is disabled, disable RUN during the evaluation of the
function. Also disable RUN for all subst_XXX callbacks and the
ordx(n) callback.
- MAJOR IMPROVEMENTS: tkremind: TkRemind has been given an overhaul.
The "Show Queue" and "Show Today's Reminders" windows now respect
the color scheme. TkRemind lets you create TODO reminders and
easily mark them completed. You can right-click on a day number
to get a window with Agenda Mode reminders for that day.
- MINOR IMPROVEMENT: remind: Language packs can define an ordx(n)
function that localizes ord(n). If this function is defined, then
ord(n) automatically calls it rather than using its built-in English
localization. Appropriate ordx(n) definitions have been added to
all language packs.
- MINOR IMPROVEMENT: remind: The %b substitution sequence handles
dates in the past (because of TODOs). The %! sequence considers
both date and time, and can be used with non-timed reminders. The
new %? sequence is similar to %!, but outputs "are" and "were"
instead of "is" and "was". The new %*! and %*? sequences are
similar to %! and %?, but compare the trigger date to realtoday()
instead of to today().
- MINOR IMPROVEMENT: remind: Downgrade a SPECIAL COLOR... with
out-of-range color values to a normal MSG-type reminder.
- MINOR IMPROVEMENT: include/lang/nl.rem: Use "eergisteren" for "2
days ago" and "overmorgen" for "in 2 days' time."
- MINOR IMPROVEMENT: tkremind: TkRemind now passes all command-line
options back to Remind.
- TEST IMPROVEMENT: remind: Add --flush option and use it in tests to
have more predictable interleaving of stdout/stderr output.
- BUG FIX: tkremind: In a couple of places, the "eval" command was used
where the intention was to use "catch". I blame Perl...
- BUG FIX: remind: SCANFROM and FROM are separated out internally, and
in the JSON output, the original FROM or SCANFROM value is
preserved, including relative SCANFROMs.
- BUG FIX: tkremind: Remove some extraneous semicolons.
- DOCUMENTATION FIX: Fix some man-page format directive errors;
tweak wording in several pages.
* VERSION 5.5 Patch 0 - 2025-07-28
- NEW FEATURE: remind: Add the PUSH-VARS / POP-VARS commands and the
analogous PUSH-FUNCS / POP-FUNCS commands. These let you localize
changes to variables and functions and help with writing more modular
reminder files.
- INTERNAL CHANGES: Clean up the code following recommendations from
an updated "cppcheck" executable.
* VERSION 5.4 Patch 2 - 2025-07-16
- MINOR CHANGE: remind: Allow daysinmon() to take a DATE or DATETIME
argument.
- MINOR CHANGE: remind: All functions that want an integer month number
will now also accept a string naming the month.
- UPDATE: include/holidays/chinese-new-year.rem: Add dates for Chinese
New Year for 2051 through 2100.
- BUG FIX: remind: Set trigdate() correctly for a fully-specified
date, even if it's in the past, as the manual documented. Bug
found by Tim Chase.
- DOCUMENTATION FIX: rem2html: Document the correct Perl module
prerequisites.
- CODE FIXES: remind: Various minor improvements to the code with
no user-visible changes.
* VERSION 5.4 Patch 1 - 2025-06-15
- MAJOR BUG FIX: remind: In some circumstances, a REM command could
yield a trigger date after its UNTIL date, rather than recognizing it
as having expired. This has been fixed. Bug found by Ian! D. Allen.
- BUG FIX: rem2pdf: Support the COLOUR special (as well as COLOR).
- MINOR IMPROVEMENT: Add include/utils/add-html-anchors.rem. You can
INCLUDE this file to get HTML anchors added to every calendar day
by rem2html.
- DOCUMENTATION: Add NOTE-ABOUT-AI.txt
* VERSION 5.4 Patch 0 - 2025-06-03
- MAJOR IMPROVEMENT: remind: Track which expressions and variables
Remind can prove to its satisfaction are "constant" - that is, that
will always have the same value on any Remind run as long as the
files are not edited. This allows "Purge Mode" to purge more
reminders than before.
See the new remind(1) man page section "NON-CONSTANT EXPRESSIONS"
- MINOR NEW FEATURE: remind: add the "nonconst" built-in function (to
force an expression to be interpreted as non-constant), the "const"
function to force an expression to be interpreted as constant, and
the "isconst" function to test if an expression is constant.
- MINOR NEW FEATURE: remind: Add eval() built-in function that takes a
string argument and evaluates it as an expression. For safety, the
"shell" function is disabled inside an eval().
- MINOR NEW FEATURE: remind: add the "u" debugging flag to warn you if
you set a variable that is not subsequently used.
- MINOR NEW FEATURE: remind: Add the trigbase() function and
corresponding $Tb system variable. See the remind(1) man page for
details.
- MINOR IMPROVEMENT: remind: make value("var", default) evaluate the
second argument lazily: If "var" is defined, then the second
argument is never evaluated.
- MINOR IMPROVEMENT: remind: Add syntax for redefining a function without
issuing a warning. The syntax:
FSET - func(x) expr
is equivalent to:
FUNSET func
FSET func(x) expr
- MINOR IMPROVEMENT: include/holidays: Update a bunch of files to use
isany(n, a, b, c) rather than (n == a || n == b || n == c)
- MINOR IMPROVEMENT: remind: Make $Tu a synonym for triguntil().
- MINOR IMPROVEMENT: remind: If coerce() fails, issue a more detailed
error message.
- MINOR IMPROVEMENT: remind: Using Hush mode "-h" with purge mode "-j"
suppresses the normal purge-mode diagnostics about reminders that
might not be purged. Instead, only the "#!P: Expired" purge-mode
lines are emitted.
- NEW FEATURE: remind: Add the catch() built-in function. This lets
you catch errors in expression evaluation. For example:
catch(2/0, "oops") returns "oops". The catcherr() function returns
the error message from the last catch() expression that failed, in
this case "Division by zero".
- IMPROVEMENT: remind: Remind can handle dates that require UTC to
Local conversion (and vice-versa) for years greater than 2038, even
on systems with a 32-bit time_t.
- MINOR IMPROVEMENT: remind: Allow the argument to monnum() to be a
string, in which case it's parsed as a month name and the
corresponding month number returned.
- MINOR IMPROVEMENT: remind: Allow the argument to wkdaynum() to be a
string, in which case it's parsed as a weekday name and the
corresponding weekday number returned.
- MINOR IMPROVEMENT: remind: Make the expression parser optimize away
the unary "-" and "!" operators when followed by an integer constant.
- BUG FIX: tests: Don't use the obsolete "tail +2" syntax in test-rem.
Fix courtesy of Dick Marinus.
* VERSION 5.3 Patch 7 - 2025-05-06
- IMPROVEMENT: examples/astro: Make moonrise/moonset appear after
sunrise/sunset
- NEW FILES: Add include/solar-eclipses.rem and
include/lunar-eclipses.rem for solar and lunar eclipses
(respectively) in the 21st century.
- NEW SYSTEM VARIABLE: remind: Add $TimetIs64bit system variable,
which is 1 if the built in time_t type is at least 64 bits, and 0
otherwise.
- TEST FIX: "make test" now passes on systems with a 32-bit time_t
type.
- BUG FIX: include/holidays/nl.rem: Use the correct rules for
Koningsdag and Bevrijdingsdag, courtesy of Adrian P. van Bloois.
* VERSION 5.3 Patch 6 - 2025-04-25
- BUG FIX: remind: Make "remind -s" respect $DefaultColor. Bug found by
Tim Chase.
- DOCUMENTATION IMPROVEMENT: Make documentation of $SuppressLRM a bit more
prominent
- UPDATE: contrib/remind-conf-mode: Add new functions moonrise, moonset, etc.
to Emacs highlighting file
- MINOR IMPROVEMENT: examples/astro: Align output better
- MINOR FIX: src/moon.c: Change C++-style comments to C-style comments
* VERSION 5.3 Patch 5 - 2025-03-23
- NEW FEATURE: remind: Add moonrise, moonset, moonrisedir and moonsetdir
functions. The first two functions calculate the time of the next
moonrise and moonset, and the second two calculate in which direction
the moon will rise or set. See the examples/astro script for examples
of how to use the moonrise/moonset functions.
- CODE CLEANUPS: remind: Some minor code cleanups with no user-visible effects.
- IMPROVEMENT: Add tests for the astronomical calculation functions.
- UPDATE: Update the included json.c and json.h files to the latest versions
from https://github.com/udp/json-parser
- BUG FIX: remind: The %2 and %@ sequences would print "0:34am" for the
time 00:34, instead of the correct "12:34am". This has been fixed.
- BUG FIX: TkRemind: Fix bug that broke the ability to open a text editor
on a reminder from the "Queue..." listing.
* VERSION 5.3 Patch 4 - 2025-03-09
- BUG FIX: remind: "make test" could fail if Remind was built in a locale
other than "C". This has been fixed.
- BUG FIX: Fix a typo in the remind man page.
* VERSION 5.3 Patch 3 - 2025-03-03
- NEW FEATURE: remind: If a command spans more than one line (because of
backslash line continuation) output both the starting and ending line
number in error messages.
- NEW FEATURE: remind: In the JSON -pp and -ppp output, include a new key
lineno_start to specify the starting line of a multi-line reminder.
The existing lineno key specifies the ending line; this is maintained
for backward-compatibility.
- MINOR IMPROVEMENT: include/holidays/misc.rem: Add a few new holidays and
URL INFO strings.
- CHANGE: remind: Issue a warning if a time-related substitution sequence
is used with a non-timed REM command.
- BUG FIX: remind: Fix a memory leak.
* VERSION 5.3 Patch 2 - 2025-02-09
- CHANGE: remind: Revert a change to the way "-y" tags are generated that
@@ -1746,10 +1356,10 @@ CHANGES TO REMIND
- NEW FEATURE: Add "-u+username" variant to tell Remind to switch users to
"username" without disabling RUN directives. Idea courtesy of Ian! D. Allen
- CHANGE: rem2html: rem2html has been moved out of the www/ directory
into its own rem2html/ directory. If your system has the
prerequisites (namely Perl, Getopt::Long and JSON::MaybeXS) then
rem2html will be installed by "make install".
- CHANGE: rem2html: rem2html has been moved out of the www/ directory into
its own rem2html/ directory. If your system has the prerequisites
(namely Perl, Getopt::Long and JSON::Any) then rem2html will be installed
by "make install".
- CHANGE: Remove "cm2rem". It was about 20 years obsolete.

1
examples/alignment.rem Executable file → Normal file
View File

@@ -1,4 +1,3 @@
#!/usr/bin/env -S remind -@2
# Demo the columns() function
#
# Run as: remind -@2 alignment.rem

View File

@@ -32,64 +32,6 @@ EOF
remind -g "-i\$Latitude=\"$latitude\"" "-i\$Longitude=\"$longitude\"" -q -@2 - "$@" <<'EOF'
SET $AddBlankLines 0
FSET angle_to_direction(x) \
IIF(x > 348 && x <= 11, "North", \
x > 11 && x <= 34, "North North-East", \
x > 34 && x <= 56, "North-East", \
x > 56 && x <= 79, "East North-East", \
x > 79 && x <= 101, "East", \
x > 101 && x <= 124, "East South-East", \
x > 124 && x <= 146, "South-East", \
x > 146 && x <= 169, "South South-East", \
x > 169 && x <= 191, "South", \
x > 191 && x <= 214, "South South-West", \
x > 214 && x <= 236, "South-West", \
x > 236 && x <= 259, "West South-West", \
x > 259 && x <= 281, "West", \
x > 281 && x <= 304, "West North-West", \
x > 304 && x <= 326, "North-West", \
"North North-West")
BANNER %
set mr moonrise()
set ms moonset()
set mr_a moonrisedir()
set ms_a moonsetdir()
REM NOQUEUE [mr] MSG Moonrise: %*3 in the [angle_to_direction(mr_a)] ([mr_a] degrees)
REM NOQUEUE [ms] MSG Moonset: %*3 in the [angle_to_direction(ms_a)] ([ms_a] degrees)
IF (datepart(mr) != today())
REM MSG Moonrise: No moonrise today
ENDIF
IF (datepart(ms) != today())
REM MSG Moonset: No moonset today
ENDIF
EOF
echo ""
remind -g "-i\$Latitude=\"$latitude\"" "-i\$Longitude=\"$longitude\"" -q -@2 - "$@" <<'EOF'
SET $AddBlankLines 0
FSET angle_to_direction(x) \
IIF(x > 348 || x <= 11, "North", \
x > 11 && x <= 34, "North North-East", \
x > 34 && x <= 56, "North-East", \
x > 56 && x <= 79, "East North-East", \
x > 79 && x <= 101, "East", \
x > 101 && x <= 124, "East South-East", \
x > 124 && x <= 146, "South-East", \
x > 146 && x <= 169, "South South-East", \
x > 169 && x <= 191, "South", \
x > 191 && x <= 214, "South South-West", \
x > 214 && x <= 236, "South-West", \
x > 236 && x <= 259, "West South-West", \
x > 259 && x <= 281, "West", \
x > 281 && x <= 304, "West North-West", \
x > 304 && x <= 326, "North-West", \
"North North-West")
BANNER %
IF $TerminalBackground == 0
REM [moondatetime(0)] +60 SPECIAL COLOR 255 255 0 New moon: 🌑 [$T] %3 (%b)

View File

@@ -1,24 +0,0 @@
#!/usr/bin/env -S remind -@2
# This is a little Easter Egg that simply draws
# the Transgender Pride Flag. It's included in
# Remind because (1) the author is trans and (2)
# trans people are under attack in the USA and many
# other places. So this is a little show of support
# and resistance for trans people.
SET $AddBlankLines 0
BANNER %
set c max(columns()-1, 10)
set r max(rows(), 5)
set bar "█" * c
set dups r/5
set bars (bar + "%_") * dups
set bars mbsubstr(bars, 0, mbstrlen(bars)-2)
REM SPECIAL COLOR 91 206 250 [bars]
REM SPECIAL COLOR 245 169 184 [bars]
REM SPECIAL COLOR 255 255 255 [bars]
REM SPECIAL COLOR 245 169 184 [bars]
REM SPECIAL COLOR 91 206 250 [bars]

View File

@@ -6,8 +6,8 @@
# SPDX-License-Identifier: GPL-2.0-only
if !defined("ansi_bold")
# Disable ANSI attributes in calendar mode or JSON mode
if $CalMode || $PSCal || $JSONMode
# Disable ANSI attributes in calandar mode
if $CalMode
set ansi_normal ""
set ansi_bold ""
set ansi_faint ""
@@ -28,7 +28,7 @@ if !defined("ansi_bold")
set ansi_underline2 char(27) + "[21m"
set ansi_overline char(27) + "[53m"
endif
preserve ansi_normal ansi_bold ansi_faint ansi_italic ansi_underline ansi_reverse ansi_strikeout ansi_underline2 ansi_overline
preserve ansi_normal ansi_bold ansi_faint ansi_italic ansi_underline2 ansi_reverse ansi_strikeout ansi_underline2 ansi_overline
endif
# Example: REM MSG I must [ansi_bold]emphasize[ansi_normal] \

View File

@@ -38,10 +38,10 @@ You can use the following trick if you would like (for example) 7 days'
advance warning of holidays:
# Save old definition (if any) of msgsuffix
PUSH-FUNCS msgsuffix
FRENAME msgsuffix saved_msgsuffix
# Save old value of $DefaultDelta
PUSH-VARS $DefaultDelta
SET old_delta $DefaultDelta
# We want 7 days' advance warning
SET $DefaultDelta 7
@@ -57,9 +57,6 @@ advance warning of holidays:
SYSINCLUDE holidays/us.rem
SYSINCLUDE holidays/us/ny.rem
# Restore old value $DefaultDelta
POP-VARS
# Restore old version of msgsuffix
POP-FUNCS
# Restore old version of msgsuffix and $DefaultDelta
FRENAME saved_msgsuffix msgsuffix
SET $DefaultDelta old_delta

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ad.rem
# also include [$SysInclude]/holidays/ad.rem
REM Third Saturday in July ADDOMIT SCANFROM -28 MSG Canillo Annual Festival
REM Sunday 16 July ADDOMIT SCANFROM -28 MSG Canillo Annual Festival

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ad.rem
# also include [$SysInclude]/holidays/ad.rem
OMIT 15 August MSG Encamp Annual Festival
OMIT 16 August MSG Encamp Annual Festival

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ad.rem
# also include [$SysInclude]/holidays/ad.rem
OMIT 15 August MSG La Massana Annual Festival
OMIT 16 August MSG La Massana Annual Festival

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ad.rem
# also include [$SysInclude]/holidays/ad.rem
OMIT 15 August MSG Ordino Annual Festival
OMIT 16 August MSG Ordino Annual Festival

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ad.rem
# also include [$SysInclude]/holidays/ad.rem
REM Friday 23 July ADDOMIT SCANFROM -28 MSG Sant Julià de Lòria Annual Festival
REM Saturday 24 July ADDOMIT SCANFROM -28 MSG Sant Julià de Lòria Annual Festival

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ad.rem
# also include [$SysInclude]/holidays/ad.rem
REM First Saturday in August ADDOMIT SCANFROM -28 MSG Andorra la Vella Annual Festival
REM Sunday 2 August ADDOMIT SCANFROM -28 MSG Andorra la Vella Annual Festival

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ad.rem
# also include [$SysInclude]/holidays/ad.rem
OMIT 25 July MSG Escaldes-Engordany Annual Festival
OMIT 26 July MSG Escaldes-Engordany Annual Festival

View File

@@ -6,28 +6,28 @@
# See important caveats in the README file in this directory.
OMIT 1 January MSG Festat e Vitit të Ri
REM 1 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 1, 1)), 0, 6)] MSG Festat e Vitit të Ri (ditë pushimi e shtyrë)
REM 1 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1))==0 || wkdaynum(date($Ty, 1, 1))==6] MSG Festat e Vitit të Ri (ditë pushimi e shtyrë)
OMIT 2 January MSG Festat e Vitit të Ri
REM 2 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 1, 2)), 0, 6)] MSG Festat e Vitit të Ri (ditë pushimi e shtyrë)
REM 2 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 2))==0 || wkdaynum(date($Ty, 1, 2))==6] MSG Festat e Vitit të Ri (ditë pushimi e shtyrë)
OMIT 14 March MSG Dita e Verës
REM 14 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 14)), 0, 6)] MSG Dita e Verës (ditë pushimi e shtyrë)
REM 14 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 14))==0 || wkdaynum(date($Ty, 3, 14))==6] MSG Dita e Verës (ditë pushimi e shtyrë)
OMIT 22 March MSG Dita e Nevruzit
REM 22 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 22)), 0, 6)] MSG Dita e Nevruzit (ditë pushimi e shtyrë)
REM 31 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 31)), 0, 6)] MSG E diela e Pashkëve Katolike (ditë pushimi e shtyrë)
REM 22 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 22))==0 || wkdaynum(date($Ty, 3, 22))==6] MSG Dita e Nevruzit (ditë pushimi e shtyrë)
REM 31 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 31))==0 || wkdaynum(date($Ty, 3, 31))==6] MSG E diela e Pashkëve Katolike (ditë pushimi e shtyrë)
OMIT [easterdate($Uy)] MSG E diela e Pashkëve Katolike
OMIT [easterdate($Uy)] MSG E diela e Pashkëve Ortodokse
OMIT 1 May MSG Dita Ndërkombëtare e Punëtorëve
REM 1 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 5, 1)), 0, 6)] MSG Dita Ndërkombëtare e Punëtorëve (ditë pushimi e shtyrë)
REM 5 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 5, 5)), 0, 6)] MSG E diela e Pashkëve Ortodokse (ditë pushimi e shtyrë)
REM 1 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1))==0 || wkdaynum(date($Ty, 5, 1))==6] MSG Dita Ndërkombëtare e Punëtorëve (ditë pushimi e shtyrë)
REM 5 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 5))==0 || wkdaynum(date($Ty, 5, 5))==6] MSG E diela e Pashkëve Ortodokse (ditë pushimi e shtyrë)
OMIT 5 September MSG Dita e Shenjtërimit të Shenjt Terezës
REM 5 September OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 9, 5)), 0, 6)] MSG Dita e Shenjtërimit të Shenjt Terezës (ditë pushimi e shtyrë)
REM 5 September OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 5))==0 || wkdaynum(date($Ty, 9, 5))==6] MSG Dita e Shenjtërimit të Shenjt Terezës (ditë pushimi e shtyrë)
OMIT 22 November MSG Dita e Alfabetit
REM 22 November OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 11, 22)), 0, 6)] MSG Dita e Alfabetit (ditë pushimi e shtyrë)
REM 22 November OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 22))==0 || wkdaynum(date($Ty, 11, 22))==6] MSG Dita e Alfabetit (ditë pushimi e shtyrë)
OMIT 28 November MSG Dita Flamurit dhe e Pavarësisë
REM 28 November OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 11, 28)), 0, 6)] MSG Dita Flamurit dhe e Pavarësisë (ditë pushimi e shtyrë)
REM 28 November OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 28))==0 || wkdaynum(date($Ty, 11, 28))==6] MSG Dita Flamurit dhe e Pavarësisë (ditë pushimi e shtyrë)
OMIT 29 November MSG Dita e Çlirimit
REM 29 November OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 11, 29)), 0, 6)] MSG Dita e Çlirimit (ditë pushimi e shtyrë)
REM 29 November OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 29))==0 || wkdaynum(date($Ty, 11, 29))==6] MSG Dita e Çlirimit (ditë pushimi e shtyrë)
OMIT 8 December MSG Dita Kombëtare e Rinisë
REM 8 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 12, 8)), 0, 6)] MSG Dita Kombëtare e Rinisë (ditë pushimi e shtyrë)
REM 8 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 8))==0 || wkdaynum(date($Ty, 12, 8))==6] MSG Dita Kombëtare e Rinisë (ditë pushimi e shtyrë)
OMIT 25 December MSG Krishtlindjet
REM 25 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 12, 25)), 0, 6)] MSG Krishtlindjet (ditë pushimi e shtyrë)
REM 25 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25))==0 || wkdaynum(date($Ty, 12, 25))==6] MSG Krishtlindjet (ditë pushimi e shtyrë)

View File

@@ -6,36 +6,36 @@
# See important caveats in the README file in this directory.
OMIT 1 January MSG Dia do Ano Novo
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia do Ano Novo (ponte)
REM 3 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia do Início da Luta Armada de Libertação Nacional (ponte)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 4] MSG Dia do Ano Novo (ponte)
REM 3 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 2, 4)) == 2] MSG Dia do Início da Luta Armada de Libertação Nacional (ponte)
OMIT 4 February MSG Dia do Início da Luta Armada de Libertação Nacional
REM 5 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia do Início da Luta Armada de Libertação Nacional (ponte)
REM 12 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia do Carnaval (ponte)
REM 14 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia do Carnaval (ponte)
REM 5 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 2, 4)) == 4] MSG Dia do Início da Luta Armada de Libertação Nacional (ponte)
REM 12 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 2, 13)) == 2] MSG Dia do Carnaval (ponte)
REM 14 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 2, 13)) == 4] MSG Dia do Carnaval (ponte)
OMIT [easterdate($Uy)-47] MSG Dia do Carnaval
REM 7 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia Internacional da Mulher (ponte)
REM 7 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 8)) == 2] MSG Dia Internacional da Mulher (ponte)
OMIT 8 March MSG Dia Internacional da Mulher
REM 9 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia Internacional da Mulher (ponte)
REM 22 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia da Libertação da África Austral (ponte)
REM 9 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 8)) == 4] MSG Dia Internacional da Mulher (ponte)
REM 22 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 23)) == 2] MSG Dia da Libertação da África Austral (ponte)
OMIT 23 March MSG Dia da Libertação da África Austral
REM 24 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia da Libertação da África Austral (ponte)
REM 3 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia da Paz e Reconciliação Nacional (ponte)
REM 24 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 23)) == 4] MSG Dia da Libertação da África Austral (ponte)
REM 3 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 4)) == 2] MSG Dia da Paz e Reconciliação Nacional (ponte)
OMIT 4 April MSG Dia da Paz e Reconciliação Nacional
REM 5 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia da Paz e Reconciliação Nacional (ponte)
REM 5 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 4)) == 4] MSG Dia da Paz e Reconciliação Nacional (ponte)
OMIT [easterdate($Uy)-2] MSG Sexta-Feira Santa
REM 30 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia Internacional do Trabalhador (ponte)
REM 30 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 2] MSG Dia Internacional do Trabalhador (ponte)
OMIT 1 May MSG Dia Internacional do Trabalhador
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia Internacional do Trabalhador (ponte)
REM 16 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia do Fundador da Nação e do Herói Nacional (ponte)
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 4] MSG Dia Internacional do Trabalhador (ponte)
REM 16 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 17)) == 2] MSG Dia do Fundador da Nação e do Herói Nacional (ponte)
OMIT 17 September MSG Dia do Fundador da Nação e do Herói Nacional
REM 18 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia do Fundador da Nação e do Herói Nacional (ponte)
REM 1 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia dos Finados (ponte)
REM 18 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 17)) == 4] MSG Dia do Fundador da Nação e do Herói Nacional (ponte)
REM 1 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 2)) == 2] MSG Dia dos Finados (ponte)
OMIT 2 November MSG Dia dos Finados
REM 3 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia dos Finados (ponte)
REM 10 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia da Independência Nacional (ponte)
REM 3 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 2)) == 4] MSG Dia dos Finados (ponte)
REM 10 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 11)) == 2] MSG Dia da Independência Nacional (ponte)
OMIT 11 November MSG Dia da Independência Nacional
REM 12 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia da Independência Nacional (ponte)
REM 24 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia de Natal e da Família (ponte)
REM 12 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 11)) == 4] MSG Dia da Independência Nacional (ponte)
REM 24 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 2] MSG Dia de Natal e da Família (ponte)
OMIT 25 December MSG Dia de Natal e da Família
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG Dia de Natal e da Família (ponte)
REM 31 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Dia do Ano Novo (ponte)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 4] MSG Dia de Natal e da Família (ponte)
REM 31 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 2] MSG Dia do Ano Novo (ponte)

View File

@@ -13,26 +13,26 @@ OMIT 2 April MSG Día del Veterano y de los Caidos en la Guerra de Malvinas
OMIT [easterdate($Uy)-2] MSG Viernes Santo
OMIT 1 May MSG Día del Trabajo
OMIT 25 May MSG Día de la Revolución de Mayo
REM 15 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+2) == 3] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado)
REM 16 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado)
REM 15 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 6, 17)) == 3] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado)
REM 16 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 6, 17)) == 2] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado)
REM 17 June ADDOMIT SCANFROM -28 SATISFY [$Tw != 2 && $Tw != 3 && $Tw != 4] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado)
OMIT 20 June MSG Paso a la Inmortalidad del General Don Manuel Belgrano
REM 21 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-4) == 4] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado)
REM 21 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 6, 17)) == 4] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado)
OMIT 9 July MSG Día de la Independencia
REM 15 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+2) == 3] MSG Paso a la Inmortalidad del General Don José de San Martin (observado)
REM 16 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Paso a la Inmortalidad del General Don José de San Martin (observado)
REM 15 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 17)) == 3] MSG Paso a la Inmortalidad del General Don José de San Martin (observado)
REM 16 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 17)) == 2] MSG Paso a la Inmortalidad del General Don José de San Martin (observado)
REM 17 August ADDOMIT SCANFROM -28 SATISFY [$Tw != 2 && $Tw != 3 && $Tw != 4 && $Tw != 5] MSG Paso a la Inmortalidad del General Don José de San Martin (observado)
REM 20 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-3) == 5] MSG Paso a la Inmortalidad del General Don José de San Martin (observado)
REM 21 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-4) == 4] MSG Paso a la Inmortalidad del General Don José de San Martin (observado)
REM 10 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+2) == 3] MSG Día del Respeto a la Diversidad Cultural (observado)
REM 11 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Día del Respeto a la Diversidad Cultural (observado)
REM 20 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 17)) == 5] MSG Paso a la Inmortalidad del General Don José de San Martin (observado)
REM 21 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 17)) == 4] MSG Paso a la Inmortalidad del General Don José de San Martin (observado)
REM 10 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 3] MSG Día del Respeto a la Diversidad Cultural (observado)
REM 11 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 2] MSG Día del Respeto a la Diversidad Cultural (observado)
REM 12 October ADDOMIT SCANFROM -28 SATISFY [$Tw != 2 && $Tw != 3 && $Tw != 4 && $Tw != 5] MSG Día del Respeto a la Diversidad Cultural (observado)
REM 15 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-3) == 5] MSG Día del Respeto a la Diversidad Cultural (observado)
REM 16 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-4) == 4] MSG Día del Respeto a la Diversidad Cultural (observado)
REM 18 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+2) == 3] MSG Día de la Soberanía Nacional (observado)
REM 19 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Día de la Soberanía Nacional (observado)
REM 15 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 5] MSG Día del Respeto a la Diversidad Cultural (observado)
REM 16 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 4] MSG Día del Respeto a la Diversidad Cultural (observado)
REM 18 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 20)) == 3] MSG Día de la Soberanía Nacional (observado)
REM 19 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 20)) == 2] MSG Día de la Soberanía Nacional (observado)
REM 20 November ADDOMIT SCANFROM -28 SATISFY [$Tw != 2 && $Tw != 3 && $Tw != 4 && $Tw != 5] MSG Día de la Soberanía Nacional (observado)
REM 23 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-3) == 5] MSG Día de la Soberanía Nacional (observado)
REM 24 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-4) == 4] MSG Día de la Soberanía Nacional (observado)
REM 23 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 20)) == 5] MSG Día de la Soberanía Nacional (observado)
REM 24 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 20)) == 4] MSG Día de la Soberanía Nacional (observado)
OMIT 8 December MSG Inmaculada Concepción de María
OMIT 25 December MSG Navidad

View File

@@ -6,33 +6,33 @@
# See important caveats in the README file in this directory.
OMIT 1 January MSG New Year's Day
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM Third Monday in January ADDOMIT SCANFROM -28 MSG Martin Luther King Jr. Day
REM Third Monday in February ADDOMIT SCANFROM -28 MSG Washington's Birthday
REM 16 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG American Samoa Flag Day (observed)
REM 16 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 17)) == 6] MSG American Samoa Flag Day (observed)
OMIT 17 April MSG American Samoa Flag Day
REM 18 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG American Samoa Flag Day (observed)
REM 18 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 17)) == 0] MSG American Samoa Flag Day (observed)
REM Last Monday in May ADDOMIT SCANFROM -28 MSG Memorial Day
REM 18 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG Juneteenth National Independence Day (observed)
REM 18 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 6, 19)) == 6] MSG Juneteenth National Independence Day (observed)
OMIT 19 June MSG Juneteenth National Independence Day
REM 20 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Juneteenth National Independence Day (observed)
REM 3 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG Independence Day (observed)
REM 20 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 6, 19)) == 0] MSG Juneteenth National Independence Day (observed)
REM 3 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 4)) == 6] MSG Independence Day (observed)
OMIT 4 July MSG Independence Day
REM 5 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Independence Day (observed)
REM 15 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG Manu'a Islands Cession Day (observed)
REM 5 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 4)) == 0] MSG Independence Day (observed)
REM 15 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 16)) == 6] MSG Manu'a Islands Cession Day (observed)
OMIT 16 July MSG Manu'a Islands Cession Day
REM 17 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Manu'a Islands Cession Day (observed)
REM 17 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 16)) == 0] MSG Manu'a Islands Cession Day (observed)
REM First Monday in September ADDOMIT SCANFROM -28 MSG Labor Day
REM Second Monday in October ADDOMIT SCANFROM -28 MSG Columbus Day
REM Second Sunday in October ADDOMIT SCANFROM -28 MSG White Sunday
REM 10 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG Veterans Day (observed)
REM 10 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Veterans Day (observed)
OMIT 11 November MSG Veterans Day
REM 12 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Veterans Day (observed)
REM 12 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Veterans Day (observed)
REM Fourth Thursday in November ADDOMIT SCANFROM -28 MSG Thanksgiving
REM 24 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG Christmas Day (observed)
REM 24 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed)
OMIT 25 December MSG Christmas Day
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Christmas Day (observed)
REM 31 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG New Year's Day (observed)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 31 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed)
# Optional holidays
REM 14 February MSG Valentine's Day

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/at.rem
# also include [$SysInclude]/holidays/at.rem
# Optional holidays

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/at.rem
# also include [$SysInclude]/holidays/at.rem
# Optional holidays

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/at.rem
# also include [$SysInclude]/holidays/at.rem
# Optional holidays

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/at.rem
# also include [$SysInclude]/holidays/at.rem
# Optional holidays

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/at.rem
# also include [$SysInclude]/holidays/at.rem
# Optional holidays

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/at.rem
# also include [$SysInclude]/holidays/at.rem
# Optional holidays

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/at.rem
# also include [$SysInclude]/holidays/at.rem
# Optional holidays

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/at.rem
# also include [$SysInclude]/holidays/at.rem
# Optional holidays

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/at.rem
# also include [$SysInclude]/holidays/at.rem
# Optional holidays

View File

@@ -8,20 +8,20 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/au.rem
# also include [$SysInclude]/holidays/au.rem
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed)
REM Second Monday in March ADDOMIT SCANFROM -28 MSG Canberra Day
OMIT [easterdate($Uy)-1] MSG Easter Saturday
OMIT [easterdate($Uy)] MSG Easter Sunday
REM Monday 27 May ADDOMIT SCANFROM -28 MSG Reconciliation Day
REM Second Monday in June ADDOMIT SCANFROM -28 MSG King's Birthday
REM First Monday in October ADDOMIT SCANFROM -28 MSG Labour Day
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed)
# Optional holidays
REM First Monday in August SCANFROM -28 MSG Bank Holiday

View File

@@ -8,18 +8,18 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/au.rem
# also include [$SysInclude]/holidays/au.rem
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed)
OMIT [easterdate($Uy)-1] MSG Easter Saturday
OMIT [easterdate($Uy)] MSG Easter Sunday
REM Second Monday in June ADDOMIT SCANFROM -28 MSG King's Birthday
REM First Monday in October ADDOMIT SCANFROM -28 MSG Labour Day
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed)
# Optional holidays
REM First Monday in August SCANFROM -28 MSG Bank Holiday

View File

@@ -8,20 +8,20 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/au.rem
# also include [$SysInclude]/holidays/au.rem
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed)
OMIT [easterdate($Uy)-1] MSG Easter Saturday
OMIT [easterdate($Uy)] MSG Easter Sunday
REM First Monday in May ADDOMIT SCANFROM -28 MSG May Day
REM Second Monday in June ADDOMIT SCANFROM -28 MSG King's Birthday
REM First Monday in August ADDOMIT SCANFROM -28 MSG Picnic Day
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 1] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Boxing Day (observed)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed)
# Optional holidays
REM 24 December MSG Christmas Eve (from 7pm)

View File

@@ -8,16 +8,16 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/au.rem
# also include [$SysInclude]/holidays/au.rem
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed)
OMIT [easterdate($Uy)-1] MSG Easter Saturday
OMIT [easterdate($Uy)] MSG Easter Sunday
REM First Monday in May ADDOMIT SCANFROM -28 MSG Labour Day
REM Wednesday 10 August ADDOMIT SCANFROM -28 MSG The Royal Queensland Show
REM First Monday in October ADDOMIT SCANFROM -28 MSG King's Birthday
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed)

View File

@@ -8,21 +8,21 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/au.rem
# also include [$SysInclude]/holidays/au.rem
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed)
REM Second Monday in March ADDOMIT SCANFROM -28 MSG Adelaide Cup Day
OMIT [easterdate($Uy)-1] MSG Easter Saturday
OMIT [easterdate($Uy)] MSG Easter Sunday
REM Second Monday in June ADDOMIT SCANFROM -28 MSG King's Birthday
REM First Monday in October ADDOMIT SCANFROM -28 MSG Labour Day
OMIT 26 December MSG Proclamation Day
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 1] MSG Proclamation Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Proclamation Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Proclamation Day (observed)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Proclamation Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Proclamation Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Proclamation Day (observed)
# Optional holidays
REM 24 December MSG Christmas Eve (from 7pm)

View File

@@ -8,9 +8,9 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/au.rem
# also include [$SysInclude]/holidays/au.rem
REM Second Monday in March ADDOMIT SCANFROM -28 MSG Eight Hours Day
REM Second Monday in June ADDOMIT SCANFROM -28 MSG King's Birthday
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed)

View File

@@ -8,17 +8,17 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/au.rem
# also include [$SysInclude]/holidays/au.rem
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed)
REM Second Monday in March ADDOMIT SCANFROM -28 MSG Labour Day
OMIT [easterdate($Uy)-1] MSG Easter Saturday
OMIT [easterdate($Uy)] MSG Easter Sunday
REM Second Monday in June ADDOMIT SCANFROM -28 MSG King's Birthday
REM Saturday 1 October --8 ADDOMIT SCANFROM -28 MSG Grand Final Day
REM First Tuesday in November ADDOMIT SCANFROM -28 MSG Melbourne Cup Day
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed)

View File

@@ -8,17 +8,17 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/au.rem
# also include [$SysInclude]/holidays/au.rem
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed)
REM First Monday in March ADDOMIT SCANFROM -28 MSG Labour Day
OMIT [easterdate($Uy)] MSG Easter Sunday
REM 26 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG ANZAC Day (observed)
REM 27 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG ANZAC Day (observed)
REM 26 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 25)) == 0] MSG ANZAC Day (observed)
REM 27 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 25)) == 6] MSG ANZAC Day (observed)
REM First Monday in June ADDOMIT SCANFROM -28 MSG Western Australia Day
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 1] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Boxing Day (observed)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed)

View File

@@ -6,36 +6,36 @@
# See important caveats in the README file in this directory.
OMIT 1 January MSG Yeni il bayramı
REM 1 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 1, 1)), 0, 6)] MSG Yeni il bayramı (müşahidə olunur)
REM 1 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1))==0 || wkdaynum(date($Ty, 1, 1))==6] MSG Yeni il bayramı (müşahidə olunur)
OMIT 2 January MSG Yeni il bayramı
REM 2 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 1, 2)), 0, 6)] MSG Yeni il bayramı (müşahidə olunur)
REM 2 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 2))==0 || wkdaynum(date($Ty, 1, 2))==6] MSG Yeni il bayramı (müşahidə olunur)
OMIT 20 January MSG Ümumxalq hüzn günü
OMIT 8 March MSG Qadınlar günü
REM 8 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 8)), 0, 6)] MSG Qadınlar günü (müşahidə olunur)
REM 8 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 8))==0 || wkdaynum(date($Ty, 3, 8))==6] MSG Qadınlar günü (müşahidə olunur)
OMIT 20 March MSG Novruz bayramı
REM 20 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 20)), 0, 6)] MSG Novruz bayramı (müşahidə olunur)
REM 20 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 20))==0 || wkdaynum(date($Ty, 3, 20))==6] MSG Novruz bayramı (müşahidə olunur)
OMIT 21 March MSG Novruz bayramı
REM 21 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 21)), 0, 6)] MSG Novruz bayramı (müşahidə olunur)
REM 21 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 21))==0 || wkdaynum(date($Ty, 3, 21))==6] MSG Novruz bayramı (müşahidə olunur)
OMIT 22 March MSG Novruz bayramı
REM 22 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 22)), 0, 6)] MSG Novruz bayramı (müşahidə olunur)
REM 22 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 22))==0 || wkdaynum(date($Ty, 3, 22))==6] MSG Novruz bayramı (müşahidə olunur)
OMIT 23 March MSG Novruz bayramı
REM 23 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 23)), 0, 6)] MSG Novruz bayramı (müşahidə olunur)
REM 23 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 23))==0 || wkdaynum(date($Ty, 3, 23))==6] MSG Novruz bayramı (müşahidə olunur)
OMIT 24 March MSG Novruz bayramı
REM 24 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 24)), 0, 6)] MSG Novruz bayramı (müşahidə olunur)
REM 24 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 24))==0 || wkdaynum(date($Ty, 3, 24))==6] MSG Novruz bayramı (müşahidə olunur)
OMIT 9 May MSG Faşizm üzərində qələbə günü
REM 9 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 5, 9)), 0, 6)] MSG Faşizm üzərində qələbə günü (müşahidə olunur)
REM 9 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 9))==0 || wkdaynum(date($Ty, 5, 9))==6] MSG Faşizm üzərində qələbə günü (müşahidə olunur)
OMIT 28 May MSG Müstəqillik Günü
REM 28 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 5, 28)), 0, 6)] MSG Müstəqillik Günü (müşahidə olunur)
REM 28 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 28))==0 || wkdaynum(date($Ty, 5, 28))==6] MSG Müstəqillik Günü (müşahidə olunur)
OMIT 15 June MSG Azərbaycan xalqının milli qurtuluş günü
REM 15 June OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 6, 15)), 0, 6)] MSG Azərbaycan xalqının milli qurtuluş günü (müşahidə olunur)
REM 15 June OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 6, 15))==0 || wkdaynum(date($Ty, 6, 15))==6] MSG Azərbaycan xalqının milli qurtuluş günü (müşahidə olunur)
OMIT 26 June MSG Azərbaycan Respublikasının Silahlı Qüvvələri günü
REM 26 June OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 6, 26)), 0, 6)] MSG Azərbaycan Respublikasının Silahlı Qüvvələri günü (müşahidə olunur)
REM 26 June OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 6, 26))==0 || wkdaynum(date($Ty, 6, 26))==6] MSG Azərbaycan Respublikasının Silahlı Qüvvələri günü (müşahidə olunur)
OMIT 8 November MSG Zəfər Günü
REM 8 November OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 11, 8)), 0, 6)] MSG Zəfər Günü (müşahidə olunur)
REM 8 November OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 8))==0 || wkdaynum(date($Ty, 11, 8))==6] MSG Zəfər Günü (müşahidə olunur)
OMIT 9 November MSG Azərbaycan Respublikasının Dövlət bayrağı günü
REM 9 November OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 11, 9)), 0, 6)] MSG Azərbaycan Respublikasının Dövlət bayrağı günü (müşahidə olunur)
REM 9 November OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 9))==0 || wkdaynum(date($Ty, 11, 9))==6] MSG Azərbaycan Respublikasının Dövlət bayrağı günü (müşahidə olunur)
OMIT 31 December MSG Dünya azərbaycanlılarının həmrəyliyi günü
REM 31 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 12, 31)), 0, 6)] MSG Dünya azərbaycanlılarının həmrəyliyi günü (müşahidə olunur)
REM 31 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 31))==0 || wkdaynum(date($Ty, 12, 31))==6] MSG Dünya azərbaycanlılarının həmrəyliyi günü (müşahidə olunur)
# Optional holidays
REM 27 September MSG Anım Günü

View File

@@ -8,16 +8,16 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ba.rem
# also include [$SysInclude]/holidays/ba.rem
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Nova godina (preneseno)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Nova godina (preneseno)
OMIT 6 January MSG Badnji dan (Pravoslavni)
OMIT 1 March MSG Dan nezavisnosti
OMIT [orthodoxeaster($Uy)-2] MSG Veliki petak (Katolički)
OMIT [orthodoxeaster($Uy)] MSG Uskrs (Katolički)
OMIT [orthodoxeaster($Uy)] MSG Vaskrs (Pravoslavni)
OMIT [orthodoxeaster($Uy)+1] MSG Uskrsni ponedjeljak (Pravoslavni)
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Međunarodni praznik rada (preneseno)
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Međunarodni praznik rada (preneseno)
OMIT 9 May MSG Dan pobjede nad fašizmom
OMIT 25 November MSG Dan državnosti
OMIT 24 December MSG Badnji dan (Katolički)

View File

@@ -8,13 +8,13 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ba.rem
# also include [$SysInclude]/holidays/ba.rem
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Nova godina (preneseno)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Nova godina (preneseno)
REM 8 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Božić (Pravoslavni) (preneseno)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Nova godina (preneseno)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG Nova godina (preneseno)
REM 8 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 7)) == 0] MSG Božić (Pravoslavni) (preneseno)
OMIT 8 March MSG Dan uspostavljanja Brčko distrikta
REM 9 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Dan uspostavljanja Brčko distrikta (preneseno)
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Međunarodni praznik rada (preneseno)
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Međunarodni praznik rada (preneseno)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Božić (Katolički) (preneseno)
REM 9 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 8)) == 0] MSG Dan uspostavljanja Brčko distrikta (preneseno)
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Međunarodni praznik rada (preneseno)
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 6] MSG Međunarodni praznik rada (preneseno)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Božić (Katolički) (preneseno)

View File

@@ -8,16 +8,16 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ba.rem
# also include [$SysInclude]/holidays/ba.rem
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Nova godina (preneseno)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG Nova godina (preneseno)
OMIT 6 January MSG Badnji dan (Pravoslavni)
OMIT 14 January MSG Pravoslavna Nova godina
OMIT [orthodoxeaster($Uy)-2] MSG Veliki petak (Katolički)
OMIT [orthodoxeaster($Uy)] MSG Uskrs (Katolički)
OMIT [orthodoxeaster($Uy)] MSG Vaskrs (Pravoslavni)
OMIT [orthodoxeaster($Uy)+1] MSG Uskrsni ponedjeljak (Pravoslavni)
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Međunarodni praznik rada (preneseno)
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 6] MSG Međunarodni praznik rada (preneseno)
OMIT 9 May MSG Dan pobjede nad fašizmom
OMIT 21 November MSG Dan uspostave Opšteg okvirnog sporazuma za mir u Bosni i Hercegovini
OMIT 24 December MSG Badnji dan (Katolički)

View File

@@ -6,23 +6,23 @@
# See important caveats in the README file in this directory.
OMIT 1 January MSG New Year's Day
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
OMIT 21 January MSG Errol Barrow Day
REM 22 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Errol Barrow Day (observed)
REM 22 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 21)) == 0] MSG Errol Barrow Day (observed)
OMIT [easterdate($Uy)-2] MSG Good Friday
OMIT [easterdate($Uy)+1] MSG Easter Monday
OMIT 28 April MSG National Heroes Day
REM 29 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG National Heroes Day (observed)
REM 29 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 28)) == 0] MSG National Heroes Day (observed)
OMIT 1 May MSG May Day
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG May Day (observed)
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG May Day (observed)
OMIT [easterdate($Uy)+50] MSG Whit Monday
OMIT 1 August MSG Emancipation Day
REM First Monday in August ADDOMIT SCANFROM -28 MSG Kadooment Day
REM 2 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 1] MSG Emancipation Day (observed)
REM 3 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Emancipation Day (observed)
REM 2 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 1)) == 1] MSG Emancipation Day (observed)
REM 3 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 1)) == 0] MSG Emancipation Day (observed)
OMIT 30 November MSG Independence Day
REM 1 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Independence Day (observed)
REM 1 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 30)) == 0] MSG Independence Day (observed)
OMIT 25 December MSG Christmas Day
OMIT 26 December MSG Boxing Day
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)

View File

@@ -6,24 +6,24 @@
# See important caveats in the README file in this directory.
OMIT 1 January MSG New Year's Day
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
OMIT 3 January MSG Revolution Day
REM 4 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Revolution Day (observed)
REM 4 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 3)) == 0] MSG Revolution Day (observed)
OMIT 8 March MSG International Women's Day
REM 9 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG International Women's Day (observed)
REM 9 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 8)) == 0] MSG International Women's Day (observed)
OMIT [easterdate($Uy)+1] MSG Easter Monday
OMIT 1 May MSG Labour Day
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Labour Day (observed)
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed)
OMIT [easterdate($Uy)+39] MSG Ascension Day
OMIT 5 August MSG Independence Day
REM 6 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Independence Day (observed)
REM 6 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 5)) == 0] MSG Independence Day (observed)
OMIT 15 August MSG Assumption Day
REM 16 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Assumption Day (observed)
REM 16 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 15)) == 0] MSG Assumption Day (observed)
OMIT 31 October MSG Martyrs' Day
OMIT 1 November MSG All Saints' Day
REM 1 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Martyrs' Day (observed)
REM 2 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG All Saints' Day (observed)
REM 1 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 31)) == 0] MSG Martyrs' Day (observed)
REM 2 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 1)) == 0] MSG All Saints' Day (observed)
OMIT 11 December MSG Proclamation of Independence Day
REM 12 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Proclamation of Independence Day (observed)
REM 12 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 11)) == 0] MSG Proclamation of Independence Day (observed)
OMIT 25 December MSG Christmas Day
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Christmas Day (observed)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)

View File

@@ -6,29 +6,29 @@
# See important caveats in the README file in this directory.
OMIT 1 January MSG Нова година
REM 1 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 1, 1)), 0, 6)] MSG Нова година (почивен ден)
REM 1 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1))==0 || wkdaynum(date($Ty, 1, 1))==6] MSG Нова година (почивен ден)
OMIT 3 March MSG Ден на Освобождението на България от османско иго
REM 3 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 3)), 0, 6)] MSG Ден на Освобождението на България от османско иго (почивен ден)
REM 3 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 3))==0 || wkdaynum(date($Ty, 3, 3))==6] MSG Ден на Освобождението на България от османско иго (почивен ден)
OMIT [orthodoxeaster($Uy)-2] MSG Велики петък
OMIT [orthodoxeaster($Uy)-1] MSG Велика събота
OMIT [orthodoxeaster($Uy)] MSG Великден
OMIT [orthodoxeaster($Uy)+1] MSG Великден
OMIT 1 May MSG Ден на труда и на международната работническа солидарност
REM 1 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 5, 1)), 0, 6)] MSG Ден на труда и на международната работническа солидарност (почивен ден)
REM 1 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1))==0 || wkdaynum(date($Ty, 5, 1))==6] MSG Ден на труда и на международната работническа солидарност (почивен ден)
OMIT 6 May MSG Гергьовден, Ден на храбростта и Българската армия
REM 6 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 5, 6)), 0, 6)] MSG Гергьовден, Ден на храбростта и Българската армия (почивен ден)
REM 6 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 6))==0 || wkdaynum(date($Ty, 5, 6))==6] MSG Гергьовден, Ден на храбростта и Българската армия (почивен ден)
OMIT 24 May MSG Ден на светите братя Кирил и Методий, на българската азбука, просвета и култура и на славянската книжовност
REM 24 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 5, 24)), 0, 6)] MSG Ден на светите братя Кирил и Методий, на българската азбука, просвета и култура и на славянската книжовност (почивен ден)
REM 24 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 24))==0 || wkdaynum(date($Ty, 5, 24))==6] MSG Ден на светите братя Кирил и Методий, на българската азбука, просвета и култура и на славянската книжовност (почивен ден)
OMIT 6 September MSG Ден на Съединението
REM 6 September OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 9, 6)), 0, 6)] MSG Ден на Съединението (почивен ден)
REM 6 September OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 6))==0 || wkdaynum(date($Ty, 9, 6))==6] MSG Ден на Съединението (почивен ден)
OMIT 22 September MSG Ден на Независимостта на България
REM 22 September OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 9, 22)), 0, 6)] MSG Ден на Независимостта на България (почивен ден)
REM 22 September OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 22))==0 || wkdaynum(date($Ty, 9, 22))==6] MSG Ден на Независимостта на България (почивен ден)
OMIT 24 December MSG Бъдни вечер
REM 24 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 12, 24)), 0, 6)] MSG Бъдни вечер (почивен ден)
REM 24 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 24))==0 || wkdaynum(date($Ty, 12, 24))==6] MSG Бъдни вечер (почивен ден)
OMIT 25 December MSG Рождество Христово
REM 25 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 12, 25)), 0, 6)] MSG Рождество Христово (почивен ден)
REM 25 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25))==0 || wkdaynum(date($Ty, 12, 25))==6] MSG Рождество Христово (почивен ден)
OMIT 26 December MSG Рождество Христово
REM 26 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 12, 26)), 0, 6)] MSG Рождество Христово (почивен ден)
REM 26 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26))==0 || wkdaynum(date($Ty, 12, 26))==6] MSG Рождество Христово (почивен ден)
# Optional holidays
REM 1 November MSG Ден на народните будители

View File

@@ -6,25 +6,25 @@
# See important caveats in the README file in this directory.
OMIT 1 January MSG New Year's Day
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
OMIT 5 February MSG Unity Day
REM 6 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Unity Day (observed)
REM 6 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 2, 5)) == 0] MSG Unity Day (observed)
OMIT 6 April MSG President Ntaryamira Day
REM 7 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG President Ntaryamira Day (observed)
REM 7 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 6)) == 0] MSG President Ntaryamira Day (observed)
OMIT 1 May MSG Labour Day
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Labour Day (observed)
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed)
OMIT [easterdate($Uy)+39] MSG Ascension Day
OMIT 8 June MSG President Nkurunziza Day
REM 9 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG President Nkurunziza Day (observed)
REM 9 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 6, 8)) == 0] MSG President Nkurunziza Day (observed)
OMIT 1 July MSG Independence Day
REM 2 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Independence Day (observed)
REM 2 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 1)) == 0] MSG Independence Day (observed)
OMIT 15 August MSG Assumption Day
REM 16 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Assumption Day (observed)
REM 16 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 15)) == 0] MSG Assumption Day (observed)
OMIT 13 October MSG Prince Louis Rwagasore Day
REM 14 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Prince Louis Rwagasore Day (observed)
REM 14 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 13)) == 0] MSG Prince Louis Rwagasore Day (observed)
OMIT 21 October MSG President Ndadaye's Day
REM 22 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG President Ndadaye's Day (observed)
REM 22 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 21)) == 0] MSG President Ndadaye's Day (observed)
OMIT 1 November MSG All Saints' Day
REM 2 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG All Saints' Day (observed)
REM 2 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 1)) == 0] MSG All Saints' Day (observed)
OMIT 25 December MSG Christmas Day
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Christmas Day (observed)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)

View File

@@ -6,17 +6,17 @@
# See important caveats in the README file in this directory.
OMIT 1 January MSG Awal Tahun Masihi
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Awal Tahun Masihi (diperhatikan)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 5] MSG Awal Tahun Masihi (diperhatikan)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Awal Tahun Masihi (diperhatikan)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 5] MSG Awal Tahun Masihi (diperhatikan)
OMIT 23 February MSG Hari Kebangsaan
REM 24 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Hari Kebangsaan (diperhatikan)
REM 24 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 5] MSG Hari Kebangsaan (diperhatikan)
REM 24 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 2, 23)) == 0] MSG Hari Kebangsaan (diperhatikan)
REM 24 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 2, 23)) == 5] MSG Hari Kebangsaan (diperhatikan)
OMIT 31 May MSG Hari Angkatan Bersenjata Diraja Brunei
REM 1 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Hari Angkatan Bersenjata Diraja Brunei (diperhatikan)
REM 1 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 5] MSG Hari Angkatan Bersenjata Diraja Brunei (diperhatikan)
REM 1 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 31)) == 0] MSG Hari Angkatan Bersenjata Diraja Brunei (diperhatikan)
REM 1 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 31)) == 5] MSG Hari Angkatan Bersenjata Diraja Brunei (diperhatikan)
OMIT 15 July MSG Hari Keputeraan KDYMM Sultan Brunei
REM 16 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Hari Keputeraan KDYMM Sultan Brunei (diperhatikan)
REM 16 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 5] MSG Hari Keputeraan KDYMM Sultan Brunei (diperhatikan)
REM 16 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 15)) == 0] MSG Hari Keputeraan KDYMM Sultan Brunei (diperhatikan)
REM 16 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 15)) == 5] MSG Hari Keputeraan KDYMM Sultan Brunei (diperhatikan)
OMIT 25 December MSG Hari Natal
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Hari Natal (diperhatikan)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 5] MSG Hari Natal (diperhatikan)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Hari Natal (diperhatikan)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 5] MSG Hari Natal (diperhatikan)

View File

@@ -13,20 +13,20 @@
# [$SysInclude]/holidays/bo/
OMIT 1 January MSG Año Nuevo
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Año Nuevo (observado)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Año Nuevo (observado)
OMIT 22 January MSG Día de la Creación del Estado Plurinacional de Bolivia
REM 23 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Día de la Creación del Estado Plurinacional de Bolivia (observado)
REM 23 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 22)) == 0] MSG Día de la Creación del Estado Plurinacional de Bolivia (observado)
OMIT [easterdate($Uy)-48] MSG Carnaval
OMIT [easterdate($Uy)-47] MSG Carnaval
OMIT [easterdate($Uy)-2] MSG Viernes Santo
OMIT 1 May MSG Día del Trabajo
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Día del Trabajo (observado)
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Día del Trabajo (observado)
OMIT [easterdate($Uy)+60] MSG Corpus Christi
OMIT 21 June MSG Año Nuevo Aymara Amazónico
REM 22 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Año Nuevo Aymara Amazónico (observado)
REM 22 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 6, 21)) == 0] MSG Año Nuevo Aymara Amazónico (observado)
OMIT 6 August MSG Día de la Independencia de Bolivia
REM 7 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Día de la Independencia de Bolivia (observado)
REM 7 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 6)) == 0] MSG Día de la Independencia de Bolivia (observado)
OMIT 17 October MSG Día de la Dignidad Nacional
OMIT 2 November MSG Día de Todos los Difuntos
OMIT 25 December MSG Navidad
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Navidad (observado)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Navidad (observado)

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/bo.rem
# also include [$SysInclude]/holidays/bo.rem
OMIT 18 November MSG Día del departamento de Beni

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/bo.rem
# also include [$SysInclude]/holidays/bo.rem
OMIT 14 September MSG Día del departamento de Cochabamba

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/bo.rem
# also include [$SysInclude]/holidays/bo.rem
OMIT 25 May MSG Día del departamento de Chuquisaca

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/bo.rem
# also include [$SysInclude]/holidays/bo.rem
OMIT 16 July MSG Día del departamento de La Paz

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/bo.rem
# also include [$SysInclude]/holidays/bo.rem
OMIT 11 October MSG Día del departamento de Pando

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/bo.rem
# also include [$SysInclude]/holidays/bo.rem
OMIT [easterdate($Uy)-51] MSG Carnaval de Oruro

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/bo.rem
# also include [$SysInclude]/holidays/bo.rem
OMIT 10 November MSG Día del departamento de Potosí

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/bo.rem
# also include [$SysInclude]/holidays/bo.rem
OMIT 24 September MSG Día del departamento de Santa Cruz

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/bo.rem
# also include [$SysInclude]/holidays/bo.rem
OMIT 15 April MSG La Tablada

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
REM 23 January ADDOMIT SCANFROM -28 SATISFY [$Tw < 2 || $Tw > 4] MSG Dia do Evangélico
REM Friday 23 January ADDOMIT SCANFROM -23 SATISFY [wkdaynum(date($Ty, 1, 23)) >= 2 && wkdaynum(date($Ty, 1, 23)) <= 4] MSG Dia do Evangélico

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 24 June MSG São João
OMIT 29 June MSG São Pedro

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 5 September MSG Elevação do Amazonas à categoria de província

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 19 March MSG São José
OMIT 25 July MSG São Tiago

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 2 July MSG Independência da Bahia

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 19 March MSG São José
OMIT 25 March MSG Abolição da escravidão no Ceará

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 21 April MSG Fundação de Brasília
OMIT 30 November MSG Dia do Evangélico

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT [easterdate($Uy)+8] MSG Nossa Senhora da Penha

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 26 July MSG Fundação da cidade de Goiás
OMIT 24 October MSG Pedra fundamental de Goiânia

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 28 July MSG Adesão do Maranhão à independência do Brasil

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 21 April MSG Execução de Tiradentes

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 11 October MSG Criação do Estado

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 15 August MSG Adesão do Grão-Pará à independência do Brasil

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 5 August MSG Fundação do Estado

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
REM First Sunday in March ADDOMIT SCANFROM -28 MSG Revolução Pernambucana

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 19 October MSG Dia do Piauí

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 19 December MSG Emancipação do Paraná

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 23 April MSG São Jorge

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 7 August MSG Dia do Rio Grande do Norte
OMIT 3 October MSG Mártires de Cunhaú e Uruaçuu

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 4 January MSG Criação do Estado
OMIT 18 June MSG Dia do Evangélico

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 5 October MSG Criação do Estado

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 20 September MSG Dia do Gaúcho

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
REM Sunday 11 August ADDOMIT SCANFROM -28 MSG Dia do Estado de Santa Catarina
REM Sunday 25 November ADDOMIT SCANFROM -28 MSG Dia de Santa Catarina de Alexandria

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 8 July MSG Emancipação política de Sergipe

View File

@@ -8,6 +8,6 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 9 July MSG Revolução Constitucionalista

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/br.rem
# also include [$SysInclude]/holidays/br.rem
OMIT 18 March MSG Dia da Autonomia
OMIT 8 September MSG Nossa Senhora da Natividade

View File

@@ -6,21 +6,21 @@
# See important caveats in the README file in this directory.
OMIT 1 January MSG New Year's Day
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
OMIT 10 January MSG Majority Rule Day
REM 11 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Majority Rule Day (observed)
REM 12 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Majority Rule Day (observed)
REM 11 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 10)) == 0] MSG Majority Rule Day (observed)
REM 12 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 10)) == 6] MSG Majority Rule Day (observed)
OMIT [easterdate($Uy)-2] MSG Good Friday
OMIT [easterdate($Uy)+1] MSG Easter Monday
REM First Friday in June ADDOMIT SCANFROM -28 MSG Randol Fawkes Labour Day
OMIT [easterdate($Uy)+50] MSG Whit Monday
OMIT 10 July MSG Independence Day
REM 11 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Independence Day (observed)
REM 12 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Independence Day (observed)
REM 11 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 10)) == 0] MSG Independence Day (observed)
REM 12 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 10)) == 6] MSG Independence Day (observed)
REM First Monday in August ADDOMIT SCANFROM -28 MSG Emancipation Day
REM Second Monday in October ADDOMIT SCANFROM -28 MSG National Heroes Day
OMIT 25 December MSG Christmas Day
OMIT 26 December MSG Boxing Day
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed)

View File

@@ -7,25 +7,25 @@
OMIT 1 January MSG New Year's Day
OMIT 2 January MSG New Year's Day Holiday
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day Holiday (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 2)) == 0] MSG New Year's Day Holiday (observed)
OMIT [easterdate($Uy)-2] MSG Good Friday
OMIT [easterdate($Uy)-1] MSG Holy Saturday
OMIT [easterdate($Uy)+1] MSG Easter Monday
OMIT 1 May MSG Labour Day
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Labour Day (observed)
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Labour Day Holiday
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed)
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 6] MSG Labour Day Holiday
OMIT [easterdate($Uy)+39] MSG Ascension Day
OMIT 1 July MSG Sir Seretse Khama Day
REM 2 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Sir Seretse Khama Day (observed)
REM 2 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 1)) == 0] MSG Sir Seretse Khama Day (observed)
REM Third Monday in July ADDOMIT SCANFROM -28 MSG President's Day
REM Tuesday 16 July ADDOMIT SCANFROM -28 MSG President's Day Holiday
OMIT 30 September MSG Botswana Day
OMIT 1 October MSG Botswana Day Holiday
REM 2 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Botswana Day Holiday (observed)
REM 2 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Botswana Day (observed)
REM 2 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 1)) == 0] MSG Botswana Day Holiday (observed)
REM 2 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 30)) == 0] MSG Botswana Day (observed)
OMIT 25 December MSG Christmas Day
OMIT 26 December MSG Boxing Day
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Boxing Day Holiday
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day Holiday

View File

@@ -6,38 +6,38 @@
# See important caveats in the README file in this directory.
REM 1 January ADDOMIT SCANFROM -28 SATISFY [$Tw != 0] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM 15 January ADDOMIT SCANFROM -28 SATISFY [$Tw != 0] MSG George Price Day (observed)
REM 16 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG George Price Day (observed)
REM 6 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+3) == 4] MSG National Heroes and Benefactors Day (observed)
REM 7 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+2) == 3] MSG National Heroes and Benefactors Day (observed)
REM 8 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG National Heroes and Benefactors Day (observed)
REM 16 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 15)) == 0] MSG George Price Day (observed)
REM 6 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 9)) == 4] MSG National Heroes and Benefactors Day (observed)
REM 7 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 9)) == 3] MSG National Heroes and Benefactors Day (observed)
REM 8 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 9)) == 2] MSG National Heroes and Benefactors Day (observed)
REM 9 March ADDOMIT SCANFROM -28 SATISFY [$Tw != 2 && $Tw != 3 && $Tw != 4 && $Tw != 5 && $Tw != 0] MSG National Heroes and Benefactors Day (observed)
REM 10 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG National Heroes and Benefactors Day (observed)
REM 12 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-3) == 5] MSG National Heroes and Benefactors Day (observed)
REM 10 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 9)) == 0] MSG National Heroes and Benefactors Day (observed)
REM 12 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 3, 9)) == 5] MSG National Heroes and Benefactors Day (observed)
OMIT [easterdate($Uy)-2] MSG Good Friday
OMIT [easterdate($Uy)-1] MSG Holy Saturday
OMIT [easterdate($Uy)+1] MSG Easter Monday
REM 1 May ADDOMIT SCANFROM -28 SATISFY [$Tw != 0] MSG Labour Day (observed)
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Labour Day (observed)
REM 29 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+3) == 4] MSG Emancipation Day (observed)
REM 30 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+2) == 3] MSG Emancipation Day (observed)
REM 31 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Emancipation Day (observed)
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed)
REM 29 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 1)) == 4] MSG Emancipation Day (observed)
REM 30 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 1)) == 3] MSG Emancipation Day (observed)
REM 31 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 1)) == 2] MSG Emancipation Day (observed)
REM 1 August ADDOMIT SCANFROM -28 SATISFY [$Tw != 2 && $Tw != 3 && $Tw != 4 && $Tw != 5 && $Tw != 0] MSG Emancipation Day (observed)
REM 2 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Emancipation Day (observed)
REM 4 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-3) == 5] MSG Emancipation Day (observed)
REM 2 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 1)) == 0] MSG Emancipation Day (observed)
REM 4 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 8, 1)) == 5] MSG Emancipation Day (observed)
REM 10 September ADDOMIT SCANFROM -28 SATISFY [$Tw != 0] MSG Saint George's Caye Day (observed)
REM 11 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Saint George's Caye Day (observed)
REM 11 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 10)) == 0] MSG Saint George's Caye Day (observed)
REM 21 September ADDOMIT SCANFROM -28 SATISFY [$Tw != 0] MSG Independence Day (observed)
REM 22 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Independence Day (observed)
REM 9 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+3) == 4] MSG Indigenous Peoples' Resistance Day (observed)
REM 10 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+2) == 3] MSG Indigenous Peoples' Resistance Day (observed)
REM 11 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG Indigenous Peoples' Resistance Day (observed)
REM 22 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 21)) == 0] MSG Independence Day (observed)
REM 9 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 4] MSG Indigenous Peoples' Resistance Day (observed)
REM 10 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 3] MSG Indigenous Peoples' Resistance Day (observed)
REM 11 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 2] MSG Indigenous Peoples' Resistance Day (observed)
REM 12 October ADDOMIT SCANFROM -28 SATISFY [$Tw != 2 && $Tw != 3 && $Tw != 4 && $Tw != 5 && $Tw != 0] MSG Indigenous Peoples' Resistance Day (observed)
REM 13 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Indigenous Peoples' Resistance Day (observed)
REM 15 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-3) == 5] MSG Indigenous Peoples' Resistance Day (observed)
REM 13 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 0] MSG Indigenous Peoples' Resistance Day (observed)
REM 15 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 5] MSG Indigenous Peoples' Resistance Day (observed)
REM 19 November ADDOMIT SCANFROM -28 SATISFY [$Tw != 0] MSG Garifuna Settlement Day (observed)
REM 20 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Garifuna Settlement Day (observed)
REM 20 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 19)) == 0] MSG Garifuna Settlement Day (observed)
OMIT 25 December MSG Christmas Day
REM 26 December ADDOMIT SCANFROM -28 SATISFY [$Tw != 0] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)

View File

@@ -13,25 +13,25 @@
# [$SysInclude]/holidays/ca/
OMIT 1 January MSG New Year's Day
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG New Year's Day (observed)
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed)
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed)
OMIT [easterdate($Uy)-2] MSG Good Friday
REM Monday 18 May ADDOMIT SCANFROM -28 MSG Victoria Day
OMIT 1 July MSG Canada Day
REM 2 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Canada Day (observed)
REM 3 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Canada Day (observed)
REM 2 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 1)) == 0] MSG Canada Day (observed)
REM 3 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 1)) == 6] MSG Canada Day (observed)
REM First Monday in September ADDOMIT SCANFROM -28 MSG Labour Day
OMIT 30 September MSG National Day for Truth and Reconciliation
REM 1 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG National Day for Truth and Reconciliation (observed)
REM 2 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG National Day for Truth and Reconciliation (observed)
REM 1 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 30)) == 0] MSG National Day for Truth and Reconciliation (observed)
REM 2 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 30)) == 6] MSG National Day for Truth and Reconciliation (observed)
REM Second Monday in October ADDOMIT SCANFROM -28 MSG Thanksgiving Day
OMIT 11 November MSG Remembrance Day
REM 12 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Remembrance Day (observed)
REM 13 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Remembrance Day (observed)
REM 12 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Remembrance Day (observed)
REM 13 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Remembrance Day (observed)
OMIT 25 December MSG Christmas Day
OMIT 26 December MSG Boxing Day
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 1] MSG Boxing Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Christmas Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG Boxing Day (observed)
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed)
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed)
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed)

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ca.rem
# also include [$SysInclude]/holidays/ca.rem
REM Third Monday in February ADDOMIT SCANFROM -28 MSG Family Day

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ca.rem
# also include [$SysInclude]/holidays/ca.rem
REM Third Monday in February ADDOMIT SCANFROM -28 MSG Family Day
REM First Monday in August ADDOMIT SCANFROM -28 MSG British Columbia Day

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ca.rem
# also include [$SysInclude]/holidays/ca.rem
REM Third Monday in February ADDOMIT SCANFROM -28 MSG Louis Riel Day

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ca.rem
# also include [$SysInclude]/holidays/ca.rem
REM Third Monday in February ADDOMIT SCANFROM -28 MSG Family Day
REM First Monday in August ADDOMIT SCANFROM -28 MSG New Brunswick Day

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ca.rem
# also include [$SysInclude]/holidays/ca.rem
OMIT 1 July MSG Memorial Day

View File

@@ -8,7 +8,7 @@
# See important caveats in the file ../README
#
# If you want the national holidays as well, you must
# also SYSINCLUDE holidays/ca.rem
# also include [$SysInclude]/holidays/ca.rem
REM Third Monday in February ADDOMIT SCANFROM -28 MSG Heritage Day

Some files were not shown because too many files have changed in this diff Show More