mirror of
https://salsa.debian.org/dskoll/remind.git
synced 2026-04-16 14:28:40 +02:00
Compare commits
1293 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
861d268448 | ||
|
|
02cf32c739 | ||
|
|
1f960039a1 | ||
|
|
dcf55e0fba | ||
|
|
aa8f5a9731 | ||
|
|
de03d0c02a | ||
|
|
3e6e3b6a34 | ||
|
|
bf48e31335 | ||
|
|
77c0beffb3 | ||
|
|
9a724d7618 | ||
|
|
1c20f54edb | ||
|
|
52b36d4503 | ||
|
|
0a82eadea6 | ||
|
|
0cd4fe67d1 | ||
|
|
9c31004b62 | ||
|
|
3431833be2 | ||
|
|
a98a4b9f72 | ||
|
|
4aaba4da88 | ||
|
|
98e37d8c54 | ||
|
|
4335aac7b2 | ||
|
|
695a2a3c2d | ||
|
|
47aa542d4f | ||
|
|
5b4d1ae264 | ||
|
|
721ccb9af9 | ||
|
|
ab1a6c412a | ||
|
|
c3a555942b | ||
|
|
0d15977875 | ||
|
|
0a7e6ee219 | ||
|
|
baf049662f | ||
|
|
fd5d9a479d | ||
|
|
01d3081f19 | ||
|
|
7841077fc6 | ||
|
|
2003c7a703 | ||
|
|
4a603ce60d | ||
|
|
caad7f5aa3 | ||
|
|
ea2312c0b2 | ||
|
|
c0c49be0b5 | ||
|
|
c0594811bf | ||
|
|
b7e13845b6 | ||
|
|
94b340305c | ||
|
|
f477757ac0 | ||
|
|
a8017c6fc7 | ||
|
|
aad746bca3 | ||
|
|
953ff8c49e | ||
|
|
b5258b1eb5 | ||
|
|
82733e817b | ||
|
|
86e94009a4 | ||
|
|
04ea056820 | ||
|
|
d6ee16cc13 | ||
|
|
ead660fe41 | ||
|
|
58e5ae15b0 | ||
|
|
85a8a4b016 | ||
|
|
c43eaec274 | ||
|
|
13fd54b990 | ||
|
|
a48b2ec02e | ||
|
|
4e3562e2e4 | ||
|
|
2020ae35c1 | ||
|
|
9418043bb6 | ||
|
|
e2f786580c | ||
|
|
5aabb20630 | ||
|
|
a3c9ac2457 | ||
|
|
80e3671f9b | ||
|
|
e8e4362839 | ||
|
|
61ac3ca6ed | ||
|
|
eaf982e1cc | ||
|
|
0c27503a83 | ||
|
|
5878c2a714 | ||
|
|
6aa4d681e8 | ||
|
|
790a9ee384 | ||
|
|
d091af6e5b | ||
|
|
3ca9a69100 | ||
|
|
f6253d0fca | ||
|
|
3e6233b6f0 | ||
|
|
0ee5efa4df | ||
|
|
d4ed89f5ba | ||
|
|
34c864a38c | ||
|
|
6d4c38126e | ||
|
|
59c434ce34 | ||
|
|
a550af8fa6 | ||
|
|
3399646896 | ||
|
|
00e85e5ca2 | ||
|
|
9867d3cf34 | ||
|
|
0f4326726a | ||
|
|
1d208400cd | ||
|
|
b9b7e0d42a | ||
|
|
93316d754c | ||
|
|
14b6e23eaa | ||
|
|
7ae7edcb42 | ||
|
|
20a558f817 | ||
|
|
5118ccd120 | ||
|
|
18c4ed1c6d | ||
|
|
62e1a467f5 | ||
|
|
0933cd83b1 | ||
|
|
1ed7c83b24 | ||
|
|
3bae02f27d | ||
|
|
3b485f0632 | ||
|
|
a023d9dc5d | ||
|
|
4ccdfac8b8 | ||
|
|
1c52718ef0 | ||
|
|
4dde2a4b9d | ||
|
|
24f923ecfc | ||
|
|
45c0ba5e8f | ||
|
|
bccfe94921 | ||
|
|
f7e83ed082 | ||
|
|
40b87eff60 | ||
|
|
a8607cb012 | ||
|
|
6caa404e59 | ||
|
|
13e1e19855 | ||
|
|
96d40b81df | ||
|
|
30e4a9fc50 | ||
|
|
6d0fbeed20 | ||
|
|
3f1aaeefd2 | ||
|
|
326604fe18 | ||
|
|
57e93553bf | ||
|
|
a5aa5d901b | ||
|
|
1e0d43b63c | ||
|
|
188efaebba | ||
|
|
b701dc575f | ||
|
|
c9ae1c82f0 | ||
|
|
13cea56cce | ||
|
|
6661f32faf | ||
|
|
f6ab660c5e | ||
|
|
523cfb7bf5 | ||
|
|
82a4ba777d | ||
|
|
8f02868486 | ||
|
|
12d8e8e948 | ||
|
|
f5f364507b | ||
|
|
d514389c39 | ||
|
|
52c615ff61 | ||
|
|
7d3e6b3a72 | ||
|
|
c4e5190ec2 | ||
|
|
f197f5ef9d | ||
|
|
153cbfe276 | ||
|
|
2d9bea444b | ||
|
|
2ae8e51bec | ||
|
|
05d1608081 | ||
|
|
d093e8dea3 | ||
|
|
f9fac22bbf | ||
|
|
9ecbfbb314 | ||
|
|
612f3e7f16 | ||
|
|
d22f9979a5 | ||
|
|
291f648d2e | ||
|
|
351088fd4b | ||
|
|
ed57f62911 | ||
|
|
53dcce6a91 | ||
|
|
d12d327e35 | ||
|
|
a2f760fb91 | ||
|
|
4a9b4ff6e4 | ||
|
|
ce6061a29b | ||
|
|
878a5d9bed | ||
|
|
d1b55bae8d | ||
|
|
c13817015f | ||
|
|
bf74ad1eb7 | ||
|
|
f2eb06c752 | ||
|
|
8172acf102 | ||
|
|
949e00219d | ||
|
|
1fd19b89e2 | ||
|
|
22d6c0583a | ||
|
|
12fac555b6 | ||
|
|
085b781114 | ||
|
|
c9d7fbf479 | ||
|
|
42f868db07 | ||
|
|
2996275ec4 | ||
|
|
5586198a0e | ||
|
|
d17c48e751 | ||
|
|
e08a6370ef | ||
|
|
7a319466cf | ||
|
|
4158ad5977 | ||
|
|
9b07eed26f | ||
|
|
05ead8c40d | ||
|
|
35e222967c | ||
|
|
83ca07d34f | ||
|
|
36f4bb852b | ||
|
|
9642303d05 | ||
|
|
a6144baff7 | ||
|
|
17985c59c3 | ||
|
|
719295ccd7 | ||
|
|
3d74389713 | ||
|
|
80c7244d64 | ||
|
|
db27be1469 | ||
|
|
d59fe832fd | ||
|
|
88ebdf275e | ||
|
|
a7a6f8b5f0 | ||
|
|
3e248c069e | ||
|
|
65cca1fd8f | ||
|
|
5a889043ba | ||
|
|
6d1fcdf246 | ||
|
|
3476b965ef | ||
|
|
0bba2dc3b3 | ||
|
|
e5c27f19f5 | ||
|
|
f9aa53433e | ||
|
|
5323245529 | ||
|
|
deb12ac7cd | ||
|
|
a1488d93ad | ||
|
|
65add3d32e | ||
|
|
8d6f5efa7b | ||
|
|
eb996a8146 | ||
|
|
1cd6205cdd | ||
|
|
6d9ccc1522 | ||
|
|
0268020579 | ||
|
|
5803d1dd7e | ||
|
|
5dfce21af6 | ||
|
|
8ddb956f9a | ||
|
|
32421815cd | ||
|
|
dbe3bc13fa | ||
|
|
c68c716585 | ||
|
|
7a1a5abc0f | ||
|
|
53a1318306 | ||
|
|
78fecf28c4 | ||
|
|
6081d29b11 | ||
|
|
e0a5125ee0 | ||
|
|
c3f790a99b | ||
|
|
3eb507451e | ||
|
|
e9e0368418 | ||
|
|
759ae1ab80 | ||
|
|
e8602824a0 | ||
|
|
62301a88cc | ||
|
|
6b163092c7 | ||
|
|
f8ac99d22e | ||
|
|
4b7870f6b1 | ||
|
|
e11b899f7e | ||
|
|
8e4987eeba | ||
|
|
aa56d27aea | ||
|
|
b3278cd9d5 | ||
|
|
09814eac68 | ||
|
|
0e8889441d | ||
|
|
d9503bd14d | ||
|
|
a5c18f8825 | ||
|
|
f7fc9f57bd | ||
|
|
6931c81716 | ||
|
|
2eb80c4ba1 | ||
|
|
f5dbba3864 | ||
|
|
3fc57fb76e | ||
|
|
ff9d27a6ca | ||
|
|
e82767f821 | ||
|
|
772daaa877 | ||
|
|
941cb0f63e | ||
|
|
15960f7e4a | ||
|
|
f05ef363fc | ||
|
|
a22b0b8daf | ||
|
|
382ff47369 | ||
|
|
cab749b651 | ||
|
|
2dc5a7776d | ||
|
|
2723875a18 | ||
|
|
81a186607b | ||
|
|
5534bf8272 | ||
|
|
f726b09fc6 | ||
|
|
f07a6d1bed | ||
|
|
a0a362c418 | ||
|
|
0b45bc818b | ||
|
|
b6ad32749b | ||
|
|
ec36fc8cf8 | ||
|
|
2afb71b233 | ||
|
|
4bf9abc791 | ||
|
|
51d895dbb1 | ||
|
|
517251dd05 | ||
|
|
834741f91b | ||
|
|
19b33bb9bc | ||
|
|
1acb343cf3 | ||
|
|
b5b00468cc | ||
|
|
5042621073 | ||
|
|
e2152b1e82 | ||
|
|
4adfc4b20e | ||
|
|
6a4a1ab2d5 | ||
|
|
a19b79951e | ||
|
|
21f5462657 | ||
|
|
b3f03e3e0c | ||
|
|
593d367eaa | ||
|
|
8b34e556a0 | ||
|
|
dfe1834c75 | ||
|
|
54cbd87a7e | ||
|
|
775e0a85ec | ||
|
|
9c580b74d4 | ||
|
|
4e9befaf80 | ||
|
|
996e9ee212 | ||
|
|
8748856f5a | ||
|
|
41306bfad5 | ||
|
|
d084a48da7 | ||
|
|
18c3e0fe2e | ||
|
|
e038f74b28 | ||
|
|
303e42f344 | ||
|
|
453bba5172 | ||
|
|
8ce56acc7a | ||
|
|
90648e4091 | ||
|
|
6c67dfeb72 | ||
|
|
690d5bd429 | ||
|
|
1ee2c32374 | ||
|
|
7d2ec6767c | ||
|
|
8c4ad9c6b5 | ||
|
|
7f3764fe2d | ||
|
|
6f3b0526cf | ||
|
|
074feffaab | ||
|
|
44dd57e6e3 | ||
|
|
96c15ef42a | ||
|
|
5876663f1b | ||
|
|
a11a80304a | ||
|
|
561245a5e8 | ||
|
|
0ecca26da8 | ||
|
|
7729d61adc | ||
|
|
e58d168836 | ||
|
|
3d918ce8ad | ||
|
|
468663103d | ||
|
|
1cb2c6aa23 | ||
|
|
3083142753 | ||
|
|
26de9d84f5 | ||
|
|
ba092fb781 | ||
|
|
5fe1536b3b | ||
|
|
9e3797d5ed | ||
|
|
26ec92675c | ||
|
|
01461929d7 | ||
|
|
b3a2c0e7c7 | ||
|
|
a614383521 | ||
|
|
9f139b0d02 | ||
|
|
7decbed3ff | ||
|
|
5610590fa8 | ||
|
|
be04097fbc | ||
|
|
5092d5bc16 | ||
|
|
2f86920842 | ||
|
|
604e1b049c | ||
|
|
23081b556f | ||
|
|
e2cfa46289 | ||
|
|
71384da875 | ||
|
|
af69f8779d | ||
|
|
131e77fa18 | ||
|
|
f153acf7ce | ||
|
|
d75587fa7b | ||
|
|
d9a2b15814 | ||
|
|
aa090bf319 | ||
|
|
dc6a229f5f | ||
|
|
5a3840759a | ||
|
|
779174ae32 | ||
|
|
2f70b37d4c | ||
|
|
d15c8f106b | ||
|
|
9d999a0074 | ||
|
|
097dda1750 | ||
|
|
565bca4380 | ||
|
|
adb38fe82e | ||
|
|
57545ddc3f | ||
|
|
804cf14a78 | ||
|
|
641b5cec57 | ||
|
|
df53db19c4 | ||
|
|
d9bf902153 | ||
|
|
53a12de2f9 | ||
|
|
fe2b34da68 | ||
|
|
7e70ffe7f5 | ||
|
|
55975154b1 | ||
|
|
3c6191ba61 | ||
|
|
b00cf9c5b7 | ||
|
|
a6838802ad | ||
|
|
375576fcc5 | ||
|
|
2c9087aa79 | ||
|
|
928f65ae47 | ||
|
|
ed7b4f5ecc | ||
|
|
9aad9401ea | ||
|
|
4574b552b6 | ||
|
|
21e0940257 | ||
|
|
7064893ff2 | ||
|
|
f8781276e2 | ||
|
|
b02f61ea05 | ||
|
|
60447d530d | ||
|
|
2835176ad3 | ||
|
|
b0784feb1a | ||
|
|
ef7021972e | ||
|
|
e449fcdfcf | ||
|
|
47a4456c20 | ||
|
|
e9ee7492f7 | ||
|
|
2baa0405f3 | ||
|
|
3425530c1c | ||
|
|
eeae3298ef | ||
|
|
4237dc4a3f | ||
|
|
faf8947dda | ||
|
|
41a3db3a37 | ||
|
|
f12bcf3fe6 | ||
|
|
f9261bb24f | ||
|
|
2ff9aedba5 | ||
|
|
1b793eff2e | ||
|
|
e4c41e0f45 | ||
|
|
9ec1006804 | ||
|
|
dd048c0557 | ||
|
|
dce1f282f4 | ||
|
|
7120d07d84 | ||
|
|
127358db02 | ||
|
|
a89aaf18b6 | ||
|
|
5734bd7524 | ||
|
|
dfabda7dee | ||
|
|
da146d7989 | ||
|
|
e147925462 | ||
|
|
703907c94d | ||
|
|
bcfee04cae | ||
|
|
5f9e71f9eb | ||
|
|
272336226e | ||
|
|
32f4b125b5 | ||
|
|
7979a69cb9 | ||
|
|
651368fedc | ||
|
|
fe002557cf | ||
|
|
d2785d909c | ||
|
|
c2345a240b | ||
|
|
5b6bf25a20 | ||
|
|
44f9f0f0d4 | ||
|
|
0416d6da9c | ||
|
|
5d46df871f | ||
|
|
c5d661124c | ||
|
|
2f239f77a5 | ||
|
|
1ef05d3f85 | ||
|
|
7c56aad791 | ||
|
|
5f0f68f508 | ||
|
|
71bfe31002 | ||
|
|
4661b454c0 | ||
|
|
d41520a04f | ||
|
|
0206e538e0 | ||
|
|
6689cbfda3 | ||
|
|
5baf102bfe | ||
|
|
c9002d5b54 | ||
|
|
ac3ee7e22b | ||
|
|
f366037b8d | ||
|
|
a46488a50d | ||
|
|
f91a1a2d65 | ||
|
|
2ac8fb50e1 | ||
|
|
7df826f635 | ||
|
|
f8ce7b51da | ||
|
|
35ee94ca6b | ||
|
|
c2a3468e04 | ||
|
|
4ff2064452 | ||
|
|
8e00bd5acc | ||
|
|
86f65e11bb | ||
|
|
0c9ec11fce | ||
|
|
07dcaec176 | ||
|
|
e87849256b | ||
|
|
fd8ecd88a8 | ||
|
|
5e36a6563a | ||
|
|
274a2bf067 | ||
|
|
4aa737e542 | ||
|
|
6474f4e0b6 | ||
|
|
7b7b861399 | ||
|
|
5cb0e82be2 | ||
|
|
d9a4bd19f2 | ||
|
|
1004946d26 | ||
|
|
d877a6cb48 | ||
|
|
3eea329b32 | ||
|
|
7bf23912ae | ||
|
|
6ae0340137 | ||
|
|
0e48ace855 | ||
|
|
d1f1ddf5b7 | ||
|
|
5f9e227dc8 | ||
|
|
b770676cb6 | ||
|
|
5ee415c2fb | ||
|
|
6c2a4b66fd | ||
|
|
6c2d65c08e | ||
|
|
cd2dc3bea3 | ||
|
|
b1b80316ab | ||
|
|
f04835cf6f | ||
|
|
fb19ea6b7e | ||
|
|
e2d7796d4a | ||
|
|
de2ec1aa7b | ||
|
|
b9fb215d9d | ||
|
|
a62ed0e0c5 | ||
|
|
eceb5e3f82 | ||
|
|
d5aa93ae57 | ||
|
|
a66da78b4a | ||
|
|
af69f54bff | ||
|
|
a000a7f17e | ||
|
|
582f388500 | ||
|
|
7762f4f2d6 | ||
|
|
31c9b2afb7 | ||
|
|
119e954e9e | ||
|
|
6aa07edffd | ||
|
|
bdb9ad1a5d | ||
|
|
05384fe7cf | ||
|
|
6125001e55 | ||
|
|
78b307e387 | ||
|
|
460d0a8d88 | ||
|
|
add35377ad | ||
|
|
fccd9ed42e | ||
|
|
a49ecccb34 | ||
|
|
ae9fe78817 | ||
|
|
dbc5576312 | ||
|
|
6cbbebceaf | ||
|
|
4dc27ca7f5 | ||
|
|
d8f97ce0f1 | ||
|
|
0e1a80f2bd | ||
|
|
4a7f703ab5 | ||
|
|
101de948b2 | ||
|
|
0e2d382b33 | ||
|
|
a6c5c3cb90 | ||
|
|
da573929ee | ||
|
|
5217d9b675 | ||
|
|
79a87c6f1a | ||
|
|
cde5ffc84a | ||
|
|
6ef323a4f0 | ||
|
|
8331ea2991 | ||
|
|
db28648d9d | ||
|
|
1a5915bba9 | ||
|
|
94a50fa22c | ||
|
|
fad6076568 | ||
|
|
287039ac40 | ||
|
|
8523218ef2 | ||
|
|
fdaaf2b57a | ||
|
|
19eac9b8d5 | ||
|
|
cda4877229 | ||
|
|
0976cd64f3 | ||
|
|
10f7889ef2 | ||
|
|
2391ff4bc7 | ||
|
|
d21ae56deb | ||
|
|
773980afa6 | ||
|
|
46a80da0e1 | ||
|
|
23516aebcb | ||
|
|
b48ce0b245 | ||
|
|
e4c090374d | ||
|
|
39fcbb72fd | ||
|
|
5f2bf48752 | ||
|
|
9e5354fcb8 | ||
|
|
49bdd135f7 | ||
|
|
f9a6aba81d | ||
|
|
175772d959 | ||
|
|
2f03c75826 | ||
|
|
d617000e95 | ||
|
|
04dee13996 | ||
|
|
ebcf6fd534 | ||
|
|
c7c58e20f3 | ||
|
|
a66ca7cce7 | ||
|
|
35cae5f97c | ||
|
|
6d86d88037 | ||
|
|
89f60358c6 | ||
|
|
781e5a6acd | ||
|
|
1b5d34e5e6 | ||
|
|
cb5fa62022 | ||
|
|
9d6ce5b674 | ||
|
|
1cdd9531a5 | ||
|
|
da4633fab3 | ||
|
|
aeff3606d2 | ||
|
|
2af36b7241 | ||
|
|
a7a22d20a2 | ||
|
|
3fdbf8b3bc | ||
|
|
a7696d659c | ||
|
|
865ebae6f8 | ||
|
|
f21f8ee8d0 | ||
|
|
76b7736266 | ||
|
|
0769e3e9cb | ||
|
|
d9ab9e91b5 | ||
|
|
9199ed5cf7 | ||
|
|
68a4b23b6f | ||
|
|
814dd51270 | ||
|
|
59fdf70732 | ||
|
|
24ed30fee0 | ||
|
|
86dcd9ce89 | ||
|
|
4915dc1e8d | ||
|
|
8c4cff22a5 | ||
|
|
50850134f6 | ||
|
|
a5de77cc91 | ||
|
|
87e4ed23bf | ||
|
|
0fe1d1591e | ||
|
|
dfb137085a | ||
|
|
143cdecb9e | ||
|
|
183ccf9d1c | ||
|
|
56ad4efb1a | ||
|
|
f4805a443b | ||
|
|
977aa3d6cf | ||
|
|
fe7ac980e5 | ||
|
|
aebab73dfa | ||
|
|
9bd0055d4d | ||
|
|
d944ceb32d | ||
|
|
3eadb3f767 | ||
|
|
be8a0621d1 | ||
|
|
235f947dd1 | ||
|
|
93dddec24a | ||
|
|
c13b721550 | ||
|
|
1c961dca83 | ||
|
|
700ac85e54 | ||
|
|
e20a14109a | ||
|
|
a3703173e2 | ||
|
|
7325375ccd | ||
|
|
4b898b2ba1 | ||
|
|
aa3760bc04 | ||
|
|
ea5e8c90ff | ||
|
|
609b68ab21 | ||
|
|
c3ab2a15cf | ||
|
|
418b050b1c | ||
|
|
4ab8897577 | ||
|
|
9613417a2e | ||
|
|
f808a2963d | ||
|
|
96a4dc3189 | ||
|
|
3c60285466 | ||
|
|
6fed350e1f | ||
|
|
9f220555af | ||
|
|
005ccef953 | ||
|
|
578c98c865 | ||
|
|
64bf3381c6 | ||
|
|
02ade6fc58 | ||
|
|
2954fca8d8 | ||
|
|
8356dacf2a | ||
|
|
4fd145cf4e | ||
|
|
1af2bdf8f1 | ||
|
|
9b98e65e01 | ||
|
|
0f83b98698 | ||
|
|
4fd62f9894 | ||
|
|
cc06592fe0 | ||
|
|
21d28ebfc3 | ||
|
|
b300422cdb | ||
|
|
37e09f4671 | ||
|
|
b6e53341c8 | ||
|
|
896fcf1d7f | ||
|
|
72155329f2 | ||
|
|
36c7db510a | ||
|
|
d4aa73747d | ||
|
|
3ed657b708 | ||
|
|
0441c0263b | ||
|
|
c40d4ee672 | ||
|
|
96f2d6537a | ||
|
|
dc777c95df | ||
|
|
3090d77346 | ||
|
|
157d2821f3 | ||
|
|
71d2da19a8 | ||
|
|
516b9c81b3 | ||
|
|
58d0e38f1a | ||
|
|
68d487ade9 | ||
|
|
9d42879170 | ||
|
|
db70aabc97 | ||
|
|
c8f55ef60b | ||
|
|
44b50fc6be | ||
|
|
a69a96529b | ||
|
|
f4e5cc63a6 | ||
|
|
136122b1db | ||
|
|
4cc63b1548 | ||
|
|
9390b4335b | ||
|
|
1fcf11a816 | ||
|
|
c4107e6a6f | ||
|
|
ab03232341 | ||
|
|
51a65841cd | ||
|
|
5035deaff1 | ||
|
|
09caa8988a | ||
|
|
9624b1045c | ||
|
|
102748397f | ||
|
|
f852f7e7e5 | ||
|
|
8d88192483 | ||
|
|
a6ca571fe5 | ||
|
|
2af783a58d | ||
|
|
af2daa7a87 | ||
|
|
c5bc459dd9 | ||
|
|
edf26eaa14 | ||
|
|
7e5dc26ee5 | ||
|
|
4c2b6031cd | ||
|
|
af8c1630c3 | ||
|
|
0ec43d570c | ||
|
|
1df8b12e71 | ||
|
|
3fb10fe946 | ||
|
|
e11dbcf52a | ||
|
|
88cc25e53f | ||
|
|
0c93e045bd | ||
|
|
99e5b3f43d | ||
|
|
f0f0cec2d3 | ||
|
|
70a97a8fe5 | ||
|
|
8a6857b787 | ||
|
|
95b82a4457 | ||
|
|
8fd39e477f | ||
|
|
3118f8d2a4 | ||
|
|
acf570512d | ||
|
|
cf2114e2ef | ||
|
|
357f7105bd | ||
|
|
e7094b71c2 | ||
|
|
8a3db4cba1 | ||
|
|
b33a3191f5 | ||
|
|
caa900d38d | ||
|
|
1d3c1f006f | ||
|
|
633812d961 | ||
|
|
ec8cae6d4b | ||
|
|
5019d54379 | ||
|
|
56e4f14a2f | ||
|
|
af5854d0c6 | ||
|
|
43d0066780 | ||
|
|
de2d15009f | ||
|
|
8ca5c7e56e | ||
|
|
bd6218d7e2 | ||
|
|
5d822e294d | ||
|
|
1e3657b728 | ||
|
|
a309af731f | ||
|
|
31c8893a2a | ||
|
|
e3a6c65983 | ||
|
|
1355b99560 | ||
|
|
21904e708f | ||
|
|
e4a6a5cf01 | ||
|
|
098cf4707a | ||
|
|
1be6ff23fb | ||
|
|
4db201945c | ||
|
|
6aa217044b | ||
|
|
c64d939237 | ||
|
|
398100c6e3 | ||
|
|
3fb1db0880 | ||
|
|
76bf57af60 | ||
|
|
a8fc88be17 | ||
|
|
a50f40d652 | ||
|
|
71b3564c03 | ||
|
|
a35de17b00 | ||
|
|
ab44f93f37 | ||
|
|
ab69fee895 | ||
|
|
db31214060 | ||
|
|
758e2c1a9d | ||
|
|
ed7c5103ff | ||
|
|
4590e746c5 | ||
|
|
bc8ce3e2cc | ||
|
|
3e82fe8712 | ||
|
|
ea3126645c | ||
|
|
e107ed5482 | ||
|
|
66523b1b3b | ||
|
|
8590cf6207 | ||
|
|
c85a8a7614 | ||
|
|
416ee87dd0 | ||
|
|
7705278575 | ||
|
|
59f978a9db | ||
|
|
4515291720 | ||
|
|
65eaf67a06 | ||
|
|
3f4f00890a | ||
|
|
e96875c698 | ||
|
|
d65348bf83 | ||
|
|
c1704b9d52 | ||
|
|
e87d285170 | ||
|
|
c6b00b616e | ||
|
|
084dbd71b1 | ||
|
|
ce123d1b41 | ||
|
|
4ed8331369 | ||
|
|
44b920e080 | ||
|
|
dc75c8f49b | ||
|
|
cef6e6717c | ||
|
|
5ec78739cd | ||
|
|
79f45169c8 | ||
|
|
b9f09b9a2d | ||
|
|
f53a174d65 | ||
|
|
ed15b7deb5 | ||
|
|
caf5f81eb0 | ||
|
|
d48910eca9 | ||
|
|
c004944a59 | ||
|
|
f2d1a21a4e | ||
|
|
81a5241097 | ||
|
|
eced4de4a2 | ||
|
|
2c8fa39af0 | ||
|
|
6ac5e96260 | ||
|
|
deda94a69e | ||
|
|
abb8cbb1bf | ||
|
|
ee4e3e9073 | ||
|
|
220014e60f | ||
|
|
3d0d07ce29 | ||
|
|
38615adb41 | ||
|
|
3d8f0e3907 | ||
|
|
160f85a1f8 | ||
|
|
5cb062166c | ||
|
|
81fa6c667f | ||
|
|
190dfa3a8f | ||
|
|
a22c674846 | ||
|
|
ba224445b1 | ||
|
|
6aeee47bfa | ||
|
|
c506fa4613 | ||
|
|
04404a252e | ||
|
|
be746f9fa7 | ||
|
|
2393a86970 | ||
|
|
143ad08b3f | ||
|
|
44afdfcb44 | ||
|
|
4b905dbc02 | ||
|
|
0f76750e05 | ||
|
|
b32f56134e | ||
|
|
60b0b468df | ||
|
|
52ce99af80 | ||
|
|
5915eb4973 | ||
|
|
aa8d23fd87 | ||
|
|
917d943953 | ||
|
|
9ade3876b2 | ||
|
|
471ecff267 | ||
|
|
762bf97473 | ||
|
|
563f3ea088 | ||
|
|
939078428f | ||
|
|
5acbb907b4 | ||
|
|
21ecc28ea4 | ||
|
|
b37a7cd993 | ||
|
|
64679817ae | ||
|
|
1ef1033379 | ||
|
|
7d42750043 | ||
|
|
1dc0afc0ca | ||
|
|
a0aede4069 | ||
|
|
a5a7637696 | ||
|
|
38a597a374 | ||
|
|
66ba9257a5 | ||
|
|
c5374c09fb | ||
|
|
9c93e7e6a1 | ||
|
|
3487f6f46a | ||
|
|
da8a72d7cd | ||
|
|
f391b6221f | ||
|
|
a8c0b20f9e | ||
|
|
5684a86df9 | ||
|
|
3abaaacd98 | ||
|
|
7eae7a9157 | ||
|
|
a0d8c93a34 | ||
|
|
8bf22dbb36 | ||
|
|
6b2622f3d3 | ||
|
|
8abdf6d988 | ||
|
|
991e409739 | ||
|
|
3c2bb76523 | ||
|
|
8555352c18 | ||
|
|
34f8486c10 | ||
|
|
5adb5d893e | ||
|
|
2f11b6fdc8 | ||
|
|
49d46c1397 | ||
|
|
1641f99f97 | ||
|
|
f9f9552850 | ||
|
|
3b43222585 | ||
|
|
231d9d77e7 | ||
|
|
6140221bf3 | ||
|
|
51b831fb6a | ||
|
|
35a4994b3e | ||
|
|
0ebaaa4097 | ||
|
|
2f43aca21c | ||
|
|
930bab0fde | ||
|
|
694c4099d1 | ||
|
|
ca56b4c90e | ||
|
|
5c965e2083 | ||
|
|
d58ccbef69 | ||
|
|
17ad03be69 | ||
|
|
75a4e98de2 | ||
|
|
1408f77303 | ||
|
|
af76dd67fb | ||
|
|
f7a19d1570 | ||
|
|
e7ec975ff0 | ||
|
|
8c4ca12ca7 | ||
|
|
e832eb868c | ||
|
|
cb0acb3077 | ||
|
|
9376c7a36d | ||
|
|
e6ceeee2ec | ||
|
|
bbeece644e | ||
|
|
8d09abc363 | ||
|
|
3dcd353fb5 | ||
|
|
124c5c4e7e | ||
|
|
77024562b3 | ||
|
|
35c33ae915 | ||
|
|
901831ff75 | ||
|
|
e0c5e878a8 | ||
|
|
ffba7fcb03 | ||
|
|
b3f3cb9ce0 | ||
|
|
6f11e727f8 | ||
|
|
9f7ea96e87 | ||
|
|
d650b8564c | ||
|
|
4f2e4030eb | ||
|
|
447bda5c91 | ||
|
|
4f351c089e | ||
|
|
6b31778973 | ||
|
|
dcf8b46beb | ||
|
|
0f582ccb60 | ||
|
|
8d0743dd3e | ||
|
|
436526c27d | ||
|
|
5f3f3b410f | ||
|
|
4f79b0d42a | ||
|
|
c96f9f21ed | ||
|
|
dc192f2a69 | ||
|
|
ac3dd1ec7c | ||
|
|
b5717828f0 | ||
|
|
c0d73fb9d1 | ||
|
|
3a2ac067b0 | ||
|
|
1d467ab9ed | ||
|
|
c2ec4e9d29 | ||
|
|
96c11e89eb | ||
|
|
a35920f28e | ||
|
|
17ccf5d2b4 | ||
|
|
788a09b2cd | ||
|
|
9f0e23a307 | ||
|
|
542620c188 | ||
|
|
50419bd83a | ||
|
|
2b7c582392 | ||
|
|
812a2af64b | ||
|
|
17d7abd4a4 | ||
|
|
098e98c59e | ||
|
|
c5e0dbf2e5 | ||
|
|
18c8bc719f | ||
|
|
195ed15167 | ||
|
|
51677cd7b5 | ||
|
|
aef5b353cd | ||
|
|
8a99c29533 | ||
|
|
0bf2b0772a | ||
|
|
a033a48acd | ||
|
|
0feb81c8cc | ||
|
|
1850607542 | ||
|
|
213138a7b7 | ||
|
|
562cec3dc8 | ||
|
|
18b57d26b4 | ||
|
|
c80d72f623 | ||
|
|
2739a41651 | ||
|
|
5a56f4c61b | ||
|
|
77080ff600 | ||
|
|
c4aa21ff51 | ||
|
|
34c513ba3b | ||
|
|
35c16a060a | ||
|
|
69dedc577f | ||
|
|
a7d8f3c887 | ||
|
|
800a4b15b2 | ||
|
|
3e981fd8be | ||
|
|
7c530d3068 | ||
|
|
58f9cf641b | ||
|
|
53906035fe | ||
|
|
4804325863 | ||
|
|
5f5e7054f4 | ||
|
|
078dba1e98 | ||
|
|
8ebec9584c | ||
|
|
2504b39be2 | ||
|
|
e394f402f8 | ||
|
|
5a2914f6c7 | ||
|
|
a19b009f7c | ||
|
|
6373ae8ca5 | ||
|
|
b8c4786b33 | ||
|
|
4e7cfc20ce | ||
|
|
0c9a35a584 | ||
|
|
5e333f6162 | ||
|
|
af8b4e6df1 | ||
|
|
3fa798523a | ||
|
|
53001f9fbc | ||
|
|
9cd76eae84 | ||
|
|
c8295b6251 | ||
|
|
3c95245407 | ||
|
|
3362c7226c | ||
|
|
356b562d75 | ||
|
|
6eebcdc39d | ||
|
|
5a80d63060 | ||
|
|
c7ca1b4baa | ||
|
|
dc89a6fba9 | ||
|
|
f83fec5563 | ||
|
|
9c38161430 | ||
|
|
68f5fe1d10 | ||
|
|
bc7c57e53b | ||
|
|
88aacb3905 | ||
|
|
a894076bfc | ||
|
|
82e068fcca | ||
|
|
a119d97539 | ||
|
|
01afb63a3d | ||
|
|
54fccabdfe | ||
|
|
ba4d44664f | ||
|
|
d76c5499b5 | ||
|
|
84e8244e48 | ||
|
|
92a6115a5c | ||
|
|
b98e336e9e | ||
|
|
ffcd21446e | ||
|
|
af9ca68d99 | ||
|
|
71db7168a1 | ||
|
|
54f284c43f | ||
|
|
0ab93f2dea | ||
|
|
3d97f87bcd | ||
|
|
dcfa6d8ef8 | ||
|
|
52dd5332f4 | ||
|
|
7b5fafe1ab | ||
|
|
929af71a10 | ||
|
|
abf7c74ff2 | ||
|
|
5b9d9a67b2 | ||
|
|
16ca2ade23 | ||
|
|
d3e6c81a3a | ||
|
|
13ae49d3cd | ||
|
|
78adc9f61d | ||
|
|
a622d4fad4 | ||
|
|
6c0e7b4ff5 | ||
|
|
28e0599380 | ||
|
|
87445f639c | ||
|
|
af6e159eaa | ||
|
|
bffa28e258 | ||
|
|
1781f84d84 | ||
|
|
ed6e65182e | ||
|
|
f5cc0ec686 | ||
|
|
a2c818f96c | ||
|
|
0bbbaaf3d9 | ||
|
|
1c81d4cae3 | ||
|
|
56c684087b | ||
|
|
9500a929ea | ||
|
|
585d45e4a1 | ||
|
|
67d1d1366d | ||
|
|
f4018892e8 | ||
|
|
ffd309f89d | ||
|
|
286babc1bf | ||
|
|
cc3c0040e9 | ||
|
|
b33a1ee98b | ||
|
|
99706741bb | ||
|
|
df73a74503 | ||
|
|
c747ebebb4 | ||
|
|
6b412062c2 | ||
|
|
27b688f82c | ||
|
|
4c314ff81c | ||
|
|
d2955ec733 | ||
|
|
480216db9e | ||
|
|
9dbb0de7e6 | ||
|
|
9f9ae77895 | ||
|
|
d9796e72e5 | ||
|
|
e0b0d043c6 | ||
|
|
fe4499ab72 | ||
|
|
e50d583659 | ||
|
|
6b05d772f0 | ||
|
|
84dd73f023 | ||
|
|
00dca8b70f | ||
|
|
c4bc145cd9 | ||
|
|
bd614c1cde | ||
|
|
1446ac0552 | ||
|
|
26ded447ab | ||
|
|
a4ccb0738e | ||
|
|
27a1b449bd | ||
|
|
1443282859 | ||
|
|
4a2d707654 | ||
|
|
fd2a61928c | ||
|
|
a05d9eefc9 | ||
|
|
6f230e81bd | ||
|
|
973019c4c7 | ||
|
|
cb712ad7e7 | ||
|
|
be7c67b6fd | ||
|
|
a933c8bc69 | ||
|
|
087fbfd8e6 | ||
|
|
ff641d7990 | ||
|
|
54e788b765 | ||
|
|
4283feff31 | ||
|
|
062a84b758 | ||
|
|
d161a8ff1a | ||
|
|
0df4a79531 | ||
|
|
1b26e39e2f | ||
|
|
c63c4cf07e | ||
|
|
586b3565f0 | ||
|
|
877aaed1a1 | ||
|
|
57fa1a6099 | ||
|
|
6cdb12b5a8 | ||
|
|
c73e1b6f97 | ||
|
|
e8c779c785 | ||
|
|
96e076a13f | ||
|
|
80d258621a | ||
|
|
ed6d35e418 | ||
|
|
9dca1840a1 | ||
|
|
f4ec23df90 | ||
|
|
a0536a8141 | ||
|
|
553899127a | ||
|
|
73519889c7 | ||
|
|
54ac99abcc | ||
|
|
0c1954bdf4 | ||
|
|
46e1b7386e | ||
|
|
cdf480112a | ||
|
|
ed38feee83 | ||
|
|
d7f5582a45 | ||
|
|
d042263d3d | ||
|
|
f1591140d4 | ||
|
|
1b41367163 | ||
|
|
6bdee7ef89 | ||
|
|
d50b464314 | ||
|
|
ad5dff1de7 | ||
|
|
ac9f32f044 | ||
|
|
e48d025f5d | ||
|
|
0f5de395ff | ||
|
|
406629144f | ||
|
|
36e4f52828 | ||
|
|
ae39eb1d6e | ||
|
|
342c229a57 | ||
|
|
52fc89ddc7 | ||
|
|
821e7a64c8 | ||
|
|
8c3f7e092c | ||
|
|
6161214226 | ||
|
|
5b892eba8e | ||
|
|
e0fde98410 | ||
|
|
aec17b3243 | ||
|
|
83009e765d | ||
|
|
42dc81132f | ||
|
|
51d8b7be39 | ||
|
|
04cc3fd8dd | ||
|
|
bd429d1450 | ||
|
|
57fa0bfb2e | ||
|
|
bc7f92e3c0 | ||
|
|
67ab911d43 | ||
|
|
43191fc6a3 | ||
|
|
da1cc9137c | ||
|
|
1306195045 | ||
|
|
edb73548d6 | ||
|
|
c143d554b7 | ||
|
|
c2dbf32dd6 | ||
|
|
a0e32c715b | ||
|
|
356e0044c4 | ||
|
|
eea90b1aaa | ||
|
|
b2c5575849 | ||
|
|
7064d64b22 | ||
|
|
5783430fdd | ||
|
|
3e8c40990d | ||
|
|
cbdc124355 | ||
|
|
40e60dd627 | ||
|
|
e508bee0ed | ||
|
|
0200be82ba | ||
|
|
4c8b6e74d2 | ||
|
|
bbdcf44102 | ||
|
|
02007a32fe | ||
|
|
fd7c79b6b4 | ||
|
|
c8c2d5d32e | ||
|
|
4eafaaefeb | ||
|
|
de6e387969 | ||
|
|
f8d1439fc8 | ||
|
|
fd7079d7f8 | ||
|
|
1ccf1d236d | ||
|
|
7041e2cad8 | ||
|
|
b1b21e21b3 | ||
|
|
533718b0a0 | ||
|
|
4e75d1574c | ||
|
|
c94137e0b3 | ||
|
|
e49251cfb0 | ||
|
|
e3627e8ea3 | ||
|
|
2c1f44c9b9 | ||
|
|
cce24634ae | ||
|
|
e2435c34a9 | ||
|
|
a70ba8d42c | ||
|
|
dea14be2d5 | ||
|
|
6750a393f1 | ||
|
|
e18cd72791 | ||
|
|
6e1dc7dcd7 | ||
|
|
bf193250cc | ||
|
|
2c5eeb02f6 | ||
|
|
5cd343c27c | ||
|
|
81b48b70c4 | ||
|
|
5e738020a7 | ||
|
|
7949341037 | ||
|
|
f4d8331456 | ||
|
|
17beef5ce6 | ||
|
|
aaae80d02b | ||
|
|
e97de16203 | ||
|
|
d5e38ee3b4 | ||
|
|
11594aee2d | ||
|
|
711f0b6c69 | ||
|
|
87a8b9811d | ||
|
|
689b1d0e13 | ||
|
|
a8650e888f | ||
|
|
dea2aed628 | ||
|
|
5618b928e0 | ||
|
|
91187c4c60 | ||
|
|
636ae8f21a | ||
|
|
405398b226 | ||
|
|
0df3a903b1 | ||
|
|
eac07d212c | ||
|
|
96da3a6596 | ||
|
|
94ef20d702 | ||
|
|
c9c309e436 | ||
|
|
52c973509b | ||
|
|
c192c580da | ||
|
|
235e5ec1c7 | ||
|
|
3d30173f9a | ||
|
|
8b0bbc9fb7 | ||
|
|
c57d2fd52a | ||
|
|
2970591187 | ||
|
|
23ec559ddf | ||
|
|
302bc5a5de | ||
|
|
950c0b3747 | ||
|
|
ad382fea25 | ||
|
|
a66e855ca7 | ||
|
|
a1b814d6b1 | ||
|
|
62030719bb | ||
|
|
985816dc32 | ||
|
|
a131a53132 | ||
|
|
c5e723b6ac | ||
|
|
3fe2b88e65 | ||
|
|
54603090ee | ||
|
|
2514b3681f | ||
|
|
0b7b101814 | ||
|
|
3ac1c622fd | ||
|
|
7878f6623c | ||
|
|
00ad38e5fe | ||
|
|
10ae0b0077 | ||
|
|
e032f3315d | ||
|
|
a38fd95a90 | ||
|
|
9f7609b2c6 | ||
|
|
a6c166ae0c | ||
|
|
e9c89b770f | ||
|
|
df6298bd63 | ||
|
|
739d285e36 | ||
|
|
ee1c931932 | ||
|
|
0806b6738f | ||
|
|
020e82d575 | ||
|
|
a20f2b588e | ||
|
|
631e721a96 | ||
|
|
8453e17c6c | ||
|
|
76c1e2abb3 | ||
|
|
3389f1c91b | ||
|
|
b2d47ae979 | ||
|
|
e2c615f310 | ||
|
|
e8492a4303 | ||
|
|
4695efaabd | ||
|
|
c433f42587 | ||
|
|
4708e59a43 | ||
|
|
d56ac6332a | ||
|
|
b054baf590 | ||
|
|
42f5e3467d | ||
|
|
97013ae89b | ||
|
|
2acead9118 | ||
|
|
a53a80acb4 | ||
|
|
56e62b1b4d | ||
|
|
c645db5ede | ||
|
|
ef6b9c3783 | ||
|
|
019bee26cb | ||
|
|
152cd4090b | ||
|
|
b7fc2b5776 | ||
|
|
723aba9b7c | ||
|
|
8a5b88338b | ||
|
|
7236441e02 | ||
|
|
e4bab0dda4 | ||
|
|
5b7d4a07ec | ||
|
|
8c3d2c4003 | ||
|
|
f485d607ff | ||
|
|
a0effa5f0b | ||
|
|
7d501cda6f | ||
|
|
5d7f55c8d5 | ||
|
|
097bf92bea | ||
|
|
b9dea59206 | ||
|
|
46aa144b65 | ||
|
|
914971308d | ||
|
|
a22e81040f | ||
|
|
72f74f03cf | ||
|
|
d0e45e727e | ||
|
|
ce2b2e80da | ||
|
|
11771b7d3d | ||
|
|
01cb028532 | ||
|
|
58b6f43b9c | ||
|
|
1dedb667e8 | ||
|
|
8a96236788 | ||
|
|
2a13163659 | ||
|
|
336a9684d4 | ||
|
|
86945c6e18 | ||
|
|
684280db5e | ||
|
|
d801408933 | ||
|
|
79b3da3820 | ||
|
|
ed021d3f46 | ||
|
|
27d0fda280 | ||
|
|
ef12da4ec6 | ||
|
|
7b098e95ad | ||
|
|
7d13f4b09e | ||
|
|
cecdfe6ade | ||
|
|
216bbd6378 | ||
|
|
30e2e9c633 | ||
|
|
bf2aabd610 | ||
|
|
c019221d15 | ||
|
|
b7bd6faf07 | ||
|
|
80d58220fe | ||
|
|
cd8624e176 | ||
|
|
8515fb7ddd | ||
|
|
84f9f4ae0a | ||
|
|
e201ebcfa4 | ||
|
|
4e15c3ec35 | ||
|
|
1adccf9b1f | ||
|
|
a1aa5c2ad9 | ||
|
|
1e0d650737 | ||
|
|
553d092ca8 | ||
|
|
dc62841517 | ||
|
|
326e7bfc53 | ||
|
|
b9dc7c16ad | ||
|
|
abd54b016b | ||
|
|
db02b54067 | ||
|
|
40a78dfbbb | ||
|
|
c860b46baa | ||
|
|
1458ba8856 | ||
|
|
7b9b6ebc96 | ||
|
|
7ee4073c7a | ||
|
|
8c072cd9b6 | ||
|
|
b794a45c3f | ||
|
|
98e491ed1d | ||
|
|
c397cc06da | ||
|
|
8616236b3c | ||
|
|
702704af1a | ||
|
|
a0d1b19050 | ||
|
|
a5c8ae491c | ||
|
|
b3cf741d15 | ||
|
|
0b28dde9c7 | ||
|
|
5a3980b5b8 | ||
|
|
a8e33118d6 | ||
|
|
2223277f64 | ||
|
|
c72413e3c1 | ||
|
|
fa1033db6f | ||
|
|
61e3edd2ac | ||
|
|
093c97ff91 | ||
|
|
6e64b175aa | ||
|
|
09dba4bc94 | ||
|
|
2e443ac5b7 | ||
|
|
59a8c88178 | ||
|
|
40eab03d84 | ||
|
|
e993bf59cf | ||
|
|
c6de5a2c8f | ||
|
|
51cc939d0c | ||
|
|
c857192e6d | ||
|
|
4591c2b181 | ||
|
|
7843a1b2ba | ||
|
|
649481cf01 | ||
|
|
c253bdfcbe | ||
|
|
1910808fd7 | ||
|
|
1d8cb9749e | ||
|
|
e3f9380fcd | ||
|
|
326c3f59b0 | ||
|
|
03f1c5a047 | ||
|
|
02122491c3 | ||
|
|
735f6f5686 | ||
|
|
ac033d75c0 | ||
|
|
e2185e773a | ||
|
|
d9ae417e01 | ||
|
|
e1d0948538 | ||
|
|
357ddf285a | ||
|
|
41859fc484 | ||
|
|
07275e71b0 | ||
|
|
f68521cb95 | ||
|
|
526610bdd2 | ||
|
|
973e3448ae | ||
|
|
9a3f28f6fc |
2
.github/FUNDING.yml
vendored
2
.github/FUNDING.yml
vendored
@@ -1,2 +0,0 @@
|
||||
|
||||
liberapay: dskoll
|
||||
7
.github/README.md
vendored
7
.github/README.md
vendored
@@ -1,7 +0,0 @@
|
||||
# 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
29
.github/workflows/github-action.yml
vendored
@@ -1,29 +0,0 @@
|
||||
# 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
10
.gitignore
vendored
@@ -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,11 +18,12 @@ pm_to_blib
|
||||
rem2html/Makefile
|
||||
rem2html/rem2html
|
||||
rem2html/rem2html.1
|
||||
rem2pdf/Makefile
|
||||
rem2pdf/Makefile.PL
|
||||
rem2pdf/Makefile.old
|
||||
rem2pdf/Makefile.top
|
||||
rem2pdf/bin/rem2pdf
|
||||
set-irc-topic
|
||||
scripts/tkremind
|
||||
src/*.tar.gz*
|
||||
src/Makefile
|
||||
src/config.h
|
||||
@@ -30,6 +31,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
|
||||
_cppcheck
|
||||
|
||||
@@ -3,7 +3,7 @@ THE REMIND COPYRIGHT
|
||||
1. REMIND refers to the entire set of files and documentation in the
|
||||
REMIND package.
|
||||
|
||||
2. REMIND is Copyright 1992-2024 Dianne Skoll, except where noted in
|
||||
2. REMIND is Copyright (C) 1992-2026 Dianne Skoll, except where noted in
|
||||
individual files.
|
||||
|
||||
3. DISTRIBUTION AND USE
|
||||
|
||||
60
Makefile
60
Makefile
@@ -11,6 +11,33 @@ all: src/Makefile
|
||||
@echo ""
|
||||
@cd src && $(MAKE) all LANGDEF=$(LANGDEF)
|
||||
@$(MAKE) -C rem2pdf -f Makefile.top
|
||||
|
||||
uninstall-script:
|
||||
@echo "" >&2
|
||||
@echo "*****************************" >&2
|
||||
@echo "* *" >&2
|
||||
@echo "* Creating Uninstall Script *" >&2
|
||||
@echo "* *" >&2
|
||||
@echo "*****************************" >&2
|
||||
@echo "" >&2
|
||||
|
||||
@echo "#!/bin/sh"
|
||||
@echo "echo 'This script will uninstall Remind'"
|
||||
@echo "echo 'Enter y to uninstall Remind or anything else to abort'"
|
||||
@echo "read ans"
|
||||
@echo 'if test "$$ans" != "y" ; then'
|
||||
@echo " echo 'NOT uninstalling Remind'"
|
||||
@echo " exit 0"
|
||||
@echo "fi"
|
||||
@echo "echo 'Uninstalling Remind...'"
|
||||
-@rm -rf `pwd`/.uninstall-dir > /dev/null 2>&1
|
||||
@mkdir `pwd`/.uninstall-dir >&2
|
||||
@$(MAKE) install DESTDIR=`pwd`/.uninstall-dir >&2
|
||||
@cd `pwd`/.uninstall-dir && find . -type f | while read x ; do x=`echo $$x | sed -e 's|^\./|/|'`; echo "rm -f $$x"; done;
|
||||
@echo "echo 'Done'"
|
||||
-@rm -rf `pwd`/.uninstall-dir > /dev/null 2>&1
|
||||
|
||||
|
||||
install:
|
||||
@echo ""
|
||||
@echo "**********************************"
|
||||
@@ -19,12 +46,11 @@ install:
|
||||
@echo "* *"
|
||||
@echo "**********************************"
|
||||
@echo ""
|
||||
@$(MAKE) -C src install
|
||||
@$(MAKE) -C rem2html install
|
||||
@$(MAKE) -C rem2pdf -f Makefile.top install INSTALL_BASE=$(INSTALL_BASE)
|
||||
@$(MAKE) -C src install DESTDIR=$(DESTDIR)
|
||||
@$(MAKE) -C rem2html install DESTDIR=$(DESTDIR)
|
||||
@$(MAKE) -C rem2pdf -f Makefile.top install INSTALL_BASE=$(INSTALL_BASE) DESTDIR=$(DESTDIR)
|
||||
clean:
|
||||
find . -name '*~' -exec rm {} \;
|
||||
-rm man/rem.1 man/rem2ps.1 man/remind.1 man/tkremind.1
|
||||
-find . -name '*~' -exec rm {} \;
|
||||
-$(MAKE) -C src clean
|
||||
-$(MAKE) -C rem2pdf clean
|
||||
|
||||
@@ -36,15 +62,27 @@ install-stripped:
|
||||
@echo "* *"
|
||||
@echo "**********************************"
|
||||
@echo ""
|
||||
@$(MAKE) -C src install-stripped
|
||||
@$(MAKE) -C rem2html install
|
||||
@$(MAKE) -C rem2pdf -f Makefile.top install INSTALL_BASE=$(INSTALL_BASE)
|
||||
@$(MAKE) -C src install-stripped DESTDIR=$(DESTDIR)
|
||||
@$(MAKE) -C rem2html install DESTDIR=$(DESTDIR)
|
||||
@$(MAKE) -C rem2pdf -f Makefile.top install INSTALL_BASE=$(INSTALL_BASE) DESTDIR=$(DESTDIR)
|
||||
|
||||
test:
|
||||
@$(MAKE) -C src -s test
|
||||
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
|
||||
|
||||
distclean: clean
|
||||
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 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 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
|
||||
|
||||
78
README
78
README
@@ -1,78 +0,0 @@
|
||||
REMIND
|
||||
|
||||
Remind is a full-featured calendar/alarm program. Copying policy is
|
||||
in the file "COPYRIGHT" in this directory.
|
||||
|
||||
Installation notes for various operating systems are in "docs". See
|
||||
the appropriate README file for installation on your system.
|
||||
|
||||
Manual pages are in "man".
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Quick UNIX installation instructions for the very impatient:
|
||||
|
||||
If you have Tcl/Tk (wish 4.1 or higher) installed and are running X Windows:
|
||||
--------------------------------------------------------------
|
||||
|
||||
1) Type: wish ./build.tk from this directory. Fill in the various
|
||||
options and hit "Build Remind"
|
||||
|
||||
2) Type: "make install" -- you may need to be root to do this.
|
||||
|
||||
If you do NOT have Tcl/Tk or are NOT running X Windows:
|
||||
-------------------------------------------------------
|
||||
|
||||
1) Edit the file "src/custom.h" according to your preferences.
|
||||
|
||||
2) Edit the file "src/lang.h" to choose a language.
|
||||
|
||||
3) Type: "./configure" (You can supply options; type "./configure --help"
|
||||
for details.)
|
||||
|
||||
4) Type: "make"
|
||||
|
||||
5) Type: "make install" -- you may need to be root to do this.
|
||||
|
||||
PREREQUISITES:
|
||||
--------------
|
||||
|
||||
Remind and rem2ps have no prerequisites beyond the standard C library and
|
||||
the standard math library.
|
||||
|
||||
Rem2HTML requires the JSON::MaybeXS Perl module.
|
||||
Rem2PDF requires the JSON::MaybeXS, Pango and Cairo Perl modules.
|
||||
|
||||
- On Debian-like systems, these prerequisites may be installed with:
|
||||
|
||||
apt install libjson-maybexs-perl libpango-perl libcairo-perl
|
||||
|
||||
- On RPM-based systems, you need perl-Pango, perl-Cairo and perl-JSON-MaybeXS
|
||||
|
||||
- On Gentoo, you need dev-perl/Pango, dev-perl/Cairo and dev-perl/JSON-MaybeXS.
|
||||
|
||||
- On Arch linux, you need pango-perl, cairo-perl and perl-json-maybexs
|
||||
|
||||
TkRemind requires Tcl/Tk and the tcllib library.
|
||||
|
||||
- On Debian-like systems, install with:
|
||||
|
||||
apt install tcl tk tcllib
|
||||
|
||||
- On RPM-based systems, you need tcl, tk and tcllib
|
||||
|
||||
- On Arch Linux, you need tk and tcllib. The latter is available at
|
||||
https://aur.archlinux.org/packages/tcllib
|
||||
|
||||
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 Nonto Font-related packages.
|
||||
|
||||
- On Debian-like systems, install with:
|
||||
|
||||
apt install fonts-noto-core fonts-noto-color-emoji \
|
||||
fonts-noto-extra fonts-noto-ui-core fonts-noto-ui-extra
|
||||
|
||||
==========================================================================
|
||||
Contact info: mailto:dianne@skoll.ca
|
||||
Home page: https://dianne.skoll.ca/projects/remind/
|
||||
103
README.md
Normal file
103
README.md
Normal file
@@ -0,0 +1,103 @@
|
||||
# REMIND
|
||||
|
||||
Remind is a full-featured calendar/alarm program. Copying policy is
|
||||
in the file "COPYRIGHT" included with the source; Remind is licensed under
|
||||
the GNU General Public License, Version 2.
|
||||
|
||||
## Prerequisites:
|
||||
|
||||
### Remind and Rem2PS
|
||||
|
||||
**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**
|
||||
requires the JSON::MaybeXS, Pango and Cairo Perl modules.
|
||||
|
||||
- On Debian-like systems, these prerequisites may be installed with:
|
||||
|
||||
`apt install libjson-maybexs-perl libpango-perl libcairo-perl`
|
||||
|
||||
- On RPM-based systems, you need `perl-Pango`, `perl-Cairo` and
|
||||
`perl-JSON-MaybeXS`
|
||||
|
||||
- On Gentoo, you need `dev-perl/Pango`, `dev-perl/Cairo` and
|
||||
`dev-perl/JSON-MaybeXS`.
|
||||
|
||||
- On Arch linux, you need `pango-perl`, `cairo-perl` and `perl-json-maybexs`
|
||||
|
||||
### TkRemind
|
||||
|
||||
**tkremind** requires Tcl/Tk and the tcllib library.
|
||||
|
||||
- On Debian-like systems, install with:
|
||||
|
||||
`apt install tcl tk tcllib`
|
||||
|
||||
- On RPM-based systems, you need `tcl`, `tk` and `tcllib`
|
||||
|
||||
- On Arch Linux, you need `tk` and `tcllib`. The latter is available at
|
||||
https://aur.archlinux.org/packages/tcllib
|
||||
|
||||
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.
|
||||
|
||||
- On Debian-like systems, install with:
|
||||
|
||||
`apt install fonts-noto-core fonts-noto-color-emoji fonts-noto-extra fonts-noto-ui-core fonts-noto-ui-extra`
|
||||
|
||||
## Installation
|
||||
|
||||
Assuming you have a normal C development environment installed, Remind
|
||||
can be installed with the usual:
|
||||
|
||||
`./configure && make && make test && sudo make install`
|
||||
|
||||
You can edit custom.h to configure some aspects of Remind. Or, if
|
||||
you have Tcl/Tk installed, you can use the graphical build tool to
|
||||
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. It is not yet settled whether, if you train an AI model on this
|
||||
source code, the resulting model, and/or any outputs it produces, are
|
||||
derivative works of the code. But if they are, and do not fall under
|
||||
"fair use" or equivalent in your jurisdiction, then as with any other
|
||||
derivative work you may only distribute them under the terms of the
|
||||
GNU General Public License, version 2.
|
||||
40
april-fools-announcements/2026-april-fool-announcement.txt
Normal file
40
april-fools-announcements/2026-april-fool-announcement.txt
Normal file
@@ -0,0 +1,40 @@
|
||||
Hi, all,
|
||||
|
||||
As you know, Remind has been around for a long time---over 36 years.
|
||||
It's written in C, and I think it's high time to rewrite it in a
|
||||
memory-safe language. After all, one CVE in 36 years is simply
|
||||
unacceptable.
|
||||
|
||||
I was looking at writing it in Rust, but decided that Rust isn't quite
|
||||
mature enough yet. So I decided to do it in FORTAN-77. I chose
|
||||
FORTRAN-77 over the more obvious choice of COBOL because I studied
|
||||
engineering and not business.
|
||||
|
||||
The rewrite will have the following implications:
|
||||
|
||||
o Remind will henceforth be known as REMIND.
|
||||
|
||||
o Sadly, I have to drop UTF-8 support. Your choices are ASCII or
|
||||
EBCDIC.
|
||||
|
||||
o All statements must begin in column 7. That means you might need to
|
||||
edit your existing scripts to add 6 spaces at the beginning of the
|
||||
line.
|
||||
|
||||
o Variables whose names begin with "I" through "N" can only hold INTs.
|
||||
|
||||
o I will be setting up a store on my web site to sell punched cards.
|
||||
(Yes; those will be needed to run REMIND.)
|
||||
|
||||
Now, I confess I haven't programmed in FORTRAN-77 in several decades,
|
||||
so I plan on using AI to assist me. After all, it has been trained on
|
||||
the mountains of open-source FORTRAN-77 code on the Internet.
|
||||
|
||||
I anticipate the rewrite will take about 9 years. You can use this
|
||||
reminder to alert yourself to when it's ready:
|
||||
|
||||
REM 1 APRIL 2035 MSG REMIND IN FORTRAN-77 READY. STOP.
|
||||
|
||||
Regards,
|
||||
|
||||
Dianne.
|
||||
56
build.tk
56
build.tk
@@ -8,7 +8,7 @@
|
||||
# A cheesy graphical front-end for building and installing REMIND.
|
||||
#
|
||||
# This file is part of REMIND.
|
||||
# Copyright (C) 1992-2018 Dianne Skoll
|
||||
# Copyright (C) 1992-2026 Dianne Skoll
|
||||
#
|
||||
#--------------------------------------------------------------
|
||||
|
||||
@@ -40,7 +40,6 @@ proc SetConfigDefaults {} {
|
||||
set Config(TIMESEP) ":"
|
||||
set Config(NORTHERN_HEMISPHERE) 1
|
||||
set Config(WESTERN_HEMISPHERE) 1
|
||||
set Config(LANGUAGE) "English"
|
||||
set Config(INST_DIR) "/usr/local/bin"
|
||||
set Config(MAN_DIR) "/usr/local/share/man"
|
||||
}
|
||||
@@ -242,32 +241,6 @@ proc CreateOptionsDialog { w } {
|
||||
|
||||
grid configure $w.timelabel -row 2 -column 0 -sticky e
|
||||
grid configure $w.time -row 2 -column 1 -sticky nsew
|
||||
|
||||
label $w.langlabel -text "Language: "
|
||||
menubutton $w.lang -text $Config(LANGUAGE) -indicatoron 1 -relief raised \
|
||||
-menu $w.lang.menu
|
||||
menu $w.lang.menu -tearoff 0
|
||||
foreach lang {
|
||||
"Brazilian Portuguese"
|
||||
"Danish"
|
||||
"Dutch"
|
||||
"English"
|
||||
"Finnish"
|
||||
"French"
|
||||
"German"
|
||||
"Italian"
|
||||
"Norwegian"
|
||||
"Polish"
|
||||
"Romanian"
|
||||
"Spanish"
|
||||
"Icelandic"
|
||||
} {
|
||||
$w.lang.menu add command -label $lang -command [list $w.lang configure -text $lang]
|
||||
}
|
||||
|
||||
grid configure $w.langlabel -row 3 -column 0 -sticky e
|
||||
grid configure $w.lang -row 3 -column 1 -sticky nsew
|
||||
|
||||
}
|
||||
|
||||
#***********************************************************************
|
||||
@@ -491,32 +464,16 @@ proc CreateCustomH {} {
|
||||
# %RETURNS:
|
||||
# Nothing
|
||||
# %DESCRIPTION:
|
||||
# Runs "make" with appropriate language definitions
|
||||
# Runs "make"
|
||||
#***********************************************************************
|
||||
proc CallMake {} {
|
||||
global Options
|
||||
set lang [$Options.lang cget -text]
|
||||
switch -- $lang {
|
||||
"German" { set lang GERMAN }
|
||||
"Dutch" { set lang DUTCH }
|
||||
"Finnish" { set lang FINNISH }
|
||||
"French" { set lang FRENCH }
|
||||
"Norwegian" { set lang NORWEGIAN }
|
||||
"Danish" { set lang DANISH }
|
||||
"Polish" { set lang POLISH }
|
||||
"Brazilian Portuguese" { set lang BRAZPORT }
|
||||
"Italian" { set lang ITALIAN }
|
||||
"Romanian" { set lang ROMANIAN }
|
||||
"Spanish" { set lang SPANISH }
|
||||
"Icelandic" { set lang ICELANDIC }
|
||||
default { set lang ENGLISH }
|
||||
}
|
||||
set nproc 0
|
||||
catch { set nproc [exec nproc] }
|
||||
if { $nproc != 0 } {
|
||||
RunCommand "make -j $nproc \"LANGDEF=-DLANG=$lang\""
|
||||
RunCommand "make -j $nproc"
|
||||
} else {
|
||||
RunCommand "make \"LANGDEF=-DLANG=$lang\""
|
||||
RunCommand "make"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -530,7 +487,7 @@ proc CallMake {} {
|
||||
# Michael McLennan, Bell Labs Innovations for Lucent Technologies
|
||||
# Addison-Wesley Professional Computing Series
|
||||
# ======================================================================
|
||||
# Copyright (c) 1996-1997 Lucent Technologies Inc. and Mark Harrison
|
||||
# Copyright (C) 1996-1997 Lucent Technologies Inc. and Mark Harrison
|
||||
# ======================================================================
|
||||
|
||||
option add *Tabnotebook.tabs.background #666666 widgetDefault
|
||||
@@ -644,7 +601,7 @@ proc tabnotebook_display {win name} {
|
||||
# Michael McLennan, Bell Labs Innovations for Lucent Technologies
|
||||
# Addison-Wesley Professional Computing Series
|
||||
# ======================================================================
|
||||
# Copyright (c) 1996-1997 Lucent Technologies Inc. and Mark Harrison
|
||||
# Copyright (C) 1996-1997 Lucent Technologies Inc. and Mark Harrison
|
||||
# ======================================================================
|
||||
|
||||
option add *Notebook.borderWidth 2 widgetDefault
|
||||
@@ -786,7 +743,6 @@ proc SetConfigFromRemind {} {
|
||||
QueryRemind $rem LOCATION {$Location}
|
||||
QueryRemind $rem DATESEP {$DateSep}
|
||||
QueryRemind $rem TIMESEP {$TimeSep}
|
||||
QueryRemind $rem LANGUAGE {language()}
|
||||
|
||||
set $Config(LAT_MIN) [expr abs($Config(LAT_MIN))]
|
||||
set $Config(LAT_SEC) [expr abs($Config(LAT_SEC))]
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
dnl Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_INIT(remind, 05.00.01, , , https://dianne.skoll.ca/projects/remind/)
|
||||
AC_INIT(remind, 06.02.05, , , https://dianne.skoll.ca/projects/remind/)
|
||||
AC_CONFIG_SRCDIR([src/queue.c])
|
||||
|
||||
cat <<'EOF'
|
||||
@@ -13,6 +13,7 @@ cat <<'EOF'
|
||||
|
||||
EOF
|
||||
|
||||
AC_LANG([C])
|
||||
AC_CONFIG_HEADERS([src/config.h])
|
||||
|
||||
AC_ARG_ENABLE(perl-build-artifacts,
|
||||
@@ -30,7 +31,8 @@ AC_PATH_PROG([PERL], [perl])
|
||||
|
||||
dnl Checks for libraries.
|
||||
AC_CHECK_LIB(m, sqrt)
|
||||
AC_CHECK_HEADERS_ONCE([sys/time.h stdint.h])
|
||||
AC_CHECK_LIB(readline, readline)
|
||||
AC_CHECK_HEADERS_ONCE([sys/time.h sys/termios.h stdint.h readline/readline.h readline/history.h])
|
||||
|
||||
dnl Integer sizes
|
||||
AC_CHECK_SIZEOF(unsigned int)
|
||||
@@ -42,25 +44,42 @@ AC_CHECK_HEADERS(strings.h sys/types.h glob.h wctype.h locale.h langinfo.h sys/i
|
||||
|
||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_STRUCT_TM
|
||||
U="`uname -s`"
|
||||
|
||||
if test "$GCC" = yes; then
|
||||
CFLAGS="$CFLAGS -Wall -Wextra -Wstrict-prototypes"
|
||||
# LTO fails on Solaris for some reason
|
||||
if test "$U" != "SunOS" -a "$GCC" = yes; then
|
||||
CFLAGS="$CFLAGS -Wall -Wextra -Wstrict-prototypes"
|
||||
# Check for link-time optimization support
|
||||
f=-flto=auto
|
||||
AC_MSG_CHECKING([whether $CC supports $f])
|
||||
if $CC -Werror -E $f - < /dev/null > /dev/null 2>&1 ; then
|
||||
AC_MSG_RESULT([yes])
|
||||
CFLAGS="$CFLAGS $f"
|
||||
f=-ffat-lto-objects
|
||||
AC_MSG_CHECKING([whether $CC supports $f])
|
||||
if $CC -Werror -E $f - < /dev/null > /dev/null 2>&1 ; then
|
||||
AC_MSG_RESULT([yes])
|
||||
CFLAGS="$CFLAGS $f"
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
OLDCFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS -flto=auto"
|
||||
AC_MSG_CHECKING([whether $CC supports -flto=auto])
|
||||
AC_LINK_IFELSE(
|
||||
[AC_LANG_PROGRAM(
|
||||
[[int x = 1;]],
|
||||
[[]])],
|
||||
[lto=yes],
|
||||
[lto=no]
|
||||
)
|
||||
AC_MSG_RESULT([$lto])
|
||||
if test "x$lto" != "xyes" ; then
|
||||
CFLAGS="$OLDCFLAGS"
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
AC_MSG_CHECKING([whether $CC supports -ffat-lto-object])
|
||||
OLDCFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS -Werror -ffat-lto-objects"
|
||||
AC_LINK_IFELSE(
|
||||
[AC_LANG_PROGRAM(
|
||||
[[int x = 1;]],
|
||||
[[]])],
|
||||
[lto=yes],
|
||||
[lto=no]
|
||||
)
|
||||
AC_MSG_RESULT([$lto])
|
||||
if test "x$lto" != "xyes" ; then
|
||||
CFLAGS="$OLDCFLAGS"
|
||||
else
|
||||
CFLAGS="$OLDCFLAGS -ffat-lto-objects"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -84,13 +103,29 @@ 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)
|
||||
|
||||
if test "$ac_cv_header_wctype_h" != "yes" ; then
|
||||
echo "*** Remind requires the <wctype.h> header"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
AC_CHECK_FUNCS(setenv unsetenv glob mbstowcs setlocale initgroups inotify_init1 readline)
|
||||
|
||||
if test "$ac_cv_func_mbstowcs" != "yes"; then
|
||||
echo "*** Remind requires the mbstowcs function"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
VERSION=$PACKAGE_VERSION
|
||||
CONFIG_CMD="$0$ac_configure_args_raw"
|
||||
CONFIG_CMD=`echo "$CONFIG_CMD" | sed -e 's/"/\\\\"/g'`
|
||||
AC_DEFINE_UNQUOTED([CONFIG_CMD], ["$CONFIG_CMD"], [Configuration command used to build Remind])
|
||||
AC_SUBST(CONFIG_CMD)
|
||||
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])
|
||||
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_OUTPUT
|
||||
chmod a+x rem2pdf/bin/rem2pdf
|
||||
chmod a+x scripts/tkremind
|
||||
3
contrib/ical2rem-0.8/GITHUB
Normal file
3
contrib/ical2rem-0.8/GITHUB
Normal file
@@ -0,0 +1,3 @@
|
||||
The upstream GitHub project for ical2rem is:
|
||||
|
||||
https://github.com/jbalcorn/ical2rem
|
||||
21
contrib/ical2rem-0.8/LICENSE
Normal file
21
contrib/ical2rem-0.8/LICENSE
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2005, 2007, 2019 Justin B. Alcorn
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
103
contrib/ical2rem-0.8/README.md
Normal file
103
contrib/ical2rem-0.8/README.md
Normal file
@@ -0,0 +1,103 @@
|
||||
# ical2rem
|
||||
The original iCal to Remind script, first released in 2005.
|
||||
|
||||
Reads iCal files and outputs remind-compatible files. Tested ONLY with
|
||||
calendar files created by Mozilla Calendar/Sunbird. Use at your own risk.
|
||||
|
||||
## License
|
||||
In 2005, this was released with the Gnu Public License V2. However, I am changing it to the MIT License, since that provides greater freedom to do with this code what you want.
|
||||
|
||||
Copyright (c) 2005, 2007, 2019 Justin B. Alcorn
|
||||
|
||||
## How I use Remind and Google Calendar together
|
||||
|
||||
- My family has a Google Email domain, and our email addresses all end in the same domain. We all use Google Calendars and I want to mail reminders to each of the family members containing both Google Calendar and .reminder information.
|
||||
- Under my ~/.rem/ directory each family member has a directory. Each directory contains a standard remind file called 'reminders' that at the very least has the line "INCLUDE /home/jalcorn/.rem/<username>/ical2rem" and flag files indicating whether they want Daily or Weekly reminders. My reminders files references my standard .reminders file, and I also have a flag so if I run a Test run I'll get it. There's actually a lot more files (I have a big family).
|
||||
````
|
||||
./rem
|
||||
./son1:
|
||||
drwxrwxr-x 2 jalcorn jalcorn 4096 Dec 12 14:02 .
|
||||
drwxr-xr-x 12 jalcorn jalcorn 4096 Dec 12 14:13 ..
|
||||
-rw-rw-r-- 1 jalcorn jalcorn 51 Mar 3 06:10 ical2rem
|
||||
lrwxrwxrwx 1 jalcorn jalcorn 33 Oct 27 2016 son1.ics -> /home/jalcorn/calendars/son1.ics
|
||||
-rw-rw-r-- 1 jalcorn jalcorn 976 Dec 12 14:02 reminders
|
||||
-rw-rw-r-- 1 jalcorn jalcorn 0 Oct 27 2016 Weekly
|
||||
|
||||
./justin:
|
||||
drwxrwxr-x 2 jalcorn jalcorn 4096 Feb 27 08:29 .
|
||||
drwxr-xr-x 12 jalcorn jalcorn 4096 Dec 12 14:13 ..
|
||||
lrwxrwxrwx 1 jalcorn jalcorn 32 Oct 27 2016 son1.ics -> /home/jalcorn/calendars/son1.ics
|
||||
-rw-rw-r-- 1 jalcorn jalcorn 0 Nov 7 2016 Daily
|
||||
lrwxrwxrwx 1 jalcorn jalcorn 34 Oct 27 2016 family.ics -> /home/jalcorn/calendars/family.ics
|
||||
-rw-rw-r-- 1 jalcorn jalcorn 37320 Mar 3 06:10 ical2rem
|
||||
lrwxrwxrwx 1 jalcorn jalcorn 34 Oct 27 2016 justin.ics -> /home/jalcorn/calendars/justin.ics
|
||||
lrwxrwxrwx 1 jalcorn jalcorn 24 Nov 7 2016 reminders -> /home/jalcorn/.reminders
|
||||
lrwxrwxrwx 1 jalcorn jalcorn 34 Oct 27 2016 vmd.ics -> /home/jalcorn/calendars/vmd.ics
|
||||
-rw-rw-r-- 1 jalcorn jalcorn 0 Oct 27 2016 Test
|
||||
-rw-rw-r-- 1 jalcorn jalcorn 0 Nov 7 2016 Weekly
|
||||
````
|
||||
- bin/getgooglecals.sh runs out of crontab and downloads whatever calendars I want. Note that we can also download organization calendars, I've included a public one here (Cleveland Heights Vocal Music Department calendar).
|
||||
- dailyreminders.sh is linked to weeklyreminders.sh and testreminders.sh so I can run it in different modes. The concatenate the various calendar outputs as a single remind file then send the reminders via email.
|
||||
### Example: .rem/son1/reminders file:
|
||||
````
|
||||
INCLUDE /home/jalcorn/.rem/defs.rem
|
||||
INCLUDE /home/jalcorn/.rem/float
|
||||
INCLUDE /home/jalcorn/.rem/son1/ical2rem
|
||||
fset _weeks() coerce("STRING", (trigdate()-today())/7) + plural((trigdate()-today())/7, " week")
|
||||
FSET _sfun(x) choose(x, -60, 30, 5, 0)
|
||||
FSET oldfloat(y,m,d) trigger(MAX(realtoday(), date(y,m,d)))
|
||||
FSET due(y,m,d) "(" + (date(y,m,d)-trigdate()) + ")"
|
||||
SET fullmoon moondate(2)
|
||||
REM [trigger(realtoday())] SPECIAL SHADE 145 70 100 %
|
||||
REM [float(2019,4,15,105)] MSG File tax return [due(2017,4,15)]%
|
||||
REM PRIORITY 9999 MSG %"%"%
|
||||
INCLUDE /home/jalcorn/.rem/bdays
|
||||
SET $LongDeg 81
|
||||
SET $LongMin 11
|
||||
SET $LongSec 11
|
||||
SET $LatDeg 41
|
||||
SET $LatMin 11
|
||||
SET $LatSec 11
|
||||
REM [trigger(moondate(2))] +1 MSG %"Full Moon%" %b%
|
||||
fset _srtd() coerce("STRING", _no_lz(_am_pm(sunrise(today()))))
|
||||
fset _sstd() coerce("STRING", _no_lz(_am_pm(sunset(today()))))
|
||||
MSG Sun is up today from [_srtd()] to [_sstd()].%"%"%
|
||||
````
|
||||
## Revision History
|
||||
### Version 0.7 2024-09-04
|
||||
- ISSUE 8: New version of remind complains if _sfun isn't defined. Output a header
|
||||
to define a function that does nothing if the function doesn't exist.
|
||||
### Version 0.6 2019-03-01
|
||||
- Publish on GitHub and change license to MIT License
|
||||
- Add supporting files and explanation of how I use it
|
||||
### version 0.5.2 2007-03-23
|
||||
- BUG: leadtime for recurring events had a max of 4 instead of DEFAULT_LEAD_TIME
|
||||
- remove project-lead-time, since Category was a non-standard attribute
|
||||
- NOTE: There is a bug in iCal::Parser v1.14 that causes multiple calendars to
|
||||
fail if a calendar with recurring events is followed by a calendar with no
|
||||
recurring events. This has been reported to the iCal::Parser author.
|
||||
### version 0.5.1 2007-03-21
|
||||
- BUG: Handle multiple calendars on STDIN
|
||||
- add --heading option for priority on section headers
|
||||
### version 0.5 2007-03-21
|
||||
- Add more help options
|
||||
- --project-lead-time option
|
||||
- Supress printing of heading if there are no todos to print
|
||||
### version 0.4
|
||||
- Version 0.4 changes all written or inspired by, and thanks to Mark Stosberg
|
||||
- Change to GetOptions
|
||||
- Change to pipe
|
||||
- Add --label, --help options
|
||||
- Add Help Text
|
||||
- Change to subroutines
|
||||
- Efficiency and Cleanup
|
||||
### version 0.3
|
||||
- Convert to GPL (Thanks to Mark Stosberg)
|
||||
- Add usage
|
||||
### version 0.2
|
||||
- add command line switches
|
||||
- add debug code
|
||||
- add SCHED _sfun keyword
|
||||
- fix typos
|
||||
### version 0.1 - ALPHA CODE.
|
||||
|
||||
82
contrib/ical2rem-0.8/cal_futureonly.pl
Normal file
82
contrib/ical2rem-0.8/cal_futureonly.pl
Normal file
@@ -0,0 +1,82 @@
|
||||
#!/usr/bin/perl -w
|
||||
#
|
||||
# cal_futureonly.pl -
|
||||
# Reads iCal files and outputs events between 1 month ago and 1 year from now.
|
||||
# Copyright (c) 2005, 2007, 2019 Justin B. Alcorn
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
cal_futureonly.pl --file=filname.ics > output.ics
|
||||
|
||||
--help Usage
|
||||
--man Complete man page
|
||||
--infile (REQUIRED) name of input calendar file
|
||||
--file (REQUIRED) name of output calendar file
|
||||
|
||||
Expects an ICAL stream on STDIN. Converts it to the format
|
||||
used by the C<remind> script and prints it to STDOUT.
|
||||
|
||||
=head2 --infile
|
||||
|
||||
Input file
|
||||
|
||||
=head2 --file
|
||||
|
||||
Output File
|
||||
|
||||
=cut
|
||||
|
||||
use strict;
|
||||
use Data::ICal;
|
||||
use Data::ICal::Entry;
|
||||
use DateTime::Span;
|
||||
use Data::ICal::DateTime;
|
||||
use DateTime;
|
||||
use Getopt::Long 2.24 qw':config auto_help';
|
||||
use Pod::Usage;
|
||||
use Data::Dumper;
|
||||
use vars '$VERSION';
|
||||
$VERSION = "0.1";
|
||||
|
||||
my $help;
|
||||
my $man;
|
||||
my $infile;
|
||||
my $file;
|
||||
my $debug = 0;
|
||||
|
||||
GetOptions (
|
||||
"help|?" => \$help,
|
||||
"man" => \$man,
|
||||
"debug" => \$debug,
|
||||
"infile=s" => \$infile,
|
||||
"file=s" => \$file
|
||||
);
|
||||
pod2usage(1) if $help;
|
||||
pod2usage(1) if (! $file);
|
||||
pod2usage(-verbose => 2) if $man;
|
||||
|
||||
my $limit = DateTime->now();
|
||||
$limit->subtract( months => 1);
|
||||
my $endlimit = DateTime->now()->add(years =>1);
|
||||
print STDERR "including events from: ",$limit->ymd," to: ".$endlimit->ymd,"\n" if $debug;
|
||||
my $span = DateTime::Span->from_datetimes( start => $limit, end => $endlimit );
|
||||
print STDERR "Parsing $infile\n" if $debug;
|
||||
my $cal = Data::ICal->new(filename => $infile);
|
||||
if (! $cal) {
|
||||
die "Died Trying to read $infile :".$cal->error_message;
|
||||
}
|
||||
#my $archive = Data::ICal->new(filename => 'archive.ics');
|
||||
print "Output = $file\n" if $debug;
|
||||
my $new = Data::ICal->new();
|
||||
if (! $new) {
|
||||
die $new->error_message;
|
||||
}
|
||||
|
||||
my @events = $cal->events($span);
|
||||
$new->add_entries(@events);
|
||||
|
||||
open(NEW, ">$file");
|
||||
print NEW $new->as_string;
|
||||
close NEW;
|
||||
exit 0;
|
||||
#:vim set ft=perl ts=4 sts=4 expandtab :
|
||||
45
contrib/ical2rem-0.8/dailyreminders.sh
Normal file
45
contrib/ical2rem-0.8/dailyreminders.sh
Normal file
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
r=`basename $0`
|
||||
|
||||
if [ $r == 'weeklyreminders.sh' ];
|
||||
then
|
||||
t=14;
|
||||
w=Weekly;
|
||||
elif [ $r == 'dailyreminders.sh' ];
|
||||
then
|
||||
t=3;
|
||||
w=Daily;
|
||||
else
|
||||
t=5
|
||||
w=Test;
|
||||
fi
|
||||
|
||||
cd .rem
|
||||
for d in * ;
|
||||
do
|
||||
if [ "$( ls -A $d/$w 2>/dev/null )" ];
|
||||
then
|
||||
echo "Sending a $w reminder to $d"
|
||||
ft=/tmp/$d-t-$$.txt
|
||||
f=/tmp/$d-$$.txt
|
||||
echo "Reminders for next $t days:" >> $f
|
||||
cat /dev/null > $d/ical2rem
|
||||
for c in $d/*.ics
|
||||
do
|
||||
calname=`basename $c .ics | tr a-z A-Z`
|
||||
cat $c 2>/dev/null | sed -e "s/^SUMMARY:/SUMMARY: {${calname}} /" \
|
||||
| sed -e 's/DT\([A-Z]*\);TZID=UTC:\([0-9T]*\)/DT\1:\2Z/' >> $ft
|
||||
done
|
||||
cat $ft | ~/bin/ical2rem.pl --label "Online Calendar" --heading "PRIORITY 9999" --lead-time $t >> $d/ical2rem
|
||||
if [ -e $d/reminders ];then r="${d}/reminders"; else r="${d}/ical2rem";fi
|
||||
/usr/bin/remind -q -iplain=1 $r >> $f
|
||||
echo "
|
||||
All calendars can be accessed by logging into https://calendar.google.com/ as $d@jalcorn.net
|
||||
" >> $f
|
||||
cat $f | mail -s "$w Reminders for $d" $d@jalcorn.net;
|
||||
cat $f
|
||||
rm $f
|
||||
rm $ft
|
||||
fi;
|
||||
done
|
||||
21
contrib/ical2rem-0.8/getgooglecals.sh
Normal file
21
contrib/ical2rem-0.8/getgooglecals.sh
Normal file
@@ -0,0 +1,21 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Get google calendars, fix issues caused by changes in Google calendars, and remove all past events.
|
||||
#
|
||||
# Obviously, I've removed the private hashes from private calendars.
|
||||
#
|
||||
cd ~/calendars
|
||||
wget -q -O full/justin.ics --no-check-certificate https://www.google.com/calendar/ical/jbalcorn\%40gmail.com/private-aaaaaaaaaaaaaaaaaaaaaaaaaa/basic.ics
|
||||
wget -q -O full/family.ics --no-check-certificate https://www.google.com/calendar/ical/jalcorn.net_aaaaaaaaaaaaaaaaaaaaaaaaaa\%40group.calendar.google.com/private-6c42a79dec0b3b3bb7b9b0ebf9776bc1/basic.ics
|
||||
wget -q -O full/son1.ics --no-check-certificate https://www.google.com/calendar/ical/son1\%40jalcorn.net/private-aaaaaaaaaaaaaaaaaaaaaaaaaa/basic.ics
|
||||
wget -q -O full/vmd.ics --no-check-certificate https://calendar.google.com/calendar/ical/chuh.org_0pmkefjkiqc4snoel7occlslh8%40group.calendar.google.com/public/basic.ics
|
||||
|
||||
for i in full/*.ics;do
|
||||
cat $i 2>/dev/null | sed -e 's/DT\([A-Z]*\);TZID=UTC:\([0-9T]*\)/DT\1:\2Z/' > /tmp/temp.ics
|
||||
cp /tmp/temp.ics $i
|
||||
done
|
||||
|
||||
~/bin/cal_futureonly.pl --infile=full/justin.ics --file=justin.ics
|
||||
~/bin/cal_futureonly.pl --infile=full/family.ics --file=family.ics
|
||||
~/bin/cal_futureonly.pl --infile=full/son1.ics --file=son1.ics
|
||||
~/bin/cal_futureonly.pl --infile=full/vmd.ics --file=vmd.ics
|
||||
396
contrib/ical2rem-0.8/ical2rem.pl
Executable file
396
contrib/ical2rem-0.8/ical2rem.pl
Executable file
@@ -0,0 +1,396 @@
|
||||
#!/usr/bin/perl -w
|
||||
#
|
||||
# ical2rem.pl -
|
||||
# Reads iCal files and outputs remind-compatible files. Tested ONLY with
|
||||
# calendar files created by Mozilla Calendar/Sunbird. Use at your own risk.
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2005, 2007, 2019 Justin B. Alcorn
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in all
|
||||
# copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
#
|
||||
# version 0.8 2024-10-16
|
||||
# - Issue 9. Remove extra day notation on all day events.
|
||||
# version 0.7.1 2024-09-19
|
||||
# - Made sure license statements were consistent
|
||||
# version 0.7 2024-09-04
|
||||
# - Added dummy _sfun to resolve Issue #8
|
||||
# version 0.6 2019-03-01
|
||||
# - Updates to put on GitHub
|
||||
# version 0.5.2 2007-03-23
|
||||
# - BUG: leadtime for recurring events had a max of 4 instead of DEFAULT_LEAD_TIME
|
||||
# - remove project-lead-time, since Category was a non-standard attribute
|
||||
# - NOTE: There is a bug in iCal::Parser v1.14 that causes multiple calendars to
|
||||
# fail if a calendar with recurring events is followed by a calendar with no
|
||||
# recurring events. This has been reported to the iCal::Parser author.
|
||||
# version 0.5.1 2007-03-21
|
||||
# - BUG: Handle multiple calendars on STDIN
|
||||
# - add --heading option for priority on section headers
|
||||
# version 0.5 2007-03-21
|
||||
# - Add more help options
|
||||
# - --project-lead-time option
|
||||
# - Supress printing of heading if there are no todos to print
|
||||
# version 0.4
|
||||
# - Version 0.4 changes all written or inspired by, and thanks to Mark Stosberg
|
||||
# - Change to GetOptions
|
||||
# - Change to pipe
|
||||
# - Add --label, --help options
|
||||
# - Add Help Text
|
||||
# - Change to subroutines
|
||||
# - Efficiency and Cleanup
|
||||
# version 0.3
|
||||
# - Convert to GPL (Thanks to Mark Stosberg)
|
||||
# - Add usage
|
||||
# version 0.2
|
||||
# - add command line switches
|
||||
# - add debug code
|
||||
# - add SCHED _sfun keyword
|
||||
# - fix typos
|
||||
# version 0.1 - ALPHA CODE.
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
cat /path/to/file*.ics | ical2rem.pl > ~/.ical2rem
|
||||
|
||||
All options have reasonable defaults:
|
||||
--label Calendar name (Default: Calendar)
|
||||
--start Start of time period to parse (parsed by str2time)
|
||||
--end End of time period to parse
|
||||
--lead-time Advance days to start reminders (Default: 3)
|
||||
--todos, --no-todos Process Todos? (Default: Yes)
|
||||
--iso8601 Use YYYY-MM-DD date format
|
||||
--locations, --no-locations Include location? (Default: Yes)
|
||||
--end-times, --no-end-times Include event end times in reminder text
|
||||
(Default: No)
|
||||
--heading Define a priority for static entries
|
||||
--help Usage
|
||||
--debug Enable debug output
|
||||
--man Complete man page
|
||||
|
||||
Expects an ICAL stream on STDIN. Converts it to the format
|
||||
used by the C<remind> script and prints it to STDOUT.
|
||||
|
||||
=head2 --label
|
||||
|
||||
ical2rem.pl --label "Bob's Calendar"
|
||||
|
||||
The syntax generated includes a label for the calendar parsed.
|
||||
By default this is "Calendar". You can customize this with
|
||||
the "--label" option.
|
||||
|
||||
=head2 --iso8601
|
||||
|
||||
Use YYYY-MM-DD date format in output instead of Mmm DD YYYY
|
||||
|
||||
=head2 --locations, --no-locations
|
||||
|
||||
Whether or not to include locations in events
|
||||
|
||||
=head2 --lead-time
|
||||
|
||||
ical2rem.pl --lead-time 3
|
||||
|
||||
How may days in advance to start getting reminders about the events. Defaults to 3.
|
||||
|
||||
=head2 --no-todos
|
||||
|
||||
ical2rem.pl --no-todos
|
||||
|
||||
If you don't care about the ToDos the calendar, this will surpress
|
||||
printing of the ToDo heading, as well as skipping ToDo processing.
|
||||
|
||||
=head2 --heading
|
||||
|
||||
ical2rem.pl --heading "PRIORITY 9999"
|
||||
|
||||
Set an option on static messages output. Using priorities can made the static messages look different from
|
||||
the calendar entries. See the file defs.rem from the remind distribution for more information.
|
||||
|
||||
=cut
|
||||
|
||||
use strict;
|
||||
use iCal::Parser;
|
||||
use Date::Parse;
|
||||
use DateTime;
|
||||
use Getopt::Long 2.24 qw':config auto_help';
|
||||
use Pod::Usage;
|
||||
use Data::Dumper;
|
||||
use vars '$VERSION';
|
||||
$VERSION = "0.5.2";
|
||||
|
||||
# Declare how many days in advance to remind
|
||||
my $DEFAULT_LEAD_TIME = 3;
|
||||
my $PROCESS_TODOS = 1;
|
||||
my $HEADING = "";
|
||||
my $help;
|
||||
my $debug;
|
||||
my $man;
|
||||
my $iso8601;
|
||||
my $do_location = 1;
|
||||
my $do_end_times;
|
||||
my $start;
|
||||
my $end;
|
||||
|
||||
my $label = 'Calendar';
|
||||
GetOptions (
|
||||
"label=s" => \$label,
|
||||
"start=s" => \$start,
|
||||
"end=s" => \$end,
|
||||
"lead-time=i" => \$DEFAULT_LEAD_TIME,
|
||||
"todos!" => \$PROCESS_TODOS,
|
||||
"iso8601!" => \$iso8601,
|
||||
"locations!" => \$do_location,
|
||||
"end-times!" => \$do_end_times,
|
||||
"heading=s" => \$HEADING,
|
||||
"help|?" => \$help,
|
||||
"debug" => \$debug,
|
||||
"man" => \$man
|
||||
) or pod2usage(1);
|
||||
pod2usage(1) if $help;
|
||||
pod2usage(-verbose => 2) if $man;
|
||||
|
||||
my $month = ['None','Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
|
||||
|
||||
my @calendars;
|
||||
my $in;
|
||||
|
||||
while (<>) {
|
||||
$in .= $_;
|
||||
if (/END:VCALENDAR/) {
|
||||
push(@calendars,$in);
|
||||
$in = "";
|
||||
}
|
||||
}
|
||||
print STDERR "Read all calendars\n" if $debug;
|
||||
my(%parser_opts) = ("debug" => $debug);
|
||||
if ($start) {
|
||||
my $t = str2time($start);
|
||||
die "Invalid time $start\n" if (! $t);
|
||||
$parser_opts{'start'} = DateTime->from_epoch(epoch => $t);
|
||||
}
|
||||
if ($end) {
|
||||
my $t = str2time($end);
|
||||
die "Invalid time $end\n" if (! $t);
|
||||
$parser_opts{'end'} = DateTime->from_epoch(epoch => $t);
|
||||
}
|
||||
print STDERR "About to parse calendars\n" if $debug;
|
||||
my $parser = iCal::Parser->new(%parser_opts);
|
||||
my $hash = $parser->parse_strings(@calendars);
|
||||
print STDERR "Calendars parsed\n" if $debug;
|
||||
|
||||
##############################################################
|
||||
#
|
||||
# Subroutines
|
||||
#
|
||||
#############################################################
|
||||
#
|
||||
# _process_todos()
|
||||
# expects 'todos' hashref from iCal::Parser is input
|
||||
# returns String to output
|
||||
sub _process_todos {
|
||||
my $todos = shift;
|
||||
|
||||
my ($todo, @newtodos, $leadtime);
|
||||
my $output = "";
|
||||
|
||||
$output .= 'REM '.$HEADING.' MSG '.$label.' ToDos:%"%"%'."\n";
|
||||
|
||||
# For sorting, make sure everything's got something
|
||||
# To sort on.
|
||||
my $now = DateTime->now;
|
||||
for $todo (@{$todos}) {
|
||||
# remove completed items
|
||||
if ($todo->{'STATUS'} && $todo->{'STATUS'} eq 'COMPLETED') {
|
||||
next;
|
||||
} elsif ($todo->{'DUE'}) {
|
||||
# All we need is a due date, everything else is sugar
|
||||
$todo->{'SORT'} = $todo->{'DUE'}->clone;
|
||||
} elsif ($todo->{'DTSTART'}) {
|
||||
# for sorting, sort on start date if there's no due date
|
||||
$todo->{'SORT'} = $todo->{'DTSTART'}->clone;
|
||||
} else {
|
||||
# if there's no due or start date, just make it now.
|
||||
$todo->{'SORT'} = $now;
|
||||
}
|
||||
push(@newtodos,$todo);
|
||||
}
|
||||
if (! (scalar @newtodos)) {
|
||||
return "";
|
||||
}
|
||||
# Now sort on the new Due dates and print them out.
|
||||
for $todo (sort { DateTime->compare($a->{'SORT'}, $b->{'SORT'}) } @newtodos) {
|
||||
my $due = $todo->{'SORT'}->clone();
|
||||
my $priority = "";
|
||||
if (defined($todo->{'PRIORITY'})) {
|
||||
if ($todo->{'PRIORITY'} == 1) {
|
||||
$priority = "PRIORITY 1000";
|
||||
} elsif ($todo->{'PRIORITY'} == 3) {
|
||||
$priority = "PRIORITY 7500";
|
||||
}
|
||||
}
|
||||
if (defined($todo->{'DTSTART'}) && defined($todo->{'DUE'})) {
|
||||
# Lead time is duration of task + lead time
|
||||
my $diff = ($todo->{'DUE'}->delta_days($todo->{'DTSTART'})->days())+$DEFAULT_LEAD_TIME;
|
||||
$leadtime = "+".$diff;
|
||||
} else {
|
||||
$leadtime = "+".$DEFAULT_LEAD_TIME;
|
||||
}
|
||||
$output .= "REM ".$due->month_abbr." ".$due->day." ".$due->year." $leadtime $priority MSG \%a $todo->{'SUMMARY'}\%\"\%\"\%\n";
|
||||
}
|
||||
$output .= 'REM '.$HEADING.' MSG %"%"%'."\n";
|
||||
return $output;
|
||||
}
|
||||
|
||||
|
||||
#######################################################################
|
||||
#
|
||||
# Main Program
|
||||
#
|
||||
######################################################################
|
||||
|
||||
# Issue 8 https://github.com/jbalcorn/ical2rem/issues/8
|
||||
# Make sure there is a _sfun function declared in the reminder file. We'll just make it do nothing here.
|
||||
print 'IF args("_sfun") < 1
|
||||
FSET _sfun(x) choose(x,0)
|
||||
ENDIF
|
||||
';
|
||||
|
||||
print _process_todos($hash->{'todos'}) if $PROCESS_TODOS;
|
||||
|
||||
my ($leadtime, $yearkey, $monkey, $daykey,$uid,%eventsbyuid);
|
||||
print 'REM '.$HEADING.' MSG '.$label.' Events:%"%"%'."\n";
|
||||
my $events = $hash->{'events'};
|
||||
foreach $yearkey (sort keys %{$events} ) {
|
||||
my $yearevents = $events->{$yearkey};
|
||||
foreach $monkey (sort {$a <=> $b} keys %{$yearevents}){
|
||||
my $monevents = $yearevents->{$monkey};
|
||||
foreach $daykey (sort {$a <=> $b} keys %{$monevents} ) {
|
||||
my $dayevents = $monevents->{$daykey};
|
||||
foreach $uid (sort {
|
||||
DateTime->compare($dayevents->{$a}->{'DTSTART'}, $dayevents->{$b}->{'DTSTART'})
|
||||
} keys %{$dayevents}) {
|
||||
my $event = $dayevents->{$uid};
|
||||
if ($eventsbyuid{$uid}) {
|
||||
my $curreventday = $event->{'DTSTART'}->clone;
|
||||
$curreventday->truncate( to => 'day' );
|
||||
$eventsbyuid{$uid}{$curreventday->epoch()} =1;
|
||||
for (my $i = 0;$i < $DEFAULT_LEAD_TIME && !defined($event->{'LEADTIME'});$i++) {
|
||||
if ($eventsbyuid{$uid}{$curreventday->subtract( days => $i+1 )->epoch() }) {
|
||||
$event->{'LEADTIME'} = $i;
|
||||
}
|
||||
}
|
||||
# Issue 9. Multi-day events have extra day with zero time. Mark this as the date not needed in reminders file so we can skip later
|
||||
# Repeating multi-day events have the same uid so we need to mark each one.
|
||||
if ($event->{'DTSTART'} eq $event->{'DTEND'} and $event->{'DTEND'}->hour eq 0 and $event->{'DTEND'}->minute eq 0 and $event->{'DTEND'}->second eq 0) {
|
||||
$eventsbyuid{$uid}{$event->{'DTSTART'}->ymd} = 'rm';
|
||||
}
|
||||
} else {
|
||||
$eventsbyuid{$uid} = $event;
|
||||
my $curreventday = $event->{'DTSTART'}->clone;
|
||||
$curreventday->truncate( to => 'day' );
|
||||
$eventsbyuid{$uid}{$curreventday->epoch()} =1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach $yearkey (sort keys %{$events} ) {
|
||||
my $yearevents = $events->{$yearkey};
|
||||
foreach $monkey (sort {$a <=> $b} keys %{$yearevents}){
|
||||
my $monevents = $yearevents->{$monkey};
|
||||
foreach $daykey (sort {$a <=> $b} keys %{$monevents} ) {
|
||||
my $dayevents = $monevents->{$daykey};
|
||||
foreach $uid (sort {
|
||||
DateTime->compare($dayevents->{$a}->{'DTSTART'}, $dayevents->{$b}->{'DTSTART'})
|
||||
} keys %{$dayevents}) {
|
||||
my $event = $dayevents->{$uid};
|
||||
if (exists($event->{'LEADTIME'})) {
|
||||
$leadtime = "+".$event->{'LEADTIME'};
|
||||
} else {
|
||||
$leadtime = "+".$DEFAULT_LEAD_TIME;
|
||||
}
|
||||
my $start = $event->{'DTSTART'};
|
||||
my $end = $event->{'DTEND'};
|
||||
my $duration = "";
|
||||
# Issue 9. All Day events create an event that has zero length and DTSTART and DTEND at 00:00 on last day. Marked while handling multi-day events. Ignore these
|
||||
if ($start eq $end and $eventsbyuid{$uid}{$start->ymd} and $eventsbyuid{$uid}{$start->ymd} eq 'rm') {
|
||||
next;
|
||||
}
|
||||
if ($end and ($start->hour or $start->minute or $end->hour or $end->minute)) {
|
||||
# We need both an HH:MM version of the delta, to put in the
|
||||
# DURATION specifier, and a human-readable version of the
|
||||
# delta, to put in the message if the user requested it.
|
||||
my $seconds = $end->epoch - $start->epoch;
|
||||
my $minutes = int($seconds / 60);
|
||||
my $hours = int($minutes / 60);
|
||||
$minutes -= $hours * 60;
|
||||
$duration = sprintf("DURATION %d:%02d ", $hours, $minutes);
|
||||
}
|
||||
print "REM ";
|
||||
if ($iso8601) {
|
||||
print $start->strftime("%F ");
|
||||
} else {
|
||||
print $start->month_abbr." ".$start->day." ".$start->year." ";
|
||||
}
|
||||
print "$leadtime ";
|
||||
if ($duration or $start->hour > 0 or $start->minute > 0) {
|
||||
print "AT ";
|
||||
print $start->strftime("%H:%M");
|
||||
print " SCHED _sfun ${duration}MSG %a %2 ";
|
||||
} else {
|
||||
print "MSG %a ";
|
||||
}
|
||||
print "%\"", "e($event->{'SUMMARY'});
|
||||
print(" at ", "e($event->{'LOCATION'}))
|
||||
if ($do_location and $event->{'LOCATION'});
|
||||
print "\%\"";
|
||||
if ($do_end_times and ($start->hour or $start->minute or
|
||||
$end->hour or $end->minute)) {
|
||||
my $start_date = $start->strftime("%F");
|
||||
my $start_time = $start->strftime("%k:%M");
|
||||
my $end_date = $end->strftime("%F");
|
||||
my $end_time = $end->strftime("%k:%M");
|
||||
# We don't want leading whitespace; some strftime's support
|
||||
# disabling the pdding in the format string, but not all,
|
||||
# so for maximum portability we do it ourselves.
|
||||
$start_time =~ s/^\s+//;
|
||||
$end_time =~ s/^\s+//;
|
||||
my(@pieces);
|
||||
if ($start_date ne $end_date) {
|
||||
push(@pieces, $end_date);
|
||||
}
|
||||
if ($start_time ne $end_time) {
|
||||
push(@pieces, $end_time);
|
||||
}
|
||||
print " (-", join(" ", @pieces), ")";
|
||||
}
|
||||
print "%\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sub quote {
|
||||
local($_) = @_;
|
||||
s/\[/["["]/g;
|
||||
return $_;
|
||||
}
|
||||
|
||||
exit 0;
|
||||
#:vim set ft=perl ts=4 sts=4 tabstop=4 expandtab :
|
||||
@@ -1,279 +0,0 @@
|
||||
#!/usr/bin/perl -w
|
||||
#
|
||||
# ical2rem.pl -
|
||||
# Reads iCal files and outputs remind-compatible files. Tested ONLY with
|
||||
# calendar files created by Mozilla Calendar/Sunbird. Use at your own risk.
|
||||
# Copyright (c) 2005, 2007, Justin B. Alcorn
|
||||
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
#
|
||||
#
|
||||
# version 0.5.2 2007-03-23
|
||||
# - BUG: leadtime for recurring events had a max of 4 instead of DEFAULT_LEAD_TIME
|
||||
# - remove project-lead-time, since Category was a non-standard attribute
|
||||
# - NOTE: There is a bug in iCal::Parser v1.14 that causes multiple calendars to
|
||||
# fail if a calendar with recurring events is followed by a calendar with no
|
||||
# recurring events. This has been reported to the iCal::Parser author.
|
||||
# version 0.5.1 2007-03-21
|
||||
# - BUG: Handle multiple calendars on STDIN
|
||||
# - add --heading option for priority on section headers
|
||||
# version 0.5 2007-03-21
|
||||
# - Add more help options
|
||||
# - --project-lead-time option
|
||||
# - Suppress printing of heading if there are no todos to print
|
||||
# version 0.4
|
||||
# - Version 0.4 changes all written or inspired by, and thanks to Mark Stosberg
|
||||
# - Change to GetOptions
|
||||
# - Change to pipe
|
||||
# - Add --label, --help options
|
||||
# - Add Help Text
|
||||
# - Change to subroutines
|
||||
# - Efficiency and Cleanup
|
||||
# version 0.3
|
||||
# - Convert to GPL (Thanks to Mark Stosberg)
|
||||
# - Add usage
|
||||
# version 0.2
|
||||
# - add command line switches
|
||||
# - add debug code
|
||||
# - add SCHED _sfun keyword
|
||||
# - fix typos
|
||||
# version 0.1 - ALPHA CODE.
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
cat /path/to/file*.ics | ical2rem.pl > ~/.ical2rem
|
||||
|
||||
All options have reasonable defaults:
|
||||
--label Calendar name (Default: Calendar)
|
||||
--lead-time Advance days to start reminders (Default: 3)
|
||||
--todos, --no-todos Process Todos? (Default: Yes)
|
||||
--heading Define a priority for static entries
|
||||
--help Usage
|
||||
--man Complete man page
|
||||
|
||||
Expects an ICAL stream on STDIN. Converts it to the format
|
||||
used by the C<remind> script and prints it to STDOUT.
|
||||
|
||||
=head2 --label
|
||||
|
||||
ical2rem.pl --label "Bob's Calendar"
|
||||
|
||||
The syntax generated includes a label for the calendar parsed.
|
||||
By default this is "Calendar". You can customize this with
|
||||
the "--label" option.
|
||||
|
||||
=head2 --lead-time
|
||||
|
||||
ical2rem.pl --lead-time 3
|
||||
|
||||
How may days in advance to start getting reminders about the events. Defaults to 3.
|
||||
|
||||
=head2 --no-todos
|
||||
|
||||
ical2rem.pl --no-todos
|
||||
|
||||
If you don't care about the ToDos the calendar, this will suppress
|
||||
printing of the ToDo heading, as well as skipping ToDo processing.
|
||||
|
||||
=head2 --heading
|
||||
|
||||
ical2rem.pl --heading "PRIORITY 9999"
|
||||
|
||||
Set an option on static messages output. Using priorities can made the static messages look different from
|
||||
the calendar entries. See the file defs.rem from the remind distribution for more information.
|
||||
|
||||
=cut
|
||||
|
||||
use strict;
|
||||
use iCal::Parser;
|
||||
use DateTime;
|
||||
use Getopt::Long 2.24 qw':config auto_help';
|
||||
use Pod::Usage;
|
||||
use Data::Dumper;
|
||||
use vars '$VERSION';
|
||||
$VERSION = "0.5.2";
|
||||
|
||||
# Declare how many days in advance to remind
|
||||
my $DEFAULT_LEAD_TIME = 3;
|
||||
my $PROCESS_TODOS = 1;
|
||||
my $HEADING = "";
|
||||
my $help;
|
||||
my $man;
|
||||
|
||||
my $label = 'Calendar';
|
||||
GetOptions (
|
||||
"label=s" => \$label,
|
||||
"lead-time=i" => \$DEFAULT_LEAD_TIME,
|
||||
"todos!" => \$PROCESS_TODOS,
|
||||
"heading=s" => \$HEADING,
|
||||
"help|?" => \$help,
|
||||
"man" => \$man
|
||||
);
|
||||
pod2usage(1) if $help;
|
||||
pod2usage(-verbose => 2) if $man;
|
||||
|
||||
my $month = ['None','Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
|
||||
|
||||
my @calendars;
|
||||
my $in;
|
||||
|
||||
while (<>) {
|
||||
$in .= $_;
|
||||
if (/END:VCALENDAR/) {
|
||||
push(@calendars,$in);
|
||||
$in = "";
|
||||
}
|
||||
}
|
||||
my $parser = iCal::Parser->new();
|
||||
my $hash = $parser->parse_strings(@calendars);
|
||||
|
||||
##############################################################
|
||||
#
|
||||
# Subroutines
|
||||
#
|
||||
#############################################################
|
||||
#
|
||||
# _process_todos()
|
||||
# expects 'todos' hashref from iCal::Parser is input
|
||||
# returns String to output
|
||||
sub _process_todos {
|
||||
my $todos = shift;
|
||||
|
||||
my ($todo, @newtodos, $leadtime);
|
||||
my $output = "";
|
||||
|
||||
$output .= 'REM '.$HEADING.' MSG '.$label.' ToDos:%"%"%'."\n";
|
||||
|
||||
# For sorting, make sure everything's got something
|
||||
# To sort on.
|
||||
my $now = DateTime->now;
|
||||
for $todo (@{$todos}) {
|
||||
# remove completed items
|
||||
if ($todo->{'STATUS'} && $todo->{'STATUS'} eq 'COMPLETED') {
|
||||
next;
|
||||
} elsif ($todo->{'DUE'}) {
|
||||
# All we need is a due date, everything else is sugar
|
||||
$todo->{'SORT'} = $todo->{'DUE'}->clone;
|
||||
} elsif ($todo->{'DTSTART'}) {
|
||||
# for sorting, sort on start date if there's no due date
|
||||
$todo->{'SORT'} = $todo->{'DTSTART'}->clone;
|
||||
} else {
|
||||
# if there's no due or start date, just make it now.
|
||||
$todo->{'SORT'} = $now;
|
||||
}
|
||||
push(@newtodos,$todo);
|
||||
}
|
||||
if (! (scalar @newtodos)) {
|
||||
return "";
|
||||
}
|
||||
# Now sort on the new Due dates and print them out.
|
||||
for $todo (sort { DateTime->compare($a->{'SORT'}, $b->{'SORT'}) } @newtodos) {
|
||||
my $due = $todo->{'SORT'}->clone();
|
||||
my $priority = "";
|
||||
if (defined($todo->{'PRIORITY'})) {
|
||||
if ($todo->{'PRIORITY'} == 1) {
|
||||
$priority = "PRIORITY 1000";
|
||||
} elsif ($todo->{'PRIORITY'} == 3) {
|
||||
$priority = "PRIORITY 7500";
|
||||
}
|
||||
}
|
||||
if (defined($todo->{'DTSTART'}) && defined($todo->{'DUE'})) {
|
||||
# Lead time is duration of task + lead time
|
||||
my $diff = ($todo->{'DUE'}->delta_days($todo->{'DTSTART'})->days())+$DEFAULT_LEAD_TIME;
|
||||
$leadtime = "+".$diff;
|
||||
} else {
|
||||
$leadtime = "+".$DEFAULT_LEAD_TIME;
|
||||
}
|
||||
$output .= "REM ".$due->month_abbr." ".$due->day." ".$due->year." $leadtime $priority MSG \%a $todo->{'SUMMARY'}\%\"\%\"\%\n";
|
||||
}
|
||||
$output .= 'REM '.$HEADING.' MSG %"%"%'."\n";
|
||||
return $output;
|
||||
}
|
||||
|
||||
|
||||
#######################################################################
|
||||
#
|
||||
# Main Program
|
||||
#
|
||||
######################################################################
|
||||
|
||||
print _process_todos($hash->{'todos'}) if $PROCESS_TODOS;
|
||||
|
||||
my ($leadtime, $yearkey, $monkey, $daykey,$uid,%eventsbyuid);
|
||||
print 'REM '.$HEADING.' MSG '.$label.' Events:%"%"%'."\n";
|
||||
my $events = $hash->{'events'};
|
||||
foreach $yearkey (sort keys %{$events} ) {
|
||||
my $yearevents = $events->{$yearkey};
|
||||
foreach $monkey (sort {$a <=> $b} keys %{$yearevents}){
|
||||
my $monevents = $yearevents->{$monkey};
|
||||
foreach $daykey (sort {$a <=> $b} keys %{$monevents} ) {
|
||||
my $dayevents = $monevents->{$daykey};
|
||||
foreach $uid (sort {
|
||||
DateTime->compare($dayevents->{$a}->{'DTSTART'}, $dayevents->{$b}->{'DTSTART'})
|
||||
} keys %{$dayevents}) {
|
||||
my $event = $dayevents->{$uid};
|
||||
if ($eventsbyuid{$uid}) {
|
||||
my $curreventday = $event->{'DTSTART'}->clone;
|
||||
$curreventday->truncate( to => 'day' );
|
||||
$eventsbyuid{$uid}{$curreventday->epoch()} =1;
|
||||
for (my $i = 0;$i < $DEFAULT_LEAD_TIME && !defined($event->{'LEADTIME'});$i++) {
|
||||
if ($eventsbyuid{$uid}{$curreventday->subtract( days => $i+1 )->epoch() }) {
|
||||
$event->{'LEADTIME'} = $i;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$eventsbyuid{$uid} = $event;
|
||||
my $curreventday = $event->{'DTSTART'}->clone;
|
||||
$curreventday->truncate( to => 'day' );
|
||||
$eventsbyuid{$uid}{$curreventday->epoch()} =1;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach $yearkey (sort keys %{$events} ) {
|
||||
my $yearevents = $events->{$yearkey};
|
||||
foreach $monkey (sort {$a <=> $b} keys %{$yearevents}){
|
||||
my $monevents = $yearevents->{$monkey};
|
||||
foreach $daykey (sort {$a <=> $b} keys %{$monevents} ) {
|
||||
my $dayevents = $monevents->{$daykey};
|
||||
foreach $uid (sort {
|
||||
DateTime->compare($dayevents->{$a}->{'DTSTART'}, $dayevents->{$b}->{'DTSTART'})
|
||||
} keys %{$dayevents}) {
|
||||
my $event = $dayevents->{$uid};
|
||||
if (exists($event->{'LEADTIME'})) {
|
||||
$leadtime = "+".$event->{'LEADTIME'};
|
||||
} else {
|
||||
$leadtime = "+".$DEFAULT_LEAD_TIME;
|
||||
}
|
||||
my $start = $event->{'DTSTART'};
|
||||
print "REM ".$start->month_abbr." ".$start->day." ".$start->year." $leadtime ";
|
||||
if ($start->hour > 0) {
|
||||
print " AT ";
|
||||
print $start->strftime("%H:%M");
|
||||
print " SCHED _sfun MSG %a %2 ";
|
||||
} else {
|
||||
print " MSG %a ";
|
||||
}
|
||||
print "%\"$event->{'SUMMARY'}";
|
||||
print " at $event->{'LOCATION'}" if $event->{'LOCATION'};
|
||||
print "\%\"%\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
exit 0;
|
||||
#:vim set ft=perl ts=4 sts=4 expandtab :
|
||||
@@ -106,21 +106,23 @@
|
||||
"Syntax table for `remind-conf-mode'.")
|
||||
|
||||
;;; keyword sets
|
||||
|
||||
;;; MOON, WEEK, SHADE, COLOR and COLOUR are not really keywords,
|
||||
;;; but they are widely-supported SPECIALS, so I add them here.
|
||||
(defconst remind-keywords
|
||||
(sort
|
||||
(list "ADDOMIT" "AFTER" "AT" "BANNER" "BEFORE"
|
||||
"CAL" "CLEAR-OMIT-CONTEXT" "DEBUG" "DO" "DUMPVARS"
|
||||
"DURATION" "ELSE" "ENDIF" "ERRMSG" "EXIT" "FIRST"
|
||||
"FLUSH" "FOURTH" "FROM" "FSET" "IF" "IFTRIG" "IN"
|
||||
"INCLUDE" "INCLUDECMD" "LAST" "LASTDAY"
|
||||
"LASTWORKDAY" "MAYBE-UNCOMPUTABLE" "MSF"
|
||||
"MSG" "OMIT" "OMITFUNC" "ONCE"
|
||||
"POP-OMIT-CONTEXT" "PRESERVE" "PRIORITY" "PS" "PSFILE"
|
||||
"PUSH-OMIT-CONTEXT" "REM" "RUN" "SATISFY" "SCANFROM"
|
||||
"SCHED" "SECOND" "SET" "SKIP" "SPECIAL"
|
||||
"TAG" "THIRD" "THROUGH" "UNSET" "UNTIL"
|
||||
"WARN")
|
||||
(list "ADDOMIT" "AFTER" "AT" "BAN" "BANNER" "BEFORE" "CAL" "CLEAR"
|
||||
"CLEAR-OMIT-CONTEXT" "COMPLETE-THROUGH" "COMPLETED-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"
|
||||
"MOON" "WEEK" "SHADE" "COLOR" "COLOUR")
|
||||
#'(lambda (a b) (> (length a) (length b)))))
|
||||
|
||||
|
||||
@@ -131,50 +133,186 @@
|
||||
|
||||
(defconst remind-builtin-variables
|
||||
(sort
|
||||
(list "$Ago" "$Am" "$And" "$April" "$At" "$August" "$CalcUTC" "$CalMode" "$Daemon" "$DateSep"
|
||||
"$DateTimeSep" "$December" "$DefaultColor" "$DefaultPrio"
|
||||
"$DefaultTDelta" "$DeltaOffset" "$DontFork" "$DontQueue"
|
||||
"$DontTrigAts" "$EndSent" "$EndSentIg" "$February" "$FirstIndent"
|
||||
"$FoldYear" "$FormWidth" "$Friday" "$Fromnow" "$Hour" "$Hplu" "$HushMode" "$IgnoreOnce"
|
||||
"$InfDelta" "$IntMax" "$IntMin" "$Is" "$January" "$July" "$June" "$LatDeg"
|
||||
"$Latitude" "$LatMin" "$LatSec" "$Location" "$LongDeg" "$Longitude"
|
||||
"$LongMin" "$LongSec" "$March" "$MaxSatIter" "$MaxStringLen" "$May"
|
||||
"$MinsFromUTC" "$Minute" "$Monday" "$Mplu" "$NextMode" "$November" "$Now" "$NumQueued"
|
||||
"$NumTrig" "$October" "$On" "$Pm" "$PrefixLineNo" "$PSCal" "$RunOff" "$Saturday"
|
||||
"$September" "$SimpleCal" "$SortByDate" "$SortByPrio" "$SortByTime"
|
||||
"$SubsIndent" "$Sunday" "$SysInclude" "$T" "$Td" "$Thursday" "$TimeSep" "$Tm"
|
||||
"$Today" "$Tomorrow" "$Tuesday" "$Tw" "$Ty" "$U" "$Ud" "$Um" "$UntimedFirst" "$Uw" "$Uy"
|
||||
"$Was" "$Wednesday")
|
||||
(list "$AddBlankLines" "$Ago" "$Am" "$And" "$April" "$At" "$August"
|
||||
"$CalcUTC" "$CalMode" "$CalType" "$Daemon" "$DateSep" "$DateTimeSep"
|
||||
"$December" "$DedupeReminders" "$DefaultColor" "$DefaultDelta"
|
||||
"$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"
|
||||
"$June" "$LatDeg" "$Latitude" "$LatMin" "$LatSec" "$Location"
|
||||
"$LongDeg" "$Longitude" "$LongMin" "$LongSec" "$March" "$MaxFullOmits"
|
||||
"$MaxLateMinutes" "$MaxPartialOmits" "$MaxSatIter" "$MaxStringLen"
|
||||
"$May" "$MinsFromUTC" "$Minute" "$Monday" "$Mplu" "$NextMode"
|
||||
"$November" "$Now" "$NumFullOmits" "$NumPartialOmits" "$NumQueued"
|
||||
"$NumTrig" "$October" "$On" "$OnceFile" "$ParseUntriggered" "$Pm"
|
||||
"$PrefixLineNo" "$PSCal" "$RunOff" "$Saturday" "$September" "$Shaded"
|
||||
"$SimpleCal" "$SortByDate" "$SortByPrio" "$SortByTime" "$SubsIndent"
|
||||
"$Sunday" "$SuppressImplicitWarnings" "$SuppressLRM" "$SysInclude" "$T" "$Tb" "$Td"
|
||||
"$TerminalBackground" "$TerminalHyperlinks" "$Thursday" "$TimeSep" "$TimetIs64bit" "$Tm" "$Today" "$TodoFilter"
|
||||
"$Tomorrow" "$Tt" "$Tuesday" "$Tw" "$Ty" "$U" "$Ud" "$Um"
|
||||
"$UntimedFirst" "$Use256Colors" "$UseBGVTColors" "$UseTrueColors"
|
||||
"$UseVTColors" "$Uw" "$Uy" "$WarningLevel" "$Was" "$Wednesday")
|
||||
#'(lambda (a b) (> (length a) (length b)))))
|
||||
|
||||
|
||||
(defconst remind-time-words
|
||||
(sort
|
||||
(list "Jan" "January" "Feb" "Mar" "Apr" "Jun" "Jul" "Aug" "Sept" "Sep" "Oct" "Nov" "Dec"
|
||||
"February" "March" "April" "May" "June" "July" "August" "September" "October"
|
||||
"November" "December" "Mon" "Monday" "Tue" "Tues" "Tuesday" "Wed" "Wednesday"
|
||||
"Thu" "Thursday" "Thurs" "Fri" "Friday" "Saturday" "Sat" "Sun" "Sunday")
|
||||
(list "Apr" "April" "Aug" "August" "Dec" "December" "Feb" "February"
|
||||
"Jan" "January" "Jul" "July" "Jun" "June" "Mar" "March" "May"
|
||||
"Nov" "November" "Oct" "October" "Sep" "September" "Fri"
|
||||
"Friday" "Mon" "Monday" "Sat" "Saturday" "Sun" "Sunday" "Thu"
|
||||
"Thursday" "Tue" "Tuesday" "Wed" "Wednesday")
|
||||
#'(lambda (a b) (> (length a) (length b)))))
|
||||
|
||||
|
||||
(defconst remind-builtin-functions
|
||||
(sort
|
||||
(list "abs" "access" "adawn" "adusk" "ampm" "args" "asc" "baseyr" "char"
|
||||
"choose" "coerce" "current" "date" "datepart" "datetime" "dawn" "day"
|
||||
"daysinmon" "defined" "dosubst" "dusk" "easterdate" "evaltrig"
|
||||
"filedate" "filedatetime" "filedir" "filename" "getenv" "hebdate"
|
||||
"hebday" "hebmon" "hebyear" "hour" "iif" "index" "isany" "isdst"
|
||||
"isleap" "isomitted" "language" "lower" "max" "min" "minsfromutc"
|
||||
"minute" "mon" "monnum" "moondate" "moondatetime" "moonphase"
|
||||
"moontime" "ndawn" "ndusk" "nonomitted" "now" "ord" "ostype" "pad" "plural"
|
||||
"psmoon" "psshade" "realcurrent" "realnow" "realtoday" "sgn" "shell"
|
||||
"shellescape" "slide" "strlen" "substr" "sunrise" "sunset" "time"
|
||||
"timepart" "today" "trig" "trigback" "trigdate" "trigdatetime"
|
||||
"trigdelta" "trigduration" "trigeventduration" "trigeventstart"
|
||||
"trigfrom" "trigger" "trigpriority" "trigrep" "trigscanfrom"
|
||||
"trigtime" "trigtimedelta" "trigtimerep" "triguntil" "trigvalid"
|
||||
"typeof" "tzconvert" "upper" "value" "version" "weekno" "wkday"
|
||||
"wkdaynum" "year")
|
||||
(list
|
||||
"_"
|
||||
"abs"
|
||||
"access"
|
||||
"adawn"
|
||||
"adusk"
|
||||
"ampm"
|
||||
"ansicolor"
|
||||
"args"
|
||||
"asc"
|
||||
"baseyr"
|
||||
"catch"
|
||||
"catcherr"
|
||||
"char"
|
||||
"choose"
|
||||
"codepoint"
|
||||
"coerce"
|
||||
"columns"
|
||||
"const"
|
||||
"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"
|
||||
"ivritmon"
|
||||
"language"
|
||||
"localtoutc"
|
||||
"lower"
|
||||
"max"
|
||||
"mbasc"
|
||||
"mbindex"
|
||||
"mblower"
|
||||
"mbstrlen"
|
||||
"mbsubstr"
|
||||
"mbupper"
|
||||
"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"
|
||||
"triguntil"
|
||||
"trigvalid"
|
||||
"typeof"
|
||||
"tzconvert"
|
||||
"upper"
|
||||
"utctolocal"
|
||||
"value"
|
||||
"version"
|
||||
"weekno"
|
||||
"wkday"
|
||||
"wkdaynum"
|
||||
"year"
|
||||
)
|
||||
#'(lambda (a b) (> (length a) (length b)))))
|
||||
|
||||
;;; faces
|
||||
@@ -183,21 +321,21 @@
|
||||
(defvar remind-conf-command-face 'remind-conf-command-face
|
||||
"Remind commands.")
|
||||
(defface remind-conf-command-face
|
||||
'((t :foreground "SeaGreen4" :bold t))
|
||||
'((t :foreground "#FF8080"))
|
||||
"Font Lock mode face used to highlight commands."
|
||||
:group 'remind-conf)
|
||||
|
||||
(defvar remind-conf-keyword-face 'remind-conf-keyword-face
|
||||
"Remind keywords.")
|
||||
(defface remind-conf-keyword-face
|
||||
'((t :foreground "blue violet"))
|
||||
'((t :foreground "#FFFF80"))
|
||||
"Font Lock mode face used to highlight keywords."
|
||||
:group 'remind-conf)
|
||||
|
||||
(defvar remind-conf-substitutes-face 'remind-conf-substitutes-face
|
||||
"Remind substitutes.")
|
||||
(defface remind-conf-substitutes-face
|
||||
'((t :foreground "blue2"))
|
||||
'((t :foreground "#8080FF"))
|
||||
"Font Lock mode face used to highlight substitutes."
|
||||
:group 'remind-conf)
|
||||
|
||||
@@ -211,7 +349,7 @@
|
||||
(defvar remind-conf-variable-face 'remind-conf-variable-face
|
||||
"Remind variable.")
|
||||
(defface remind-conf-variable-face
|
||||
'((t :foreground "DeepPink2" :bold t))
|
||||
'((t :foreground "#FF8080" :bold t))
|
||||
"Font Lock mode face used to highlight commands."
|
||||
:group 'remind-conf)
|
||||
|
||||
@@ -232,14 +370,14 @@
|
||||
(defvar remind-comment-face 'remind-comment-face
|
||||
"Remind comments.")
|
||||
(defface remind-comment-face
|
||||
'((t :foreground "brown"))
|
||||
'((t :foreground "#FF7F24"))
|
||||
"Font-lock face for highlighting comments."
|
||||
:group 'remind-conf)
|
||||
|
||||
(defvar remind-string-face 'remind-string-face
|
||||
"Remind strings.")
|
||||
(defface remind-string-face
|
||||
'((t :foreground "tomato"))
|
||||
'((t :foreground "#FF7FE0"))
|
||||
"Font lock mode face used to highlight strings."
|
||||
:group 'remind-conf)
|
||||
|
||||
@@ -290,12 +428,12 @@
|
||||
|
||||
(defconst remind-conf-font-lock-keywords-1
|
||||
(list
|
||||
'("^[\;\#]\\s-+.*$" . remind-comment-face)
|
||||
'("^\s*[\;\#].*$" . remind-comment-face)
|
||||
'("\"[^\"]*\"" . remind-string-face)
|
||||
'(remind-keywords-matcher . remind-conf-keyword-face)
|
||||
'("%[\"_]" . font-lock-warning-face)
|
||||
'("\\(%[a-mops-w]\\)" . remind-conf-substitutes-face)
|
||||
'("\"[^\"]*\"" . remind-string-face))
|
||||
"Minimal font-locking for `remind-conf-mode'.")
|
||||
'("\\(%[a-z]\\)" . remind-conf-substitutes-face)
|
||||
"Minimal font-locking for `remind-conf-mode'."))
|
||||
|
||||
(defconst remind-conf-font-lock-keywords-2
|
||||
(append remind-conf-font-lock-keywords-1
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
REMIND version 3.2 for UNIX
|
||||
Remind for UNIX and Linux
|
||||
|
||||
REMIND is a sophisticated alarm/calendar program. Details are given
|
||||
Remind is a sophisticated alarm/calendar program. Details are given
|
||||
in the man page, "remind.1".
|
||||
|
||||
INSTALLING REMIND:
|
||||
@@ -19,88 +19,13 @@ If you do NOT have Tcl/Tk or are NOT running X11:
|
||||
|
||||
1) Edit the file "src/custom.h" according to your preferences.
|
||||
|
||||
2) Edit the file "src/lang.h" to choose a language.
|
||||
2) Type: "make"
|
||||
|
||||
3) Type: "make"
|
||||
|
||||
4) Type: "make install" -- you may need to be root to do this.
|
||||
3) Type: "make install" -- you may need to be root to do this.
|
||||
|
||||
The subdirectory "www" contains scripts for making a nice calendar
|
||||
web server. See the files README and Makefile in that directory.
|
||||
|
||||
The file "examples/defs.rem" has some sample Remind definitions and
|
||||
commands, as well as U.S. and Jewish holidays.
|
||||
|
||||
OTHER LANGUAGE SUPPORT
|
||||
|
||||
Remind has support for languages other than English. See the file
|
||||
"src/lang.h" for details. The language support may vary - you can change
|
||||
only the substitution filter, or you can translate all of the usage
|
||||
instructions and error messages as well. See "src/langs/french.h" for an
|
||||
example of the latter.
|
||||
|
||||
To compile Remind for a non-english language, look at the constants
|
||||
defined in "src/lang.h". Then, to compile Remind for Italian (as an
|
||||
example), type:
|
||||
|
||||
make "LANGDEF=-DLANG=ITALIAN"
|
||||
|
||||
If you add support for a non-English language, Remind will accept both the
|
||||
English and non-English names of months and weekdays in an input script.
|
||||
However, you should not rely on this feature if you want to write portable
|
||||
Remind scripts.
|
||||
|
||||
At a minimum, you should support month and day names in the foreign
|
||||
language, and should modify the substitution filter appropriately.
|
||||
If you are truly diligent, you can translate usage and error messages
|
||||
too.
|
||||
|
||||
Take a look at the files "src/langs/english.h" and
|
||||
"src/langs/german.h" if you want to add support for your favourite
|
||||
language. If you do add another language to Remind, please let me
|
||||
know! Here are the basic guidelines:
|
||||
|
||||
- Your language file should be called "src/langs/lxxx.h", where lxxx
|
||||
is the first 8 characters of the ENGLISH name of your language.
|
||||
|
||||
- Your language file should define L_LANGNAME to be the full English
|
||||
name of your language, with the first letter capitalized and the rest
|
||||
lower-case.
|
||||
|
||||
- You can test your language file with the script "tests/tstlang.rem"
|
||||
|
||||
- Your localized strings must be encoded using UTF-8.
|
||||
|
||||
RELEASE NOTES -- miscellaneous info that couldn't go anywhere else!
|
||||
|
||||
1. POPUP REMINDERS
|
||||
|
||||
If you're running under X11 and you have the Tcl tools, you can create
|
||||
simple pop-up reminders by creating the following Tcl script called
|
||||
'popup'. It pops a message on to the screen and waits for you to
|
||||
press the 'OK' button. If you don't press the OK button within 15
|
||||
seconds, it exits anyway. To use it, you can use the '-k' option for
|
||||
Remind as follows:
|
||||
|
||||
remind "-kpopup '%s'&" .reminders
|
||||
|
||||
Or use the following in your Remind script:
|
||||
|
||||
REM AT 17:00 RUN popup 'Time to go home.' &
|
||||
|
||||
This Tcl script is a slightly modified version of one submitted by
|
||||
Norman Walsh.
|
||||
|
||||
-------------- Cut Here ---------- Cut Here ---------- Cut Here -------------
|
||||
#!/usr/local/bin/wish
|
||||
wm withdraw .
|
||||
after 15000 { destroy . ; exit }
|
||||
tk_messageBox -message Message -detail $argv -icon info -type ok
|
||||
destroy .
|
||||
exit
|
||||
-------------- Cut Here ---------- Cut Here ---------- Cut Here -------------
|
||||
|
||||
|
||||
--
|
||||
Dianne Skoll <dianne@skoll.ca>
|
||||
https://dianne.skoll.ca/projects/remind/
|
||||
|
||||
1356
docs/WHATSNEW
1356
docs/WHATSNEW
File diff suppressed because it is too large
Load Diff
1
examples/alignment.rem
Normal file → Executable file
1
examples/alignment.rem
Normal file → Executable file
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env -S remind -@2
|
||||
# Demo the columns() function
|
||||
#
|
||||
# Run as: remind -@2 alignment.rem
|
||||
|
||||
@@ -26,7 +26,10 @@ MSG This is [ansicolor(0,255,0)]green.[ansicolor("")]
|
||||
MSG This is [ansicolor(0,0,255)]blue.[ansicolor("")]
|
||||
MSG This is [ansicolor(255,255,0)]yellow.[ansicolor("")]
|
||||
MSG This is [ansicolor(255,0,255)]magenta.[ansicolor("")]
|
||||
MSG This is [ansicolor(0,255,255)]cyan.[ansicolor("")]%_
|
||||
MSG This is [ansicolor(0,255,255)]cyan.[ansicolor("")]
|
||||
MSG This is [ansi_bold][ansicolor(255,255,255)][ansicolor(0,0,0,1)]white on black[ansicolor("")][ansi_normal]
|
||||
MSG This is [ansi_bold][ansicolor(0,0,0)][ansicolor(255,255,255,1)]black on white[ansicolor("")][ansi_normal]
|
||||
MSG %_
|
||||
|
||||
# You can combine attributes
|
||||
MSG This is [ansicolor(0,255,0)][ansicolor(0,0,96,1)][ansi_italic][ansi_bold]Green-Bold-Italic-on-Blue[ansi_normal][ansicolor("")]
|
||||
|
||||
@@ -5,9 +5,6 @@
|
||||
# Best used in a UTF-8 environment.
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
|
||||
# Set this variable to 1 if your terminal has a dark background or 0 if
|
||||
# it: light.
|
||||
|
||||
# Set your latitude and longitude correctly for Sunrise/Sunset/Equinox/Solstice
|
||||
#
|
||||
# The values below are for Ottawa, Ontario, Canada
|
||||
@@ -20,7 +17,8 @@ BANNER %
|
||||
|
||||
INCLUDE [$SysInclude]/ansitext.rem
|
||||
|
||||
MSG Today is [ansi_bold][$T][ansi_normal], being the [ord($T-date(year($T),1,1)+1)] day of [year($T)].%_
|
||||
MSG Today is [ansi_bold][$T][ansi_normal], being the [ord($T-date(year($T),1,1)+1)] day of [year($T)].
|
||||
MSG Not including today, the year [year($T)] has [date(year($T)+1, 1, 1)-$T-1] more [plural(date(year($T)+1, 1, 1)-$T-1, "day")] left.%_
|
||||
|
||||
IF $TerminalBackground == 0
|
||||
SPECIAL COLOR 255 255 0 Sunrise: 🌅 [sunrise()] today and [sunrise($T+1)] tomorrow
|
||||
@@ -34,6 +32,64 @@ 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)
|
||||
|
||||
@@ -6,6 +6,11 @@
|
||||
# Cut and paste as desired! Also, near the end, there are a bunch of #
|
||||
# holiday definitions for the U.S. #
|
||||
# #
|
||||
# *** NOTE *** #
|
||||
# #
|
||||
# This file is simply a grab-bag of examples. It is NOT meant to be #
|
||||
# included as-is in a live reminder file. #
|
||||
# #
|
||||
# Some examples provided by George M. Sipe <gsipe@pyratl.ga.pyramid.com> #
|
||||
# #
|
||||
# U.S. holidays provided by Dave Rickel <drickel@sjc.mentorg.com> #
|
||||
@@ -16,7 +21,7 @@
|
||||
# "#PSSTUFF" for nifty PostScript examples #
|
||||
# #
|
||||
# This file is part of REMIND. #
|
||||
# Copyright (C) 1992-2024 Dianne Skoll #
|
||||
# Copyright (C) 1992-2026 Dianne Skoll #
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
# #
|
||||
#############################################################################
|
||||
@@ -27,7 +32,7 @@ RUN OFF
|
||||
# Ensure required version of remind is used... #
|
||||
################################################
|
||||
IF version() < "03.04.02"
|
||||
ERRMSG This file requires at least version 03.01.10 of Remind.%
|
||||
ERRMSG This file requires at least version 03.04.02 of Remind.%
|
||||
ERRMSG This version is version [version()].
|
||||
EXIT
|
||||
ENDIF
|
||||
@@ -305,51 +310,51 @@ FSET _PastMon(x, y) IIF(WKDAYNUM(_h2(x,y))!=1, _h2(x,y), _h2(x,y)+1)
|
||||
SET InIsrael VALUE("InIsrael", 0)
|
||||
SET Reform VALUE("Reform", 0)
|
||||
|
||||
[_h(1, "Tishrey")] ++4 MSG %"Rosh Hashana 1%" is %b.
|
||||
REM [_h(1, "Tishrey")] ++4 MSG %"Rosh Hashana 1%" is %b.
|
||||
|
||||
# No RH-2 or Tzom Gedalia in Reform
|
||||
IF !Reform
|
||||
[_h(2, "Tishrey")] ++4 MSG %"Rosh Hashana 2%" is %b.
|
||||
[_PastSat(3, "Tishrey")] ++4 MSG %"Tzom Gedalia%" is %b.
|
||||
REM [_h(2, "Tishrey")] ++4 MSG %"Rosh Hashana 2%" is %b.
|
||||
REM [_PastSat(3, "Tishrey")] ++4 MSG %"Tzom Gedalia%" is %b.
|
||||
ENDIF
|
||||
|
||||
[_h(10, "Tishrey")] ++4 MSG %"Yom Kippur%" is %b.
|
||||
[_h(15, "Tishrey")] ++4 MSG %"Sukkot 1%" is %b.
|
||||
REM [_h(10, "Tishrey")] ++4 MSG %"Yom Kippur%" is %b.
|
||||
REM [_h(15, "Tishrey")] ++4 MSG %"Sukkot 1%" is %b.
|
||||
|
||||
IF !InIsrael
|
||||
[_h(16, "Tishrey")] MSG %"Sukkot 2%"
|
||||
REM [_h(16, "Tishrey")] MSG %"Sukkot 2%"
|
||||
ENDIF
|
||||
|
||||
[_h(21, "Tishrey")] ++4 MSG %"Hoshana Rabba%" is %b.
|
||||
[_h(22, "Tishrey")] ++4 MSG %"Shemini Atzeret%" is %b.
|
||||
REM [_h(21, "Tishrey")] ++4 MSG %"Hoshana Rabba%" is %b.
|
||||
REM [_h(22, "Tishrey")] ++4 MSG %"Shemini Atzeret%" is %b.
|
||||
|
||||
IF InIsrael
|
||||
[_h(22, "Tishrey")] ++4 MSG %"Simchat Torah%" is %b.
|
||||
REM [_h(22, "Tishrey")] ++4 MSG %"Simchat Torah%" is %b.
|
||||
ELSE
|
||||
[_h(23, "Tishrey")] ++4 MSG %"Simchat Torah%" is %b.
|
||||
REM [_h(23, "Tishrey")] ++4 MSG %"Simchat Torah%" is %b.
|
||||
ENDIF
|
||||
|
||||
# Because Kislev can change length, we must be more careful about Chanukah
|
||||
FSET _chan(x) HEBDATE(24, "Kislev", $U-9)+x
|
||||
[_chan(1)] ++4 MSG %"Chanukah 1%" is %b.
|
||||
[_chan(2)] MSG %"Chanukah 2%"
|
||||
[_chan(3)] MSG %"Chanukah 3%"
|
||||
[_chan(4)] MSG %"Chanukah 4%"
|
||||
[_chan(5)] MSG %"Chanukah 5%"
|
||||
[_chan(6)] MSG %"Chanukah 6%"
|
||||
[_chan(7)] MSG %"Chanukah 7%"
|
||||
[_chan(8)] MSG %"Chanukah 8%"
|
||||
REM [_chan(1)] ++4 MSG %"Chanukah 1%" is %b.
|
||||
REM [_chan(2)] MSG %"Chanukah 2%"
|
||||
REM [_chan(3)] MSG %"Chanukah 3%"
|
||||
REM [_chan(4)] MSG %"Chanukah 4%"
|
||||
REM [_chan(5)] MSG %"Chanukah 5%"
|
||||
REM [_chan(6)] MSG %"Chanukah 6%"
|
||||
REM [_chan(7)] MSG %"Chanukah 7%"
|
||||
REM [_chan(8)] MSG %"Chanukah 8%"
|
||||
|
||||
# Not sure about Reform's position on the next one.
|
||||
IF !Reform
|
||||
# 10 Tevet will never be a Saturday, so whether or not to
|
||||
# move it is moot. (Thanks to Art Werschulz.)
|
||||
[_h(10, "Tevet")] MSG %"Tzom Tevet%" is %b.
|
||||
REM [_h(10, "Tevet")] MSG %"Tzom Tevet%" is %b.
|
||||
ENDIF
|
||||
|
||||
[_h(15, "Shvat")] ++4 MSG %"Tu B'Shvat%" is %b.
|
||||
[_h(14, "Adar A")] ++4 MSG %"Purim Katan%" is %b.
|
||||
[_h(15, "Adar A")] ++4 MSG %"Shushan Purim Katan%" is %b.
|
||||
REM [_h(15, "Shvat")] ++4 MSG %"Tu B'Shvat%" is %b.
|
||||
REM [_h(14, "Adar A")] ++4 MSG %"Purim Katan%" is %b.
|
||||
REM [_h(15, "Adar A")] ++4 MSG %"Shushan Purim Katan%" is %b.
|
||||
|
||||
# If Purim is on Sunday, then Fast of Esther is 11 Adar.
|
||||
IF WKDAYNUM(_h2(13, "Adar")) != 6
|
||||
@@ -357,18 +362,18 @@ IF WKDAYNUM(_h2(13, "Adar")) != 6
|
||||
ELSE
|
||||
REM [_h2(11, "Adar")] ++4 MSG %"Fast of Esther%" is %b.
|
||||
ENDIF
|
||||
[_h(14, "Adar")] ++4 MSG %"Purim%" is %b.
|
||||
[_h(15, "Adar")] ++4 MSG %"Shushan Purim%" is %b.
|
||||
[_h(15, "Nisan")] ++4 MSG %"Pesach%" is %b.
|
||||
REM [_h(14, "Adar")] ++4 MSG %"Purim%" is %b.
|
||||
REM [_h(15, "Adar")] ++4 MSG %"Shushan Purim%" is %b.
|
||||
REM [_h(15, "Nisan")] ++4 MSG %"Pesach%" is %b.
|
||||
|
||||
IF !InIsrael
|
||||
[_h(16, "Nisan")] MSG %"Pesach 2%"
|
||||
REM [_h(16, "Nisan")] MSG %"Pesach 2%"
|
||||
ENDIF
|
||||
|
||||
[_h(21, "Nisan")] MSG %"Pesach 7%"
|
||||
REM [_h(21, "Nisan")] MSG %"Pesach 7%"
|
||||
|
||||
IF !InIsrael && !Reform
|
||||
[_h(22, "Nisan")] MSG %"Pesach 8%"
|
||||
REM [_h(22, "Nisan")] MSG %"Pesach 8%"
|
||||
ENDIF
|
||||
|
||||
REM [_PastSun(27, "Nisan")] SATISFY 1
|
||||
@@ -384,36 +389,36 @@ ENDIF
|
||||
# Thursday. If 4 Iyar is a Sunday, then Yom Hazikaron
|
||||
# moves to 5 Iyar and Yom Ha'atzmaut to 6 Iyar.
|
||||
IF WKDAYNUM(_h2(4, "Iyar")) == 4 || WKDAYNUM(_h2(4, "Iyar")) == 5
|
||||
[_h(2, "Iyar")] ++4 MSG %"Yom Hazikaron%" is %b.
|
||||
[_h(3, "Iyar")] ++4 MSG %"Yom Ha'atzmaut%" is %b.
|
||||
REM [_h(2, "Iyar")] ++4 MSG %"Yom Hazikaron%" is %b.
|
||||
REM [_h(3, "Iyar")] ++4 MSG %"Yom Ha'atzmaut%" is %b.
|
||||
ELSE
|
||||
IF WKDAYNUM(_h2(4, "Iyar")) == 0
|
||||
[_h(5, "Iyar")] ++4 MSG %"Yom Hazikaron%" is %b.
|
||||
[_h(6, "Iyar")] ++4 MSG %"Yom Ha'atzmaut%" is %b.
|
||||
REM [_h(5, "Iyar")] ++4 MSG %"Yom Hazikaron%" is %b.
|
||||
REM [_h(6, "Iyar")] ++4 MSG %"Yom Ha'atzmaut%" is %b.
|
||||
ELSE
|
||||
[_h(4, "Iyar")] ++4 MSG %"Yom Hazikaron%" is %b.
|
||||
[_h(5, "Iyar")] ++4 MSG %"Yom Ha'atzmaut%" is %b.
|
||||
REM [_h(4, "Iyar")] ++4 MSG %"Yom Hazikaron%" is %b.
|
||||
REM [_h(5, "Iyar")] ++4 MSG %"Yom Ha'atzmaut%" is %b.
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
# Not sure about Reform's position on Lag B'Omer
|
||||
IF !Reform
|
||||
[_h(18, "Iyar")] ++4 MSG %"Lag B'Omer%" is %b.
|
||||
REM [_h(18, "Iyar")] ++4 MSG %"Lag B'Omer%" is %b.
|
||||
ENDIF
|
||||
|
||||
[_h(28, "Iyar")] ++4 MSG %"Yom Yerushalayim%" is %b.
|
||||
[_h(6, "Sivan")] ++4 MSG %"Shavuot%" is %b.
|
||||
REM [_h(28, "Iyar")] ++4 MSG %"Yom Yerushalayim%" is %b.
|
||||
REM [_h(6, "Sivan")] ++4 MSG %"Shavuot%" is %b.
|
||||
|
||||
IF !InIsrael && !Reform
|
||||
[_h(7, "Sivan")] MSG %"Shavuot 2%"
|
||||
REM [_h(7, "Sivan")] MSG %"Shavuot 2%"
|
||||
ENDIF
|
||||
|
||||
# Fairly sure Reform Jews don't observe the next two
|
||||
IF !Reform
|
||||
# Tzom Tamuz and Tish'a B'Av are moved to Sunday if they normally
|
||||
# fall on a Saturday
|
||||
[_PastSat(17, "Tamuz")] ++4 MSG %"Tzom Tammuz%" is %b.
|
||||
[_PastSat(9, "Av")] ++4 MSG %"Tish'a B'Av%" is %b.
|
||||
REM [_PastSat(17, "Tamuz")] ++4 MSG %"Tzom Tammuz%" is %b.
|
||||
REM [_PastSat(9, "Av")] ++4 MSG %"Tish'a B'Av%" is %b.
|
||||
ENDIF
|
||||
|
||||
# Counting the omer - do the whole spiel, i.e:
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: Davide Alberani <da@erlug.linux.it>
|
||||
" Last Change: 02 Nov 2015 + 13 Mar 2022 by Dianne Skoll <dianne@skoll.ca>
|
||||
" Version: 0.7+dianne1
|
||||
" URL: http://ismito.it/vim/syntax/remind.vim
|
||||
" URL: https://github.com/alberanid/vim-config/blob/master/syntax/remind.vim
|
||||
"
|
||||
" remind is a sophisticated reminder service
|
||||
" you can download remind from:
|
||||
|
||||
24
examples/tflag.rem
Executable file
24
examples/tflag.rem
Executable file
@@ -0,0 +1,24 @@
|
||||
#!/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]
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
# Not all sequences are supported by all terminals.
|
||||
|
||||
# This file is part of REMIND
|
||||
# REMIND is Copyright (C) 1992-2024 by Dianne Skoll
|
||||
# REMIND is Copyright (C) 1992-2026 by Dianne Skoll
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
|
||||
if !defined("ansi_bold")
|
||||
# Disable ANSI attributes in calandar mode
|
||||
if $CalMode
|
||||
# Disable ANSI attributes in calendar mode or JSON mode
|
||||
if $CalMode || $PSCal || $JSONMode
|
||||
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_underline2 ansi_reverse ansi_strikeout ansi_underline2 ansi_overline
|
||||
preserve ansi_normal ansi_bold ansi_faint ansi_italic ansi_underline ansi_reverse ansi_strikeout ansi_underline2 ansi_overline
|
||||
endif
|
||||
|
||||
# Example: REM MSG I must [ansi_bold]emphasize[ansi_normal] \
|
||||
|
||||
51
include/holidays/README
Normal file
51
include/holidays/README
Normal file
@@ -0,0 +1,51 @@
|
||||
This directory contains holiday files. The two-character files contain
|
||||
holidays for various countries. Some countries (such as US and CA) have
|
||||
regions with their own different holidays; the regional holidays are
|
||||
stored in *.rem files underneath the country-code directory (eg, us and ca,
|
||||
respectively.)
|
||||
|
||||
Many of these files were generated from the excellent "holidays" Python
|
||||
library at https://pypi.org/project/holidays/
|
||||
|
||||
I did great damage to the library and host a terrible, awful hacked version
|
||||
at https://github.com/dfskoll/holidays; it is this repo (in the remind-output
|
||||
branch) that I used to generate the Remind files.
|
||||
|
||||
********************** IMPORTANT CAVEATS **********************
|
||||
|
||||
Any holidays that depend on a non-Gregorian calendar such as Jewish,
|
||||
Islamic, Chinese and other East Asian calendars will NOT appear in the
|
||||
country files! The only exceptions are holidays depending on the
|
||||
Orthodox Easter date, for which Remind has support.
|
||||
|
||||
Also, I have made no effort to track changes to holiday legislation
|
||||
over time. Therefore, the holiday files may be inaccurate for years
|
||||
prior to 2024. I also did not include any one-off holidays such as
|
||||
the funeral of Queen Elizabeth on 19 September 2022.
|
||||
|
||||
Non-country holiday files are:
|
||||
|
||||
chinese-new-year.rem - Chinese New Year from 2022 through 2050
|
||||
discordian.rem - Discordian holidays
|
||||
jewish.rem - Jewish holidays
|
||||
pagan.rem - Pagan holidays
|
||||
|
||||
ADVANCE WARNING:
|
||||
================
|
||||
|
||||
None of the included holiday files have deltas. You can use the
|
||||
following trick if you would like (for example) 7 days' advance
|
||||
warning of holidays:
|
||||
|
||||
# Save old value of $DefaultDelta
|
||||
PUSH-VARS $DefaultDelta
|
||||
|
||||
# We want 7 days' advance warning
|
||||
SET $DefaultDelta 7
|
||||
|
||||
# Include your holiday files here...
|
||||
SYSINCLUDE holidays/us.rem
|
||||
SYSINCLUDE holidays/us/ny.rem
|
||||
|
||||
# Restore old value $DefaultDelta
|
||||
POP-VARS
|
||||
28
include/holidays/ad.rem
Normal file
28
include/holidays/ad.rem
Normal file
@@ -0,0 +1,28 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Andorra
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
#
|
||||
# Note: This file consists only of the country-wide
|
||||
# holidays for Andorra.
|
||||
#
|
||||
# For region-specific holidays, you need to include
|
||||
# one of the regional *.rem files in the directory
|
||||
# [$SysInclude]/holidays/ad/
|
||||
|
||||
OMIT 1 January MSG %"New Year's Day%" %! %b.
|
||||
OMIT 6 January MSG %"Epiphany%" %! %b.
|
||||
OMIT [easterdate($Uy)-47] MSG %"Carnival%" %! %b.
|
||||
OMIT 14 March MSG %"Constitution Day%" %! %b.
|
||||
OMIT [easterdate($Uy)-2] MSG %"Good Friday%" %! %b.
|
||||
OMIT [easterdate($Uy)+1] MSG %"Easter Monday%" %! %b.
|
||||
OMIT 1 May MSG %"Labor Day%" %! %b.
|
||||
OMIT [easterdate($Uy)+50] MSG %"Whit Monday%" %! %b.
|
||||
OMIT 15 August MSG %"Assumption Day%" %! %b.
|
||||
OMIT 8 September MSG %"National Day%" %! %b.
|
||||
OMIT 1 November MSG %"All Saints' Day%" %! %b.
|
||||
OMIT 8 December MSG %"Immaculate Conception Day%" %! %b.
|
||||
OMIT 25 December MSG %"Christmas Day%" %! %b.
|
||||
OMIT 26 December MSG %"Saint Stephen's Day%" %! %b.
|
||||
15
include/holidays/ad/02.rem
Normal file
15
include/holidays/ad/02.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 02 in Andorra
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 02.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/ad.rem
|
||||
|
||||
REM Third Saturday in July ADDOMIT SCANFROM -28 MSG %"Canillo Annual Festival%" %! %b.
|
||||
REM Sunday 16 July ADDOMIT SCANFROM -28 MSG %"Canillo Annual Festival%" %! %b.
|
||||
REM Monday 17 July ADDOMIT SCANFROM -28 MSG %"Canillo Annual Festival%" %! %b.
|
||||
14
include/holidays/ad/03.rem
Normal file
14
include/holidays/ad/03.rem
Normal file
@@ -0,0 +1,14 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 03 in Andorra
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 03.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/ad.rem
|
||||
|
||||
OMIT 15 August MSG %"Encamp Annual Festival%" %! %b.
|
||||
OMIT 16 August MSG %"Encamp Annual Festival%" %! %b.
|
||||
14
include/holidays/ad/04.rem
Normal file
14
include/holidays/ad/04.rem
Normal file
@@ -0,0 +1,14 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 04 in Andorra
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 04.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/ad.rem
|
||||
|
||||
OMIT 15 August MSG %"La Massana Annual Festival%" %! %b.
|
||||
OMIT 16 August MSG %"La Massana Annual Festival%" %! %b.
|
||||
14
include/holidays/ad/05.rem
Normal file
14
include/holidays/ad/05.rem
Normal file
@@ -0,0 +1,14 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 05 in Andorra
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 05.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/ad.rem
|
||||
|
||||
OMIT 15 August MSG %"Ordino Annual Festival%" %! %b.
|
||||
OMIT 16 August MSG %"Ordino Annual Festival%" %! %b.
|
||||
16
include/holidays/ad/06.rem
Normal file
16
include/holidays/ad/06.rem
Normal file
@@ -0,0 +1,16 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 06 in Andorra
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 06.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/ad.rem
|
||||
|
||||
REM Friday 23 July ADDOMIT SCANFROM -28 MSG %"Sant Julià de Lòria Annual Festival%" %! %b.
|
||||
REM Saturday 24 July ADDOMIT SCANFROM -28 MSG %"Sant Julià de Lòria Annual Festival%" %! %b.
|
||||
REM Sunday 25 July ADDOMIT SCANFROM -28 MSG %"Sant Julià de Lòria Annual Festival%" %! %b.
|
||||
REM Monday 26 July ADDOMIT SCANFROM -28 MSG %"Sant Julià de Lòria Annual Festival%" %! %b.
|
||||
15
include/holidays/ad/07.rem
Normal file
15
include/holidays/ad/07.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 07 in Andorra
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 07.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/ad.rem
|
||||
|
||||
REM First Saturday in August ADDOMIT SCANFROM -28 MSG %"Andorra la Vella Annual Festival%" %! %b.
|
||||
REM Sunday 2 August ADDOMIT SCANFROM -28 MSG %"Andorra la Vella Annual Festival%" %! %b.
|
||||
REM Monday 3 August ADDOMIT SCANFROM -28 MSG %"Andorra la Vella Annual Festival%" %! %b.
|
||||
14
include/holidays/ad/08.rem
Normal file
14
include/holidays/ad/08.rem
Normal file
@@ -0,0 +1,14 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 08 in Andorra
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 08.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/ad.rem
|
||||
|
||||
OMIT 25 July MSG %"Escaldes-Engordany Annual Festival%" %! %b.
|
||||
OMIT 26 July MSG %"Escaldes-Engordany Annual Festival%" %! %b.
|
||||
10
include/holidays/ae.rem
Normal file
10
include/holidays/ae.rem
Normal file
@@ -0,0 +1,10 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for United Arab Emirates
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"رأس السنة الميلادية%" %! %b.
|
||||
OMIT 2 December MSG %"اليوم الوطني%" %! %b.
|
||||
OMIT 3 December MSG %"اليوم الوطني%" %! %b.
|
||||
33
include/holidays/al.rem
Normal file
33
include/holidays/al.rem
Normal file
@@ -0,0 +1,33 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Albania
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"Festat e Vitit të Ri%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
OMIT 2 January MSG %"Festat e Vitit të Ri%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
OMIT 14 March MSG %"Dita e Verës%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
OMIT 22 March MSG %"Dita e Nevruzit%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
OMIT [easterdate($Uy)] MSG %"E diela e Pashkëve Katolike%" %! %b.
|
||||
OMIT [easterdate($Uy)] MSG %"E diela e Pashkëve Ortodokse%" %! %b.
|
||||
OMIT 1 May MSG %"Dita Ndërkombëtare e Punëtorëve%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
OMIT 5 September MSG %"Dita e Shenjtërimit të Shenjt Terezës%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
OMIT 22 November MSG %"Dita e Alfabetit%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
OMIT 28 November MSG %"Dita Flamurit dhe e Pavarësisë%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
OMIT 29 November MSG %"Dita e Çlirimit%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
OMIT 8 December MSG %"Dita Kombëtare e Rinisë%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
OMIT 25 December MSG %"Krishtlindjet%" %! %b.
|
||||
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ë)%" %! %b.
|
||||
19
include/holidays/am.rem
Normal file
19
include/holidays/am.rem
Normal file
@@ -0,0 +1,19 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Armenia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"Նոր տարվա օր%" %! %b.
|
||||
OMIT 2 January MSG %"Նոր տարվա օր%" %! %b.
|
||||
OMIT 6 January MSG %"Սուրբ Ծնունդ եւ Հայտնություն%" %! %b.
|
||||
OMIT 28 January MSG %"Բանակի օր%" %! %b.
|
||||
OMIT 8 March MSG %"Կանանց տոն%" %! %b.
|
||||
OMIT 24 April MSG %"Եղեռնի զոհերի հիշատակի օր%" %! %b.
|
||||
OMIT 1 May MSG %"Աշխատանքի օր%" %! %b.
|
||||
OMIT 9 May MSG %"Հաղթանակի և Խաղաղության տոն%" %! %b.
|
||||
OMIT 28 May MSG %"Հանրապետության օր%" %! %b.
|
||||
OMIT 5 July MSG %"Սահմանադրության օր%" %! %b.
|
||||
OMIT 21 September MSG %"Անկախության օր%" %! %b.
|
||||
OMIT 31 December MSG %"Նոր տարվա գիշեր%" %! %b.
|
||||
41
include/holidays/ao.rem
Normal file
41
include/holidays/ao.rem
Normal file
@@ -0,0 +1,41 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Angola
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"Dia do Ano Novo%" %! %b.
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia do Ano Novo (ponte)%" %! %b.
|
||||
REM 3 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia do Início da Luta Armada de Libertação Nacional (ponte)%" %! %b.
|
||||
OMIT 4 February MSG %"Dia do Início da Luta Armada de Libertação Nacional%" %! %b.
|
||||
REM 5 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia do Início da Luta Armada de Libertação Nacional (ponte)%" %! %b.
|
||||
REM 12 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia do Carnaval (ponte)%" %! %b.
|
||||
REM 14 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia do Carnaval (ponte)%" %! %b.
|
||||
OMIT [easterdate($Uy)-47] MSG %"Dia do Carnaval%" %! %b.
|
||||
REM 7 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia Internacional da Mulher (ponte)%" %! %b.
|
||||
OMIT 8 March MSG %"Dia Internacional da Mulher%" %! %b.
|
||||
REM 9 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia Internacional da Mulher (ponte)%" %! %b.
|
||||
REM 22 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia da Libertação da África Austral (ponte)%" %! %b.
|
||||
OMIT 23 March MSG %"Dia da Libertação da África Austral%" %! %b.
|
||||
REM 24 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia da Libertação da África Austral (ponte)%" %! %b.
|
||||
REM 3 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia da Paz e Reconciliação Nacional (ponte)%" %! %b.
|
||||
OMIT 4 April MSG %"Dia da Paz e Reconciliação Nacional%" %! %b.
|
||||
REM 5 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia da Paz e Reconciliação Nacional (ponte)%" %! %b.
|
||||
OMIT [easterdate($Uy)-2] MSG %"Sexta-Feira Santa%" %! %b.
|
||||
REM 30 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia Internacional do Trabalhador (ponte)%" %! %b.
|
||||
OMIT 1 May MSG %"Dia Internacional do Trabalhador%" %! %b.
|
||||
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia Internacional do Trabalhador (ponte)%" %! %b.
|
||||
REM 16 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia do Fundador da Nação e do Herói Nacional (ponte)%" %! %b.
|
||||
OMIT 17 September MSG %"Dia do Fundador da Nação e do Herói Nacional%" %! %b.
|
||||
REM 18 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia do Fundador da Nação e do Herói Nacional (ponte)%" %! %b.
|
||||
REM 1 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia dos Finados (ponte)%" %! %b.
|
||||
OMIT 2 November MSG %"Dia dos Finados%" %! %b.
|
||||
REM 3 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia dos Finados (ponte)%" %! %b.
|
||||
REM 10 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia da Independência Nacional (ponte)%" %! %b.
|
||||
OMIT 11 November MSG %"Dia da Independência Nacional%" %! %b.
|
||||
REM 12 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia da Independência Nacional (ponte)%" %! %b.
|
||||
REM 24 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia de Natal e da Família (ponte)%" %! %b.
|
||||
OMIT 25 December MSG %"Dia de Natal e da Família%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 4] MSG %"Dia de Natal e da Família (ponte)%" %! %b.
|
||||
REM 31 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Dia do Ano Novo (ponte)%" %! %b.
|
||||
38
include/holidays/ar.rem
Normal file
38
include/holidays/ar.rem
Normal file
@@ -0,0 +1,38 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Argentina
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"Año Nuevo%" %! %b.
|
||||
OMIT [easterdate($Uy)-48] MSG %"Día de Carnaval%" %! %b.
|
||||
OMIT [easterdate($Uy)-47] MSG %"Día de Carnaval%" %! %b.
|
||||
OMIT 24 March MSG %"Día Nacional de la Memoria por la Verdad y la Justicia%" %! %b.
|
||||
OMIT 2 April MSG %"Día del Veterano y de los Caidos en la Guerra de Malvinas%" %! %b.
|
||||
OMIT [easterdate($Uy)-2] MSG %"Viernes Santo%" %! %b.
|
||||
OMIT 1 May MSG %"Día del Trabajo%" %! %b.
|
||||
OMIT 25 May MSG %"Día de la Revolución de Mayo%" %! %b.
|
||||
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)%" %! %b.
|
||||
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)%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 20 June MSG %"Paso a la Inmortalidad del General Don Manuel Belgrano%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 9 July MSG %"Día de la Independencia%" %! %b.
|
||||
REM 15 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+2) == 3] MSG %"Paso a la Inmortalidad del General Don José de San Martin (observado)%" %! %b.
|
||||
REM 16 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Paso a la Inmortalidad del General Don José de San Martin (observado)%" %! %b.
|
||||
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)%" %! %b.
|
||||
REM 20 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-3) == 5] MSG %"Paso a la Inmortalidad del General Don José de San Martin (observado)%" %! %b.
|
||||
REM 21 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-4) == 4] MSG %"Paso a la Inmortalidad del General Don José de San Martin (observado)%" %! %b.
|
||||
REM 10 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+2) == 3] MSG %"Día del Respeto a la Diversidad Cultural (observado)%" %! %b.
|
||||
REM 11 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Día del Respeto a la Diversidad Cultural (observado)%" %! %b.
|
||||
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)%" %! %b.
|
||||
REM 15 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-3) == 5] MSG %"Día del Respeto a la Diversidad Cultural (observado)%" %! %b.
|
||||
REM 16 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-4) == 4] MSG %"Día del Respeto a la Diversidad Cultural (observado)%" %! %b.
|
||||
REM 18 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+2) == 3] MSG %"Día de la Soberanía Nacional (observado)%" %! %b.
|
||||
REM 19 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 2] MSG %"Día de la Soberanía Nacional (observado)%" %! %b.
|
||||
REM 20 November ADDOMIT SCANFROM -28 SATISFY [$Tw != 2 && $Tw != 3 && $Tw != 4 && $Tw != 5] MSG %"Día de la Soberanía Nacional (observado)%" %! %b.
|
||||
REM 23 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-3) == 5] MSG %"Día de la Soberanía Nacional (observado)%" %! %b.
|
||||
REM 24 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-4) == 4] MSG %"Día de la Soberanía Nacional (observado)%" %! %b.
|
||||
OMIT 8 December MSG %"Inmaculada Concepción de María%" %! %b.
|
||||
OMIT 25 December MSG %"Navidad%" %! %b.
|
||||
40
include/holidays/as.rem
Normal file
40
include/holidays/as.rem
Normal file
@@ -0,0 +1,40 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for American Samoa
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"New Year's Day%" %! %b.
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM Third Monday in January ADDOMIT SCANFROM -28 MSG %"Martin Luther King Jr. Day%" %! %b.
|
||||
REM Third Monday in February ADDOMIT SCANFROM -28 MSG %"Washington's Birthday%" %! %b.
|
||||
REM 16 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG %"American Samoa Flag Day (observed)%" %! %b.
|
||||
OMIT 17 April MSG %"American Samoa Flag Day%" %! %b.
|
||||
REM 18 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"American Samoa Flag Day (observed)%" %! %b.
|
||||
REM Last Monday in May ADDOMIT SCANFROM -28 MSG %"Memorial Day%" %! %b.
|
||||
REM 18 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG %"Juneteenth National Independence Day (observed)%" %! %b.
|
||||
OMIT 19 June MSG %"Juneteenth National Independence Day%" %! %b.
|
||||
REM 20 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Juneteenth National Independence Day (observed)%" %! %b.
|
||||
REM 3 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG %"Independence Day (observed)%" %! %b.
|
||||
OMIT 4 July MSG %"Independence Day%" %! %b.
|
||||
REM 5 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Independence Day (observed)%" %! %b.
|
||||
REM 15 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG %"Manu'a Islands Cession Day (observed)%" %! %b.
|
||||
OMIT 16 July MSG %"Manu'a Islands Cession Day%" %! %b.
|
||||
REM 17 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Manu'a Islands Cession Day (observed)%" %! %b.
|
||||
REM First Monday in September ADDOMIT SCANFROM -28 MSG %"Labor Day%" %! %b.
|
||||
REM Second Monday in October ADDOMIT SCANFROM -28 MSG %"Columbus Day%" %! %b.
|
||||
REM Second Sunday in October ADDOMIT SCANFROM -28 MSG %"White Sunday%" %! %b.
|
||||
REM 10 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG %"Veterans Day (observed)%" %! %b.
|
||||
OMIT 11 November MSG %"Veterans Day%" %! %b.
|
||||
REM 12 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Veterans Day (observed)%" %! %b.
|
||||
REM Fourth Thursday in November ADDOMIT SCANFROM -28 MSG %"Thanksgiving%" %! %b.
|
||||
REM 24 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG %"Christmas Day (observed)%" %! %b.
|
||||
OMIT 25 December MSG %"Christmas Day%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 31 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T+1) == 6] MSG %"New Year's Day (observed)%" %! %b.
|
||||
|
||||
# Optional holidays
|
||||
REM 14 February MSG %"Valentine's Day%" %! %b.
|
||||
REM 17 March MSG %"Saint Patrick's Day%" %! %b.
|
||||
REM 31 October MSG %"Halloween%" %! %b.
|
||||
32
include/holidays/at.rem
Normal file
32
include/holidays/at.rem
Normal file
@@ -0,0 +1,32 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Austria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
#
|
||||
# Note: This file consists only of the country-wide
|
||||
# holidays for Austria.
|
||||
#
|
||||
# For region-specific holidays, you need to include
|
||||
# one of the regional *.rem files in the directory
|
||||
# [$SysInclude]/holidays/at/
|
||||
|
||||
OMIT 1 January MSG %"Neujahr%" %! %b.
|
||||
OMIT 6 January MSG %"Heilige Drei Könige%" %! %b.
|
||||
OMIT [easterdate($Uy)+1] MSG %"Ostermontag%" %! %b.
|
||||
OMIT 1 May MSG %"Staatsfeiertag%" %! %b.
|
||||
OMIT [easterdate($Uy)+39] MSG %"Christi Himmelfahrt%" %! %b.
|
||||
OMIT [easterdate($Uy)+50] MSG %"Pfingstmontag%" %! %b.
|
||||
OMIT [easterdate($Uy)+60] MSG %"Fronleichnam%" %! %b.
|
||||
OMIT 15 August MSG %"Mariä Himmelfahrt%" %! %b.
|
||||
OMIT 26 October MSG %"Nationalfeiertag%" %! %b.
|
||||
OMIT 1 November MSG %"Allerheiligen%" %! %b.
|
||||
OMIT 8 December MSG %"Mariä Empfängnis%" %! %b.
|
||||
OMIT 25 December MSG %"Christtag%" %! %b.
|
||||
OMIT 26 December MSG %"Stefanitag%" %! %b.
|
||||
|
||||
# Optional holidays
|
||||
REM [easterdate($Uy)-2] MSG %"Karfreitag%" %! %b.
|
||||
REM 24 December MSG %"Heiliger Abend%" %! %b.
|
||||
REM 31 December MSG %"Silvester%" %! %b.
|
||||
15
include/holidays/at/1.rem
Normal file
15
include/holidays/at/1.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 1 in Austria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 1.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/at.rem
|
||||
|
||||
|
||||
# Optional holidays
|
||||
REM 11 November MSG %"Hl. Martin%" %! %b.
|
||||
16
include/holidays/at/2.rem
Normal file
16
include/holidays/at/2.rem
Normal file
@@ -0,0 +1,16 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 2 in Austria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 2.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/at.rem
|
||||
|
||||
|
||||
# Optional holidays
|
||||
REM 19 March MSG %"Hl. Josef%" %! %b.
|
||||
REM 10 October MSG %"Tag der Volksabstimmung%" %! %b.
|
||||
15
include/holidays/at/3.rem
Normal file
15
include/holidays/at/3.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 3 in Austria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 3.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/at.rem
|
||||
|
||||
|
||||
# Optional holidays
|
||||
REM 15 November MSG %"Hl. Leopold%" %! %b.
|
||||
15
include/holidays/at/4.rem
Normal file
15
include/holidays/at/4.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 4 in Austria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 4.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/at.rem
|
||||
|
||||
|
||||
# Optional holidays
|
||||
REM 4 May MSG %"Hl. Florian%" %! %b.
|
||||
15
include/holidays/at/5.rem
Normal file
15
include/holidays/at/5.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 5 in Austria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 5.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/at.rem
|
||||
|
||||
|
||||
# Optional holidays
|
||||
REM 24 September MSG %"Hl. Rupert%" %! %b.
|
||||
15
include/holidays/at/6.rem
Normal file
15
include/holidays/at/6.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 6 in Austria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 6.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/at.rem
|
||||
|
||||
|
||||
# Optional holidays
|
||||
REM 19 March MSG %"Hl. Josef%" %! %b.
|
||||
15
include/holidays/at/7.rem
Normal file
15
include/holidays/at/7.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 7 in Austria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 7.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/at.rem
|
||||
|
||||
|
||||
# Optional holidays
|
||||
REM 19 March MSG %"Hl. Josef%" %! %b.
|
||||
15
include/holidays/at/8.rem
Normal file
15
include/holidays/at/8.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 8 in Austria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 8.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/at.rem
|
||||
|
||||
|
||||
# Optional holidays
|
||||
REM 19 March MSG %"Hl. Josef%" %! %b.
|
||||
15
include/holidays/at/9.rem
Normal file
15
include/holidays/at/9.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision 9 in Austria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision 9.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/at.rem
|
||||
|
||||
|
||||
# Optional holidays
|
||||
REM 15 November MSG %"Hl. Leopold%" %! %b.
|
||||
21
include/holidays/au.rem
Normal file
21
include/holidays/au.rem
Normal file
@@ -0,0 +1,21 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Australia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
#
|
||||
# Note: This file consists only of the country-wide
|
||||
# holidays for Australia.
|
||||
#
|
||||
# For region-specific holidays, you need to include
|
||||
# one of the regional *.rem files in the directory
|
||||
# [$SysInclude]/holidays/au/
|
||||
|
||||
OMIT 1 January MSG %"New Year's Day%" %! %b.
|
||||
OMIT 26 January MSG %"Australia Day%" %! %b.
|
||||
OMIT [easterdate($Uy)-2] MSG %"Good Friday%" %! %b.
|
||||
OMIT [easterdate($Uy)+1] MSG %"Easter Monday%" %! %b.
|
||||
OMIT 25 April MSG %"ANZAC Day%" %! %b.
|
||||
OMIT 25 December MSG %"Christmas Day%" %! %b.
|
||||
OMIT 26 December MSG %"Boxing Day%" %! %b.
|
||||
27
include/holidays/au/act.rem
Normal file
27
include/holidays/au/act.rem
Normal file
@@ -0,0 +1,27 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision ACT in Australia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision ACT.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/au.rem
|
||||
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM Second Monday in March ADDOMIT SCANFROM -28 MSG %"Canberra Day%" %! %b.
|
||||
OMIT [easterdate($Uy)-1] MSG %"Easter Saturday%" %! %b.
|
||||
OMIT [easterdate($Uy)] MSG %"Easter Sunday%" %! %b.
|
||||
REM Monday 27 May ADDOMIT SCANFROM -28 MSG %"Reconciliation Day%" %! %b.
|
||||
REM Second Monday in June ADDOMIT SCANFROM -28 MSG %"King's Birthday%" %! %b.
|
||||
REM First Monday in October ADDOMIT SCANFROM -28 MSG %"Labour Day%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Boxing Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Boxing Day (observed)%" %! %b.
|
||||
|
||||
# Optional holidays
|
||||
REM First Monday in August SCANFROM -28 MSG %"Bank Holiday%" %! %b.
|
||||
25
include/holidays/au/nsw.rem
Normal file
25
include/holidays/au/nsw.rem
Normal file
@@ -0,0 +1,25 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision NSW in Australia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision NSW.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/au.rem
|
||||
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"New Year's Day (observed)%" %! %b.
|
||||
OMIT [easterdate($Uy)-1] MSG %"Easter Saturday%" %! %b.
|
||||
OMIT [easterdate($Uy)] MSG %"Easter Sunday%" %! %b.
|
||||
REM Second Monday in June ADDOMIT SCANFROM -28 MSG %"King's Birthday%" %! %b.
|
||||
REM First Monday in October ADDOMIT SCANFROM -28 MSG %"Labour Day%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Boxing Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Boxing Day (observed)%" %! %b.
|
||||
|
||||
# Optional holidays
|
||||
REM First Monday in August SCANFROM -28 MSG %"Bank Holiday%" %! %b.
|
||||
28
include/holidays/au/nt.rem
Normal file
28
include/holidays/au/nt.rem
Normal file
@@ -0,0 +1,28 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision NT in Australia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision NT.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/au.rem
|
||||
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"New Year's Day (observed)%" %! %b.
|
||||
OMIT [easterdate($Uy)-1] MSG %"Easter Saturday%" %! %b.
|
||||
OMIT [easterdate($Uy)] MSG %"Easter Sunday%" %! %b.
|
||||
REM First Monday in May ADDOMIT SCANFROM -28 MSG %"May Day%" %! %b.
|
||||
REM Second Monday in June ADDOMIT SCANFROM -28 MSG %"King's Birthday%" %! %b.
|
||||
REM First Monday in August ADDOMIT SCANFROM -28 MSG %"Picnic Day%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 1] MSG %"Boxing Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Boxing Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Boxing Day (observed)%" %! %b.
|
||||
|
||||
# Optional holidays
|
||||
REM 24 December MSG %"Christmas Eve (from 7pm)%" %! %b.
|
||||
REM 31 December MSG %"New Year's Eve (from 7pm)%" %! %b.
|
||||
23
include/holidays/au/qld.rem
Normal file
23
include/holidays/au/qld.rem
Normal file
@@ -0,0 +1,23 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision QLD in Australia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision QLD.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/au.rem
|
||||
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"New Year's Day (observed)%" %! %b.
|
||||
OMIT [easterdate($Uy)-1] MSG %"Easter Saturday%" %! %b.
|
||||
OMIT [easterdate($Uy)] MSG %"Easter Sunday%" %! %b.
|
||||
REM First Monday in May ADDOMIT SCANFROM -28 MSG %"Labour Day%" %! %b.
|
||||
REM Wednesday 10 August ADDOMIT SCANFROM -28 MSG %"The Royal Queensland Show%" %! %b.
|
||||
REM First Monday in October ADDOMIT SCANFROM -28 MSG %"King's Birthday%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Boxing Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Boxing Day (observed)%" %! %b.
|
||||
29
include/holidays/au/sa.rem
Normal file
29
include/holidays/au/sa.rem
Normal file
@@ -0,0 +1,29 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision SA in Australia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision SA.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/au.rem
|
||||
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM Second Monday in March ADDOMIT SCANFROM -28 MSG %"Adelaide Cup Day%" %! %b.
|
||||
OMIT [easterdate($Uy)-1] MSG %"Easter Saturday%" %! %b.
|
||||
OMIT [easterdate($Uy)] MSG %"Easter Sunday%" %! %b.
|
||||
REM Second Monday in June ADDOMIT SCANFROM -28 MSG %"King's Birthday%" %! %b.
|
||||
REM First Monday in October ADDOMIT SCANFROM -28 MSG %"Labour Day%" %! %b.
|
||||
OMIT 26 December MSG %"Proclamation Day%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 1] MSG %"Proclamation Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Proclamation Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Proclamation Day (observed)%" %! %b.
|
||||
|
||||
# Optional holidays
|
||||
REM 24 December MSG %"Christmas Eve (from 7pm)%" %! %b.
|
||||
REM 31 December MSG %"New Year's Eve (from 7pm)%" %! %b.
|
||||
16
include/holidays/au/tas.rem
Normal file
16
include/holidays/au/tas.rem
Normal file
@@ -0,0 +1,16 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision TAS in Australia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision TAS.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/au.rem
|
||||
|
||||
REM Second Monday in March ADDOMIT SCANFROM -28 MSG %"Eight Hours Day%" %! %b.
|
||||
REM Second Monday in June ADDOMIT SCANFROM -28 MSG %"King's Birthday%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Christmas Day (observed)%" %! %b.
|
||||
24
include/holidays/au/vic.rem
Normal file
24
include/holidays/au/vic.rem
Normal file
@@ -0,0 +1,24 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision VIC in Australia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision VIC.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/au.rem
|
||||
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM Second Monday in March ADDOMIT SCANFROM -28 MSG %"Labour Day%" %! %b.
|
||||
OMIT [easterdate($Uy)-1] MSG %"Easter Saturday%" %! %b.
|
||||
OMIT [easterdate($Uy)] MSG %"Easter Sunday%" %! %b.
|
||||
REM Second Monday in June ADDOMIT SCANFROM -28 MSG %"King's Birthday%" %! %b.
|
||||
REM Saturday 1 October --8 ADDOMIT SCANFROM -28 MSG %"Grand Final Day%" %! %b.
|
||||
REM First Tuesday in November ADDOMIT SCANFROM -28 MSG %"Melbourne Cup Day%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Boxing Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Boxing Day (observed)%" %! %b.
|
||||
24
include/holidays/au/wa.rem
Normal file
24
include/holidays/au/wa.rem
Normal file
@@ -0,0 +1,24 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision WA in Australia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision WA.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/au.rem
|
||||
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"New Year's Day (observed)%" %! %b.
|
||||
REM First Monday in March ADDOMIT SCANFROM -28 MSG %"Labour Day%" %! %b.
|
||||
OMIT [easterdate($Uy)] MSG %"Easter Sunday%" %! %b.
|
||||
REM 26 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"ANZAC Day (observed)%" %! %b.
|
||||
REM 27 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"ANZAC Day (observed)%" %! %b.
|
||||
REM First Monday in June ADDOMIT SCANFROM -28 MSG %"Western Australia Day%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 1] MSG %"Boxing Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Christmas Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Boxing Day (observed)%" %! %b.
|
||||
REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Boxing Day (observed)%" %! %b.
|
||||
19
include/holidays/aw.rem
Normal file
19
include/holidays/aw.rem
Normal file
@@ -0,0 +1,19 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Aruba
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"Aña Nobo%" %! %b.
|
||||
OMIT 25 January MSG %"Dia di Betico%" %! %b.
|
||||
OMIT [easterdate($Uy)-48] MSG %"Dialuna prome cu diaranson di shinish%" %! %b.
|
||||
OMIT 18 March MSG %"Dia di Himno y Bandera%" %! %b.
|
||||
OMIT [easterdate($Uy)-2] MSG %"Bierna Santo%" %! %b.
|
||||
OMIT [easterdate($Uy)+1] MSG %"Di dos dia di Pasco di Resureccion%" %! %b.
|
||||
OMIT 1 May MSG %"Dia di Obrero%" %! %b.
|
||||
OMIT [easterdate($Uy)+39] MSG %"Dia di Asuncion%" %! %b.
|
||||
REM 31 August ADDOMIT SCANFROM -28 SATISFY [$Tw != 0] MSG %"Dia di Rey%" %! %b.
|
||||
REM 1 September ADDOMIT SCANFROM -28 SATISFY [$Tw == 1] MSG %"Dia di Rey%" %! %b.
|
||||
OMIT 25 December MSG %"Pasco di Nacemento%" %! %b.
|
||||
OMIT 26 December MSG %"Di dos dia di Pasco di Nacemento%" %! %b.
|
||||
44
include/holidays/az.rem
Normal file
44
include/holidays/az.rem
Normal file
@@ -0,0 +1,44 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Azerbaijan
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"Yeni il bayramı%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 2 January MSG %"Yeni il bayramı%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 20 January MSG %"Ümumxalq hüzn günü%" %! %b.
|
||||
OMIT 8 March MSG %"Qadınlar günü%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 20 March MSG %"Novruz bayramı%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 21 March MSG %"Novruz bayramı%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 22 March MSG %"Novruz bayramı%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 23 March MSG %"Novruz bayramı%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 24 March MSG %"Novruz bayramı%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 9 May MSG %"Faşizm üzərində qələbə günü%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 28 May MSG %"Müstəqillik Günü%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 15 June MSG %"Azərbaycan xalqının milli qurtuluş günü%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 26 June MSG %"Azərbaycan Respublikasının Silahlı Qüvvələri günü%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 8 November MSG %"Zəfər Günü%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 9 November MSG %"Azərbaycan Respublikasının Dövlət bayrağı günü%" %! %b.
|
||||
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)%" %! %b.
|
||||
OMIT 31 December MSG %"Dünya azərbaycanlılarının həmrəyliyi günü%" %! %b.
|
||||
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)%" %! %b.
|
||||
|
||||
# Optional holidays
|
||||
REM 27 September MSG %"Anım Günü%" %! %b.
|
||||
REM 18 October MSG %"Müstəqilliyin Bərpası Günü%" %! %b.
|
||||
REM 12 November MSG %"Konstitusiya Günü%" %! %b.
|
||||
REM 17 November MSG %"Milli Dirçəliş Günü%" %! %b.
|
||||
22
include/holidays/ba.rem
Normal file
22
include/holidays/ba.rem
Normal file
@@ -0,0 +1,22 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Bosnia And Herzegovina
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
#
|
||||
# Note: This file consists only of the country-wide
|
||||
# holidays for Bosnia And Herzegovina.
|
||||
#
|
||||
# For region-specific holidays, you need to include
|
||||
# one of the regional *.rem files in the directory
|
||||
# [$SysInclude]/holidays/ba/
|
||||
|
||||
OMIT 1 January MSG %"Nova godina%" %! %b.
|
||||
OMIT 2 January MSG %"Nova godina%" %! %b.
|
||||
OMIT 7 January MSG %"Božić (Pravoslavni)%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)-2] MSG %"Veliki petak (Pravoslavni)%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)+1] MSG %"Uskrsni ponedjeljak (Katolički)%" %! %b.
|
||||
OMIT 1 May MSG %"Međunarodni praznik rada%" %! %b.
|
||||
OMIT 2 May MSG %"Međunarodni praznik rada%" %! %b.
|
||||
OMIT 25 December MSG %"Božić (Katolički)%" %! %b.
|
||||
23
include/holidays/ba/bih.rem
Normal file
23
include/holidays/ba/bih.rem
Normal file
@@ -0,0 +1,23 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision BIH in Bosnia And Herzegovina
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision BIH.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/ba.rem
|
||||
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Nova godina (preneseno)%" %! %b.
|
||||
OMIT 6 January MSG %"Badnji dan (Pravoslavni)%" %! %b.
|
||||
OMIT 1 March MSG %"Dan nezavisnosti%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)-2] MSG %"Veliki petak (Katolički)%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)] MSG %"Uskrs (Katolički)%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)] MSG %"Vaskrs (Pravoslavni)%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)+1] MSG %"Uskrsni ponedjeljak (Pravoslavni)%" %! %b.
|
||||
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Međunarodni praznik rada (preneseno)%" %! %b.
|
||||
OMIT 9 May MSG %"Dan pobjede nad fašizmom%" %! %b.
|
||||
OMIT 25 November MSG %"Dan državnosti%" %! %b.
|
||||
OMIT 24 December MSG %"Badnji dan (Katolički)%" %! %b.
|
||||
20
include/holidays/ba/brc.rem
Normal file
20
include/holidays/ba/brc.rem
Normal file
@@ -0,0 +1,20 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision BRC in Bosnia And Herzegovina
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision BRC.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/ba.rem
|
||||
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Nova godina (preneseno)%" %! %b.
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Nova godina (preneseno)%" %! %b.
|
||||
REM 8 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Božić (Pravoslavni) (preneseno)%" %! %b.
|
||||
OMIT 8 March MSG %"Dan uspostavljanja Brčko distrikta%" %! %b.
|
||||
REM 9 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Dan uspostavljanja Brčko distrikta (preneseno)%" %! %b.
|
||||
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Međunarodni praznik rada (preneseno)%" %! %b.
|
||||
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Međunarodni praznik rada (preneseno)%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Božić (Katolički) (preneseno)%" %! %b.
|
||||
23
include/holidays/ba/srp.rem
Normal file
23
include/holidays/ba/srp.rem
Normal file
@@ -0,0 +1,23 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision SRP in Bosnia And Herzegovina
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision SRP.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/ba.rem
|
||||
|
||||
REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Nova godina (preneseno)%" %! %b.
|
||||
OMIT 6 January MSG %"Badnji dan (Pravoslavni)%" %! %b.
|
||||
OMIT 14 January MSG %"Pravoslavna Nova godina%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)-2] MSG %"Veliki petak (Katolički)%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)] MSG %"Uskrs (Katolički)%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)] MSG %"Vaskrs (Pravoslavni)%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)+1] MSG %"Uskrsni ponedjeljak (Pravoslavni)%" %! %b.
|
||||
REM 3 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 6] MSG %"Međunarodni praznik rada (preneseno)%" %! %b.
|
||||
OMIT 9 May MSG %"Dan pobjede nad fašizmom%" %! %b.
|
||||
OMIT 21 November MSG %"Dan uspostave Opšteg okvirnog sporazuma za mir u Bosni i Hercegovini%" %! %b.
|
||||
OMIT 24 December MSG %"Badnji dan (Katolički)%" %! %b.
|
||||
28
include/holidays/bb.rem
Normal file
28
include/holidays/bb.rem
Normal file
@@ -0,0 +1,28 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Barbados
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"New Year's Day%" %! %b.
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
OMIT 21 January MSG %"Errol Barrow Day%" %! %b.
|
||||
REM 22 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Errol Barrow Day (observed)%" %! %b.
|
||||
OMIT [easterdate($Uy)-2] MSG %"Good Friday%" %! %b.
|
||||
OMIT [easterdate($Uy)+1] MSG %"Easter Monday%" %! %b.
|
||||
OMIT 28 April MSG %"National Heroes Day%" %! %b.
|
||||
REM 29 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"National Heroes Day (observed)%" %! %b.
|
||||
OMIT 1 May MSG %"May Day%" %! %b.
|
||||
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"May Day (observed)%" %! %b.
|
||||
OMIT [easterdate($Uy)+50] MSG %"Whit Monday%" %! %b.
|
||||
OMIT 1 August MSG %"Emancipation Day%" %! %b.
|
||||
REM First Monday in August ADDOMIT SCANFROM -28 MSG %"Kadooment Day%" %! %b.
|
||||
REM 2 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 1] MSG %"Emancipation Day (observed)%" %! %b.
|
||||
REM 3 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Emancipation Day (observed)%" %! %b.
|
||||
OMIT 30 November MSG %"Independence Day%" %! %b.
|
||||
REM 1 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Independence Day (observed)%" %! %b.
|
||||
OMIT 25 December MSG %"Christmas Day%" %! %b.
|
||||
OMIT 26 December MSG %"Boxing Day%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Boxing Day (observed)%" %! %b.
|
||||
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-2) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
14
include/holidays/bd.rem
Normal file
14
include/holidays/bd.rem
Normal file
@@ -0,0 +1,14 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Bangladesh
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 21 February MSG %"International Mother's language Day%" %! %b.
|
||||
OMIT 17 March MSG %"Sheikh Mujibur Rahman's Birthday and Children's Day%" %! %b.
|
||||
OMIT 26 March MSG %"Independence Day%" %! %b.
|
||||
OMIT 14 April MSG %"Bengali New Year's Day%" %! %b.
|
||||
OMIT 1 May MSG %"May Day%" %! %b.
|
||||
OMIT 15 August MSG %"National Mourning Day%" %! %b.
|
||||
OMIT 16 December MSG %"Victory Day%" %! %b.
|
||||
24
include/holidays/be.rem
Normal file
24
include/holidays/be.rem
Normal file
@@ -0,0 +1,24 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Belgium
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"Nieuwjaar%" %! %b.
|
||||
OMIT [easterdate($Uy)] MSG %"Pasen%" %! %b.
|
||||
OMIT [easterdate($Uy)+1] MSG %"Paasmaandag%" %! %b.
|
||||
OMIT 1 May MSG %"Dag van de Arbeid%" %! %b.
|
||||
OMIT [easterdate($Uy)+39] MSG %"O. L. H. Hemelvaart%" %! %b.
|
||||
OMIT [easterdate($Uy)+49] MSG %"Pinksteren%" %! %b.
|
||||
OMIT [easterdate($Uy)+50] MSG %"Pinkstermaandag%" %! %b.
|
||||
OMIT 21 July MSG %"Nationale feestdag%" %! %b.
|
||||
OMIT 15 August MSG %"O. L. V. Hemelvaart%" %! %b.
|
||||
OMIT 1 November MSG %"Allerheiligen%" %! %b.
|
||||
OMIT 11 November MSG %"Wapenstilstand%" %! %b.
|
||||
OMIT 25 December MSG %"Kerstmis%" %! %b.
|
||||
|
||||
# Optional holidays
|
||||
REM [easterdate($Uy)-2] MSG %"Goede Vrijdag%" %! %b.
|
||||
REM [easterdate($Uy)+40] MSG %"Vrijdag na O. L. H. Hemelvaart%" %! %b.
|
||||
REM 26 December MSG %"Banksluitingsdag%" %! %b.
|
||||
29
include/holidays/bf.rem
Normal file
29
include/holidays/bf.rem
Normal file
@@ -0,0 +1,29 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Burkina Faso
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"New Year's Day%" %! %b.
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
OMIT 3 January MSG %"Revolution Day%" %! %b.
|
||||
REM 4 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Revolution Day (observed)%" %! %b.
|
||||
OMIT 8 March MSG %"International Women's Day%" %! %b.
|
||||
REM 9 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"International Women's Day (observed)%" %! %b.
|
||||
OMIT [easterdate($Uy)+1] MSG %"Easter Monday%" %! %b.
|
||||
OMIT 1 May MSG %"Labour Day%" %! %b.
|
||||
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Labour Day (observed)%" %! %b.
|
||||
OMIT [easterdate($Uy)+39] MSG %"Ascension Day%" %! %b.
|
||||
OMIT 5 August MSG %"Independence Day%" %! %b.
|
||||
REM 6 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Independence Day (observed)%" %! %b.
|
||||
OMIT 15 August MSG %"Assumption Day%" %! %b.
|
||||
REM 16 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Assumption Day (observed)%" %! %b.
|
||||
OMIT 31 October MSG %"Martyrs' Day%" %! %b.
|
||||
OMIT 1 November MSG %"All Saints' Day%" %! %b.
|
||||
REM 1 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Martyrs' Day (observed)%" %! %b.
|
||||
REM 2 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"All Saints' Day (observed)%" %! %b.
|
||||
OMIT 11 December MSG %"Proclamation of Independence Day%" %! %b.
|
||||
REM 12 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Proclamation of Independence Day (observed)%" %! %b.
|
||||
OMIT 25 December MSG %"Christmas Day%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
34
include/holidays/bg.rem
Normal file
34
include/holidays/bg.rem
Normal file
@@ -0,0 +1,34 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Bulgaria
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"Нова година%" %! %b.
|
||||
REM 1 January OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 1, 1)), 0, 6)] MSG %"Нова година (почивен ден)%" %! %b.
|
||||
OMIT 3 March MSG %"Ден на Освобождението на България от османско иго%" %! %b.
|
||||
REM 3 March OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 3, 3)), 0, 6)] MSG %"Ден на Освобождението на България от османско иго (почивен ден)%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)-2] MSG %"Велики петък%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)-1] MSG %"Велика събота%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)] MSG %"Великден%" %! %b.
|
||||
OMIT [orthodoxeaster($Uy)+1] MSG %"Великден%" %! %b.
|
||||
OMIT 1 May MSG %"Ден на труда и на международната работническа солидарност%" %! %b.
|
||||
REM 1 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 5, 1)), 0, 6)] MSG %"Ден на труда и на международната работническа солидарност (почивен ден)%" %! %b.
|
||||
OMIT 6 May MSG %"Гергьовден, Ден на храбростта и Българската армия%" %! %b.
|
||||
REM 6 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 5, 6)), 0, 6)] MSG %"Гергьовден, Ден на храбростта и Българската армия (почивен ден)%" %! %b.
|
||||
OMIT 24 May MSG %"Ден на светите братя Кирил и Методий, на българската азбука, просвета и култура и на славянската книжовност%" %! %b.
|
||||
REM 24 May OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 5, 24)), 0, 6)] MSG %"Ден на светите братя Кирил и Методий, на българската азбука, просвета и култура и на славянската книжовност (почивен ден)%" %! %b.
|
||||
OMIT 6 September MSG %"Ден на Съединението%" %! %b.
|
||||
REM 6 September OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 9, 6)), 0, 6)] MSG %"Ден на Съединението (почивен ден)%" %! %b.
|
||||
OMIT 22 September MSG %"Ден на Независимостта на България%" %! %b.
|
||||
REM 22 September OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 9, 22)), 0, 6)] MSG %"Ден на Независимостта на България (почивен ден)%" %! %b.
|
||||
OMIT 24 December MSG %"Бъдни вечер%" %! %b.
|
||||
REM 24 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 12, 24)), 0, 6)] MSG %"Бъдни вечер (почивен ден)%" %! %b.
|
||||
OMIT 25 December MSG %"Рождество Христово%" %! %b.
|
||||
REM 25 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 12, 25)), 0, 6)] MSG %"Рождество Христово (почивен ден)%" %! %b.
|
||||
OMIT 26 December MSG %"Рождество Христово%" %! %b.
|
||||
REM 26 December OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 SATISFY [isany(wkdaynum(date($Ty, 12, 26)), 0, 6)] MSG %"Рождество Христово (почивен ден)%" %! %b.
|
||||
|
||||
# Optional holidays
|
||||
REM 1 November MSG %"Ден на народните будители%" %! %b.
|
||||
11
include/holidays/bh.rem
Normal file
11
include/holidays/bh.rem
Normal file
@@ -0,0 +1,11 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Bahrain
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"رأس السنة الميلادية%" %! %b.
|
||||
OMIT 1 May MSG %"عيد العمال%" %! %b.
|
||||
OMIT 16 December MSG %"اليوم الوطني%" %! %b.
|
||||
OMIT 17 December MSG %"اليوم الوطني%" %! %b.
|
||||
30
include/holidays/bi.rem
Normal file
30
include/holidays/bi.rem
Normal file
@@ -0,0 +1,30 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Burundi
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"New Year's Day%" %! %b.
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
|
||||
OMIT 5 February MSG %"Unity Day%" %! %b.
|
||||
REM 6 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Unity Day (observed)%" %! %b.
|
||||
OMIT 6 April MSG %"President Ntaryamira Day%" %! %b.
|
||||
REM 7 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"President Ntaryamira Day (observed)%" %! %b.
|
||||
OMIT 1 May MSG %"Labour Day%" %! %b.
|
||||
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Labour Day (observed)%" %! %b.
|
||||
OMIT [easterdate($Uy)+39] MSG %"Ascension Day%" %! %b.
|
||||
OMIT 8 June MSG %"President Nkurunziza Day%" %! %b.
|
||||
REM 9 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"President Nkurunziza Day (observed)%" %! %b.
|
||||
OMIT 1 July MSG %"Independence Day%" %! %b.
|
||||
REM 2 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Independence Day (observed)%" %! %b.
|
||||
OMIT 15 August MSG %"Assumption Day%" %! %b.
|
||||
REM 16 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Assumption Day (observed)%" %! %b.
|
||||
OMIT 13 October MSG %"Prince Louis Rwagasore Day%" %! %b.
|
||||
REM 14 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Prince Louis Rwagasore Day (observed)%" %! %b.
|
||||
OMIT 21 October MSG %"President Ndadaye's Day%" %! %b.
|
||||
REM 22 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"President Ndadaye's Day (observed)%" %! %b.
|
||||
OMIT 1 November MSG %"All Saints' Day%" %! %b.
|
||||
REM 2 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"All Saints' Day (observed)%" %! %b.
|
||||
OMIT 25 December MSG %"Christmas Day%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Christmas Day (observed)%" %! %b.
|
||||
22
include/holidays/bn.rem
Normal file
22
include/holidays/bn.rem
Normal file
@@ -0,0 +1,22 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Brunei
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
|
||||
OMIT 1 January MSG %"Awal Tahun Masihi%" %! %b.
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Awal Tahun Masihi (diperhatikan)%" %! %b.
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 5] MSG %"Awal Tahun Masihi (diperhatikan)%" %! %b.
|
||||
OMIT 23 February MSG %"Hari Kebangsaan%" %! %b.
|
||||
REM 24 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Hari Kebangsaan (diperhatikan)%" %! %b.
|
||||
REM 24 February ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 5] MSG %"Hari Kebangsaan (diperhatikan)%" %! %b.
|
||||
OMIT 31 May MSG %"Hari Angkatan Bersenjata Diraja Brunei%" %! %b.
|
||||
REM 1 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Hari Angkatan Bersenjata Diraja Brunei (diperhatikan)%" %! %b.
|
||||
REM 1 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 5] MSG %"Hari Angkatan Bersenjata Diraja Brunei (diperhatikan)%" %! %b.
|
||||
OMIT 15 July MSG %"Hari Keputeraan KDYMM Sultan Brunei%" %! %b.
|
||||
REM 16 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Hari Keputeraan KDYMM Sultan Brunei (diperhatikan)%" %! %b.
|
||||
REM 16 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 5] MSG %"Hari Keputeraan KDYMM Sultan Brunei (diperhatikan)%" %! %b.
|
||||
OMIT 25 December MSG %"Hari Natal%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Hari Natal (diperhatikan)%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 5] MSG %"Hari Natal (diperhatikan)%" %! %b.
|
||||
32
include/holidays/bo.rem
Normal file
32
include/holidays/bo.rem
Normal file
@@ -0,0 +1,32 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Bolivia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
#
|
||||
# Note: This file consists only of the country-wide
|
||||
# holidays for Bolivia.
|
||||
#
|
||||
# For region-specific holidays, you need to include
|
||||
# one of the regional *.rem files in the directory
|
||||
# [$SysInclude]/holidays/bo/
|
||||
|
||||
OMIT 1 January MSG %"Año Nuevo%" %! %b.
|
||||
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Año Nuevo (observado)%" %! %b.
|
||||
OMIT 22 January MSG %"Día de la Creación del Estado Plurinacional de Bolivia%" %! %b.
|
||||
REM 23 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Día de la Creación del Estado Plurinacional de Bolivia (observado)%" %! %b.
|
||||
OMIT [easterdate($Uy)-48] MSG %"Carnaval%" %! %b.
|
||||
OMIT [easterdate($Uy)-47] MSG %"Carnaval%" %! %b.
|
||||
OMIT [easterdate($Uy)-2] MSG %"Viernes Santo%" %! %b.
|
||||
OMIT 1 May MSG %"Día del Trabajo%" %! %b.
|
||||
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Día del Trabajo (observado)%" %! %b.
|
||||
OMIT [easterdate($Uy)+60] MSG %"Corpus Christi%" %! %b.
|
||||
OMIT 21 June MSG %"Año Nuevo Aymara Amazónico%" %! %b.
|
||||
REM 22 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Año Nuevo Aymara Amazónico (observado)%" %! %b.
|
||||
OMIT 6 August MSG %"Día de la Independencia de Bolivia%" %! %b.
|
||||
REM 7 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Día de la Independencia de Bolivia (observado)%" %! %b.
|
||||
OMIT 17 October MSG %"Día de la Dignidad Nacional%" %! %b.
|
||||
OMIT 2 November MSG %"Día de Todos los Difuntos%" %! %b.
|
||||
OMIT 25 December MSG %"Navidad%" %! %b.
|
||||
REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Navidad (observado)%" %! %b.
|
||||
13
include/holidays/bo/b.rem
Normal file
13
include/holidays/bo/b.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision B in Bolivia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision B.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/bo.rem
|
||||
|
||||
OMIT 18 November MSG %"Día del departamento de Beni%" %! %b.
|
||||
13
include/holidays/bo/c.rem
Normal file
13
include/holidays/bo/c.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision C in Bolivia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision C.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/bo.rem
|
||||
|
||||
OMIT 14 September MSG %"Día del departamento de Cochabamba%" %! %b.
|
||||
13
include/holidays/bo/h.rem
Normal file
13
include/holidays/bo/h.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision H in Bolivia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision H.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/bo.rem
|
||||
|
||||
OMIT 25 May MSG %"Día del departamento de Chuquisaca%" %! %b.
|
||||
13
include/holidays/bo/l.rem
Normal file
13
include/holidays/bo/l.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision L in Bolivia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision L.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/bo.rem
|
||||
|
||||
OMIT 16 July MSG %"Día del departamento de La Paz%" %! %b.
|
||||
13
include/holidays/bo/n.rem
Normal file
13
include/holidays/bo/n.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision N in Bolivia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision N.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/bo.rem
|
||||
|
||||
OMIT 11 October MSG %"Día del departamento de Pando%" %! %b.
|
||||
13
include/holidays/bo/o.rem
Normal file
13
include/holidays/bo/o.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision O in Bolivia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision O.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/bo.rem
|
||||
|
||||
OMIT [easterdate($Uy)-51] MSG %"Carnaval de Oruro%" %! %b.
|
||||
13
include/holidays/bo/p.rem
Normal file
13
include/holidays/bo/p.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision P in Bolivia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision P.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/bo.rem
|
||||
|
||||
OMIT 10 November MSG %"Día del departamento de Potosí%" %! %b.
|
||||
13
include/holidays/bo/s.rem
Normal file
13
include/holidays/bo/s.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision S in Bolivia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision S.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/bo.rem
|
||||
|
||||
OMIT 24 September MSG %"Día del departamento de Santa Cruz%" %! %b.
|
||||
13
include/holidays/bo/t.rem
Normal file
13
include/holidays/bo/t.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision T in Bolivia
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision T.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/bo.rem
|
||||
|
||||
OMIT 15 April MSG %"La Tablada%" %! %b.
|
||||
33
include/holidays/br.rem
Normal file
33
include/holidays/br.rem
Normal file
@@ -0,0 +1,33 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# See important caveats in the README file in this directory.
|
||||
#
|
||||
# Note: This file consists only of the country-wide
|
||||
# holidays for Brazil.
|
||||
#
|
||||
# For region-specific holidays, you need to include
|
||||
# one of the regional *.rem files in the directory
|
||||
# [$SysInclude]/holidays/br/
|
||||
|
||||
OMIT 1 January MSG %"Confraternização Universal%" %! %b.
|
||||
OMIT [easterdate($Uy)-2] MSG %"Sexta-feira Santa%" %! %b.
|
||||
OMIT 21 April MSG %"Tiradentes%" %! %b.
|
||||
OMIT 1 May MSG %"Dia do Trabalhador%" %! %b.
|
||||
OMIT 7 September MSG %"Independência do Brasil%" %! %b.
|
||||
OMIT 12 October MSG %"Nossa Senhora Aparecida%" %! %b.
|
||||
OMIT 2 November MSG %"Finados%" %! %b.
|
||||
OMIT 15 November MSG %"Proclamação da República%" %! %b.
|
||||
OMIT 20 November MSG %"Dia Nacional de Zumbi e da Consciência Negra%" %! %b.
|
||||
OMIT 25 December MSG %"Natal%" %! %b.
|
||||
|
||||
# Optional holidays
|
||||
REM [easterdate($Uy)-48] MSG %"Carnaval%" %! %b.
|
||||
REM [easterdate($Uy)-47] MSG %"Carnaval%" %! %b.
|
||||
REM [easterdate($Uy)-46] MSG %"Início da Quaresma%" %! %b.
|
||||
REM [easterdate($Uy)+60] MSG %"Corpus Christi%" %! %b.
|
||||
REM 28 October MSG %"Dia do Servidor Público%" %! %b.
|
||||
REM 24 December MSG %"Véspera de Natal%" %! %b.
|
||||
REM 31 December MSG %"Véspera de Ano-Novo%" %! %b.
|
||||
21
include/holidays/br/ac.rem
Normal file
21
include/holidays/br/ac.rem
Normal file
@@ -0,0 +1,21 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision AC in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision AC.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
REM 23 January ADDOMIT SCANFROM -28 SATISFY [$Tw < 2 || $Tw > 4] MSG %"Dia do Evangélico%" %! %b.
|
||||
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%" %! %b.
|
||||
REM 8 March ADDOMIT SCANFROM -28 SATISFY [$Tw < 2 || $Tw > 4] MSG %"Dia Internacional da Mulher%" %! %b.
|
||||
REM Friday 8 March ADDOMIT SCANFROM -23 SATISFY [wkdaynum(date($Ty, 3, 8)) >= 2 && wkdaynum(date($Ty, 3, 8)) <= 4] MSG %"Dia Internacional da Mulher%" %! %b.
|
||||
OMIT 15 June MSG %"Aniversário do Acre%" %! %b.
|
||||
REM 23 September ADDOMIT SCANFROM -28 SATISFY [$Tw < 2 || $Tw > 4] MSG %"Dia da Amazônia%" %! %b.
|
||||
REM Friday 23 September ADDOMIT SCANFROM -23 SATISFY [wkdaynum(date($Ty, 9, 23)) >= 2 && wkdaynum(date($Ty, 9, 23)) <= 4] MSG %"Dia da Amazônia%" %! %b.
|
||||
REM 17 November ADDOMIT SCANFROM -28 SATISFY [$Tw < 2 || $Tw > 4] MSG %"Assinatura do Tratado de Petrópolis%" %! %b.
|
||||
REM Friday 17 November ADDOMIT SCANFROM -23 SATISFY [wkdaynum(date($Ty, 11, 17)) >= 2 && wkdaynum(date($Ty, 11, 17)) <= 4] MSG %"Assinatura do Tratado de Petrópolis%" %! %b.
|
||||
16
include/holidays/br/al.rem
Normal file
16
include/holidays/br/al.rem
Normal file
@@ -0,0 +1,16 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision AL in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision AL.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
OMIT 24 June MSG %"São João%" %! %b.
|
||||
OMIT 29 June MSG %"São Pedro%" %! %b.
|
||||
OMIT 16 September MSG %"Emancipação Política de Alagoas%" %! %b.
|
||||
OMIT 30 November MSG %"Dia do Evangélico%" %! %b.
|
||||
13
include/holidays/br/am.rem
Normal file
13
include/holidays/br/am.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision AM in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision AM.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
OMIT 5 September MSG %"Elevação do Amazonas à categoria de província%" %! %b.
|
||||
15
include/holidays/br/ap.rem
Normal file
15
include/holidays/br/ap.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision AP in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision AP.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
OMIT 19 March MSG %"São José%" %! %b.
|
||||
OMIT 25 July MSG %"São Tiago%" %! %b.
|
||||
OMIT 13 September MSG %"Criação do Território Federal%" %! %b.
|
||||
13
include/holidays/br/ba.rem
Normal file
13
include/holidays/br/ba.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision BA in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision BA.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
OMIT 2 July MSG %"Independência da Bahia%" %! %b.
|
||||
15
include/holidays/br/ce.rem
Normal file
15
include/holidays/br/ce.rem
Normal file
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision CE in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision CE.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
OMIT 19 March MSG %"São José%" %! %b.
|
||||
OMIT 25 March MSG %"Abolição da escravidão no Ceará%" %! %b.
|
||||
OMIT 15 August MSG %"Nossa Senhora da Assunção%" %! %b.
|
||||
14
include/holidays/br/df.rem
Normal file
14
include/holidays/br/df.rem
Normal file
@@ -0,0 +1,14 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision DF in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision DF.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
OMIT 21 April MSG %"Fundação de Brasília%" %! %b.
|
||||
OMIT 30 November MSG %"Dia do Evangélico%" %! %b.
|
||||
13
include/holidays/br/es.rem
Normal file
13
include/holidays/br/es.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision ES in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision ES.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
OMIT [easterdate($Uy)+8] MSG %"Nossa Senhora da Penha%" %! %b.
|
||||
14
include/holidays/br/go.rem
Normal file
14
include/holidays/br/go.rem
Normal file
@@ -0,0 +1,14 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision GO in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision GO.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
OMIT 26 July MSG %"Fundação da cidade de Goiás%" %! %b.
|
||||
OMIT 24 October MSG %"Pedra fundamental de Goiânia%" %! %b.
|
||||
13
include/holidays/br/ma.rem
Normal file
13
include/holidays/br/ma.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision MA in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision MA.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
OMIT 28 July MSG %"Adesão do Maranhão à independência do Brasil%" %! %b.
|
||||
13
include/holidays/br/mg.rem
Normal file
13
include/holidays/br/mg.rem
Normal file
@@ -0,0 +1,13 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Holiday file for subdivision MG in Brazil
|
||||
# Derived from the Python holidays project at
|
||||
# https://github.com/vacanza/holidays
|
||||
#
|
||||
# Note that this file includes only the holidays for
|
||||
# the specific subdivision MG.
|
||||
# See important caveats in the file ../README
|
||||
#
|
||||
# If you want the national holidays as well, you must
|
||||
# also SYSINCLUDE holidays/br.rem
|
||||
|
||||
OMIT 21 April MSG %"Execução de Tiradentes%" %! %b.
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user