Compare commits
1310 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dd5968a61b | ||
|
|
10ebefa8eb | ||
|
|
2272ba71a2 | ||
|
|
5fdd55fdca | ||
|
|
a82558064b | ||
|
|
84be60fdca | ||
|
|
461610aaa6 | ||
|
|
f687ea1010 | ||
|
|
980dff3048 | ||
|
|
e4b8c2f0f5 | ||
|
|
4f11740896 | ||
|
|
5110a83efa | ||
|
|
9b5d0a7cdd | ||
|
|
638c2b35c3 | ||
|
|
5b35f80d57 | ||
|
|
c8e051a7dd | ||
|
|
190abd00b9 | ||
|
|
acbad7568c | ||
|
|
dc92e7ca32 | ||
|
|
21946d7611 | ||
|
|
e8f4d6904b | ||
|
|
cfebb21260 | ||
|
|
4882a50b1b | ||
|
|
5ef2d6f00d | ||
|
|
053c97fc1d | ||
|
|
808600a705 | ||
|
|
1590ab6564 | ||
|
|
df7a7e6dd2 | ||
|
|
731cba4181 | ||
|
|
40993623d7 | ||
|
|
1cea249c9e | ||
|
|
79886e03ce | ||
|
|
b1678a55df | ||
|
|
799e62051f | ||
|
|
13b8c1a3cc | ||
|
|
1eb9c243fe | ||
|
|
5018057f19 | ||
|
|
b1d2d6d5e8 | ||
|
|
d4abae0f70 | ||
|
|
61e494195a | ||
|
|
9adfddfe65 | ||
|
|
abbebf69ad | ||
|
|
7641a86f23 | ||
|
|
26fbca7896 | ||
|
|
0772f7ea36 | ||
|
|
709e871061 | ||
|
|
df00368f79 | ||
|
|
b085006d1a | ||
|
|
4002778a36 | ||
|
|
69c8125ea7 | ||
|
|
aa3304798b | ||
|
|
4e3eb1f420 | ||
|
|
a0a302822b | ||
|
|
8136a59572 | ||
|
|
9a5def4c95 | ||
|
|
fb280edbc2 | ||
|
|
ec073c5dae | ||
|
|
6bb58286dc | ||
|
|
4fe23fcfcd | ||
|
|
97dbb0cfe4 | ||
|
|
5ab0a920cc | ||
|
|
830a8c6ec8 | ||
|
|
fff27ffabe | ||
|
|
4f156c407c | ||
|
|
953e1e4cc1 | ||
|
|
628f6b5fa6 | ||
|
|
f0e8d2027c | ||
|
|
b0e249e564 | ||
|
|
5cc3c8d05d | ||
|
|
ae22612584 | ||
|
|
69a60103b9 | ||
|
|
fdc791a676 | ||
|
|
1d598d0e8c | ||
|
|
49aa62b3b4 | ||
|
|
f294bc0c2b | ||
|
|
d11b5de3b4 | ||
|
|
dbb6a209a8 | ||
|
|
b8977c4dd0 | ||
|
|
244a80f799 | ||
|
|
68c6afbdd4 | ||
|
|
f32e53c7d6 | ||
|
|
1ff4e2ff13 | ||
|
|
12661b4bde | ||
|
|
073f978955 | ||
|
|
76db26e3d7 | ||
|
|
843e49e2bc | ||
|
|
2b31994ce0 | ||
|
|
23c2958f44 | ||
|
|
6c02c03674 | ||
|
|
d25113e653 | ||
|
|
85703803c8 | ||
|
|
2414f6b3d4 | ||
|
|
cc8a305b37 | ||
|
|
4a33f3e093 | ||
|
|
c0bc6059ca | ||
|
|
7a5025e64d | ||
|
|
da88eefe2b | ||
|
|
b6aced8726 | ||
|
|
25c4f8871e | ||
|
|
a6331747d2 | ||
|
|
98dbfb01b4 | ||
|
|
e96eaaac38 | ||
|
|
ef6d0a8f9a | ||
|
|
9c9216acbf | ||
|
|
2242cb2a8b | ||
|
|
5073921707 | ||
|
|
860a1de034 | ||
|
|
16818c0b93 | ||
|
|
984b12c0d2 | ||
|
|
ed2cf991f3 | ||
|
|
c095289208 | ||
|
|
957c8b7e7b | ||
|
|
79f030b199 | ||
|
|
04836c2cec | ||
|
|
aa90fdbe1c | ||
|
|
2c449583ef | ||
|
|
ec66bc73d3 | ||
|
|
fe509cd3dd | ||
|
|
b7afcb9723 | ||
|
|
e09eee1a59 | ||
|
|
9f8ea49446 | ||
|
|
7a996dfadf | ||
|
|
90ac0e2b17 | ||
|
|
ff320345e9 | ||
|
|
f26cff9a4a | ||
|
|
7164215146 | ||
|
|
5ed0d13194 | ||
|
|
ac428e1f1a | ||
|
|
66dc016ce6 | ||
|
|
af81b24d92 | ||
|
|
eeac423fd6 | ||
|
|
17185c7911 | ||
|
|
24ff570427 | ||
|
|
d351c9faf2 | ||
|
|
18804a743c | ||
|
|
86df438579 | ||
|
|
0d6788635e | ||
|
|
965415d7a4 | ||
|
|
d8eb0ac0da | ||
|
|
6f5d07dcd4 | ||
|
|
f615db8a4c | ||
|
|
9962c14de2 | ||
|
|
91588c7e96 | ||
|
|
71e2f1bf2f | ||
|
|
227163a4a1 | ||
|
|
6f726bf1cf | ||
|
|
541e9eec30 | ||
|
|
12aeecc73f | ||
|
|
eeb592d032 | ||
|
|
5eb9948235 | ||
|
|
bb53ae17ae | ||
|
|
219f23de33 | ||
|
|
1efc1f2531 | ||
|
|
2b3691508f | ||
|
|
e2f504e686 | ||
|
|
3708f852c2 | ||
|
|
4fb9307be5 | ||
|
|
d006a2820b | ||
|
|
5325efbd07 | ||
|
|
6c90875da4 | ||
|
|
d50372b799 | ||
|
|
6bcbcbb363 | ||
|
|
0d8817369e | ||
|
|
646863db16 | ||
|
|
d5002ab400 | ||
|
|
7c59bd5a1d | ||
|
|
eb02c7917a | ||
|
|
f97e68f1d6 | ||
|
|
224d5c1b9b | ||
|
|
f86c9e2096 | ||
|
|
6b69903208 | ||
|
|
b4077775c2 | ||
|
|
bc81bc478c | ||
|
|
ef198d5616 | ||
|
|
45dea75faa | ||
|
|
9ef8c1aeba | ||
|
|
916689f1c2 | ||
|
|
66676539ce | ||
|
|
2690d9bdf3 | ||
|
|
11009fd3ff | ||
|
|
aea4e8cb11 | ||
|
|
b4e5285a50 | ||
|
|
605f8020b7 | ||
|
|
e478396a04 | ||
|
|
5523c2cbf0 | ||
|
|
ec4a7abb06 | ||
|
|
514c869aea | ||
|
|
b9f217a716 | ||
|
|
ed58263c16 | ||
|
|
f42de556fa | ||
|
|
75aa4008e1 | ||
|
|
2d0ac20720 | ||
|
|
d026eb759f | ||
|
|
360071712f | ||
|
|
84b3055690 | ||
|
|
c59afe34c4 | ||
|
|
c4d797539d | ||
|
|
1f47e8c99f | ||
|
|
0d14822711 | ||
|
|
06a08c399e | ||
|
|
cfb827770f | ||
|
|
791bd1b82a | ||
|
|
2bdaa37e32 | ||
|
|
442ef6a29b | ||
|
|
f22322bc18 | ||
|
|
cd736a0d70 | ||
|
|
f55afe33d7 | ||
|
|
b04032c9d6 | ||
|
|
f2ac258bf1 | ||
|
|
204f9195d2 | ||
|
|
93e6ef5fb9 | ||
|
|
cb011026aa | ||
|
|
3c54c78e3a | ||
|
|
f60b77ef79 | ||
|
|
aa3a014a66 | ||
|
|
047198bf6e | ||
|
|
b4f21a1195 | ||
|
|
75152d913e | ||
|
|
06c6b94fd4 | ||
|
|
7a0927effe | ||
|
|
2854304e60 | ||
|
|
91c05ea157 | ||
|
|
992cb6369a | ||
|
|
3b4dc9acb3 | ||
|
|
249a4b0f64 | ||
|
|
d87a753de1 | ||
|
|
d210c6d07f | ||
|
|
433d3dedca | ||
|
|
10944a23e1 | ||
|
|
e4132f6a02 | ||
|
|
557a8d357c | ||
|
|
0a75c526a9 | ||
|
|
e133d72e23 | ||
|
|
023cc3c383 | ||
|
|
89df8e5c8a | ||
|
|
58d52a0191 | ||
|
|
ff965c95d3 | ||
|
|
c256096118 | ||
|
|
b7c7d782e0 | ||
|
|
d60a2f9954 | ||
|
|
d1fe1279ed | ||
|
|
77b17379d6 | ||
|
|
9db03a317b | ||
|
|
fdcc7b3d0f | ||
|
|
499b2256fc | ||
|
|
c1e86f59e2 | ||
|
|
16b8f90048 | ||
|
|
af43a3119f | ||
|
|
9bb2e4f8f5 | ||
|
|
3b18ca4f50 | ||
|
|
4183667efd | ||
|
|
d55b5907cd | ||
|
|
5cd79d08b3 | ||
|
|
58ec954d11 | ||
|
|
ea1ce4fad5 | ||
|
|
283f9bb2bc | ||
|
|
a7fd5de5c3 | ||
|
|
826d00d33f | ||
|
|
3897c23c8d | ||
|
|
7da3f3b2ba | ||
|
|
5ae32dd036 | ||
|
|
e0a808a6ba | ||
|
|
44afdb89e3 | ||
|
|
6c7aecc2a6 | ||
|
|
3765aacc73 | ||
|
|
ab40fae67e | ||
|
|
4042cbf964 | ||
|
|
efab724802 | ||
|
|
98991c1c1a | ||
|
|
28d0c534b1 | ||
|
|
a49f5bb23c | ||
|
|
ae1405a7be | ||
|
|
21617bf55e | ||
|
|
619c5d5533 | ||
|
|
76000d7515 | ||
|
|
9fe7993d96 | ||
|
|
f5b9370623 | ||
|
|
ca37fab090 | ||
|
|
a8922629ae | ||
|
|
9b786de5be | ||
|
|
a82927cb54 | ||
|
|
5cd1649db2 | ||
|
|
56aad60a41 | ||
|
|
2dcd698686 | ||
|
|
0dac8d63df | ||
|
|
a08d354971 | ||
|
|
6b83945a21 | ||
|
|
a9b7d1b533 | ||
|
|
288bd81d8f | ||
|
|
aae29cbcfd | ||
|
|
7bea132bd5 | ||
|
|
24bb1fd6ca | ||
|
|
99b650a3ba | ||
|
|
8536dc9658 | ||
|
|
184d736763 | ||
|
|
7d1fa92bd4 | ||
|
|
7989177f7c | ||
|
|
ef16020cbb | ||
|
|
225fd769fd | ||
|
|
89880f2323 | ||
|
|
7e78157c74 | ||
|
|
f9572b3d14 | ||
|
|
e91137c315 | ||
|
|
4008a64fdd | ||
|
|
ada6c24789 | ||
|
|
86dc14823e | ||
|
|
7d02676f68 | ||
|
|
6e22a1f279 | ||
|
|
28d872dd31 | ||
|
|
70b252f280 | ||
|
|
6c643d66dd | ||
|
|
ec0728ff8e | ||
|
|
3f4daeacf0 | ||
|
|
eabd47b28b | ||
|
|
6a7f7b4c1c | ||
|
|
c61f7e6b8f | ||
|
|
b1839adf97 | ||
|
|
4a9a515a36 | ||
|
|
274d3dddd0 | ||
|
|
62a66bad9c | ||
|
|
b765825cca | ||
|
|
bc1aa0bc0f | ||
|
|
d640fed3d4 | ||
|
|
54fecafcec | ||
|
|
018592abac | ||
|
|
f850e0946b | ||
|
|
908451cbf7 | ||
|
|
257edc535a | ||
|
|
703cfdf2d6 | ||
|
|
4e9ec1b320 | ||
|
|
23318103ed | ||
|
|
1ec650edd2 | ||
|
|
358e0cc62d | ||
|
|
733e4e5aff | ||
|
|
d285f3a247 | ||
|
|
598a2e02fa | ||
|
|
27fd8910ae | ||
|
|
5059897b50 | ||
|
|
8eb321d8f0 | ||
|
|
a5c722361d | ||
|
|
d8e0cf714b | ||
|
|
cdc5b82e3f | ||
|
|
5a7446bf4f | ||
|
|
6724dd3766 | ||
|
|
32ba4594df | ||
|
|
14a8246e22 | ||
|
|
f4bc3442a6 | ||
|
|
7e8e826b1a | ||
|
|
a89bb40a55 | ||
|
|
b06f0144ed | ||
|
|
2ac229c84f | ||
|
|
5f2fc6c5b6 | ||
|
|
8b68f7317c | ||
|
|
617d1eaf3b | ||
|
|
79041ba501 | ||
|
|
218f074609 | ||
|
|
78529f5110 | ||
|
|
5998ca71cc | ||
|
|
ffcc574c85 | ||
|
|
995de68c90 | ||
|
|
35b52c421b | ||
|
|
565232eccd | ||
|
|
14b36a5dc6 | ||
|
|
cc120689ee | ||
|
|
195a821781 | ||
|
|
25da9ee5cd | ||
|
|
3563aa8414 | ||
|
|
15e0fa5286 | ||
|
|
6933ce137f | ||
|
|
830b3e9562 | ||
|
|
e8fe7f0304 | ||
|
|
593b334d5e | ||
|
|
392a5dacd9 | ||
|
|
f17187a4b6 | ||
|
|
dbcd5dbe1d | ||
|
|
dffb1abdf1 | ||
|
|
a4371752c1 | ||
|
|
a86e45c31e | ||
|
|
29f17aed68 | ||
|
|
88eb355e3b | ||
|
|
ab7f0741d0 | ||
|
|
aab9ea1563 | ||
|
|
0f611a34e3 | ||
|
|
6a2e8dcc54 | ||
|
|
124381c5ff | ||
|
|
ffda6b1ecf | ||
|
|
ad07e944cc | ||
|
|
1ec62bc652 | ||
|
|
4a6df38e6a | ||
|
|
f10f7cf690 | ||
|
|
42e2bb0d1f | ||
|
|
35570b89cd | ||
|
|
645af76ddb | ||
|
|
dfee4b485f | ||
|
|
f183d8829a | ||
|
|
6dc7244fa6 | ||
|
|
9cd10a5c1e | ||
|
|
02173be81a | ||
|
|
77ae4a3613 | ||
|
|
f04a6177ac | ||
|
|
f16ce91d45 | ||
|
|
2a6a40d97b | ||
|
|
3e7c9157a1 | ||
|
|
4529bcf24a | ||
|
|
2a621a4367 | ||
|
|
9cdabf288e | ||
|
|
76f9475950 | ||
|
|
3ef8112173 | ||
|
|
ce0bd430d0 | ||
|
|
38500fd90b | ||
|
|
bbb0ac3d29 | ||
|
|
6f294e2968 | ||
|
|
92d37e5124 | ||
|
|
d91c2b4138 | ||
|
|
f39ed79389 | ||
|
|
41e9620371 | ||
|
|
3295e40678 | ||
|
|
1dbca67bb4 | ||
|
|
6f53f40ad5 | ||
|
|
cfb0b99dbe | ||
|
|
7ba98ea241 | ||
|
|
889e36116c | ||
|
|
85990351e3 | ||
|
|
a39e24cbb6 | ||
|
|
11a0dc7290 | ||
|
|
9cc9567cf4 | ||
|
|
1ddc9ac6fa | ||
|
|
d2efde2a70 | ||
|
|
7011bc3dbd | ||
|
|
dcb8e62d3a | ||
|
|
6cf04848e4 | ||
|
|
7ec2992ca8 | ||
|
|
9951231804 | ||
|
|
fb991cb814 | ||
|
|
a390a61175 | ||
|
|
a8cba3c9c8 | ||
|
|
85adfd31a5 | ||
|
|
9348e5a509 | ||
|
|
2f61a7e946 | ||
|
|
f9b5513882 | ||
|
|
fda8161be8 | ||
|
|
036eb6b010 | ||
|
|
78170e0fd4 | ||
|
|
f7ab55abeb | ||
|
|
6e710bf9b5 | ||
|
|
c25204fc7a | ||
|
|
113cd9af63 | ||
|
|
024ac5dffb | ||
|
|
6777e04957 | ||
|
|
b61bf5b806 | ||
|
|
37bd07883b | ||
|
|
ebecaf420e | ||
|
|
26f9e066e7 | ||
|
|
26f218a1e4 | ||
|
|
c8287ba752 | ||
|
|
a604e14ea9 | ||
|
|
0c85725a4c | ||
|
|
d9fc334098 | ||
|
|
941e8c9f37 | ||
|
|
1921ed77d5 | ||
|
|
7d5fad721e | ||
|
|
758df84539 | ||
|
|
8d5a60a2a2 | ||
|
|
a57f0bbbc3 | ||
|
|
bf80c7d514 | ||
|
|
d390433ec7 | ||
|
|
234ad3d03b | ||
|
|
752e737f18 | ||
|
|
3478d1f03b | ||
|
|
3a7216cd9a | ||
|
|
b9ac0bf22d | ||
|
|
deb177a546 | ||
|
|
9e8c4ba813 | ||
|
|
cd30295922 | ||
|
|
5914418fb1 | ||
|
|
3433770e9b | ||
|
|
d3a3769ad4 | ||
|
|
4b9c2c4743 | ||
|
|
6e1d30a2ef | ||
|
|
12de296d42 | ||
|
|
0e3c35fbb1 | ||
|
|
0221a7e742 | ||
|
|
2faa2f73b5 | ||
|
|
e0f7983a28 | ||
|
|
87c438d51d | ||
|
|
e508fd656b | ||
|
|
16cee8e263 | ||
|
|
51cf195b99 | ||
|
|
6e5fe0631f | ||
|
|
0f4d3c1d60 | ||
|
|
caab26247c | ||
|
|
4e2062cd25 | ||
|
|
d4b450bc53 | ||
|
|
f1651862a0 | ||
|
|
387c981b6d | ||
|
|
1b764e1641 | ||
|
|
2ef6248f53 | ||
|
|
2f15bb8fa5 | ||
|
|
3908c29a21 | ||
|
|
0f8c995934 | ||
|
|
64e7939122 | ||
|
|
fe23510c51 | ||
|
|
1ad8aa9aec | ||
|
|
7956fbe9c0 | ||
|
|
e6a4b50da1 | ||
|
|
0747cc38aa | ||
|
|
e1a102d717 | ||
|
|
8adb6ae889 | ||
|
|
e69a44e788 | ||
|
|
2961c3ee85 | ||
|
|
5c27f80432 | ||
|
|
87e713e97c | ||
|
|
44fc565f6d | ||
|
|
84a9140763 | ||
|
|
c2c26b338b | ||
|
|
5995320164 | ||
|
|
965b7cfd3d | ||
|
|
8c36db1272 | ||
|
|
2a4674eb3b | ||
|
|
a5b8936f7a | ||
|
|
1b8e38fb7e | ||
|
|
f2ecb61edf | ||
|
|
d103862bff | ||
|
|
9c8edc4121 | ||
|
|
cd1bd1eec9 | ||
|
|
16620bed45 | ||
|
|
1021bb530a | ||
|
|
a5507678e8 | ||
|
|
c2f08c8f05 | ||
|
|
99a53edca0 | ||
|
|
f2fe397048 | ||
|
|
0c7e731b0d | ||
|
|
a9b701ae6d | ||
|
|
244c81a647 | ||
|
|
f5792a03fb | ||
|
|
8406dd4c6f | ||
|
|
466d1ddb69 | ||
|
|
4646a86d4d | ||
|
|
97e52c8f17 | ||
|
|
7eae358aca | ||
|
|
3158883dc4 | ||
|
|
5b61420b52 | ||
|
|
aea3091bdb | ||
|
|
c78fc47402 | ||
|
|
5ca1dd540e | ||
|
|
de9a815063 | ||
|
|
53a702d79a | ||
|
|
c83f702f58 | ||
|
|
8eb965d71d | ||
|
|
f5571c80c6 | ||
|
|
d0c4326af3 | ||
|
|
52d2bbd11a | ||
|
|
58edbb9630 | ||
|
|
18295a3b32 | ||
|
|
391d527328 | ||
|
|
3e74aa51e2 | ||
|
|
f910ce39de | ||
|
|
c769891b76 | ||
|
|
37e31e8e0b | ||
|
|
9394b96202 | ||
|
|
7354a8f13f | ||
|
|
3fd8545d43 | ||
|
|
1dc1cf0cb7 | ||
|
|
77190eda6c | ||
|
|
d05cb1c147 | ||
|
|
804c3526ba | ||
|
|
42d5ebfd4b | ||
|
|
5f30c9e2c3 | ||
|
|
8684639f72 | ||
|
|
99e0953489 | ||
|
|
7aa101de58 | ||
|
|
6510026189 | ||
|
|
6c31098ad2 | ||
|
|
3df84516d2 | ||
|
|
4f0e32b69b | ||
|
|
41a76c6798 | ||
|
|
297b0c4b04 | ||
|
|
0f72d3d502 | ||
|
|
ebbd20b719 | ||
|
|
61a9eec512 | ||
|
|
564a84d603 | ||
|
|
7357d1003d | ||
|
|
4eeea35c7e | ||
|
|
29b18c216c | ||
|
|
70e4d16768 | ||
|
|
18046ae92d | ||
|
|
68debe2561 | ||
|
|
846e09cfc3 | ||
|
|
92b71a76fc | ||
|
|
9d09d35c59 | ||
|
|
3c7187d801 | ||
|
|
341b528980 | ||
|
|
ce4f67e1bd | ||
|
|
600b3f7656 | ||
|
|
773b133562 | ||
|
|
f1b06bff93 | ||
|
|
8c4188f705 | ||
|
|
1f3ffac893 | ||
|
|
e05b31a89f | ||
|
|
a3f4c08659 | ||
|
|
3329d5d037 | ||
|
|
84b1921b36 | ||
|
|
288b86c3c3 | ||
|
|
86171d9fb3 | ||
|
|
11e7049d19 | ||
|
|
9a5d388cca | ||
|
|
09d7cdb7a9 | ||
|
|
45a0cec0ff | ||
|
|
fc97513aa4 | ||
|
|
19baeba5da | ||
|
|
27bd2b21dc | ||
|
|
937820a883 | ||
|
|
e0275d404f | ||
|
|
18a41fde59 | ||
|
|
a532855a48 | ||
|
|
54e61fd06c | ||
|
|
c830e32c48 | ||
|
|
52746e8504 | ||
|
|
580754a65a | ||
|
|
b90d4a3aaf | ||
|
|
064b3f7f0d | ||
|
|
298c9b2dde | ||
|
|
9dc6772f78 | ||
|
|
5cd80c21ae | ||
|
|
0aa11e6398 | ||
|
|
f61a875e42 | ||
|
|
13ce276b8c | ||
|
|
93f1bc531d | ||
|
|
c230a4ad2c | ||
|
|
24bb606a52 | ||
|
|
0021bf75e9 | ||
|
|
0150938de8 | ||
|
|
0947e1edbe | ||
|
|
d7078d6e05 | ||
|
|
fdee550757 | ||
|
|
fe26e39a5d | ||
|
|
38b056b289 | ||
|
|
dbb87d2642 | ||
|
|
bc1ad00e0c | ||
|
|
f070f09176 | ||
|
|
15226b8a5b | ||
|
|
60a5eccbd0 | ||
|
|
e1f01c46ae | ||
|
|
8b278adea6 | ||
|
|
0e46a04d73 | ||
|
|
3aa8683bd0 | ||
|
|
52fdd844eb | ||
|
|
9418c418ca | ||
|
|
88f8acf789 | ||
|
|
c84e75a689 | ||
|
|
dd10f6da6b | ||
|
|
94048fae0f | ||
|
|
d28cff7cae | ||
|
|
0f4cbc5dc9 | ||
|
|
6f3957d858 | ||
|
|
ba155aead3 | ||
|
|
5ef5c3c70f | ||
|
|
5691dd9c79 | ||
|
|
3c89d61a53 | ||
|
|
28cae3a8cb | ||
|
|
d9dc685feb | ||
|
|
129aeb1845 | ||
|
|
7007ab46d6 | ||
|
|
4e7a63a8e6 | ||
|
|
3590b579b5 | ||
|
|
c4cd855876 | ||
|
|
3cdb58b75e | ||
|
|
95a3c5a2b3 | ||
|
|
9c90d98418 | ||
|
|
b7fafcb062 | ||
|
|
d6f977e2dd | ||
|
|
1c2500a8a1 | ||
|
|
eab8ef9bc1 | ||
|
|
00512d94cf | ||
|
|
f68911801c | ||
|
|
e3941b920a | ||
|
|
e4b2750656 | ||
|
|
50a052990c | ||
|
|
2b5aba85ae | ||
|
|
b02c4a209a | ||
|
|
9360bd577f | ||
|
|
f1251303de | ||
|
|
2dd2bd22b8 | ||
|
|
f36c14e6b4 | ||
|
|
a007d6c174 | ||
|
|
063255ba16 | ||
|
|
ff53919af1 | ||
|
|
db0cb5a555 | ||
|
|
daf56db8ec | ||
|
|
a268fac484 | ||
|
|
d1d7ef64fa | ||
|
|
9cb6bc1a42 | ||
|
|
c8d0a22fac | ||
|
|
7ee8ad4e44 | ||
|
|
d18a46da01 | ||
|
|
7ab4142c07 | ||
|
|
575caffe13 | ||
|
|
079a2dd56d | ||
|
|
301f897282 | ||
|
|
93cba3d880 | ||
|
|
30f4222b9e | ||
|
|
43dbab0f23 | ||
|
|
a1b4f338cd | ||
|
|
3f1b8304b0 | ||
|
|
476561fb87 | ||
|
|
130f98175a | ||
|
|
05359735ff | ||
|
|
1506ae9ff1 | ||
|
|
9541a63321 | ||
|
|
d66d53a013 | ||
|
|
3619cf219d | ||
|
|
428209e128 | ||
|
|
09fb6524cc | ||
|
|
56f806e251 | ||
|
|
45cc7fee95 | ||
|
|
b1b1d97866 | ||
|
|
9c9808e141 | ||
|
|
a37b5d6213 | ||
|
|
d753bb747b | ||
|
|
b37caeaa68 | ||
|
|
843f78e361 | ||
|
|
2d5105045d | ||
|
|
afab04b2f7 | ||
|
|
f601ae5d8c | ||
|
|
e39f610a68 | ||
|
|
40c472e3d5 | ||
|
|
7eba74a0bc | ||
|
|
ba4c0ce843 | ||
|
|
5b0c3af927 | ||
|
|
2dbe06aaa1 | ||
|
|
649604e015 | ||
|
|
5fa62565ea | ||
|
|
c86b562a4a | ||
|
|
0449215bbb | ||
|
|
e68ae3f880 | ||
|
|
9a390644ef | ||
|
|
5da06e3e31 | ||
|
|
5090a7d730 | ||
|
|
bf0b074f45 | ||
|
|
733be3462a | ||
|
|
58f9dd5eb4 | ||
|
|
9ae6c5ae7a | ||
|
|
b522eecf8d | ||
|
|
ca62874515 | ||
|
|
47970ab166 | ||
|
|
6caae5004b | ||
|
|
3d55b4120c | ||
|
|
3a7f970834 | ||
|
|
fdac097c12 | ||
|
|
9ea0bc6f07 | ||
|
|
340acc562b | ||
|
|
251eedf7e5 | ||
|
|
110aa489e4 | ||
|
|
83057293a9 | ||
|
|
4212e27081 | ||
|
|
7ac86185e4 | ||
|
|
fed3b815a0 | ||
|
|
a89c996334 | ||
|
|
9177c5b697 | ||
|
|
49659e92a7 | ||
|
|
3f1f4853d6 | ||
|
|
7ddc715fbe | ||
|
|
30911968cc | ||
|
|
ddccfa798c | ||
|
|
808524507e | ||
|
|
59b98cf302 | ||
|
|
87b1809ef4 | ||
|
|
27b8cabac1 | ||
|
|
d711bda35c | ||
|
|
9e481234b8 | ||
|
|
bc64a08054 | ||
|
|
ddfb9af407 | ||
|
|
72b1d08a33 | ||
|
|
f71e03ab06 | ||
|
|
795b11c9c9 | ||
|
|
ffbbf4a5c3 | ||
|
|
bf9d3eefe4 | ||
|
|
ff0441147d | ||
|
|
cfe57c3870 | ||
|
|
325b01c381 | ||
|
|
92f79c682b | ||
|
|
e8fe6ef773 | ||
|
|
b6bf4e6072 | ||
|
|
bfbd3b4768 | ||
|
|
338603efa6 | ||
|
|
ceee9caee8 | ||
|
|
6100933a28 | ||
|
|
331609eb6e | ||
|
|
ff66f44fe1 | ||
|
|
3e539c0166 | ||
|
|
d7da439735 | ||
|
|
51fcc12922 | ||
|
|
83805da01c | ||
|
|
d7b5915652 | ||
|
|
99b546c7e0 | ||
|
|
b173fd67c2 | ||
|
|
6890fd32c7 | ||
|
|
76d3efe313 | ||
|
|
82802f7f47 | ||
|
|
ac011807d2 | ||
|
|
3a9505f56c | ||
|
|
6aaa7c5074 | ||
|
|
10f684c09b | ||
|
|
2f831898fa | ||
|
|
2bc418c7e5 | ||
|
|
8613a49f6e | ||
|
|
b92802c2fb | ||
|
|
264dae02bc | ||
|
|
b8a68683cd | ||
|
|
695185e62e | ||
|
|
f68d6fd812 | ||
|
|
cf816be717 | ||
|
|
2355738c7a | ||
|
|
1ec029be9b | ||
|
|
a7eb32272c | ||
|
|
585ae52be3 | ||
|
|
d8160c5b52 | ||
|
|
a059f06a43 | ||
|
|
9d1bcc3fd5 | ||
|
|
1565c5d01a | ||
|
|
54ee72a6f9 | ||
|
|
75e2431825 | ||
|
|
6814fd8d31 | ||
|
|
326367a36e | ||
|
|
8ad5fa1b78 | ||
|
|
cbab4d0eba | ||
|
|
6dfcf3ae02 | ||
|
|
0990b0d582 | ||
|
|
78bfe98070 | ||
|
|
6563911953 | ||
|
|
264e318be5 | ||
|
|
bba7cddd9c | ||
|
|
d85e0620c1 | ||
|
|
9ca2194566 | ||
|
|
b30f1c64e3 | ||
|
|
b7fe868f47 | ||
|
|
b113ab2348 | ||
|
|
43e7aace46 | ||
|
|
98792dafbc | ||
|
|
71d2376ff1 | ||
|
|
123d72be49 | ||
|
|
774b9558ad | ||
|
|
1371c9616a | ||
|
|
9a913a9357 | ||
|
|
a09a2bc241 | ||
|
|
9f2efa67c2 | ||
|
|
fccb44f334 | ||
|
|
025103528c | ||
|
|
d2f5937344 | ||
|
|
f84677fbef | ||
|
|
18a8ea7b07 | ||
|
|
012affa46a | ||
|
|
f0c8330ebf | ||
|
|
157f191546 | ||
|
|
e48fae387e | ||
|
|
c89fc55d68 | ||
|
|
694323a8f1 | ||
|
|
c2c53fa668 | ||
|
|
f09a39f043 | ||
|
|
b7c1658a6e | ||
|
|
bb137bba38 | ||
|
|
faae5ff1ef | ||
|
|
fd4a0ad2fe | ||
|
|
f73bb0a158 | ||
|
|
cd1b7d9bb5 | ||
|
|
3c47dc6c36 | ||
|
|
c92ee148f6 | ||
|
|
f0010013d3 | ||
|
|
3b2b40f306 | ||
|
|
48bf65af5a | ||
|
|
47fdcc661f | ||
|
|
17b230a6e0 | ||
|
|
6b78abced2 | ||
|
|
7c3560a3cd | ||
|
|
99ff110904 | ||
|
|
f74e0d88e4 | ||
|
|
81fc158dc9 | ||
|
|
f240c783cb | ||
|
|
415690ca23 | ||
|
|
e930bb0ba9 | ||
|
|
31ff9d476e | ||
|
|
332f29a800 | ||
|
|
497b277cf1 | ||
|
|
564a24b35e | ||
|
|
29d6eceda1 | ||
|
|
3f3d698a28 | ||
|
|
d0e4f4ca10 | ||
|
|
1f8a66b7f3 | ||
|
|
1bef45ff47 | ||
|
|
1c1422370a | ||
|
|
95b926acb2 | ||
|
|
8ff60619ee | ||
|
|
8cab89a44c | ||
|
|
cb82946ad5 | ||
|
|
2a19247ad1 | ||
|
|
df93e37f40 | ||
|
|
d6d01ee1bf | ||
|
|
36814adcd2 | ||
|
|
6d9d896a37 | ||
|
|
366faac430 | ||
|
|
642f378462 | ||
|
|
15dea00eeb | ||
|
|
b3962bb13d | ||
|
|
8afc7443e4 | ||
|
|
d3971d2384 | ||
|
|
b7438edfd5 | ||
|
|
b841d0c403 | ||
|
|
e99dec6e1b | ||
|
|
daba36860b | ||
|
|
096737bd02 | ||
|
|
b4b8edcebe | ||
|
|
10c786bdf0 | ||
|
|
18412822fd | ||
|
|
58d6d8be14 | ||
|
|
4d82dd7985 | ||
|
|
21be6862db | ||
|
|
a3ea5cb412 | ||
|
|
b86c079ed5 | ||
|
|
5eaf09759e | ||
|
|
a86edaa6b2 | ||
|
|
45aaa530ac | ||
|
|
29486144c9 | ||
|
|
e55528e21e | ||
|
|
6c56f4b695 | ||
|
|
5a21945a0d | ||
|
|
e6c4f48a48 | ||
|
|
1fed8c55f1 | ||
|
|
7a6d546a0d | ||
|
|
abaf326855 | ||
|
|
4bdfde4aa4 | ||
|
|
d82da280cb | ||
|
|
26e6dd2131 | ||
|
|
0ee26a0cae | ||
|
|
dcb13bd2b4 | ||
|
|
e36fb2f10c | ||
|
|
826c6986ae | ||
|
|
81599071e7 | ||
|
|
7411ac55a1 | ||
|
|
0dc64a7ec2 | ||
|
|
a19afe1a77 | ||
|
|
412a97a58a | ||
|
|
3b515e8636 | ||
|
|
773ce924bf | ||
|
|
84e8ff6a70 | ||
|
|
a5bf414256 | ||
|
|
023fd9d38a | ||
|
|
af71af1085 | ||
|
|
f5ece63ec0 | ||
|
|
460f2aeea5 | ||
|
|
b46bf15f40 | ||
|
|
c9120f692a | ||
|
|
0df1c48f42 | ||
|
|
a71fc887d9 | ||
|
|
0c568580b3 | ||
|
|
5f186bbbe1 | ||
|
|
6bca259420 | ||
|
|
e1b93495ca | ||
|
|
156a732931 | ||
|
|
b8f803c83f | ||
|
|
07c76b208e | ||
|
|
0572db902d | ||
|
|
184fde0f5f | ||
|
|
42073656c7 | ||
|
|
61ae9d936a | ||
|
|
b0c8f4ca4f | ||
|
|
a7982e434a | ||
|
|
1836ac29e2 | ||
|
|
d8e48e1e2b | ||
|
|
3b99559216 | ||
|
|
4141215d4b | ||
|
|
18b1f32466 | ||
|
|
ad17ad82dd | ||
|
|
437c73cba0 | ||
|
|
d6cd1f29f9 | ||
|
|
79f3dadc99 | ||
|
|
a299e503ba | ||
|
|
277daecb92 | ||
|
|
59b576f9d4 | ||
|
|
2d90a7bb96 | ||
|
|
c1a0370daa | ||
|
|
e516f2bf65 | ||
|
|
00205cb2e6 | ||
|
|
be72551855 | ||
|
|
55cc5b3bd6 | ||
|
|
b5995f0949 | ||
|
|
a6312198e5 | ||
|
|
c57e264b26 | ||
|
|
c56c7b6238 | ||
|
|
712e9d7d28 | ||
|
|
1f78a2149f | ||
|
|
6d49f6389e | ||
|
|
279938f0b3 | ||
|
|
07e7b79d66 | ||
|
|
4ff618ecbb | ||
|
|
f3f38bd7aa | ||
|
|
ce378c8f62 | ||
|
|
3dc7b253dc | ||
|
|
029e55779a | ||
|
|
a3bbef3682 | ||
|
|
b824f3323f | ||
|
|
e88f4cf776 | ||
|
|
2a8d9079d1 | ||
|
|
01112e8ca8 | ||
|
|
6c3a94dbce | ||
|
|
72e13e4235 | ||
|
|
796a26cad8 | ||
|
|
bce24da6a5 | ||
|
|
36f03a9f35 | ||
|
|
f33da18789 | ||
|
|
a2874f7f10 | ||
|
|
1b83734392 | ||
|
|
2402ec8d6e | ||
|
|
0cbcbeedc5 | ||
|
|
6276241ef0 | ||
|
|
987fab388d | ||
|
|
f0d27dcaac | ||
|
|
a0fbde294a | ||
|
|
b7519bb550 | ||
|
|
b090c6bccf | ||
|
|
8e8b2f9f38 | ||
|
|
535fc1c465 | ||
|
|
5d02291077 | ||
|
|
12bec38f12 | ||
|
|
86ed232348 | ||
|
|
ba65fa67b1 | ||
|
|
050aad49f2 | ||
|
|
239cf2d848 | ||
|
|
fd8e616076 | ||
|
|
94b4f2bfba | ||
|
|
8cc75693a0 | ||
|
|
4820bde41e | ||
|
|
358223a6b1 | ||
|
|
e0291d35e4 | ||
|
|
f96a42d8b0 | ||
|
|
1824a542f6 | ||
|
|
299ecad49f | ||
|
|
9ece20d635 | ||
|
|
37e41effde | ||
|
|
b67b2ccc96 | ||
|
|
7425c8f2ae | ||
|
|
14c95dcb3b | ||
|
|
98855dc19c | ||
|
|
4b8fdd0fbe | ||
|
|
6f38d531a1 | ||
|
|
7b13f57959 | ||
|
|
fcfc1d1a31 | ||
|
|
03847ab8ba | ||
|
|
50fa772ce1 | ||
|
|
290674d7c1 | ||
|
|
c0df2b9f70 | ||
|
|
7e8f6eb41e | ||
|
|
88b1707b58 | ||
|
|
9dcd52fc5b | ||
|
|
dfe6927f14 | ||
|
|
bd44193f8d | ||
|
|
a7fa29fb65 | ||
|
|
4164c8184b | ||
|
|
8d8f2f1d95 | ||
|
|
737cb23546 | ||
|
|
183550a190 | ||
|
|
de93c63535 | ||
|
|
edff3e0e94 | ||
|
|
d9bcbdee0a | ||
|
|
e66ad50e7e | ||
|
|
449d577cca | ||
|
|
960d2be06d | ||
|
|
1cf07cd6fb | ||
|
|
4b68fea674 | ||
|
|
5d98acef29 | ||
|
|
de8eb2814b | ||
|
|
a541156cec | ||
|
|
f305a973da | ||
|
|
f8ab97a07e | ||
|
|
3d19bffd55 | ||
|
|
076b2aaa95 | ||
|
|
53f7786da5 | ||
|
|
02b91a94fc | ||
|
|
fd35190ab0 | ||
|
|
b573a0ddcc | ||
|
|
fcc1bb3ef2 | ||
|
|
633d07f75b | ||
|
|
82c5d019a3 | ||
|
|
c8fd51bd27 | ||
|
|
0cfa873776 | ||
|
|
30ad00fb7f | ||
|
|
7432c0aead | ||
|
|
9db73962da | ||
|
|
ad18d13c29 | ||
|
|
54b2227729 | ||
|
|
82acbb28e3 | ||
|
|
c369f37509 | ||
|
|
82021f46f7 | ||
|
|
77b97d658a | ||
|
|
867910f7de | ||
|
|
4b11ac2dae | ||
|
|
5c44929acb | ||
|
|
d9b15cec2e | ||
|
|
c1f4cc3554 | ||
|
|
b4b15c7f45 | ||
|
|
7c604cdb8f | ||
|
|
15e9c91d85 | ||
|
|
706ca72a75 | ||
|
|
cd8eb4b1b0 | ||
|
|
8085b15b50 | ||
|
|
e504149a43 | ||
|
|
9b23eb2d23 | ||
|
|
fe9891f2f9 | ||
|
|
23e3180d7b | ||
|
|
4162756560 | ||
|
|
62307f64da | ||
|
|
8229d29100 | ||
|
|
20d259a129 | ||
|
|
db3150d7b2 | ||
|
|
c235b63572 | ||
|
|
eca0e35451 | ||
|
|
53e7d74ce3 | ||
|
|
97bcfd3006 | ||
|
|
a21767aa15 | ||
|
|
040f990bd1 | ||
|
|
c44b155e97 | ||
|
|
c49b9f352c | ||
|
|
b80c103043 | ||
|
|
0ef3cff4c6 | ||
|
|
e186082a9b | ||
|
|
f0d3e77608 | ||
|
|
bf2720a59b | ||
|
|
2d453f5f88 | ||
|
|
014baa4622 | ||
|
|
6fdd5f8053 | ||
|
|
49decfec2a | ||
|
|
072f966099 | ||
|
|
e67b812d35 | ||
|
|
f2b5fb6d93 | ||
|
|
3782f37d9d | ||
|
|
c32106e107 | ||
|
|
b9a1ebc393 | ||
|
|
e8a9e5bc32 | ||
|
|
17f4b50aa7 | ||
|
|
2c4cd8b06a | ||
|
|
82cf7155cc | ||
|
|
d6eae96689 | ||
|
|
b62896e67c | ||
|
|
035b7d5c5e | ||
|
|
d92a6c3ee8 | ||
|
|
d97aab799a | ||
|
|
b2803bddda | ||
|
|
f4a7c50f1a | ||
|
|
275548d6ed | ||
|
|
4c55e7ef3d | ||
|
|
3636de11c8 | ||
|
|
c696a1748a | ||
|
|
6c0ba77204 | ||
|
|
dc5f9e38a6 | ||
|
|
49e7196dec | ||
|
|
80052949d9 | ||
|
|
f6f89ac333 | ||
|
|
12825c5205 | ||
|
|
cbf20217dc | ||
|
|
bbaf8f4572 | ||
|
|
8a7b4440b5 | ||
|
|
a24269a0c9 | ||
|
|
72073b7515 | ||
|
|
1ab3f951c9 | ||
|
|
af9e7fa7fa | ||
|
|
46060c63c9 | ||
|
|
672b6b0c66 | ||
|
|
f718ec90a5 | ||
|
|
40d019c249 | ||
|
|
9ea2702696 | ||
|
|
bb283de1dd | ||
|
|
ba63472068 | ||
|
|
e36d358115 | ||
|
|
8894dc1244 | ||
|
|
687e7c5e70 | ||
|
|
e4ab3574e4 | ||
|
|
31fb7726c0 | ||
|
|
afa39de68b | ||
|
|
a6c99f3ba5 | ||
|
|
75028f6ad9 | ||
|
|
ee03261573 | ||
|
|
ddf44de23d | ||
|
|
323674b08d | ||
|
|
f59724297f | ||
|
|
81844753fd | ||
|
|
778bd4ae2f | ||
|
|
68ac07080c | ||
|
|
9af18183c9 | ||
|
|
0aff903024 | ||
|
|
2cab600674 | ||
|
|
370df8e07f | ||
|
|
d1e7537e76 | ||
|
|
cacc427cbd | ||
|
|
9d5a10bd89 | ||
|
|
ab367145c6 | ||
|
|
ad69f84794 | ||
|
|
addcbe15d5 | ||
|
|
c305768ed8 | ||
|
|
078e9fe751 | ||
|
|
e701d6d607 | ||
|
|
d43ca96056 | ||
|
|
de23fc3972 | ||
|
|
1d4a532ea2 | ||
|
|
a433ca308a | ||
|
|
e159c838ad | ||
|
|
92a9ce732c | ||
|
|
7060c82767 | ||
|
|
59429e9af8 | ||
|
|
657d5b8310 | ||
|
|
50cd2968b9 | ||
|
|
485899b0c5 | ||
|
|
23786515f9 | ||
|
|
ec5876d56b | ||
|
|
22765a70cb | ||
|
|
96493db047 | ||
|
|
5602413acd | ||
|
|
ca90893216 | ||
|
|
708ddd3804 | ||
|
|
d1d300fc69 | ||
|
|
2c4480dc1b | ||
|
|
bd3cce7d4b | ||
|
|
6b8dd60b33 | ||
|
|
a7e502395b | ||
|
|
b763ce012c | ||
|
|
b138b278b5 | ||
|
|
afa042fdb4 | ||
|
|
f152d14baa | ||
|
|
116c074c43 | ||
|
|
f2e32739cf | ||
|
|
00ee5dd7a3 | ||
|
|
c3423243d8 | ||
|
|
cd3a848bad | ||
|
|
4dd09ca13f | ||
|
|
fad867e86b | ||
|
|
7e79c14eec | ||
|
|
ef477673d6 | ||
|
|
2e3b8c8c2a | ||
|
|
57133140fb | ||
|
|
10eeb2566f | ||
|
|
8a0bffc5b3 | ||
|
|
2f1ca72334 | ||
|
|
e95167a984 | ||
|
|
f0fbdaf2c9 | ||
|
|
ae0a0f671a | ||
|
|
0d6df3c7aa | ||
|
|
b89fe446b4 | ||
|
|
3dc7baa4ed | ||
|
|
7f763aacb9 | ||
|
|
490742284b | ||
|
|
e1a03c4415 | ||
|
|
ae692e07a6 | ||
|
|
124f1fe4c8 | ||
|
|
207048514d | ||
|
|
1281dfbf22 | ||
|
|
61470d7820 | ||
|
|
27cb2afe2c | ||
|
|
160f3672db | ||
|
|
fc6507803b | ||
|
|
ffd1611b46 | ||
|
|
9f78e87447 | ||
|
|
7517f0a9a0 | ||
|
|
c0286c58de | ||
|
|
5c788bf198 | ||
|
|
2962c0d99a | ||
|
|
68647ed25e | ||
|
|
d976914013 | ||
|
|
5105bd05f9 | ||
|
|
e4b9c1f01e | ||
|
|
c4ac7dc4c2 | ||
|
|
78525f509d | ||
|
|
f001499ac0 | ||
|
|
a989a63f62 | ||
|
|
382a93a315 | ||
|
|
eb427e153f | ||
|
|
188fd4ba61 | ||
|
|
8511c9f756 | ||
|
|
bf29210719 | ||
|
|
21d5a7fbe8 | ||
|
|
2ad3713e8c | ||
|
|
5f8469269e | ||
|
|
f4361d5c65 | ||
|
|
9067194390 | ||
|
|
2a56e41fa9 | ||
|
|
9d6067e2fe | ||
|
|
45088dc9ce | ||
|
|
5f61703588 | ||
|
|
9e20f83f24 | ||
|
|
916ca29507 | ||
|
|
e04eb4256b | ||
|
|
90806f3b49 | ||
|
|
4c22f1ddb0 | ||
|
|
09bfc27260 | ||
|
|
1302e69d51 | ||
|
|
53899296b1 | ||
|
|
5a0120f0f2 | ||
|
|
6ecfab9647 | ||
|
|
a78c9a6eb8 | ||
|
|
3e043291f0 | ||
|
|
ff88d9da16 | ||
|
|
8fd1bb630d | ||
|
|
e8d04bdce6 | ||
|
|
7bbc794d3a | ||
|
|
49f7612704 | ||
|
|
8800ad33cf | ||
|
|
e74c6963a9 | ||
|
|
5a57dfd70d | ||
|
|
bd3d58484a | ||
|
|
5b675ea834 | ||
|
|
4ba41d4fe7 | ||
|
|
1800ab0e1b | ||
|
|
e989dee505 |
28
AUTHORS
28
AUTHORS
@@ -117,6 +117,12 @@ The following submitted code, packages or analysis, and deserve special thanks:
|
||||
Jens Erat
|
||||
Peter Rochen
|
||||
Oota Toshiya
|
||||
ribbon
|
||||
Daniel Shahaf
|
||||
Johannes Wienke
|
||||
Alan Young
|
||||
Gordon Ball
|
||||
Rafał Bolanowski
|
||||
|
||||
Thanks to the following, who submitted detailed bug reports and excellent
|
||||
suggestions:
|
||||
@@ -213,7 +219,7 @@ suggestions:
|
||||
Dmitriy Matrosov
|
||||
Michele Santullo
|
||||
Scott Kroll
|
||||
Kosta H
|
||||
Kosta Harlan
|
||||
Hector Arciga
|
||||
Jan Kunder
|
||||
jck
|
||||
@@ -251,3 +257,23 @@ suggestions:
|
||||
Scott M
|
||||
Stefan Frühwirth
|
||||
Pierre Campet
|
||||
Denis Kasak
|
||||
David Brenner
|
||||
Audrey Easterday
|
||||
Stefan Betz
|
||||
Blake Sweeney
|
||||
Dylan Mikus
|
||||
Andrea Rizzi
|
||||
Florian Petry
|
||||
Lars Beckers
|
||||
Dustin J. Mitchell
|
||||
James Cline
|
||||
Ryan
|
||||
Simon W. Jackson
|
||||
Sebastien Badia
|
||||
Michale Meier
|
||||
Svetoslav Trochev
|
||||
Marc Cornellà
|
||||
Ander
|
||||
Naga Kiran
|
||||
David Badura
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
cmake_minimum_required (VERSION 2.8)
|
||||
set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required
|
||||
if(POLICY CMP0037)
|
||||
cmake_policy(SET CMP0037 OLD)
|
||||
endif()
|
||||
|
||||
include (CheckFunctionExists)
|
||||
include (CheckStructHasMember)
|
||||
@@ -10,9 +7,16 @@ include (CheckStructHasMember)
|
||||
set (HAVE_CMAKE true)
|
||||
|
||||
project (task)
|
||||
set (PROJECT_VERSION "2.4.4")
|
||||
set (PROJECT_VERSION "2.5.0")
|
||||
|
||||
OPTION(USE_GNUTLS "Build gnutls support." ON)
|
||||
OPTION (ENABLE_SYNC "Enable 'task sync' support" ON)
|
||||
|
||||
if (ENABLE_SYNC)
|
||||
set (USE_GNUTLS ON CACHE BOOL "Build gnutls support." FORCE)
|
||||
else (ENABLE_SYNC)
|
||||
set (USE_GNUTLS OFF CACHE BOOL "Build gnutls support." FORCE)
|
||||
message (WARNING "ENABLE_SYNC=OFF. Not building sync support.")
|
||||
endif (ENABLE_SYNC)
|
||||
|
||||
message ("CMAKE_SYSTEM_NAME ${CMAKE_SYSTEM_NAME}")
|
||||
|
||||
@@ -116,6 +120,10 @@ if (USE_GNUTLS)
|
||||
endif (GNUTLS_FOUND)
|
||||
endif (USE_GNUTLS)
|
||||
|
||||
if (ENABLE_SYNC AND NOT GNUTLS_FOUND)
|
||||
message (FATAL_ERROR "Cannot find GnuTLS. Use -DENABLE_SYNC=OFF to build Taskwarrior without sync support. See INSTALL for more information.")
|
||||
endif (ENABLE_SYNC AND NOT GNUTLS_FOUND)
|
||||
|
||||
check_function_exists (timegm HAVE_TIMEGM)
|
||||
check_function_exists (get_current_dir_name HAVE_GET_CURRENT_DIR_NAME)
|
||||
check_function_exists (wordexp HAVE_WORDEXP)
|
||||
@@ -195,5 +203,5 @@ set (CPACK_SOURCE_IGNORE_FILES "CMakeCache" "CMakeFiles" "CPackConfig" "CPackSo
|
||||
"_CPack_Packages" "cmake_install" "install_manifest" "Makefile$"
|
||||
"test" "package-config" "misc/*" "src/task$" "src/calc$" "performance"
|
||||
"src/libtask.a" "src/columns/libcolumns.a" "src/commands/libcommands.a"
|
||||
"/\\.gitignore" "/\\.git/" "swp$")
|
||||
"/\\\\.gitignore" "/\\\\.git/" "swp$" "src/lex$")
|
||||
include (CPack)
|
||||
|
||||
221
ChangeLog
221
ChangeLog
@@ -1,4 +1,219 @@
|
||||
2.4.4 (2015-05-10) -
|
||||
2.5.0 (2015-10-21) -
|
||||
|
||||
- TW-20 Task edit loses annotation precision, causing journal updating code
|
||||
to incorrectly indicate annotions are deleted and recreated (thanks
|
||||
to Cory Donnelly).
|
||||
- TW-32 Unable to change annotations via task edit (thanks to Peter De
|
||||
Poorter).
|
||||
- TW-46 Circular dependency detection broken for missing tasks.
|
||||
- TW-50 Creation time is lost after editing (thanks to Ben Boeckel).
|
||||
- TW-148 default.command options (thanks to David Patrick).
|
||||
- TW-158 JSON export should model dependencies as array (thanks to Nicholas E.
|
||||
Rabenau).
|
||||
- TW-263 Unexpected zsh autocomplete behaviour (thanks to Leon Feng, Marc
|
||||
Cornellà).
|
||||
- TW-269 \t is not rendered correctly (thanks to Scott Kostyshak).
|
||||
- TW-283 Process rc.* items when executing config (thanks to Ben Armstrong).
|
||||
- TW-303 Ability for "import" to update existing tasks (thanks to Kosta
|
||||
Harlan).
|
||||
- TW-1285 relative dates combined with times (thanks to Adam Gibbins).
|
||||
- TW-1319 UDA is NOT sorted corresponding to the order of UDA list entries
|
||||
(thanks to Onion).
|
||||
- TW-1344 Filter due:yyyy-mm-dd is failing to display daily recurring tasks if
|
||||
there is deleted task in the series.(thanks to Svetoslav Trochev).
|
||||
- TW-1375 Use of ^ in regex parsed as exponentiate operator (thanks to
|
||||
lolilolicon).
|
||||
- TW-1389 tw will import same UUID n-times if part of same import (thanks to
|
||||
Markus Beppler).
|
||||
- TW-1419 On add '-tag' is considered a tag removal, which makes no sense.
|
||||
- TW-1426 Adding a date in 1963 (why not?) stores a negative epoch, which fails
|
||||
to export (thanks to Black Ops Testing).
|
||||
- TW-1430 Slashes in project names don't work (thanks to Richard Boß).
|
||||
- TW-1432 start/stop can be issued on completed tasks (thanks to Renato Alves).
|
||||
- TW-1440 "task import" from STDIN (thanks to Renato Alves).
|
||||
- TW-1448 Add possibility to modify newest task (thanks to Jens Erat).
|
||||
- TW-1452 The uuid:<uuid> filter does not work (thanks to Tomas Babej).
|
||||
- TW-1454 Redundant dependency should not stop modification (thanks to Tomas
|
||||
Babej).
|
||||
- TW-1455 Filter parser does not properly handle parentheses in attributes
|
||||
(thanks to Tomas Babej).
|
||||
- TW-1456 Filter parser does not always handle multiple arguments bundled into
|
||||
one with apostrophes (thanks to Tomas Babej).
|
||||
- TW-1466 UDA with type duration is stored as text/string (thanks to Thomas
|
||||
Sullivan).
|
||||
- TW-1472 Syntactic sugar morphs into regex expressions, even if turned off
|
||||
(thanks to Richard Boß).
|
||||
- TW-1475 task config expands values with unnecessary spaces (thanks to Tomas
|
||||
Babej).
|
||||
- TW-1478 due:easter sets the easter of the current year regardless of the date
|
||||
(thanks to David Costa).
|
||||
- TW-1479 Task arguments not properly parsed if they contain a space (thanks to
|
||||
Tomas Babej).
|
||||
- TW-1480 Weird behaviour on redundant filter beginning with number (thanks to
|
||||
Tomas Babej).
|
||||
- TW-1485 can't delete recurring tasks (except by workaround) (thanks to
|
||||
Dustin J. Mitchell).
|
||||
- TW-1488 You have more urgent tasks (thanks to Stefan Betz, Denis Kasak).
|
||||
- TW-1496 Translation manuals are outdated/miss information (thanks to Jens
|
||||
Erat).
|
||||
- TW-1499 Invalid due date produces jump to beggining of the unix epoch (thanks
|
||||
to Tomas Babej).
|
||||
- TW-1511 Project titles not properly parsed if they contain hyphens (thanks to
|
||||
Leon Feng, Blake Sweeney, Dylan Mikus).
|
||||
- TW-1515 abbreviation.minimum does not apply to date recognition (thanks to
|
||||
Lars Beckers).
|
||||
- TW-1521 task project!=PROJECTNAME does not work (Regression) (thanks to
|
||||
Florian Petry).
|
||||
- TW-1527 Extra spaces added around slashes (thanks to Renato Alves).
|
||||
- TW-1529 Parser incorrectly inserting spaces into task description (thanks to
|
||||
David Brenner).
|
||||
- TW-1533 dateformat confusion, regress tests (thanks to Peter Rochen).
|
||||
- TW-1537 soww Synonym produces wrong date (thanks to Michael Meier).
|
||||
- TW-1543 cmake complains "test" is not a valid target (on arch linux) (thanks
|
||||
to Renato Alves).
|
||||
- TW-1553 Setting defaultheight:0 makes burndown command hang (thanks to Tomas
|
||||
Babej).
|
||||
- TW-1555 Project Names Converted to Dates (thanks to Ryan).
|
||||
- TW-1566 Context is applied on 'task export' (thanks to Tomas Babej).
|
||||
- TW-1569 update wait:<wait-date> manpage entry (thanks to David Patrick).
|
||||
- TW-1572 Better urgency inheritance (thanks to Jens Erat).
|
||||
- TW-1575 `task log` mangles URLs when quoted (thanks to Luke Macken).
|
||||
- TW-1592 Able to add duplicate tags using 'tags:<value>' (thanks to Tomas
|
||||
Babej).
|
||||
- TW-1593 context and description substring (thanks to Peter Rochen).
|
||||
- TW-1594 Filter "due.before" with relative dates stopped working (thanks to
|
||||
Sebastien Badia).
|
||||
- TW-1598 (Bulk) modification of tasks unintentionally overwrites description
|
||||
if a context is active (thanks to Johannes Schlatow).
|
||||
- TW-1600 Filtering "regressions"(?) in task-2.4.3, task-2.4.4 (thanks to Ralph
|
||||
Bean).
|
||||
- TW-1607 Theme Support for missing UDAs (thanks to Stefan Betz).
|
||||
- TW-1609 In 'urgency<10', 10 is interpreted as an ID (thanks to Wim Schuermann).
|
||||
- TW-1611 soww weirdness (thanks to Wim Schuermann).
|
||||
- TW-1612 Spurious whitespace added in task descriptions around certain symbols
|
||||
(thanks to Denis Kasak).
|
||||
- TW-1615 Japanese translation for Taskwarrior(150513) (thanks to ribbon).
|
||||
- TW-1616 Intermittent lengthy delay when starting or completing a task (thanks
|
||||
to Jeremy John Reeder).
|
||||
- TW-1617 Can't search for multi-word project (thanks to Audrey Easterday).
|
||||
- TW-1619 fish completion contain backspaces in fish master version (thanks to
|
||||
Johannes Wienke₎.
|
||||
- TW-1620 Dateformat wrongly interpreted (thanks to Dirk Deimeke).
|
||||
- TW-1621 Recurrent parent tasks shouldn't be counted in history (thanks to
|
||||
Denis Kasak).
|
||||
- TW-1622 Duration UDA can't take an algebraic expression (thanks to Jeremy John
|
||||
Reeder).
|
||||
- TW-1624 Report filters combine incorrectly with command line with terminator.
|
||||
- TW-1626 Wrong wait date (thanks to Andrea Rizzi).
|
||||
- TW-1627 'mon' is replaced with date in project field (thanks to James Cline).
|
||||
- TW-1629 Descriptions often get overwritten with "( or )" (thanks to Jeremy
|
||||
John Reeder).
|
||||
- TW-1630 "Due" parsing behavior seems inconsistent (thanks to Jim B).
|
||||
- TW-1632 Japanese translation for Taskwarrior(150713) (thanks to ribbon).
|
||||
- TW-1634 due.not:<date> excludes only tasks scheduled at mitnight (thanks to
|
||||
Tomas Babej).
|
||||
- TW-1635 Running "task anystringatall" does not filter anything (thanks to
|
||||
Tomas Babej).
|
||||
- TW-1636 UUID with numeric-only first segment is not parsed properly (thanks
|
||||
to Tomas Babej).
|
||||
- TW-1637 project name "mod" interpreted as date (thanks to Wim Schuermann).
|
||||
- TW-1638 Undo doesn't work when a context is set (thanks to Jeremy John Reeder).
|
||||
- TW-1640 '_get <id>.start' for an inactive tasks returns a date formatted from
|
||||
epoch 0.
|
||||
- TW-1641 'edit' should process or reject <mods> arguments (thanks to Daniel
|
||||
Shahaf).
|
||||
- TW-1642 After "--", an apostrophe unexpectedly ends the task description
|
||||
(thanks to Jeremy John Reeder).
|
||||
- TW-1643 Batch modifying tasks under context sets description to '( )'
|
||||
(thanks to Leon Feng).
|
||||
- TW-1647 descriptions that are stringified ids (thanks to Daniel Shahaf).
|
||||
- TW-1648 Typo in Documentation (thanks to Simon W. Jackson).
|
||||
- TW-1649 'columns' colorizes output when stdout is a pipe (thanks to Daniel
|
||||
Shahaf).
|
||||
- TW-1651 Provide opt-out of filter parser's id treatment (thanks to Daniel
|
||||
Shahaf).
|
||||
- TW-1652 task rm misparsed (thanks to Daniel Shahaf).
|
||||
- TW-1653 info report regression; shouldn't be context sensitive (thanks to
|
||||
David Patrick).
|
||||
- TW-1655 Inform "No changes made." when quitting early due to signal (thanks
|
||||
to Daniel Shahaf).
|
||||
- TW-1656 Implicitly parenthesize argv filter (thanks to Daniel Shahaf).
|
||||
- TW-1660 Disabled sorting option (thanks to David Patrick).
|
||||
- TW-1662 filter before add becomes description (thanks to Daniel
|
||||
Shahaf).
|
||||
- TW-1664 Notify of waiting→pending promotion (thanks to Daniel Shahaf).
|
||||
- TW-1666 import should reject invalid data (thanks to Daniel Shahaf).
|
||||
- TW-1670 Reversed ranges are parsed as a mathematician would expect (thanks to
|
||||
Daniel Shahaf).
|
||||
- TW-1671 task add: segfault with foo-bar:1 (thanks to Daniel Shahaf).
|
||||
- TW-1675 project.not:something doesn't exclude project:something.subprojects
|
||||
(thanks to Ander).
|
||||
- TW-1678 segfault in ~ViewTask() (thanks to Daniel Shahaf).
|
||||
- TW-1683 Dom reference for project not properly evaluated (thanks to Tomas
|
||||
Babej).
|
||||
- TW-1684 make no-date > has-date for all date attributes (thanks to David
|
||||
Patrick).
|
||||
- TW-1686 Sorting not working on udas (thanks to Naga Kiran).
|
||||
- TW-1687 task add due:som appears to be interpreted as 'someday' (thanks to
|
||||
Alan Young).
|
||||
- TW-1688 task fails to import (thanks to Rainer Müller).
|
||||
- TW-1692 '42//' segfaults (thanks to Daniel Shahaf).
|
||||
- TW-1695 edit: Concurrent edits (thanks to Daniel Shahaf).
|
||||
- TW-1699 Command interpretation displayed incorrectly (thanks to Tomas Babej).
|
||||
- TW-1700 modify tags behavior changed (thanks to David Badura).
|
||||
- TW-1701 Some generated UUIDs deemed invalid (thanks to Wim Schuermann).
|
||||
- TW-1707 Context can leak into modifications (thanks to Tomas Babej).
|
||||
- TW-1715 Dates misinterpreted when no dateformat active.
|
||||
- TW-1716 on-modify hooks fail if `date.iso` is not set (thanks to Jens Erat).
|
||||
- Prevent potential task duplication during import for non-pending tasks.
|
||||
- Show the active context in "context list", if any is active.
|
||||
- Fix "task edit" dropping annotation text after newlines.
|
||||
- Removed obsolete script 'context'.
|
||||
- Fix "project" verbosity info not showing without "footnote" being manually
|
||||
enabled.
|
||||
- Internal plumbing: Use variadic templates for format(), reducing code bloat
|
||||
and enabling more flexible use of the function.
|
||||
- Enable "task sync" support by default. "cmake -DENABLE_SYNC=OFF" allows
|
||||
disabling it and building Taskwarrior without libgnutls available.
|
||||
- An attempt to add or remove a virtual tag is now an error (thanks to Scott M).
|
||||
- json.array now defaults to "on", making "export" output a JSON array that
|
||||
can be parsed by most JSON libraries without changes.
|
||||
- The '_ids', '_projects', '_tags', '_uuids' helper commands are deprecated,
|
||||
and replaced by the new '_unique' helper command, which generates lists of
|
||||
unique values for the specified attribute.
|
||||
- "import" can now import JSON arrays, the new default "export" output.
|
||||
- The '_tags' helper command now includes virtual tags (thanks to Daniel
|
||||
Shahaf).
|
||||
- When multiple tasks are 'edit'ed, a failure causes the editing to stop (thanks
|
||||
to Daniel Shahaf).
|
||||
- New 'UDA', 'ORPHAN', 'PROJECT', 'PRIORITY' and 'LATEST' virtual tags.
|
||||
- Commands that do not accept filters or modifications now generate an error
|
||||
when extra arguments are specified.
|
||||
- Improved zsh support (thanks to Daniel Shahaf).
|
||||
- Dependencies are exported as a JSON array by default, overridable using
|
||||
'rc.json.depends.array=off'. Both forms are imported.
|
||||
- The 'commands' command shows the supported commands, with additional details
|
||||
that determine some of their behavior.
|
||||
- Improved feedback for tasks that do not have ID (thanks to Tomas Babej).
|
||||
- Comma-separated lists of UUIDs can no longer be used as a filter. Use the
|
||||
space character instead.
|
||||
- New 'recur' verbosity token generates a notification message when a recurring
|
||||
task is created.
|
||||
- New 'unwait' verbosity token generates a notification message when a waiting
|
||||
task becomes visible.
|
||||
- New 'rule.color.merge=yes|no' configuration option, that can optionally
|
||||
turn off color blending engine.
|
||||
- The 'urgency.next.coefficient' configuration option is deprecated in favor
|
||||
of 'urgency.user.tag.next.coefficient'.
|
||||
- The long deprecated syntax of color values with underscores (i.e 'on_red')
|
||||
is no longer supported.
|
||||
- Correct a false-positive warning when a due date is removed and a wait is
|
||||
added.
|
||||
- When GC is turned off, disable the query shortcuts, which no longer apply.
|
||||
|
||||
------ current release ---------------------------
|
||||
|
||||
2.4.4 (2015-05-10) df49aaba126484b668c41d3ff9301f8d8ec49987
|
||||
|
||||
- TW-69 wait dates relative to due date (thanks to John Florian).
|
||||
- TW-1285 I'd like to use relative dates combined with times (thanks to Adam
|
||||
@@ -17,7 +232,7 @@
|
||||
- The 'obfuscate' setting, if set to '1' will replace all text with 'xxx'.
|
||||
- POSIX file locking mechanism, eliminating platform-specific code.
|
||||
|
||||
------ current release ---------------------------
|
||||
------ old releases ------------------------------
|
||||
|
||||
2.4.3 (2015-04-19) 499044b9b6bdbc95338ea585204e949d80b24a09
|
||||
|
||||
@@ -531,8 +746,6 @@ Bugs
|
||||
- Fixed rc.nag documentation (thanks to Jeroen Budts).
|
||||
- Fixed bug where task edit incorrectly claimed duration UDA was modified.
|
||||
|
||||
------ old releases ------------------------------
|
||||
|
||||
2.2.0 (2013-04-07) 05f7948f7e70d7be3642bdc336faace52eaa9dfb
|
||||
|
||||
Features
|
||||
|
||||
60
DEVELOPER
60
DEVELOPER
@@ -1,15 +1,16 @@
|
||||
How to Build Taskwarrior
|
||||
|
||||
Satisfy the Requirements:
|
||||
- gcc 4.7 or later, clang 3.3 or later or equivalent. This is because 2.4.4
|
||||
will be utilizing C++11.
|
||||
- gcc 4.7 or later, clang 3.3 or later or equivalent. This is because C++11
|
||||
is now used.
|
||||
- libuuid
|
||||
- gnutls (optional)
|
||||
- python 2.7 or 3 (optional, for running the test suite)
|
||||
|
||||
Obtain and build code:
|
||||
$ git clone https://git.tasktools.org/scm/tm/task.git task.git
|
||||
$ cd task.git
|
||||
$ git checkout 2.4.4 # Latest dev branch
|
||||
$ git checkout 2.5.0 # Latest dev branch
|
||||
$ cmake -DCMAKE_BUILD_TYPE=debug . # debug or release. Default: neither.
|
||||
$ make VERBOSE=1 # Shows details
|
||||
|
||||
@@ -17,7 +18,6 @@ How to Build Taskwarrior
|
||||
$ cd tests
|
||||
$ make VERBOSE=1 # Shows details
|
||||
$ ./run_all # Runs all tests silently > all.log
|
||||
# Install 'vramsteg' for blinkenlights
|
||||
$ ./problems # Enumerate test failures in all.log
|
||||
|
||||
Note that any development should be performed using a git clone, and the
|
||||
@@ -71,8 +71,7 @@ General Statement
|
||||
all, because they not only improve the quality of the code, but prevent
|
||||
future regressions, therefore maintaining quality of subsequent releases.
|
||||
Plus, broken tests are a great motivator for us to fix the causal defect.
|
||||
You'll need Python skills, as we are migrating from Perl to Python for our
|
||||
test suite.
|
||||
You'll need Python skills.
|
||||
|
||||
- Add a feature. Well, let's be very clear about this: adding a feature is
|
||||
not usually well-received, and if you add a feature and send a patch, it
|
||||
@@ -93,7 +92,7 @@ General Statement
|
||||
- Spread the word. Help others become more effective at managing tasks.
|
||||
|
||||
- Encouragement. Tell us what works for you, and what doesn't. Tell us about
|
||||
your methodology for managing tasks. It's all good.
|
||||
your methodology for managing tasks. It's all useful information.
|
||||
|
||||
- Request a feature. This not only tells us that you think something is
|
||||
missing from the software, but gives us insights into how you use it.
|
||||
@@ -101,27 +100,9 @@ General Statement
|
||||
|
||||
Next are some specific areas that need attention.
|
||||
|
||||
Deprecated Code
|
||||
This is code that is going to be phased out soon, and therefore is not worth
|
||||
fixing or documenting. Don't waste your time.
|
||||
|
||||
- Priorities in core. This will be migrated to become a UDA as soon as we
|
||||
have the right support in place for custom sorting.
|
||||
|
||||
- Nag feature.
|
||||
|
||||
- Attribute modifiers.
|
||||
|
||||
New Code Needs
|
||||
This is code that needs to be written.
|
||||
|
||||
- Need export_viz.* script. Any language. This would have value as an example
|
||||
or template script serving as a starting-point for anyone who needed this
|
||||
format.
|
||||
- Need new export_xxx.* scripts - the more the better. Any language.
|
||||
- The JSON.{h,cpp} code is fast and efficient up to a point, but has a non-
|
||||
linear performance curve, implying a slowdown due to fragmentation, but who
|
||||
know? Find it, fix it.
|
||||
- Need an external script that can locate and correct duplicate UUIDs in the
|
||||
data file, as found by 'task diag'. This should check to see if there is
|
||||
a suitable UUID generator installed. This should also be careful to
|
||||
@@ -142,39 +123,28 @@ Unit Tests Needed
|
||||
For example, dependencies.t runs through a long list of commands that test
|
||||
dependencies, but do so by using 'add', 'modify', 'done' and 'delete'.
|
||||
2. Regression tests that ensure certain bugs are fixed and stay fixed. These
|
||||
tests are named bug.NNN.t where NNN refers to the Redmine issue number.
|
||||
While it is not worth creating tests for small fixes like typos, it is for
|
||||
changes to the logic.
|
||||
tests are named bug.NNN.t where NNN refers to the bug number. While it is
|
||||
not worth creating tests for small fixes like typos, it is for changes to
|
||||
the logic.
|
||||
3. Small feature tests. When small features are added, we would like small,
|
||||
low-level feature tests named feature.NNN.t, where NNN is the Redmine
|
||||
issue number.
|
||||
low-level feature tests named feature.t, with a descriptive name and
|
||||
focused tests.
|
||||
4. Code tests. These are tests written in C++ that exercise C++ objects, or
|
||||
function calls. These are the lowest level tests. It is important that
|
||||
these kind of tests be extensive and thorough, because the software depends
|
||||
on this code the most.
|
||||
|
||||
The tests are mainly written in Perl, and all use TAP. We want them all to be
|
||||
eventually replaced by Python, so we are now only accepting new tests that use
|
||||
the Python-based approach you can see in some of the existing tests.
|
||||
The tests are written in Python, Bash and C++, and all use TAP.
|
||||
|
||||
Tests needed:
|
||||
|
||||
- Take a look at the bug database (https://bug.tasktools.org) and notice that
|
||||
many issues, open and closed, have the "needsTest" label. These are things
|
||||
that we would like to see in the test suite, as regression tests.
|
||||
- The basic.t unit tests are a misnomer, and should be either removed or
|
||||
renamed. We have long talked of 'basic functionality' that includes add,
|
||||
delete, done, and list commands. We need unit tests that prove that basic
|
||||
functionality is working, and the file containing them should be called
|
||||
basic.t.
|
||||
- Test propagation of modifications to recurring tasks.
|
||||
- Test regex support.
|
||||
- Need unit tests for each bug in the issue list that is marked with the
|
||||
'needsTest' label.
|
||||
|
||||
Note that running the unit tests currently requires the Perl JSON module to
|
||||
be installed.
|
||||
|
||||
Note that all new unit tests should follow the test/template.t standard.
|
||||
|
||||
Work in Progress
|
||||
@@ -188,11 +158,11 @@ Work in Progress
|
||||
Current Codebase Condition
|
||||
|
||||
'master' branch:
|
||||
- 2.4.3 Current release, locked.
|
||||
- 2.4.4 Current release, locked.
|
||||
|
||||
'2.4.4' branch:
|
||||
'2.5.0' branch:
|
||||
- Current development branch no plans yet.
|
||||
|
||||
---
|
||||
|
||||
2015-04-21 Updated for 2.4.4
|
||||
2015-09-07 Updated for 2.5.0
|
||||
|
||||
26
EXPOSITION
26
EXPOSITION
@@ -24,7 +24,7 @@ Command Line Parsing
|
||||
determines whether subsequent arguments are interpreted as part of a filter or
|
||||
set of modifications.
|
||||
|
||||
The CLI object is fed command line arguments, then through a succession of
|
||||
The CLI2 object is fed command line arguments, then through a succession of
|
||||
calls builds and annotates a parse tree. To help with this, the Lexer is
|
||||
used to break up strings into tokens.
|
||||
|
||||
@@ -151,16 +151,14 @@ Test Suite
|
||||
A strong and diverse test suite is critical to the successful release of any
|
||||
software. With the complex command set and its myriad permutations, a test
|
||||
suite is the only way to ensure quality levels, and guarantee that big changes
|
||||
are sound.
|
||||
are robust.
|
||||
|
||||
It is intended that the test suite continues growing, mostly adding more
|
||||
regression and feature tests. The test are mostly written in Perl, and utilize
|
||||
the Test::More module to generate TAP output. This is changing though, and the
|
||||
suite is slowly migrating to Python. Some tests are written in C++ and all
|
||||
tets generate TAP output.
|
||||
It is intended that the test suite continues growing, mostly feature tests.
|
||||
The test are mostly written in Python. Some tests are written in C++ and all
|
||||
tests generate TAP output.
|
||||
|
||||
There are currently about 8,000 unit tests, that take a minute or two to run
|
||||
in total.
|
||||
There are currently about 8,000 unit tests, that take only a few seconds to
|
||||
run on a multi-core machine.
|
||||
|
||||
Taskwarrior uses flod software to automate continuous integration across many
|
||||
platforms. Code changes are automatically detected, propagated, built and
|
||||
@@ -184,7 +182,7 @@ Debugging
|
||||
- TDB2 layer and I/O information.
|
||||
|
||||
Additionally, there are other settings (see 'man taskrc' for full details) that
|
||||
may also be helpful: 'rc.hooks=on|off', 'rc.debug.parser=0|1|2',
|
||||
may also be helpful: 'rc.hooks=on|off', 'rc.debug.parser=0|1|2|3',
|
||||
'rc.debug.hooks=0|1|2', 'rc.debug.tls=0|1|2|3...'.
|
||||
|
||||
|
||||
@@ -193,7 +191,8 @@ Patches
|
||||
Jira issue, or send them to support@taskwarrior.org. A good patch:
|
||||
|
||||
- Maintains the MIT license, and does not contain code lifted from other
|
||||
sources.
|
||||
sources. You will have written 100% of the code in the patch, otherwise
|
||||
we cannot maintain the license.
|
||||
- Precisely addresses one issue only.
|
||||
- Doesn't break unit tests.
|
||||
- Doesn't introduce dependencies.
|
||||
@@ -202,9 +201,10 @@ Patches
|
||||
- Conforms to the prevailing coding standards - in other words, it should
|
||||
fit right in with the existing code.
|
||||
|
||||
A patch may be rejected for not following the above guidelines, and more.
|
||||
A patch may be rejected for violating any of the above rules, and more.
|
||||
Bad patches may be accepted and modified depending on work load and mood. It
|
||||
is possible that a patch may be rejected because it conflicts in some way with
|
||||
plans or upcoming changes.
|
||||
plans or upcoming changes. Check with us first, before sinking time and effort
|
||||
into a patch.
|
||||
|
||||
---
|
||||
|
||||
25
INSTALL
25
INSTALL
@@ -5,8 +5,8 @@ Please follow the instructions below to build and install Taskwarrior from
|
||||
source.
|
||||
|
||||
|
||||
Pre-requisites
|
||||
--------------
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
You will need the CMake build system installed in order to build Taskwarrior
|
||||
from source. More information on cmake can be obtained at http://cmake.org
|
||||
@@ -19,11 +19,8 @@ You will need a C++ compiler that supports full C++11, which includes:
|
||||
- clang 3.3 (released 2013-01-07)
|
||||
|
||||
You will need the following libraries:
|
||||
- libuuid
|
||||
- gnutls (optional - for syncing)
|
||||
|
||||
It is HIGHLY RECOMMENDED that you build with a library that provides uuid_*
|
||||
functions, such as libuuid.
|
||||
- libuuid (not needed for OSX)
|
||||
- gnutls (can be optional - see '"sync" command' below)
|
||||
|
||||
|
||||
Basic Installation
|
||||
@@ -91,6 +88,20 @@ get absolute installation directories:
|
||||
CMAKE_INSTALL_PREFIX/TASK_MAN5DIR /usr/local/share/man/man5
|
||||
|
||||
|
||||
"sync" command
|
||||
--------------
|
||||
|
||||
By default, GnuTLS support is required, which enables the "sync" command.
|
||||
For Debian based distributions, installing "libgnutls-dev" is sufficient.
|
||||
|
||||
In order to build Taskwarrior without "sync" support, call cmake with the
|
||||
"-DENABLE_SYNC=OFF" flag:
|
||||
|
||||
$ cmake . -DENABLE_SYNC=OFF
|
||||
|
||||
and proceed as described in "Basic Installation".
|
||||
|
||||
|
||||
Localizations
|
||||
-------------
|
||||
|
||||
|
||||
56
NEWS
56
NEWS
@@ -1,26 +1,56 @@
|
||||
|
||||
New Features in Taskwarrior 2.4.4
|
||||
New Features in Taskwarrior 2.5.0
|
||||
|
||||
- Taskwarrior now requires GCC 4.7+ / Clang 3.3+, for full C++11 support.
|
||||
- Taskwarrior now builds properly on 32-bit platforms.
|
||||
- The beginnings of a Japaneѕe translation.
|
||||
- The active context, if one is set, is now identified in "task context list"
|
||||
- It is an error to attempt adding or removing a virtual tag.
|
||||
- New 'UDA', 'ORPHAN', 'PROJECT', 'PRIORITY' and 'LATEST' virtual tags.
|
||||
|
||||
New commands in Taskwarrior 2.4.4
|
||||
New Commands in Taskwarrior 2.5.0
|
||||
|
||||
- None
|
||||
- The '_unique' command shows a set of unique values for the specified
|
||||
attribute
|
||||
- The 'commands' command shows the supported commands, with additional
|
||||
details that determine some of their behavior.
|
||||
|
||||
New configuration options in Taskwarrior 2.4.4
|
||||
New Configuration Options in Taskwarrior 2.5.0
|
||||
|
||||
- The 'obfuscate' setting, if set to '1' will replace all text with 'xxx'.
|
||||
This is useful when sharing data for bug reporting purposes.
|
||||
- The 'json.depends.array' setting controls whether dependencies are exported
|
||||
as a JSON array, of a comma-separated string. Default is 'on'.
|
||||
Both variations are imported.
|
||||
- The 'color.uda.<name>.none' is a color that is applied to tasks that do
|
||||
not have a value for the UDA '<name>'.
|
||||
- A Cygwin fix means that now we can default 'search.case.sensitive' to 'yes',
|
||||
and all platforms are again equal.
|
||||
- The new 'recur' verbosity token generates a message when a recurring task is
|
||||
generated.
|
||||
- The new 'unwait' verbosity token generates a message when a waiting task
|
||||
becomes visible.
|
||||
- The new 'rule.color.merge' configuration option can disable merging of colors
|
||||
produced by different color rules. Use if your color scheme produces
|
||||
unpleasing foreground and background combinations.
|
||||
|
||||
Newly deprecated features in Taskwarrior 2.4.4
|
||||
Newly Deprecated Features in Taskwarrior 2.5.0
|
||||
|
||||
- None
|
||||
- The '_ids', '_projects', '_tags', '_uuids' helper commands are deprecated,
|
||||
and replaced by the new '_unique' helper command.
|
||||
- Comma-separated ID lists are deprecated.
|
||||
- The 'new-uuid' verbosity token is deprecated. Its functionality will
|
||||
be merged with the 'new-id' verbosity token.
|
||||
|
||||
Removed features in 2.4.4
|
||||
Removed Features in 2.5.0
|
||||
|
||||
- None
|
||||
- The script 'context' was removed, now that context is a core feature.
|
||||
- Nonextended forms of ISO-8601 date/time support is removed. This means
|
||||
that 'YYYYMMDD' is no longer supported, but 'YYYY-MM-DD' is. For times,
|
||||
'hhmmss' is no longer supported, but 'hh:mm:ss' is. The non-extended
|
||||
forms all contain sequences of digits that make the identification of
|
||||
IDs, UUIDs, and various date/time formats ambiguous.
|
||||
- Comma-separated UUID lists are no longer supported.
|
||||
- DOM references may no longer be abbreviated.
|
||||
- The 'urgency.next.coefficient' configuration option is deprecated in favor
|
||||
of 'urgency.user.tag.next.coefficient'.
|
||||
- The long deprecated syntax of color values with underscores (i.e 'on_red')
|
||||
is no longer supported.
|
||||
|
||||
Known Issues
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.TH task-color 5 2015-05-10 "${PACKAGE_STRING}" "User Manuals"
|
||||
.TH task-color 5 2015-10-21 "${PACKAGE_STRING}" "User Manuals"
|
||||
|
||||
.SH NAME
|
||||
task-color \- A color tutorial for the Taskwarrior command line todo manager.
|
||||
@@ -240,10 +240,13 @@ It is possible to create a very colorful mix of rules. With 256-color support,
|
||||
those colors can be made subtle, and complementary, but without care, this can
|
||||
be a visual mess. Beware!
|
||||
|
||||
In such cases, consider using the 'rule.color.merge=no' option to disable the
|
||||
color blending.
|
||||
|
||||
The precedence for the color rules is determined by the configuration
|
||||
variable 'rule.precedence.color', which by default contains:
|
||||
|
||||
due.today,active,blocking,blocked,overdue,due,scheduled,keyword.,project.,tag.,uda.,recurring,pri.,tagged,completed,deleted
|
||||
deleted,completed,active,keyword.,tag.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,uda.
|
||||
|
||||
These are just the color rules with the 'color.' prefix removed. The
|
||||
rule 'color.due.today' is the highest precedence, and 'color.deleted' is the lowest.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.TH task-sync 5 2015-05-10 "${PACKAGE_STRING}" "User Manuals"
|
||||
.TH task-sync 5 2015-10-21 "${PACKAGE_STRING}" "User Manuals"
|
||||
|
||||
.SH NAME
|
||||
task-sync \- A discussion and tutorial for the various task(1) data
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.TH task 1 2015-05-10 "${PACKAGE_STRING}" "User Manuals"
|
||||
.TH task 1 2015-10-21 "${PACKAGE_STRING}" "User Manuals"
|
||||
|
||||
.SH NAME
|
||||
task \- A command line todo manager.
|
||||
@@ -67,12 +67,12 @@ The parentheses isolate the logical term from any default command filter or
|
||||
implicit report filter which would be combined with an implicit 'and'.
|
||||
|
||||
A filter may target specific tasks using ID or UUID numbers. To specify
|
||||
multiple tasks use one of these forms (comma or space-separated list of ID
|
||||
numbers, UUID numbers or ID ranges):
|
||||
multiple tasks use one of these forms (space-separated list of ID numbers,
|
||||
UUID numbers or ID ranges):
|
||||
|
||||
task 1,2,3 delete
|
||||
task 1 2 3 delete
|
||||
task 1-3 info
|
||||
task 1,2-5,19 modify pri:H
|
||||
task 1 2-5 19 modify pri:H
|
||||
task 4-7 ebeeab00-ccf8-464b-8b58-f7f2d606edfb info
|
||||
|
||||
.SH MODIFICATIONS
|
||||
@@ -161,6 +161,10 @@ Displays all supported columns and formatting styles. Useful when creating
|
||||
custom reports. If a substring is provided, only matching column names are
|
||||
shown.
|
||||
|
||||
.TP
|
||||
.B task commands
|
||||
Shows all the supported commands, with some details of each.
|
||||
|
||||
.TP
|
||||
.B task <filter> completed
|
||||
Shows all tasks matching the filter that are completed.
|
||||
@@ -212,8 +216,8 @@ an alias to 'history.monthly'.
|
||||
.TP
|
||||
.B task <filter> ids
|
||||
Applies the filter then extracts only the task IDs and presents them as
|
||||
a range, for example: 1-4,12. This is useful as input to a task command,
|
||||
to achieve this:
|
||||
a space-separated list. This is useful as input to a task command, to achieve
|
||||
this:
|
||||
|
||||
task $(task project:Home ids) modify priority:H
|
||||
|
||||
@@ -345,9 +349,17 @@ In general, this is not the recommended method of modifying tasks, but is
|
||||
provided for exceptional circumstances. Use carefully.
|
||||
|
||||
.TP
|
||||
.B task import <file> [<file> ...]
|
||||
Imports tasks in the JSON format. The standard task release comes with a few
|
||||
example scripts, such as:
|
||||
.B task import [<file> ...]
|
||||
Imports tasks in the JSON format. Can be used to add new tasks, or update
|
||||
existing ones. Tasks are identified by their UUID.
|
||||
|
||||
If no file or "-" is specified, import tasks from STDIN.
|
||||
|
||||
Setting rc.recurrence.confirmation to an appropriate level is recommended
|
||||
if import is to be used in automated workflows. See taskrc(5).
|
||||
|
||||
For importing other file formats, the standard task release comes with a
|
||||
few example scripts, such as:
|
||||
|
||||
import-todo.sh.pl
|
||||
import-yaml.pl
|
||||
@@ -446,7 +458,7 @@ Outputs a list of available contexts along with their definitions.
|
||||
|
||||
.TP
|
||||
.B task context none
|
||||
Unsets the currently active context, if any was set.
|
||||
Clears the currently active context, if any was set.
|
||||
|
||||
.TP
|
||||
.B task context show
|
||||
@@ -496,9 +508,10 @@ Shows a report of aggregated task status by project.
|
||||
|
||||
.TP
|
||||
.B task <filter> tags
|
||||
Show a list of all tags used. Any special tags used are highlighted. Note that
|
||||
Show a list of all tags used. Any special tags used are highlighted. Note that
|
||||
virtual tags are not listed - they don't really exist, and are just a convenient
|
||||
notation for other task metadata.
|
||||
notation for other task metadata. It is an error to attempt to add or remove a
|
||||
virtual tag.
|
||||
|
||||
.TP
|
||||
.B task timesheet [weeks]
|
||||
@@ -537,16 +550,25 @@ Lists all available context variables, for completion purposes.
|
||||
.TP
|
||||
.B task <filter> _ids
|
||||
Shows only the IDs of matching tasks, in the form of a list.
|
||||
Deprecated in favor of _unique.
|
||||
|
||||
.TP
|
||||
.B task _show
|
||||
Shows the combined defaults and overrides of the configuration settings, for use
|
||||
by third-party applications.
|
||||
|
||||
.TP
|
||||
.B task <filter> _unique <attribute>
|
||||
Reports a unique set of attribute values. For example, to see all the active
|
||||
projects:
|
||||
|
||||
task +PENDING _unique projects
|
||||
|
||||
.TP
|
||||
.B task <filter> _uuids
|
||||
Shows only the UUIDs of matching tasks among all tasks (even deleted and
|
||||
completed tasks), in the form of a list.
|
||||
Deprecated in favor of _unique.
|
||||
|
||||
.TP
|
||||
.B task _udas
|
||||
@@ -555,10 +577,12 @@ Shows only defined UDA names, in the form of a list.
|
||||
.TP
|
||||
.B task <filter> _projects
|
||||
Shows only a list of all project names used.
|
||||
Deprecated in favor of _unique.
|
||||
|
||||
.TP
|
||||
.B task <filter> _tags
|
||||
Shows only a list of all tags used, for autocompletion purposes.
|
||||
Deprecated in favor of _unique.
|
||||
|
||||
.TP
|
||||
.B task <filter> _urgency
|
||||
@@ -601,6 +625,16 @@ the reference from being interpreted as an override.
|
||||
Note that if the DOM reference is not valid, or the reference evaluates to a
|
||||
missing value, the command exits with 1.
|
||||
|
||||
Additionally, some components of the attributes of particular types may be
|
||||
extracted by DOM references.
|
||||
|
||||
$ task _get 2.due.year
|
||||
2015
|
||||
|
||||
For a full list of supported attribute-specific DOM references, consult
|
||||
the online documentation at:
|
||||
<http://taskwarrior.org/docs/dom.html>
|
||||
|
||||
.SH ATTRIBUTES AND METADATA
|
||||
|
||||
.TP
|
||||
@@ -632,33 +666,41 @@ There are also virtual tags, which represent task metadata in tag form. These
|
||||
tags do not exist, but can be used to filter tasks. The supported virtual tags
|
||||
are:
|
||||
|
||||
BLOCKED Matches if the task is blocked
|
||||
UNBLOCKED Matches if the task is not blocked
|
||||
BLOCKING Matches if the task is blocking
|
||||
YESTERDAY Matches if the task was due sometime yesterday
|
||||
DUE Matches if the task is due
|
||||
DUETODAY Matches if the task is due today
|
||||
TODAY Matches if the task is due today
|
||||
TOMORROW Matches if the task is due sometime tomorrow
|
||||
WEEK Matches if the task is due this week
|
||||
MONTH Matches if the task is due this month
|
||||
YEAR Matches if the task is due this year
|
||||
OVERDUE Matches if the task is overdue
|
||||
ACTIVE Matches if the task is started
|
||||
SCHEDULED Matches if the task is scheduled
|
||||
READY Matches if the task is actionable
|
||||
PARENT Matches if the task is a parent
|
||||
CHILD Matches if the task has a parent
|
||||
UNTIL Matches if the task expires
|
||||
WAITING Matches if the task is waiting
|
||||
ANNOTATED Matches if the task has annotations
|
||||
TAGGED Matches if the task has tags
|
||||
PENDING Matches if the task has pending status
|
||||
BLOCKED Matches if the task is blocked
|
||||
BLOCKING Matches if the task is blocking
|
||||
CHILD Matches if the task has a parent
|
||||
COMPLETED Matches if the task has completed status
|
||||
DELETED Matches if the task has deleted status
|
||||
DUE Matches if the task is due
|
||||
DUETODAY Matches if the task is due today
|
||||
LATEST Matches if the task is the newest added task
|
||||
MONTH Matches if the task is due this month
|
||||
ORPHAN Matches if the task has any orphaned UDA values
|
||||
OVERDUE Matches if the task is overdue
|
||||
PARENT Matches if the task is a parent
|
||||
PENDING Matches if the task has pending status
|
||||
PRIORITY Matches if the task has a priority
|
||||
PROJECT Matches if the task has a project
|
||||
READY Matches if the task is actionable
|
||||
SCHEDULED Matches if the task is scheduled
|
||||
TAGGED Matches if the task has tags
|
||||
TODAY Matches if the task is due today
|
||||
TOMORROW Matches if the task is due sometime tomorrow
|
||||
UDA Matches if the task has any UDA values
|
||||
UNBLOCKED Matches if the task is not blocked
|
||||
UNTIL Matches if the task expires
|
||||
WAITING Matches if the task is waiting
|
||||
WEEK Matches if the task is due this week
|
||||
YEAR Matches if the task is due this year
|
||||
YESTERDAY Matches if the task was due sometime yesterday
|
||||
|
||||
.\" If you update the above list, update src/commands/CmdInfo.cpp and src/commands/CmdTags.cpp as well.
|
||||
|
||||
You can use +BLOCKED to filter blocked tasks, or -BLOCKED for unblocked tasks.
|
||||
Similarly, -BLOCKED is equivalent to +UNBLOCKED.
|
||||
Similarly, -BLOCKED is equivalent to +UNBLOCKED. It is an error to attempt to
|
||||
add or remove a virtual tag.
|
||||
|
||||
.TP
|
||||
.B project:<project-name>
|
||||
@@ -693,7 +735,9 @@ to 25 lines.
|
||||
|
||||
.TP
|
||||
.B wait:<wait-date>
|
||||
Date until task becomes pending.
|
||||
When a task is given a wait date, it is hidden from most reports by changing
|
||||
its status to 'waiting'. When that date is passed, the status is changed back
|
||||
to 'pending', and the task becomes visible.
|
||||
|
||||
.TP
|
||||
.B depends:<id1,id2 ...>
|
||||
@@ -711,7 +755,7 @@ For report purposes, specifies the date that a task was created.
|
||||
Attribute modifiers improve filters. Supported modifiers are:
|
||||
|
||||
.RS
|
||||
.B before (synonyms under, below)
|
||||
.B before (synonyms under, below)
|
||||
.br
|
||||
.B after (synonyms over, above)
|
||||
.br
|
||||
@@ -829,14 +873,33 @@ modifier.
|
||||
|
||||
You can use the following operators in filter expressions:
|
||||
|
||||
and or xor Logical operators
|
||||
< <= = != >= > Relational operators
|
||||
( ) Precedence
|
||||
and or xor ! Logical operators
|
||||
< <= = == != !== >= > Relational operators
|
||||
( ) Precedence
|
||||
|
||||
For example:
|
||||
|
||||
task due.before:eom priority.not:L list
|
||||
task '( due < eom or priority != L )' list
|
||||
task '( due < eom or priority != L )' list
|
||||
task '! ( project:Home or project:Garden )' list
|
||||
|
||||
The
|
||||
.I =
|
||||
operator tests for approximate equality. Dates compare
|
||||
equal if they are on the same day (hour and minutes are ignored).
|
||||
Strings compare equal if the left operand starts with the right operand.
|
||||
The
|
||||
.I ==
|
||||
operator tests for exact equality. The
|
||||
.I !=
|
||||
and
|
||||
.I !==
|
||||
operators are the negation of
|
||||
.I =
|
||||
and
|
||||
.I ==
|
||||
respectively. The negation operator is
|
||||
.IR ! .
|
||||
|
||||
Note that the parentheses are required when using a logical operator other than
|
||||
the 'and' operator. The reason is that some reports contain filters that must
|
||||
@@ -897,7 +960,7 @@ task ... due:7/14/2008
|
||||
|
||||
.TP
|
||||
ISO-8601
|
||||
task ... due:20130314T223000Z
|
||||
task ... due:2013-03-14T22:30:00Z
|
||||
|
||||
.TP
|
||||
Relative wording
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.TH taskrc 5 2015-05-10 "${PACKAGE_STRING}" "User Manuals"
|
||||
.TH taskrc 5 2015-10-21 "${PACKAGE_STRING}" "User Manuals"
|
||||
|
||||
.SH NAME
|
||||
taskrc \- Configuration details for the task(1) command
|
||||
@@ -267,13 +267,18 @@ control specific occasions when output is generated. This list may contain:
|
||||
footnote Messages that appear after report output
|
||||
label Column labels on tabular reports
|
||||
new-id Provides feedback of any new task IDs
|
||||
new-uuid Provides feedback of any new task UUIDs
|
||||
new-uuid Provides feedback of any new task UUIDs. Deprecated, to be
|
||||
merged with new-id.
|
||||
affected Reports 'N tasks affected' and similar
|
||||
edit Used the verbose template for the 'edit' command
|
||||
special Feedback when applying special tags
|
||||
project Feedback about project status changes
|
||||
sync Feedback about sync
|
||||
filter Shows the filter used in the command
|
||||
unwait Notification when a task leaves the 'waiting' state
|
||||
recur Notification when a new recurring task instance is created
|
||||
|
||||
"affected", "new-id", "new-uuid" "project" and "unwait" imply "footnote".
|
||||
|
||||
Note that the "on" setting is equivalent to all the tokens being specified,
|
||||
and the "nothing" setting is equivalent to none of the tokens being specified.
|
||||
@@ -281,7 +286,7 @@ and the "nothing" setting is equivalent to none of the tokens being specified.
|
||||
Here are the shortcut equivalents:
|
||||
|
||||
verbose=on
|
||||
verbose=blank,header,footnote,label,new-id,affected,edit,special,project,sync
|
||||
verbose=blank,header,footnote,label,new-id,affected,edit,special,project,sync,filter,unwait
|
||||
|
||||
verbose=off
|
||||
verbose=blank,label,new-id,edit
|
||||
@@ -392,9 +397,18 @@ Enables or disables access to Taskwarrior internals and task metadata on the
|
||||
command line. Defaults to on.
|
||||
|
||||
.TP
|
||||
.B json.array=off
|
||||
Determines whether the query command encloses the JSON output in '[...]' to
|
||||
create a properly-formed JSON array. Defaults to off.
|
||||
.B json.array=on
|
||||
Determines whether the export command encloses the JSON output in '[...]' and
|
||||
adds ',' after each exported task object to create a properly-formed JSON
|
||||
array.
|
||||
With json.array=off, export writes raw JSON objects to STDOUT, one per line.
|
||||
Defaults to on.
|
||||
|
||||
.TP
|
||||
.B json.depends.array=on
|
||||
Determines whether the export command encodes dependencies as an array of string
|
||||
UUIDs, or one comma-separated string.
|
||||
Defaults to on.
|
||||
|
||||
.TP
|
||||
.B _forcecolor=no
|
||||
@@ -431,7 +445,7 @@ The character or string to show in the <uda>.indicator column. Defaults to U.
|
||||
|
||||
.TP
|
||||
.B recurrence=yes
|
||||
Controls whether recurrence is enable, and whether recurring tasks continue to
|
||||
Controls whether recurrence is enabled, and whether recurring tasks continue to
|
||||
generate new task instances. Defaults to 'yes'.
|
||||
|
||||
.TP
|
||||
@@ -493,9 +507,10 @@ Level 1 shows hook calls. Level 2 also shows exit status and I/O.
|
||||
|
||||
.TP
|
||||
.B debug.parser=0
|
||||
Controls the parser diagnostic level. Level 0 means no diagnostics. Level 1
|
||||
shows the parse tree. Level 2 shows expression evaluation details. Level 3
|
||||
shows parse trees from every phase of the parse.
|
||||
Controls the parser diagnostic level. Level 0 shows no diagnostics.
|
||||
Level 1 shows the final parse tree.
|
||||
Level 2 shows the parse tree from all phases of the parse.
|
||||
Level 3 shows expression evaluation details.
|
||||
|
||||
.TP
|
||||
.B debug.tls=0
|
||||
@@ -614,17 +629,17 @@ Examples for other values of dateformat.report:
|
||||
.RS
|
||||
.RS
|
||||
.br
|
||||
a D b Y (V) would do an output as "Fri 24 Jul 2009 (30)"
|
||||
a D b Y (V) would emit "Fri 24 Jul 2009 (30)"
|
||||
.br
|
||||
A, B D, Y would do an output as "Friday, July 24, 2009"
|
||||
A, B D, Y would emit "Friday, July 24, 2009"
|
||||
.br
|
||||
wV a Y-M-D would do an output as "w30 Fri 2009-07-24"
|
||||
wV a Y-M-D would emit "w30 Fri 2009-07-24"
|
||||
.br
|
||||
yMD.HN would do an output as "110124.2342"
|
||||
yMD.HN would emit "110124.2342"
|
||||
.br
|
||||
m/d/Y H:N would do an output as "1/24/2011 10:42"
|
||||
m/d/Y H:N would emit "1/24/2011 10:42"
|
||||
.br
|
||||
a D b Y H:N:S would do an output as "Mon 24 Jan 2011 11:19:42"
|
||||
a D b Y H:N:S would emit "Mon 24 Jan 2011 11:19:42"
|
||||
.RE
|
||||
.RE
|
||||
|
||||
@@ -868,6 +883,22 @@ nothing, for example:
|
||||
.RE
|
||||
.RE
|
||||
|
||||
.RS
|
||||
By default, colors produced by rules blend. This has the advantage of
|
||||
conveying additional information, by producing combinations that are not used
|
||||
by any particular rule directly.
|
||||
|
||||
However, color blending can produce highlighting combinations which are not
|
||||
desired. In such cases, use the following option to disable this behaviour:
|
||||
.RE
|
||||
|
||||
.TP
|
||||
.B rule.color.merge=yes
|
||||
Can be "yes" or "no". When "no", disables merging of colors produced by
|
||||
different color rules. Use if your color scheme produces unpleasing
|
||||
foreground and background combinations.
|
||||
|
||||
|
||||
See the task-color(5) man pages for color details.
|
||||
.RE
|
||||
|
||||
@@ -900,6 +931,11 @@ Colors any task that has the user defined attribute X.
|
||||
Colors any task that has the user defined attribute X set to VALUE.
|
||||
.RE
|
||||
|
||||
.TP
|
||||
.B color.uda.X.none=on green
|
||||
Colors any task that does not have the user defined attribute X.
|
||||
.RE
|
||||
|
||||
.TP
|
||||
.B color.error=green
|
||||
Colors any of the error messages.
|
||||
@@ -1050,10 +1086,6 @@ The urgency calculation uses a polynomial with several terms, each of which
|
||||
has a configurable coefficient. Those coefficients are:
|
||||
|
||||
.TP
|
||||
.B urgency.next.coefficient=15.0
|
||||
.RS
|
||||
Urgency coefficient for 'next' special tag
|
||||
.RE
|
||||
.B urgency.blocking.coefficient=8.0
|
||||
.RS
|
||||
Urgency coefficient for blocking tasks
|
||||
@@ -1062,10 +1094,6 @@ Urgency coefficient for blocking tasks
|
||||
.RS
|
||||
Urgency coefficient for blocked tasks
|
||||
.RE
|
||||
.B urgency.inherit.coefficient=0.0
|
||||
.RS
|
||||
Urgency inherited from dependency chain
|
||||
.RE
|
||||
.B urgency.due.coefficient=12.0
|
||||
.RS
|
||||
Urgency coefficient for due dates
|
||||
@@ -1106,6 +1134,10 @@ Maximum age in days. After this number of days has elapsed, the urgency of a tas
|
||||
.RS
|
||||
Specific tag coefficient.
|
||||
.RE
|
||||
.B urgency.user.tag.next.coefficient=15.0
|
||||
.RS
|
||||
Urgency coefficient for tag 'next'.
|
||||
.RE
|
||||
.B urgency.user.project.<project>.coefficient=...
|
||||
.RS
|
||||
Specific project coefficient.
|
||||
@@ -1127,6 +1159,16 @@ The coefficients reflect the relative importance of the various terms in the
|
||||
urgency calculation. These are default values, and may be modified to suit your
|
||||
preferences, but it is important that you carefully consider any modifications.
|
||||
|
||||
.B urgency.inherit=off
|
||||
.RS
|
||||
Not actually a coefficient. When enabled, blocking tasks inherit
|
||||
the highest urgency value found in the tasks they block. This is
|
||||
done recursively.
|
||||
It is recommended to set urgency.blocking.coefficient and
|
||||
urgency.blocked.coefficient to 0.0 in order for this setting to
|
||||
be the most useful.
|
||||
.RE
|
||||
|
||||
.SS DEFAULTS
|
||||
|
||||
.TP
|
||||
@@ -1224,6 +1266,9 @@ This sort order now specifies that there is a listing break between each
|
||||
project. A listing break is simply a blank line, which provides a visual
|
||||
grouping.
|
||||
|
||||
A special sort value of "none" indicates that no sorting is required, and tasks
|
||||
will be presented in the order (if any) in which they are selected.
|
||||
|
||||
.TP
|
||||
.B report.X.filter
|
||||
This adds a filter to the report X so that only tasks matching the filter
|
||||
@@ -1240,9 +1285,11 @@ section for details on the sequence placeholders.
|
||||
.TP
|
||||
.B report.X.annotations
|
||||
This adds the possibility to control the output of annotations for a task in a
|
||||
report. See the
|
||||
.B annotations
|
||||
variable for details on the possible values. Deprecated.
|
||||
report. Deprecated. Use the
|
||||
.B description
|
||||
column with a format (e.g.,
|
||||
\fBdescription.count\fP)
|
||||
instead.
|
||||
|
||||
.TP
|
||||
Taskwarrior comes with a number of predefined reports, which are:
|
||||
@@ -1376,9 +1423,9 @@ Note that the value are sorted
|
||||
.SS CONTEXT
|
||||
Context setting is a mechanism which allows the user to set a permanent filter,
|
||||
thus avoiding the need to specify one filter repeatedly. More details on usage
|
||||
can be found in the task(1) manpage.
|
||||
can be found in the task(1) man page.
|
||||
|
||||
The current context is stored in the taskrc file, along with definitions for
|
||||
The current context is stored in the .taskrc file, along with definitions for
|
||||
all user provided contexts.
|
||||
|
||||
.TP
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/be-BY/2014.json
|
||||
# http://holidata.net/be-BY/2015.json
|
||||
# http://holidata.net/be-BY/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,62 +28,42 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.be-BY1.name=Новы Год
|
||||
holiday.be-BY1.date=20140101
|
||||
holiday.be-BY1.date=20150101
|
||||
holiday.be-BY2.name=Раство Хрыстова(праваслаўнае)
|
||||
holiday.be-BY2.date=20140107
|
||||
holiday.be-BY2.date=20150107
|
||||
holiday.be-BY3.name=Міжнародны жаночы дзень
|
||||
holiday.be-BY3.date=20140803
|
||||
holiday.be-BY3.date=20150803
|
||||
holiday.be-BY4.name=Пасха(праваслаўная)
|
||||
holiday.be-BY4.date=20140420
|
||||
holiday.be-BY4.date=20150420
|
||||
holiday.be-BY5.name=Радуніца
|
||||
holiday.be-BY5.date=20140429
|
||||
holiday.be-BY5.date=20150421
|
||||
holiday.be-BY6.name=Свята працы
|
||||
holiday.be-BY6.date=20140501
|
||||
holiday.be-BY6.date=20150501
|
||||
holiday.be-BY7.name=Дзень Перамогі
|
||||
holiday.be-BY7.date=20140509
|
||||
holiday.be-BY7.date=20150509
|
||||
holiday.be-BY8.name=Дзень незалежнаці
|
||||
holiday.be-BY8.date=20140703
|
||||
holiday.be-BY8.date=20150703
|
||||
holiday.be-BY9.name=Дзень Кастрычніцкай рэвалюцыі
|
||||
holiday.be-BY9.date=20141107
|
||||
holiday.be-BY9.date=20151107
|
||||
holiday.be-BY10.name=Раство Хрыстова(у заходніх хрысціян)
|
||||
holiday.be-BY10.date=20141225
|
||||
holiday.be-BY10.date=20151225
|
||||
holiday.be-BY11.name=Новы Год
|
||||
holiday.be-BY11.date=20150101
|
||||
holiday.be-BY11.date=20160101
|
||||
holiday.be-BY12.name=Раство Хрыстова(праваслаўнае)
|
||||
holiday.be-BY12.date=20150107
|
||||
holiday.be-BY12.date=20160107
|
||||
holiday.be-BY13.name=Міжнародны жаночы дзень
|
||||
holiday.be-BY13.date=20150803
|
||||
holiday.be-BY13.date=20160803
|
||||
holiday.be-BY14.name=Пасха(праваслаўная)
|
||||
holiday.be-BY14.date=20150420
|
||||
holiday.be-BY14.date=20160327
|
||||
holiday.be-BY15.name=Радуніца
|
||||
holiday.be-BY15.date=20150421
|
||||
holiday.be-BY15.date=20160510
|
||||
holiday.be-BY16.name=Свята працы
|
||||
holiday.be-BY16.date=20150501
|
||||
holiday.be-BY16.date=20160501
|
||||
holiday.be-BY17.name=Дзень Перамогі
|
||||
holiday.be-BY17.date=20150509
|
||||
holiday.be-BY17.date=20160509
|
||||
holiday.be-BY18.name=Дзень незалежнаці
|
||||
holiday.be-BY18.date=20150703
|
||||
holiday.be-BY18.date=20160703
|
||||
holiday.be-BY19.name=Дзень Кастрычніцкай рэвалюцыі
|
||||
holiday.be-BY19.date=20151107
|
||||
holiday.be-BY19.date=20161107
|
||||
holiday.be-BY20.name=Раство Хрыстова(у заходніх хрысціян)
|
||||
holiday.be-BY20.date=20151225
|
||||
holiday.be-BY21.name=Новы Год
|
||||
holiday.be-BY21.date=20160101
|
||||
holiday.be-BY22.name=Раство Хрыстова(праваслаўнае)
|
||||
holiday.be-BY22.date=20160107
|
||||
holiday.be-BY23.name=Міжнародны жаночы дзень
|
||||
holiday.be-BY23.date=20160803
|
||||
holiday.be-BY24.name=Пасха(праваслаўная)
|
||||
holiday.be-BY24.date=20160327
|
||||
holiday.be-BY25.name=Радуніца
|
||||
holiday.be-BY25.date=20160510
|
||||
holiday.be-BY26.name=Свята працы
|
||||
holiday.be-BY26.date=20160501
|
||||
holiday.be-BY27.name=Дзень Перамогі
|
||||
holiday.be-BY27.date=20160509
|
||||
holiday.be-BY28.name=Дзень незалежнаці
|
||||
holiday.be-BY28.date=20160703
|
||||
holiday.be-BY29.name=Дзень Кастрычніцкай рэвалюцыі
|
||||
holiday.be-BY29.date=20161107
|
||||
holiday.be-BY30.name=Раство Хрыстова(у заходніх хрысціян)
|
||||
holiday.be-BY30.date=20161225
|
||||
holiday.be-BY20.date=20161225
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/cs-CZ/2014.json
|
||||
# http://holidata.net/cs-CZ/2015.json
|
||||
# http://holidata.net/cs-CZ/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,80 +28,54 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.cs-CZ1.name=Nový rok
|
||||
holiday.cs-CZ1.date=20140101
|
||||
holiday.cs-CZ1.date=20150101
|
||||
holiday.cs-CZ2.name=Den obnovy samostatnosti českého státu
|
||||
holiday.cs-CZ2.date=20140101
|
||||
holiday.cs-CZ2.date=20150101
|
||||
holiday.cs-CZ3.name=Velikonoční pondělí
|
||||
holiday.cs-CZ3.date=20140421
|
||||
holiday.cs-CZ3.date=20150406
|
||||
holiday.cs-CZ4.name=Svátek práce
|
||||
holiday.cs-CZ4.date=20140501
|
||||
holiday.cs-CZ4.date=20150501
|
||||
holiday.cs-CZ5.name=Den vítězství
|
||||
holiday.cs-CZ5.date=20140508
|
||||
holiday.cs-CZ5.date=20150508
|
||||
holiday.cs-CZ6.name=Den slovanských věrozvěstů
|
||||
holiday.cs-CZ6.date=20140705
|
||||
holiday.cs-CZ6.date=20150705
|
||||
holiday.cs-CZ7.name=Den upálení mistra Jana Husa
|
||||
holiday.cs-CZ7.date=20140706
|
||||
holiday.cs-CZ7.date=20150706
|
||||
holiday.cs-CZ8.name=Den české státnosti
|
||||
holiday.cs-CZ8.date=20140928
|
||||
holiday.cs-CZ8.date=20150928
|
||||
holiday.cs-CZ9.name=Den vzniku samostatného československého státu
|
||||
holiday.cs-CZ9.date=20141028
|
||||
holiday.cs-CZ9.date=20151028
|
||||
holiday.cs-CZ10.name=Den boje za svobodu a demokracii
|
||||
holiday.cs-CZ10.date=20141117
|
||||
holiday.cs-CZ10.date=20151117
|
||||
holiday.cs-CZ11.name=Štědrý den
|
||||
holiday.cs-CZ11.date=20141224
|
||||
holiday.cs-CZ11.date=20151224
|
||||
holiday.cs-CZ12.name=1. svátek vánoční
|
||||
holiday.cs-CZ12.date=20141225
|
||||
holiday.cs-CZ12.date=20151225
|
||||
holiday.cs-CZ13.name=2. svátek vánoční
|
||||
holiday.cs-CZ13.date=20141226
|
||||
holiday.cs-CZ13.date=20151226
|
||||
holiday.cs-CZ14.name=Nový rok
|
||||
holiday.cs-CZ14.date=20150101
|
||||
holiday.cs-CZ14.date=20160101
|
||||
holiday.cs-CZ15.name=Den obnovy samostatnosti českého státu
|
||||
holiday.cs-CZ15.date=20150101
|
||||
holiday.cs-CZ15.date=20160101
|
||||
holiday.cs-CZ16.name=Velikonoční pondělí
|
||||
holiday.cs-CZ16.date=20150406
|
||||
holiday.cs-CZ16.date=20160328
|
||||
holiday.cs-CZ17.name=Svátek práce
|
||||
holiday.cs-CZ17.date=20150501
|
||||
holiday.cs-CZ17.date=20160501
|
||||
holiday.cs-CZ18.name=Den vítězství
|
||||
holiday.cs-CZ18.date=20150508
|
||||
holiday.cs-CZ18.date=20160508
|
||||
holiday.cs-CZ19.name=Den slovanských věrozvěstů
|
||||
holiday.cs-CZ19.date=20150705
|
||||
holiday.cs-CZ19.date=20160705
|
||||
holiday.cs-CZ20.name=Den upálení mistra Jana Husa
|
||||
holiday.cs-CZ20.date=20150706
|
||||
holiday.cs-CZ20.date=20160706
|
||||
holiday.cs-CZ21.name=Den české státnosti
|
||||
holiday.cs-CZ21.date=20150928
|
||||
holiday.cs-CZ21.date=20160928
|
||||
holiday.cs-CZ22.name=Den vzniku samostatného československého státu
|
||||
holiday.cs-CZ22.date=20151028
|
||||
holiday.cs-CZ22.date=20161028
|
||||
holiday.cs-CZ23.name=Den boje za svobodu a demokracii
|
||||
holiday.cs-CZ23.date=20151117
|
||||
holiday.cs-CZ23.date=20161117
|
||||
holiday.cs-CZ24.name=Štědrý den
|
||||
holiday.cs-CZ24.date=20151224
|
||||
holiday.cs-CZ24.date=20161224
|
||||
holiday.cs-CZ25.name=1. svátek vánoční
|
||||
holiday.cs-CZ25.date=20151225
|
||||
holiday.cs-CZ25.date=20161225
|
||||
holiday.cs-CZ26.name=2. svátek vánoční
|
||||
holiday.cs-CZ26.date=20151226
|
||||
holiday.cs-CZ27.name=Nový rok
|
||||
holiday.cs-CZ27.date=20160101
|
||||
holiday.cs-CZ28.name=Den obnovy samostatnosti českého státu
|
||||
holiday.cs-CZ28.date=20160101
|
||||
holiday.cs-CZ29.name=Velikonoční pondělí
|
||||
holiday.cs-CZ29.date=20160328
|
||||
holiday.cs-CZ30.name=Svátek práce
|
||||
holiday.cs-CZ30.date=20160501
|
||||
holiday.cs-CZ31.name=Den vítězství
|
||||
holiday.cs-CZ31.date=20160508
|
||||
holiday.cs-CZ32.name=Den slovanských věrozvěstů
|
||||
holiday.cs-CZ32.date=20160705
|
||||
holiday.cs-CZ33.name=Den upálení mistra Jana Husa
|
||||
holiday.cs-CZ33.date=20160706
|
||||
holiday.cs-CZ34.name=Den české státnosti
|
||||
holiday.cs-CZ34.date=20160928
|
||||
holiday.cs-CZ35.name=Den vzniku samostatného československého státu
|
||||
holiday.cs-CZ35.date=20161028
|
||||
holiday.cs-CZ36.name=Den boje za svobodu a demokracii
|
||||
holiday.cs-CZ36.date=20161117
|
||||
holiday.cs-CZ37.name=Štědrý den
|
||||
holiday.cs-CZ37.date=20161224
|
||||
holiday.cs-CZ38.name=1. svátek vánoční
|
||||
holiday.cs-CZ38.date=20161225
|
||||
holiday.cs-CZ39.name=2. svátek vánoční
|
||||
holiday.cs-CZ39.date=20161226
|
||||
holiday.cs-CZ26.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/da-DK/2014.json
|
||||
# http://holidata.net/da-DK/2015.json
|
||||
# http://holidata.net/da-DK/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -27,69 +27,47 @@
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
holiday.da-DK1.name=Grundlovsdag
|
||||
holiday.da-DK1.date=20140605
|
||||
holiday.da-DK2.name=Nytårsdag
|
||||
holiday.da-DK2.date=20140101
|
||||
holiday.da-DK3.name=Skærtorsdag
|
||||
holiday.da-DK3.date=20140417
|
||||
holiday.da-DK4.name=Langfredag
|
||||
holiday.da-DK4.date=20140418
|
||||
holiday.da-DK5.name=Påskedag
|
||||
holiday.da-DK5.date=20140420
|
||||
holiday.da-DK6.name=Anden påskedag
|
||||
holiday.da-DK6.date=20140421
|
||||
holiday.da-DK7.name=Kristi himmelfartsdag
|
||||
holiday.da-DK7.date=20140529
|
||||
holiday.da-DK8.name=Pinsedag
|
||||
holiday.da-DK8.date=20140608
|
||||
holiday.da-DK9.name=Anden pinsedag
|
||||
holiday.da-DK9.date=20140609
|
||||
holiday.da-DK1.name=Nytårsdag
|
||||
holiday.da-DK1.date=20150101
|
||||
holiday.da-DK2.name=Skærtorsdag
|
||||
holiday.da-DK2.date=20150402
|
||||
holiday.da-DK3.name=Langfredag
|
||||
holiday.da-DK3.date=20150403
|
||||
holiday.da-DK4.name=Påskedag
|
||||
holiday.da-DK4.date=20150405
|
||||
holiday.da-DK5.name=Anden påskedag
|
||||
holiday.da-DK5.date=20150406
|
||||
holiday.da-DK6.name=Kristi himmelfartsdag
|
||||
holiday.da-DK6.date=20150514
|
||||
holiday.da-DK7.name=Pinsedag
|
||||
holiday.da-DK7.date=20150524
|
||||
holiday.da-DK8.name=Anden pinsedag
|
||||
holiday.da-DK8.date=20150525
|
||||
holiday.da-DK9.name=Grundlovsdag
|
||||
holiday.da-DK9.date=20150605
|
||||
holiday.da-DK10.name=Juledag
|
||||
holiday.da-DK10.date=20141225
|
||||
holiday.da-DK10.date=20151225
|
||||
holiday.da-DK11.name=Anden juledag
|
||||
holiday.da-DK11.date=20141226
|
||||
holiday.da-DK11.date=20151226
|
||||
holiday.da-DK12.name=Nytårsdag
|
||||
holiday.da-DK12.date=20150101
|
||||
holiday.da-DK12.date=20160101
|
||||
holiday.da-DK13.name=Skærtorsdag
|
||||
holiday.da-DK13.date=20150402
|
||||
holiday.da-DK13.date=20160324
|
||||
holiday.da-DK14.name=Langfredag
|
||||
holiday.da-DK14.date=20150403
|
||||
holiday.da-DK14.date=20160325
|
||||
holiday.da-DK15.name=Påskedag
|
||||
holiday.da-DK15.date=20150405
|
||||
holiday.da-DK15.date=20160327
|
||||
holiday.da-DK16.name=Anden påskedag
|
||||
holiday.da-DK16.date=20150406
|
||||
holiday.da-DK16.date=20160328
|
||||
holiday.da-DK17.name=Kristi himmelfartsdag
|
||||
holiday.da-DK17.date=20150514
|
||||
holiday.da-DK17.date=20160505
|
||||
holiday.da-DK18.name=Pinsedag
|
||||
holiday.da-DK18.date=20150524
|
||||
holiday.da-DK18.date=20160515
|
||||
holiday.da-DK19.name=Anden pinsedag
|
||||
holiday.da-DK19.date=20150525
|
||||
holiday.da-DK19.date=20160516
|
||||
holiday.da-DK20.name=Grundlovsdag
|
||||
holiday.da-DK20.date=20150605
|
||||
holiday.da-DK20.date=20160605
|
||||
holiday.da-DK21.name=Juledag
|
||||
holiday.da-DK21.date=20151225
|
||||
holiday.da-DK21.date=20161225
|
||||
holiday.da-DK22.name=Anden juledag
|
||||
holiday.da-DK22.date=20151226
|
||||
holiday.da-DK23.name=Nytårsdag
|
||||
holiday.da-DK23.date=20160101
|
||||
holiday.da-DK24.name=Skærtorsdag
|
||||
holiday.da-DK24.date=20160324
|
||||
holiday.da-DK25.name=Langfredag
|
||||
holiday.da-DK25.date=20160325
|
||||
holiday.da-DK26.name=Påskedag
|
||||
holiday.da-DK26.date=20160327
|
||||
holiday.da-DK27.name=Anden påskedag
|
||||
holiday.da-DK27.date=20160328
|
||||
holiday.da-DK28.name=Kristi himmelfartsdag
|
||||
holiday.da-DK28.date=20160505
|
||||
holiday.da-DK29.name=Pinsedag
|
||||
holiday.da-DK29.date=20160515
|
||||
holiday.da-DK30.name=Anden pinsedag
|
||||
holiday.da-DK30.date=20160516
|
||||
holiday.da-DK31.name=Grundlovsdag
|
||||
holiday.da-DK31.date=20160605
|
||||
holiday.da-DK32.name=Juledag
|
||||
holiday.da-DK32.date=20161225
|
||||
holiday.da-DK33.name=Anden juledag
|
||||
holiday.da-DK33.date=20161226
|
||||
holiday.da-DK22.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/de-AT/2014.json
|
||||
# http://holidata.net/de-AT/2015.json
|
||||
# http://holidata.net/de-AT/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,140 +28,94 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.de-AT1.name=Neujahr
|
||||
holiday.de-AT1.date=20140101
|
||||
holiday.de-AT1.date=20150101
|
||||
holiday.de-AT2.name=Heilige drei Könige
|
||||
holiday.de-AT2.date=20140106
|
||||
holiday.de-AT2.date=20150106
|
||||
holiday.de-AT3.name=Josef (K, St, T, V)
|
||||
holiday.de-AT3.date=20140319
|
||||
holiday.de-AT3.date=20150319
|
||||
holiday.de-AT4.name=Karfreitag
|
||||
holiday.de-AT4.date=20140418
|
||||
holiday.de-AT4.date=20150403
|
||||
holiday.de-AT5.name=Ostersonntag
|
||||
holiday.de-AT5.date=20140420
|
||||
holiday.de-AT5.date=20150405
|
||||
holiday.de-AT6.name=Ostermontag
|
||||
holiday.de-AT6.date=20140421
|
||||
holiday.de-AT6.date=20150406
|
||||
holiday.de-AT7.name=Staatsfeiertag
|
||||
holiday.de-AT7.date=20140501
|
||||
holiday.de-AT7.date=20150501
|
||||
holiday.de-AT8.name=Florian (O)
|
||||
holiday.de-AT8.date=20140504
|
||||
holiday.de-AT8.date=20150504
|
||||
holiday.de-AT9.name=Christi Himmelfahrt
|
||||
holiday.de-AT9.date=20140529
|
||||
holiday.de-AT9.date=20150514
|
||||
holiday.de-AT10.name=Pfingstsonntag
|
||||
holiday.de-AT10.date=20140608
|
||||
holiday.de-AT10.date=20150524
|
||||
holiday.de-AT11.name=Pfingstmontag
|
||||
holiday.de-AT11.date=20140609
|
||||
holiday.de-AT11.date=20150525
|
||||
holiday.de-AT12.name=Fronleichnam
|
||||
holiday.de-AT12.date=20140619
|
||||
holiday.de-AT12.date=20150604
|
||||
holiday.de-AT13.name=Mariä Himmelfahrt
|
||||
holiday.de-AT13.date=20140815
|
||||
holiday.de-AT13.date=20150815
|
||||
holiday.de-AT14.name=Rupert (S)
|
||||
holiday.de-AT14.date=20140924
|
||||
holiday.de-AT14.date=20150924
|
||||
holiday.de-AT15.name=Tag der Volksabstimmung (K)
|
||||
holiday.de-AT15.date=20141010
|
||||
holiday.de-AT15.date=20151010
|
||||
holiday.de-AT16.name=Allerheiligen
|
||||
holiday.de-AT16.date=20141101
|
||||
holiday.de-AT16.date=20151101
|
||||
holiday.de-AT17.name=Martin (B)
|
||||
holiday.de-AT17.date=20141111
|
||||
holiday.de-AT17.date=20151111
|
||||
holiday.de-AT18.name=Leopold (W, N)
|
||||
holiday.de-AT18.date=20141115
|
||||
holiday.de-AT18.date=20151115
|
||||
holiday.de-AT19.name=Mariä Empfängnis
|
||||
holiday.de-AT19.date=20141208
|
||||
holiday.de-AT19.date=20151208
|
||||
holiday.de-AT20.name=Heiliger Abend
|
||||
holiday.de-AT20.date=20141224
|
||||
holiday.de-AT20.date=20151224
|
||||
holiday.de-AT21.name=Christtag
|
||||
holiday.de-AT21.date=20141225
|
||||
holiday.de-AT21.date=20151225
|
||||
holiday.de-AT22.name=Stefanitag
|
||||
holiday.de-AT22.date=20141226
|
||||
holiday.de-AT22.date=20151226
|
||||
holiday.de-AT23.name=Silvester
|
||||
holiday.de-AT23.date=20141231
|
||||
holiday.de-AT23.date=20151231
|
||||
holiday.de-AT24.name=Neujahr
|
||||
holiday.de-AT24.date=20150101
|
||||
holiday.de-AT24.date=20160101
|
||||
holiday.de-AT25.name=Heilige drei Könige
|
||||
holiday.de-AT25.date=20150106
|
||||
holiday.de-AT25.date=20160106
|
||||
holiday.de-AT26.name=Josef (K, St, T, V)
|
||||
holiday.de-AT26.date=20150319
|
||||
holiday.de-AT26.date=20160319
|
||||
holiday.de-AT27.name=Karfreitag
|
||||
holiday.de-AT27.date=20150403
|
||||
holiday.de-AT27.date=20160325
|
||||
holiday.de-AT28.name=Ostersonntag
|
||||
holiday.de-AT28.date=20150405
|
||||
holiday.de-AT28.date=20160327
|
||||
holiday.de-AT29.name=Ostermontag
|
||||
holiday.de-AT29.date=20150406
|
||||
holiday.de-AT29.date=20160328
|
||||
holiday.de-AT30.name=Staatsfeiertag
|
||||
holiday.de-AT30.date=20150501
|
||||
holiday.de-AT30.date=20160501
|
||||
holiday.de-AT31.name=Florian (O)
|
||||
holiday.de-AT31.date=20150504
|
||||
holiday.de-AT31.date=20160504
|
||||
holiday.de-AT32.name=Christi Himmelfahrt
|
||||
holiday.de-AT32.date=20150514
|
||||
holiday.de-AT32.date=20160505
|
||||
holiday.de-AT33.name=Pfingstsonntag
|
||||
holiday.de-AT33.date=20150524
|
||||
holiday.de-AT33.date=20160515
|
||||
holiday.de-AT34.name=Pfingstmontag
|
||||
holiday.de-AT34.date=20150525
|
||||
holiday.de-AT34.date=20160516
|
||||
holiday.de-AT35.name=Fronleichnam
|
||||
holiday.de-AT35.date=20150604
|
||||
holiday.de-AT35.date=20160526
|
||||
holiday.de-AT36.name=Mariä Himmelfahrt
|
||||
holiday.de-AT36.date=20150815
|
||||
holiday.de-AT36.date=20160815
|
||||
holiday.de-AT37.name=Rupert (S)
|
||||
holiday.de-AT37.date=20150924
|
||||
holiday.de-AT37.date=20160924
|
||||
holiday.de-AT38.name=Tag der Volksabstimmung (K)
|
||||
holiday.de-AT38.date=20151010
|
||||
holiday.de-AT38.date=20161010
|
||||
holiday.de-AT39.name=Allerheiligen
|
||||
holiday.de-AT39.date=20151101
|
||||
holiday.de-AT39.date=20161101
|
||||
holiday.de-AT40.name=Martin (B)
|
||||
holiday.de-AT40.date=20151111
|
||||
holiday.de-AT40.date=20161111
|
||||
holiday.de-AT41.name=Leopold (W, N)
|
||||
holiday.de-AT41.date=20151115
|
||||
holiday.de-AT41.date=20161115
|
||||
holiday.de-AT42.name=Mariä Empfängnis
|
||||
holiday.de-AT42.date=20151208
|
||||
holiday.de-AT42.date=20161208
|
||||
holiday.de-AT43.name=Heiliger Abend
|
||||
holiday.de-AT43.date=20151224
|
||||
holiday.de-AT43.date=20161224
|
||||
holiday.de-AT44.name=Christtag
|
||||
holiday.de-AT44.date=20151225
|
||||
holiday.de-AT44.date=20161225
|
||||
holiday.de-AT45.name=Stefanitag
|
||||
holiday.de-AT45.date=20151226
|
||||
holiday.de-AT45.date=20161226
|
||||
holiday.de-AT46.name=Silvester
|
||||
holiday.de-AT46.date=20151231
|
||||
holiday.de-AT47.name=Neujahr
|
||||
holiday.de-AT47.date=20160101
|
||||
holiday.de-AT48.name=Heilige drei Könige
|
||||
holiday.de-AT48.date=20160106
|
||||
holiday.de-AT49.name=Josef (K, St, T, V)
|
||||
holiday.de-AT49.date=20160319
|
||||
holiday.de-AT50.name=Karfreitag
|
||||
holiday.de-AT50.date=20160325
|
||||
holiday.de-AT51.name=Ostersonntag
|
||||
holiday.de-AT51.date=20160327
|
||||
holiday.de-AT52.name=Ostermontag
|
||||
holiday.de-AT52.date=20160328
|
||||
holiday.de-AT53.name=Staatsfeiertag
|
||||
holiday.de-AT53.date=20160501
|
||||
holiday.de-AT54.name=Florian (O)
|
||||
holiday.de-AT54.date=20160504
|
||||
holiday.de-AT55.name=Christi Himmelfahrt
|
||||
holiday.de-AT55.date=20160505
|
||||
holiday.de-AT56.name=Pfingstsonntag
|
||||
holiday.de-AT56.date=20160515
|
||||
holiday.de-AT57.name=Pfingstmontag
|
||||
holiday.de-AT57.date=20160516
|
||||
holiday.de-AT58.name=Fronleichnam
|
||||
holiday.de-AT58.date=20160526
|
||||
holiday.de-AT59.name=Mariä Himmelfahrt
|
||||
holiday.de-AT59.date=20160815
|
||||
holiday.de-AT60.name=Rupert (S)
|
||||
holiday.de-AT60.date=20160924
|
||||
holiday.de-AT61.name=Tag der Volksabstimmung (K)
|
||||
holiday.de-AT61.date=20161010
|
||||
holiday.de-AT62.name=Allerheiligen
|
||||
holiday.de-AT62.date=20161101
|
||||
holiday.de-AT63.name=Martin (B)
|
||||
holiday.de-AT63.date=20161111
|
||||
holiday.de-AT64.name=Leopold (W, N)
|
||||
holiday.de-AT64.date=20161115
|
||||
holiday.de-AT65.name=Mariä Empfängnis
|
||||
holiday.de-AT65.date=20161208
|
||||
holiday.de-AT66.name=Heiliger Abend
|
||||
holiday.de-AT66.date=20161224
|
||||
holiday.de-AT67.name=Christtag
|
||||
holiday.de-AT67.date=20161225
|
||||
holiday.de-AT68.name=Stefanitag
|
||||
holiday.de-AT68.date=20161226
|
||||
holiday.de-AT69.name=Silvester
|
||||
holiday.de-AT69.date=20161231
|
||||
holiday.de-AT46.date=20161231
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/de-BE/2014.json
|
||||
# http://holidata.net/de-BE/2015.json
|
||||
# http://holidata.net/de-BE/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,74 +28,50 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.de-BE1.name=Neujahr
|
||||
holiday.de-BE1.date=20140101
|
||||
holiday.de-BE1.date=20150101
|
||||
holiday.de-BE2.name=Ostern
|
||||
holiday.de-BE2.date=20140420
|
||||
holiday.de-BE2.date=20150405
|
||||
holiday.de-BE3.name=Ostermontag
|
||||
holiday.de-BE3.date=20140421
|
||||
holiday.de-BE3.date=20150406
|
||||
holiday.de-BE4.name=Tag der Arbeit
|
||||
holiday.de-BE4.date=20140501
|
||||
holiday.de-BE4.date=20150501
|
||||
holiday.de-BE5.name=Christi Himmelfahrt
|
||||
holiday.de-BE5.date=20140529
|
||||
holiday.de-BE5.date=20150514
|
||||
holiday.de-BE6.name=Pfingsten
|
||||
holiday.de-BE6.date=20140608
|
||||
holiday.de-BE6.date=20150524
|
||||
holiday.de-BE7.name=Pfingstmontag
|
||||
holiday.de-BE7.date=20140609
|
||||
holiday.de-BE7.date=20150525
|
||||
holiday.de-BE8.name=Nationalfeiertag
|
||||
holiday.de-BE8.date=20140721
|
||||
holiday.de-BE8.date=20150721
|
||||
holiday.de-BE9.name=Mariä Himmelfahrt
|
||||
holiday.de-BE9.date=20140815
|
||||
holiday.de-BE9.date=20150815
|
||||
holiday.de-BE10.name=Allerheiligen
|
||||
holiday.de-BE10.date=20141101
|
||||
holiday.de-BE10.date=20151101
|
||||
holiday.de-BE11.name=Waffenstillstand
|
||||
holiday.de-BE11.date=20141111
|
||||
holiday.de-BE11.date=20151111
|
||||
holiday.de-BE12.name=Weihnacht
|
||||
holiday.de-BE12.date=20141225
|
||||
holiday.de-BE12.date=20151225
|
||||
holiday.de-BE13.name=Neujahr
|
||||
holiday.de-BE13.date=20150101
|
||||
holiday.de-BE13.date=20160101
|
||||
holiday.de-BE14.name=Ostern
|
||||
holiday.de-BE14.date=20150405
|
||||
holiday.de-BE14.date=20160527
|
||||
holiday.de-BE15.name=Ostermontag
|
||||
holiday.de-BE15.date=20150406
|
||||
holiday.de-BE15.date=20160528
|
||||
holiday.de-BE16.name=Tag der Arbeit
|
||||
holiday.de-BE16.date=20150501
|
||||
holiday.de-BE16.date=20160501
|
||||
holiday.de-BE17.name=Christi Himmelfahrt
|
||||
holiday.de-BE17.date=20150514
|
||||
holiday.de-BE17.date=20160505
|
||||
holiday.de-BE18.name=Pfingsten
|
||||
holiday.de-BE18.date=20150524
|
||||
holiday.de-BE18.date=20160515
|
||||
holiday.de-BE19.name=Pfingstmontag
|
||||
holiday.de-BE19.date=20150525
|
||||
holiday.de-BE19.date=20160516
|
||||
holiday.de-BE20.name=Nationalfeiertag
|
||||
holiday.de-BE20.date=20150721
|
||||
holiday.de-BE20.date=20160721
|
||||
holiday.de-BE21.name=Mariä Himmelfahrt
|
||||
holiday.de-BE21.date=20150815
|
||||
holiday.de-BE21.date=20160815
|
||||
holiday.de-BE22.name=Allerheiligen
|
||||
holiday.de-BE22.date=20151101
|
||||
holiday.de-BE22.date=20161101
|
||||
holiday.de-BE23.name=Waffenstillstand
|
||||
holiday.de-BE23.date=20151111
|
||||
holiday.de-BE23.date=20161111
|
||||
holiday.de-BE24.name=Weihnacht
|
||||
holiday.de-BE24.date=20151225
|
||||
holiday.de-BE25.name=Neujahr
|
||||
holiday.de-BE25.date=20160101
|
||||
holiday.de-BE26.name=Ostern
|
||||
holiday.de-BE26.date=20160527
|
||||
holiday.de-BE27.name=Ostermontag
|
||||
holiday.de-BE27.date=20160528
|
||||
holiday.de-BE28.name=Tag der Arbeit
|
||||
holiday.de-BE28.date=20160501
|
||||
holiday.de-BE29.name=Christi Himmelfahrt
|
||||
holiday.de-BE29.date=20160505
|
||||
holiday.de-BE30.name=Pfingsten
|
||||
holiday.de-BE30.date=20160515
|
||||
holiday.de-BE31.name=Pfingstmontag
|
||||
holiday.de-BE31.date=20160516
|
||||
holiday.de-BE32.name=Nationalfeiertag
|
||||
holiday.de-BE32.date=20160721
|
||||
holiday.de-BE33.name=Mariä Himmelfahrt
|
||||
holiday.de-BE33.date=20160815
|
||||
holiday.de-BE34.name=Allerheiligen
|
||||
holiday.de-BE34.date=20161101
|
||||
holiday.de-BE35.name=Waffenstillstand
|
||||
holiday.de-BE35.date=20161111
|
||||
holiday.de-BE36.name=Weihnacht
|
||||
holiday.de-BE36.date=20161225
|
||||
holiday.de-BE24.date=20161225
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/de-CH/2014.json
|
||||
# http://holidata.net/de-CH/2015.json
|
||||
# http://holidata.net/de-CH/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2014, Paul Beckingham, Federico Hernandez.
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
@@ -28,110 +28,74 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.de-CH1.name=Neujahrstag
|
||||
holiday.de-CH1.date=20140101
|
||||
holiday.de-CH1.date=20150101
|
||||
holiday.de-CH2.name=Berchtoldstag
|
||||
holiday.de-CH2.date=20140102
|
||||
holiday.de-CH2.date=20150102
|
||||
holiday.de-CH3.name=Heilige Drei Könige
|
||||
holiday.de-CH3.date=20140106
|
||||
holiday.de-CH3.date=20150106
|
||||
holiday.de-CH4.name=Josefstag
|
||||
holiday.de-CH4.date=20140319
|
||||
holiday.de-CH4.date=20150319
|
||||
holiday.de-CH5.name=Karfreitag
|
||||
holiday.de-CH5.date=20140418
|
||||
holiday.de-CH5.date=20150403
|
||||
holiday.de-CH6.name=Ostersonntag
|
||||
holiday.de-CH6.date=20140420
|
||||
holiday.de-CH6.date=20150405
|
||||
holiday.de-CH7.name=Ostermontag
|
||||
holiday.de-CH7.date=20140421
|
||||
holiday.de-CH7.date=20150406
|
||||
holiday.de-CH8.name=Tag der Arbeit
|
||||
holiday.de-CH8.date=20140501
|
||||
holiday.de-CH8.date=20150501
|
||||
holiday.de-CH9.name=Auffahrt
|
||||
holiday.de-CH9.date=20140529
|
||||
holiday.de-CH9.date=20150514
|
||||
holiday.de-CH10.name=Pfingstsonntag
|
||||
holiday.de-CH10.date=20140608
|
||||
holiday.de-CH10.date=20150524
|
||||
holiday.de-CH11.name=Pfingstmontag
|
||||
holiday.de-CH11.date=20140609
|
||||
holiday.de-CH11.date=20150525
|
||||
holiday.de-CH12.name=Fronleichnam
|
||||
holiday.de-CH12.date=20140619
|
||||
holiday.de-CH12.date=20150604
|
||||
holiday.de-CH13.name=Bundesfeier
|
||||
holiday.de-CH13.date=20140801
|
||||
holiday.de-CH13.date=20150801
|
||||
holiday.de-CH14.name=Mariä Himmelfahrt
|
||||
holiday.de-CH14.date=20140815
|
||||
holiday.de-CH14.date=20150815
|
||||
holiday.de-CH15.name=Allerheiligen
|
||||
holiday.de-CH15.date=20141101
|
||||
holiday.de-CH15.date=20151101
|
||||
holiday.de-CH16.name=Mariä Empfängnis
|
||||
holiday.de-CH16.date=20141208
|
||||
holiday.de-CH16.date=20151208
|
||||
holiday.de-CH17.name=Weihnachtstag
|
||||
holiday.de-CH17.date=20141225
|
||||
holiday.de-CH17.date=20151225
|
||||
holiday.de-CH18.name=Stephanstag
|
||||
holiday.de-CH18.date=20141226
|
||||
holiday.de-CH18.date=20151226
|
||||
holiday.de-CH19.name=Neujahrstag
|
||||
holiday.de-CH19.date=20150101
|
||||
holiday.de-CH19.date=20160101
|
||||
holiday.de-CH20.name=Berchtoldstag
|
||||
holiday.de-CH20.date=20150102
|
||||
holiday.de-CH20.date=20160102
|
||||
holiday.de-CH21.name=Heilige Drei Könige
|
||||
holiday.de-CH21.date=20150106
|
||||
holiday.de-CH21.date=20160106
|
||||
holiday.de-CH22.name=Josefstag
|
||||
holiday.de-CH22.date=20150319
|
||||
holiday.de-CH22.date=20160319
|
||||
holiday.de-CH23.name=Karfreitag
|
||||
holiday.de-CH23.date=20150403
|
||||
holiday.de-CH23.date=20160325
|
||||
holiday.de-CH24.name=Ostersonntag
|
||||
holiday.de-CH24.date=20150405
|
||||
holiday.de-CH24.date=20160327
|
||||
holiday.de-CH25.name=Ostermontag
|
||||
holiday.de-CH25.date=20150406
|
||||
holiday.de-CH25.date=20160328
|
||||
holiday.de-CH26.name=Tag der Arbeit
|
||||
holiday.de-CH26.date=20150501
|
||||
holiday.de-CH26.date=20160501
|
||||
holiday.de-CH27.name=Auffahrt
|
||||
holiday.de-CH27.date=20150514
|
||||
holiday.de-CH27.date=20160505
|
||||
holiday.de-CH28.name=Pfingstsonntag
|
||||
holiday.de-CH28.date=20150524
|
||||
holiday.de-CH28.date=20160515
|
||||
holiday.de-CH29.name=Pfingstmontag
|
||||
holiday.de-CH29.date=20150525
|
||||
holiday.de-CH29.date=20160516
|
||||
holiday.de-CH30.name=Fronleichnam
|
||||
holiday.de-CH30.date=20150604
|
||||
holiday.de-CH30.date=20160526
|
||||
holiday.de-CH31.name=Bundesfeier
|
||||
holiday.de-CH31.date=20150801
|
||||
holiday.de-CH31.date=20160801
|
||||
holiday.de-CH32.name=Mariä Himmelfahrt
|
||||
holiday.de-CH32.date=20150815
|
||||
holiday.de-CH32.date=20160815
|
||||
holiday.de-CH33.name=Allerheiligen
|
||||
holiday.de-CH33.date=20151101
|
||||
holiday.de-CH33.date=20161101
|
||||
holiday.de-CH34.name=Mariä Empfängnis
|
||||
holiday.de-CH34.date=20151208
|
||||
holiday.de-CH34.date=20161208
|
||||
holiday.de-CH35.name=Weihnachtstag
|
||||
holiday.de-CH35.date=20151225
|
||||
holiday.de-CH35.date=20161225
|
||||
holiday.de-CH36.name=Stephanstag
|
||||
holiday.de-CH36.date=20151226
|
||||
holiday.de-CH37.name=Neujahrstag
|
||||
holiday.de-CH37.date=20160101
|
||||
holiday.de-CH38.name=Berchtoldstag
|
||||
holiday.de-CH38.date=20160102
|
||||
holiday.de-CH39.name=Heilige Drei Könige
|
||||
holiday.de-CH39.date=20160106
|
||||
holiday.de-CH40.name=Josefstag
|
||||
holiday.de-CH40.date=20160319
|
||||
holiday.de-CH41.name=Karfreitag
|
||||
holiday.de-CH41.date=20160325
|
||||
holiday.de-CH42.name=Ostersonntag
|
||||
holiday.de-CH42.date=20160327
|
||||
holiday.de-CH43.name=Ostermontag
|
||||
holiday.de-CH43.date=20160328
|
||||
holiday.de-CH44.name=Tag der Arbeit
|
||||
holiday.de-CH44.date=20160501
|
||||
holiday.de-CH45.name=Auffahrt
|
||||
holiday.de-CH45.date=20160505
|
||||
holiday.de-CH46.name=Pfingstsonntag
|
||||
holiday.de-CH46.date=20160515
|
||||
holiday.de-CH47.name=Pfingstmontag
|
||||
holiday.de-CH47.date=20160516
|
||||
holiday.de-CH48.name=Fronleichnam
|
||||
holiday.de-CH48.date=20160526
|
||||
holiday.de-CH49.name=Bundesfeier
|
||||
holiday.de-CH49.date=20160801
|
||||
holiday.de-CH50.name=Mariä Himmelfahrt
|
||||
holiday.de-CH50.date=20160815
|
||||
holiday.de-CH51.name=Allerheiligen
|
||||
holiday.de-CH51.date=20161101
|
||||
holiday.de-CH52.name=Mariä Empfängnis
|
||||
holiday.de-CH52.date=20161208
|
||||
holiday.de-CH53.name=Weihnachtstag
|
||||
holiday.de-CH53.date=20161225
|
||||
holiday.de-CH54.name=Stephanstag
|
||||
holiday.de-CH54.date=20161226
|
||||
holiday.de-CH36.date=20161226
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/de-DE/2014.json
|
||||
# http://holidata.net/de-DE/2015.json
|
||||
# http://holidata.net/de-DE/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2014, Paul Beckingham, Federico Hernandez.
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
@@ -28,116 +28,78 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.de-DE1.name=Neujahr
|
||||
holiday.de-DE1.date=20140101
|
||||
holiday.de-DE1.date=20150101
|
||||
holiday.de-DE2.name=Heilige drei Könige
|
||||
holiday.de-DE2.date=20140106
|
||||
holiday.de-DE2.date=20150106
|
||||
holiday.de-DE3.name=Karfreitag
|
||||
holiday.de-DE3.date=20140418
|
||||
holiday.de-DE3.date=20150403
|
||||
holiday.de-DE4.name=Ostern
|
||||
holiday.de-DE4.date=20140420
|
||||
holiday.de-DE4.date=20150405
|
||||
holiday.de-DE5.name=Ostermontag
|
||||
holiday.de-DE5.date=20140421
|
||||
holiday.de-DE5.date=20150406
|
||||
holiday.de-DE6.name=Erster Maifeiertag
|
||||
holiday.de-DE6.date=20140501
|
||||
holiday.de-DE6.date=20150501
|
||||
holiday.de-DE7.name=Christi Himmelfahrt
|
||||
holiday.de-DE7.date=20140529
|
||||
holiday.de-DE7.date=20150514
|
||||
holiday.de-DE8.name=Pfingstsonntag
|
||||
holiday.de-DE8.date=20140608
|
||||
holiday.de-DE8.date=20150524
|
||||
holiday.de-DE9.name=Pfingstmontag
|
||||
holiday.de-DE9.date=20140609
|
||||
holiday.de-DE9.date=20150525
|
||||
holiday.de-DE10.name=Fronleichnam
|
||||
holiday.de-DE10.date=20140619
|
||||
holiday.de-DE10.date=20150604
|
||||
holiday.de-DE11.name=Mariä Himmelfahrt
|
||||
holiday.de-DE11.date=20140815
|
||||
holiday.de-DE11.date=20150815
|
||||
holiday.de-DE12.name=Tag der Deutschen Einheit
|
||||
holiday.de-DE12.date=20141003
|
||||
holiday.de-DE12.date=20151003
|
||||
holiday.de-DE13.name=Reformationstag
|
||||
holiday.de-DE13.date=20141031
|
||||
holiday.de-DE13.date=20151031
|
||||
holiday.de-DE14.name=Allerheiligen
|
||||
holiday.de-DE14.date=20141101
|
||||
holiday.de-DE14.date=20151101
|
||||
holiday.de-DE15.name=Buss und Bettag
|
||||
holiday.de-DE15.date=20141119
|
||||
holiday.de-DE15.date=20151118
|
||||
holiday.de-DE16.name=Heilig Abend
|
||||
holiday.de-DE16.date=20141224
|
||||
holiday.de-DE16.date=20151224
|
||||
holiday.de-DE17.name=Weihnachtstag
|
||||
holiday.de-DE17.date=20141225
|
||||
holiday.de-DE17.date=20151225
|
||||
holiday.de-DE18.name=Zweiter Weihnachtstag
|
||||
holiday.de-DE18.date=20141226
|
||||
holiday.de-DE18.date=20151226
|
||||
holiday.de-DE19.name=Sylvester
|
||||
holiday.de-DE19.date=20141231
|
||||
holiday.de-DE19.date=20151231
|
||||
holiday.de-DE20.name=Neujahr
|
||||
holiday.de-DE20.date=20150101
|
||||
holiday.de-DE20.date=20160101
|
||||
holiday.de-DE21.name=Heilige drei Könige
|
||||
holiday.de-DE21.date=20150106
|
||||
holiday.de-DE21.date=20160106
|
||||
holiday.de-DE22.name=Karfreitag
|
||||
holiday.de-DE22.date=20150403
|
||||
holiday.de-DE22.date=20160325
|
||||
holiday.de-DE23.name=Ostern
|
||||
holiday.de-DE23.date=20150405
|
||||
holiday.de-DE23.date=20160327
|
||||
holiday.de-DE24.name=Ostermontag
|
||||
holiday.de-DE24.date=20150406
|
||||
holiday.de-DE24.date=20160328
|
||||
holiday.de-DE25.name=Erster Maifeiertag
|
||||
holiday.de-DE25.date=20150501
|
||||
holiday.de-DE25.date=20160501
|
||||
holiday.de-DE26.name=Christi Himmelfahrt
|
||||
holiday.de-DE26.date=20150514
|
||||
holiday.de-DE26.date=20160505
|
||||
holiday.de-DE27.name=Pfingstsonntag
|
||||
holiday.de-DE27.date=20150524
|
||||
holiday.de-DE27.date=20160515
|
||||
holiday.de-DE28.name=Pfingstmontag
|
||||
holiday.de-DE28.date=20150525
|
||||
holiday.de-DE28.date=20160516
|
||||
holiday.de-DE29.name=Fronleichnam
|
||||
holiday.de-DE29.date=20150604
|
||||
holiday.de-DE29.date=20160526
|
||||
holiday.de-DE30.name=Mariä Himmelfahrt
|
||||
holiday.de-DE30.date=20150815
|
||||
holiday.de-DE30.date=20160815
|
||||
holiday.de-DE31.name=Tag der Deutschen Einheit
|
||||
holiday.de-DE31.date=20151003
|
||||
holiday.de-DE31.date=20161003
|
||||
holiday.de-DE32.name=Reformationstag
|
||||
holiday.de-DE32.date=20151031
|
||||
holiday.de-DE32.date=20161031
|
||||
holiday.de-DE33.name=Allerheiligen
|
||||
holiday.de-DE33.date=20151101
|
||||
holiday.de-DE33.date=20161101
|
||||
holiday.de-DE34.name=Buss und Bettag
|
||||
holiday.de-DE34.date=20151118
|
||||
holiday.de-DE34.date=20161116
|
||||
holiday.de-DE35.name=Heilig Abend
|
||||
holiday.de-DE35.date=20151224
|
||||
holiday.de-DE35.date=20161224
|
||||
holiday.de-DE36.name=Weihnachtstag
|
||||
holiday.de-DE36.date=20151225
|
||||
holiday.de-DE36.date=20161225
|
||||
holiday.de-DE37.name=Zweiter Weihnachtstag
|
||||
holiday.de-DE37.date=20151226
|
||||
holiday.de-DE37.date=20161226
|
||||
holiday.de-DE38.name=Sylvester
|
||||
holiday.de-DE38.date=20151231
|
||||
holiday.de-DE39.name=Neujahr
|
||||
holiday.de-DE39.date=20160101
|
||||
holiday.de-DE40.name=Heilige drei Könige
|
||||
holiday.de-DE40.date=20160106
|
||||
holiday.de-DE41.name=Karfreitag
|
||||
holiday.de-DE41.date=20160325
|
||||
holiday.de-DE42.name=Ostern
|
||||
holiday.de-DE42.date=20160327
|
||||
holiday.de-DE43.name=Ostermontag
|
||||
holiday.de-DE43.date=20160328
|
||||
holiday.de-DE44.name=Erster Maifeiertag
|
||||
holiday.de-DE44.date=20160501
|
||||
holiday.de-DE45.name=Christi Himmelfahrt
|
||||
holiday.de-DE45.date=20160505
|
||||
holiday.de-DE46.name=Pfingstsonntag
|
||||
holiday.de-DE46.date=20160515
|
||||
holiday.de-DE47.name=Pfingstmontag
|
||||
holiday.de-DE47.date=20160516
|
||||
holiday.de-DE48.name=Fronleichnam
|
||||
holiday.de-DE48.date=20160526
|
||||
holiday.de-DE49.name=Mariä Himmelfahrt
|
||||
holiday.de-DE49.date=20160815
|
||||
holiday.de-DE50.name=Tag der Deutschen Einheit
|
||||
holiday.de-DE50.date=20161003
|
||||
holiday.de-DE51.name=Reformationstag
|
||||
holiday.de-DE51.date=20161031
|
||||
holiday.de-DE52.name=Allerheiligen
|
||||
holiday.de-DE52.date=20161101
|
||||
holiday.de-DE53.name=Buss und Bettag
|
||||
holiday.de-DE53.date=20161116
|
||||
holiday.de-DE54.name=Heilig Abend
|
||||
holiday.de-DE54.date=20161224
|
||||
holiday.de-DE55.name=Weihnachtstag
|
||||
holiday.de-DE55.date=20161225
|
||||
holiday.de-DE56.name=Zweiter Weihnachtstag
|
||||
holiday.de-DE56.date=20161226
|
||||
holiday.de-DE57.name=Sylvester
|
||||
holiday.de-DE57.date=20161231
|
||||
holiday.de-DE38.date=20161231
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/el-GR/2014.json
|
||||
# http://holidata.net/el-GR/2015.json
|
||||
# http://holidata.net/el-GR/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,86 +28,58 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.el-GR1.name=Πρωτοχρονιά
|
||||
holiday.el-GR1.date=20140101
|
||||
holiday.el-GR1.date=20150101
|
||||
holiday.el-GR2.name=Θεοφάνεια
|
||||
holiday.el-GR2.date=20140106
|
||||
holiday.el-GR2.date=20150106
|
||||
holiday.el-GR3.name=Καθαρά Δευτέρα
|
||||
holiday.el-GR3.date=20140303
|
||||
holiday.el-GR3.date=20150223
|
||||
holiday.el-GR4.name=Ευαγγελισμός της Θεοτόκου και Εθνική Ημέρα Ανεξαρτησίας της Ελλάδας
|
||||
holiday.el-GR4.date=20140325
|
||||
holiday.el-GR4.date=20150325
|
||||
holiday.el-GR5.name=Πρωτομαγιά
|
||||
holiday.el-GR5.date=20140418
|
||||
holiday.el-GR5.date=20150418
|
||||
holiday.el-GR6.name=Μεγάλη Παρασκευή
|
||||
holiday.el-GR6.date=20140419
|
||||
holiday.el-GR6.date=20150410
|
||||
holiday.el-GR7.name=Μεγάλο Σάββατο
|
||||
holiday.el-GR7.date=20140420
|
||||
holiday.el-GR7.date=20150411
|
||||
holiday.el-GR8.name=Πάσχα
|
||||
holiday.el-GR8.date=20140421
|
||||
holiday.el-GR8.date=20150412
|
||||
holiday.el-GR9.name=Δευτέρα του Πάσχα
|
||||
holiday.el-GR9.date=20140422
|
||||
holiday.el-GR9.date=20150413
|
||||
holiday.el-GR10.name=Δευτέρα του Αγίου Πνεύματος
|
||||
holiday.el-GR10.date=20140609
|
||||
holiday.el-GR10.date=20150601
|
||||
holiday.el-GR11.name=Κοίμηση της Θεοτόκου
|
||||
holiday.el-GR11.date=20140815
|
||||
holiday.el-GR11.date=20150815
|
||||
holiday.el-GR12.name=Ημέρα του ΌΧΙ
|
||||
holiday.el-GR12.date=20141028
|
||||
holiday.el-GR12.date=20151028
|
||||
holiday.el-GR13.name=Χριστούγεννα
|
||||
holiday.el-GR13.date=20141225
|
||||
holiday.el-GR13.date=20151225
|
||||
holiday.el-GR14.name=Επόμενη ημέρα Χριστουγέννων
|
||||
holiday.el-GR14.date=20141226
|
||||
holiday.el-GR14.date=20151226
|
||||
holiday.el-GR15.name=Πρωτοχρονιά
|
||||
holiday.el-GR15.date=20150101
|
||||
holiday.el-GR15.date=20160101
|
||||
holiday.el-GR16.name=Θεοφάνεια
|
||||
holiday.el-GR16.date=20150106
|
||||
holiday.el-GR16.date=20160106
|
||||
holiday.el-GR17.name=Καθαρά Δευτέρα
|
||||
holiday.el-GR17.date=20150223
|
||||
holiday.el-GR17.date=20160314
|
||||
holiday.el-GR18.name=Ευαγγελισμός της Θεοτόκου και Εθνική Ημέρα Ανεξαρτησίας της Ελλάδας
|
||||
holiday.el-GR18.date=20150325
|
||||
holiday.el-GR18.date=20160325
|
||||
holiday.el-GR19.name=Πρωτομαγιά
|
||||
holiday.el-GR19.date=20150418
|
||||
holiday.el-GR19.date=20160418
|
||||
holiday.el-GR20.name=Μεγάλη Παρασκευή
|
||||
holiday.el-GR20.date=20150410
|
||||
holiday.el-GR20.date=20160429
|
||||
holiday.el-GR21.name=Μεγάλο Σάββατο
|
||||
holiday.el-GR21.date=20150411
|
||||
holiday.el-GR21.date=20160430
|
||||
holiday.el-GR22.name=Πάσχα
|
||||
holiday.el-GR22.date=20150412
|
||||
holiday.el-GR22.date=20160501
|
||||
holiday.el-GR23.name=Δευτέρα του Πάσχα
|
||||
holiday.el-GR23.date=20150413
|
||||
holiday.el-GR23.date=20160502
|
||||
holiday.el-GR24.name=Δευτέρα του Αγίου Πνεύματος
|
||||
holiday.el-GR24.date=20150601
|
||||
holiday.el-GR24.date=20160620
|
||||
holiday.el-GR25.name=Κοίμηση της Θεοτόκου
|
||||
holiday.el-GR25.date=20150815
|
||||
holiday.el-GR25.date=20160815
|
||||
holiday.el-GR26.name=Ημέρα του ΌΧΙ
|
||||
holiday.el-GR26.date=20151028
|
||||
holiday.el-GR26.date=20161028
|
||||
holiday.el-GR27.name=Χριστούγεννα
|
||||
holiday.el-GR27.date=20151225
|
||||
holiday.el-GR27.date=20161225
|
||||
holiday.el-GR28.name=Επόμενη ημέρα Χριστουγέννων
|
||||
holiday.el-GR28.date=20151226
|
||||
holiday.el-GR29.name=Πρωτοχρονιά
|
||||
holiday.el-GR29.date=20160101
|
||||
holiday.el-GR30.name=Θεοφάνεια
|
||||
holiday.el-GR30.date=20160106
|
||||
holiday.el-GR31.name=Καθαρά Δευτέρα
|
||||
holiday.el-GR31.date=20160314
|
||||
holiday.el-GR32.name=Ευαγγελισμός της Θεοτόκου και Εθνική Ημέρα Ανεξαρτησίας της Ελλάδας
|
||||
holiday.el-GR32.date=20160325
|
||||
holiday.el-GR33.name=Πρωτομαγιά
|
||||
holiday.el-GR33.date=20160418
|
||||
holiday.el-GR34.name=Μεγάλη Παρασκευή
|
||||
holiday.el-GR34.date=20160429
|
||||
holiday.el-GR35.name=Μεγάλο Σάββατο
|
||||
holiday.el-GR35.date=20160430
|
||||
holiday.el-GR36.name=Πάσχα
|
||||
holiday.el-GR36.date=20160501
|
||||
holiday.el-GR37.name=Δευτέρα του Πάσχα
|
||||
holiday.el-GR37.date=20160502
|
||||
holiday.el-GR38.name=Δευτέρα του Αγίου Πνεύματος
|
||||
holiday.el-GR38.date=20160620
|
||||
holiday.el-GR39.name=Κοίμηση της Θεοτόκου
|
||||
holiday.el-GR39.date=20160815
|
||||
holiday.el-GR40.name=Ημέρα του ΌΧΙ
|
||||
holiday.el-GR40.date=20161028
|
||||
holiday.el-GR41.name=Χριστούγεννα
|
||||
holiday.el-GR41.date=20161225
|
||||
holiday.el-GR42.name=Επόμενη ημέρα Χριστουγέννων
|
||||
holiday.el-GR42.date=20161226
|
||||
holiday.el-GR28.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/en-AU/2014.json
|
||||
# http://holidata.net/en-AU/2015.json
|
||||
# http://holidata.net/en-AU/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,138 +28,92 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.en-AU1.name=New Year's Day
|
||||
holiday.en-AU1.date=20140101
|
||||
holiday.en-AU1.date=20150101
|
||||
holiday.en-AU2.name=Australia Day
|
||||
holiday.en-AU2.date=20140126
|
||||
holiday.en-AU2.date=20150126
|
||||
holiday.en-AU3.name=Royal Hobart Regatta
|
||||
holiday.en-AU3.date=20140210
|
||||
holiday.en-AU3.date=20150209
|
||||
holiday.en-AU4.name=Labour Day
|
||||
holiday.en-AU4.date=20140303
|
||||
holiday.en-AU4.date=20150302
|
||||
holiday.en-AU5.name=Labour Day
|
||||
holiday.en-AU5.date=20140310
|
||||
holiday.en-AU5.date=20150309
|
||||
holiday.en-AU6.name=Canberra Day
|
||||
holiday.en-AU6.date=20140310
|
||||
holiday.en-AU6.date=20150309
|
||||
holiday.en-AU7.name=Eight Hours Day
|
||||
holiday.en-AU7.date=20140310
|
||||
holiday.en-AU7.date=20150309
|
||||
holiday.en-AU8.name=Good Friday
|
||||
holiday.en-AU8.date=20140418
|
||||
holiday.en-AU8.date=20150403
|
||||
holiday.en-AU9.name=Easter Saturday
|
||||
holiday.en-AU9.date=20140419
|
||||
holiday.en-AU9.date=20150404
|
||||
holiday.en-AU10.name=Easter Sunday
|
||||
holiday.en-AU10.date=20140420
|
||||
holiday.en-AU10.date=20150405
|
||||
holiday.en-AU11.name=Easter Monday
|
||||
holiday.en-AU11.date=20140421
|
||||
holiday.en-AU11.date=20150406
|
||||
holiday.en-AU12.name=Anzac Day
|
||||
holiday.en-AU12.date=20140425
|
||||
holiday.en-AU12.date=20150425
|
||||
holiday.en-AU13.name=May Day
|
||||
holiday.en-AU13.date=20140505
|
||||
holiday.en-AU13.date=20150504
|
||||
holiday.en-AU14.name=Foundation Day
|
||||
holiday.en-AU14.date=20140602
|
||||
holiday.en-AU14.date=20150601
|
||||
holiday.en-AU15.name=Queen's Birthday
|
||||
holiday.en-AU15.date=20140609
|
||||
holiday.en-AU15.date=20150608
|
||||
holiday.en-AU16.name=Picnic Day
|
||||
holiday.en-AU16.date=20140804
|
||||
holiday.en-AU16.date=20150803
|
||||
holiday.en-AU17.name=Bank Holiday
|
||||
holiday.en-AU17.date=20140804
|
||||
holiday.en-AU17.date=20150803
|
||||
holiday.en-AU18.name=Queen's Birthday
|
||||
holiday.en-AU18.date=20140929
|
||||
holiday.en-AU18.date=20150928
|
||||
holiday.en-AU19.name=Labour Day
|
||||
holiday.en-AU19.date=20141006
|
||||
holiday.en-AU19.date=20151005
|
||||
holiday.en-AU20.name=Recreation Day
|
||||
holiday.en-AU20.date=20141103
|
||||
holiday.en-AU20.date=20151102
|
||||
holiday.en-AU21.name=Christmas Day
|
||||
holiday.en-AU21.date=20141225
|
||||
holiday.en-AU21.date=20151225
|
||||
holiday.en-AU22.name=Boxing Day
|
||||
holiday.en-AU22.date=20141226
|
||||
holiday.en-AU22.date=20151226
|
||||
holiday.en-AU23.name=Proclamation Day
|
||||
holiday.en-AU23.date=20141226
|
||||
holiday.en-AU23.date=20151226
|
||||
holiday.en-AU24.name=New Year's Day
|
||||
holiday.en-AU24.date=20150101
|
||||
holiday.en-AU24.date=20160101
|
||||
holiday.en-AU25.name=Australia Day
|
||||
holiday.en-AU25.date=20150126
|
||||
holiday.en-AU25.date=20160126
|
||||
holiday.en-AU26.name=Royal Hobart Regatta
|
||||
holiday.en-AU26.date=20150209
|
||||
holiday.en-AU26.date=20160208
|
||||
holiday.en-AU27.name=Labour Day
|
||||
holiday.en-AU27.date=20150302
|
||||
holiday.en-AU27.date=20160307
|
||||
holiday.en-AU28.name=Labour Day
|
||||
holiday.en-AU28.date=20150309
|
||||
holiday.en-AU28.date=20160314
|
||||
holiday.en-AU29.name=Canberra Day
|
||||
holiday.en-AU29.date=20150309
|
||||
holiday.en-AU29.date=20160314
|
||||
holiday.en-AU30.name=Eight Hours Day
|
||||
holiday.en-AU30.date=20150309
|
||||
holiday.en-AU30.date=20160314
|
||||
holiday.en-AU31.name=Good Friday
|
||||
holiday.en-AU31.date=20150403
|
||||
holiday.en-AU31.date=20160325
|
||||
holiday.en-AU32.name=Easter Saturday
|
||||
holiday.en-AU32.date=20150404
|
||||
holiday.en-AU33.name=Easter Sunday
|
||||
holiday.en-AU33.date=20150405
|
||||
holiday.en-AU34.name=Easter Monday
|
||||
holiday.en-AU34.date=20150406
|
||||
holiday.en-AU35.name=Anzac Day
|
||||
holiday.en-AU35.date=20150425
|
||||
holiday.en-AU36.name=May Day
|
||||
holiday.en-AU36.date=20150504
|
||||
holiday.en-AU37.name=Foundation Day
|
||||
holiday.en-AU37.date=20150601
|
||||
holiday.en-AU38.name=Queen's Birthday
|
||||
holiday.en-AU38.date=20150608
|
||||
holiday.en-AU39.name=Picnic Day
|
||||
holiday.en-AU39.date=20150803
|
||||
holiday.en-AU40.name=Bank Holiday
|
||||
holiday.en-AU40.date=20150803
|
||||
holiday.en-AU41.name=Queen's Birthday
|
||||
holiday.en-AU41.date=20150928
|
||||
holiday.en-AU42.name=Labour Day
|
||||
holiday.en-AU42.date=20151005
|
||||
holiday.en-AU43.name=Recreation Day
|
||||
holiday.en-AU43.date=20151102
|
||||
holiday.en-AU44.name=Christmas Day
|
||||
holiday.en-AU44.date=20151225
|
||||
holiday.en-AU45.name=Boxing Day
|
||||
holiday.en-AU45.date=20151226
|
||||
holiday.en-AU46.name=Proclamation Day
|
||||
holiday.en-AU46.date=20151226
|
||||
holiday.en-AU47.name=New Year's Day
|
||||
holiday.en-AU47.date=20160101
|
||||
holiday.en-AU48.name=Australia Day
|
||||
holiday.en-AU48.date=20160126
|
||||
holiday.en-AU49.name=Royal Hobart Regatta
|
||||
holiday.en-AU49.date=20160208
|
||||
holiday.en-AU50.name=Labour Day
|
||||
holiday.en-AU50.date=20160307
|
||||
holiday.en-AU51.name=Labour Day
|
||||
holiday.en-AU51.date=20160314
|
||||
holiday.en-AU52.name=Canberra Day
|
||||
holiday.en-AU52.date=20160314
|
||||
holiday.en-AU53.name=Eight Hours Day
|
||||
holiday.en-AU53.date=20160314
|
||||
holiday.en-AU54.name=Good Friday
|
||||
holiday.en-AU54.date=20160325
|
||||
holiday.en-AU55.name=Easter Saturday
|
||||
holiday.en-AU55.date=20160326
|
||||
holiday.en-AU56.name=Easter Monday
|
||||
holiday.en-AU56.date=20160327
|
||||
holiday.en-AU57.name=Anzac Day
|
||||
holiday.en-AU57.date=20160425
|
||||
holiday.en-AU58.name=May Day
|
||||
holiday.en-AU58.date=20160502
|
||||
holiday.en-AU59.name=Foundation Day
|
||||
holiday.en-AU59.date=20160603
|
||||
holiday.en-AU60.name=Queen's Birthday
|
||||
holiday.en-AU60.date=20160613
|
||||
holiday.en-AU61.name=Picnic Day
|
||||
holiday.en-AU61.date=20160801
|
||||
holiday.en-AU62.name=Bank Holiday
|
||||
holiday.en-AU62.date=20160801
|
||||
holiday.en-AU63.name=Queen's Birthday
|
||||
holiday.en-AU63.date=20160926
|
||||
holiday.en-AU64.name=Labour Day
|
||||
holiday.en-AU64.date=20161003
|
||||
holiday.en-AU65.name=Recreation Day
|
||||
holiday.en-AU65.date=20161107
|
||||
holiday.en-AU66.name=Christmas Day
|
||||
holiday.en-AU66.date=20161225
|
||||
holiday.en-AU67.name=Boxing Day
|
||||
holiday.en-AU67.date=20161226
|
||||
holiday.en-AU68.name=Proclamation Day
|
||||
holiday.en-AU68.date=20161226
|
||||
holiday.en-AU32.date=20160326
|
||||
holiday.en-AU33.name=Easter Monday
|
||||
holiday.en-AU33.date=20160327
|
||||
holiday.en-AU34.name=Anzac Day
|
||||
holiday.en-AU34.date=20160425
|
||||
holiday.en-AU35.name=May Day
|
||||
holiday.en-AU35.date=20160502
|
||||
holiday.en-AU36.name=Foundation Day
|
||||
holiday.en-AU36.date=20160603
|
||||
holiday.en-AU37.name=Queen's Birthday
|
||||
holiday.en-AU37.date=20160613
|
||||
holiday.en-AU38.name=Picnic Day
|
||||
holiday.en-AU38.date=20160801
|
||||
holiday.en-AU39.name=Bank Holiday
|
||||
holiday.en-AU39.date=20160801
|
||||
holiday.en-AU40.name=Queen's Birthday
|
||||
holiday.en-AU40.date=20160926
|
||||
holiday.en-AU41.name=Labour Day
|
||||
holiday.en-AU41.date=20161003
|
||||
holiday.en-AU42.name=Recreation Day
|
||||
holiday.en-AU42.date=20161107
|
||||
holiday.en-AU43.name=Christmas Day
|
||||
holiday.en-AU43.date=20161225
|
||||
holiday.en-AU44.name=Boxing Day
|
||||
holiday.en-AU44.date=20161226
|
||||
holiday.en-AU45.name=Proclamation Day
|
||||
holiday.en-AU45.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/en-CA/2014.json
|
||||
# http://holidata.net/en-CA/2015.json
|
||||
# http://holidata.net/en-CA/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,74 +28,50 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.en-CA1.name=New Year's Day
|
||||
holiday.en-CA1.date=20140101
|
||||
holiday.en-CA1.date=20150101
|
||||
holiday.en-CA2.name=Family Day
|
||||
holiday.en-CA2.date=20140210
|
||||
holiday.en-CA2.date=20150209
|
||||
holiday.en-CA3.name=Good Friday
|
||||
holiday.en-CA3.date=20140418
|
||||
holiday.en-CA3.date=20150403
|
||||
holiday.en-CA4.name=Easter Monday
|
||||
holiday.en-CA4.date=20140421
|
||||
holiday.en-CA4.date=20150406
|
||||
holiday.en-CA5.name=Victoria Day
|
||||
holiday.en-CA5.date=20140519
|
||||
holiday.en-CA5.date=20150518
|
||||
holiday.en-CA6.name=Canada Day
|
||||
holiday.en-CA6.date=20140701
|
||||
holiday.en-CA6.date=20150701
|
||||
holiday.en-CA7.name=First Monday of August
|
||||
holiday.en-CA7.date=20140804
|
||||
holiday.en-CA7.date=20150803
|
||||
holiday.en-CA8.name=Labour Day
|
||||
holiday.en-CA8.date=20140901
|
||||
holiday.en-CA8.date=20150907
|
||||
holiday.en-CA9.name=Thanksgiving Day
|
||||
holiday.en-CA9.date=20141013
|
||||
holiday.en-CA9.date=20151012
|
||||
holiday.en-CA10.name=Remembrance Day
|
||||
holiday.en-CA10.date=20141111
|
||||
holiday.en-CA10.date=20151111
|
||||
holiday.en-CA11.name=Christmas Day
|
||||
holiday.en-CA11.date=20141225
|
||||
holiday.en-CA11.date=20151225
|
||||
holiday.en-CA12.name=Boxing Day
|
||||
holiday.en-CA12.date=20141226
|
||||
holiday.en-CA12.date=20151226
|
||||
holiday.en-CA13.name=New Year's Day
|
||||
holiday.en-CA13.date=20150101
|
||||
holiday.en-CA13.date=20160101
|
||||
holiday.en-CA14.name=Family Day
|
||||
holiday.en-CA14.date=20150209
|
||||
holiday.en-CA14.date=20160208
|
||||
holiday.en-CA15.name=Good Friday
|
||||
holiday.en-CA15.date=20150403
|
||||
holiday.en-CA15.date=20160325
|
||||
holiday.en-CA16.name=Easter Monday
|
||||
holiday.en-CA16.date=20150406
|
||||
holiday.en-CA16.date=20160328
|
||||
holiday.en-CA17.name=Victoria Day
|
||||
holiday.en-CA17.date=20150518
|
||||
holiday.en-CA17.date=20160523
|
||||
holiday.en-CA18.name=Canada Day
|
||||
holiday.en-CA18.date=20150701
|
||||
holiday.en-CA18.date=20160701
|
||||
holiday.en-CA19.name=First Monday of August
|
||||
holiday.en-CA19.date=20150803
|
||||
holiday.en-CA19.date=20160801
|
||||
holiday.en-CA20.name=Labour Day
|
||||
holiday.en-CA20.date=20150907
|
||||
holiday.en-CA20.date=20160905
|
||||
holiday.en-CA21.name=Thanksgiving Day
|
||||
holiday.en-CA21.date=20151012
|
||||
holiday.en-CA21.date=20161010
|
||||
holiday.en-CA22.name=Remembrance Day
|
||||
holiday.en-CA22.date=20151111
|
||||
holiday.en-CA22.date=20161111
|
||||
holiday.en-CA23.name=Christmas Day
|
||||
holiday.en-CA23.date=20151225
|
||||
holiday.en-CA23.date=20161225
|
||||
holiday.en-CA24.name=Boxing Day
|
||||
holiday.en-CA24.date=20151226
|
||||
holiday.en-CA25.name=New Year's Day
|
||||
holiday.en-CA25.date=20160101
|
||||
holiday.en-CA26.name=Family Day
|
||||
holiday.en-CA26.date=20160208
|
||||
holiday.en-CA27.name=Good Friday
|
||||
holiday.en-CA27.date=20160325
|
||||
holiday.en-CA28.name=Easter Monday
|
||||
holiday.en-CA28.date=20160328
|
||||
holiday.en-CA29.name=Victoria Day
|
||||
holiday.en-CA29.date=20160523
|
||||
holiday.en-CA30.name=Canada Day
|
||||
holiday.en-CA30.date=20160701
|
||||
holiday.en-CA31.name=First Monday of August
|
||||
holiday.en-CA31.date=20160801
|
||||
holiday.en-CA32.name=Labour Day
|
||||
holiday.en-CA32.date=20160905
|
||||
holiday.en-CA33.name=Thanksgiving Day
|
||||
holiday.en-CA33.date=20161010
|
||||
holiday.en-CA34.name=Remembrance Day
|
||||
holiday.en-CA34.date=20161111
|
||||
holiday.en-CA35.name=Christmas Day
|
||||
holiday.en-CA35.date=20161225
|
||||
holiday.en-CA36.name=Boxing Day
|
||||
holiday.en-CA36.date=20161226
|
||||
holiday.en-CA24.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/en-GB/2014.json
|
||||
# http://holidata.net/en-GB/2015.json
|
||||
# http://holidata.net/en-GB/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,50 +28,34 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.en-GB1.name=New Year's Day
|
||||
holiday.en-GB1.date=20140101
|
||||
holiday.en-GB1.date=20150101
|
||||
holiday.en-GB2.name=Good Friday
|
||||
holiday.en-GB2.date=20140418
|
||||
holiday.en-GB2.date=20150403
|
||||
holiday.en-GB3.name=Easter Monday
|
||||
holiday.en-GB3.date=20140421
|
||||
holiday.en-GB3.date=20150406
|
||||
holiday.en-GB4.name=Early May Bank Holiday
|
||||
holiday.en-GB4.date=20140505
|
||||
holiday.en-GB4.date=20150504
|
||||
holiday.en-GB5.name=Spring Bank Holiday
|
||||
holiday.en-GB5.date=20140526
|
||||
holiday.en-GB5.date=20150525
|
||||
holiday.en-GB6.name=August Bank Holiday
|
||||
holiday.en-GB6.date=20140825
|
||||
holiday.en-GB6.date=20150831
|
||||
holiday.en-GB7.name=Christmas Day
|
||||
holiday.en-GB7.date=20141225
|
||||
holiday.en-GB7.date=20151225
|
||||
holiday.en-GB8.name=Boxing Day
|
||||
holiday.en-GB8.date=20141226
|
||||
holiday.en-GB8.date=20151226
|
||||
holiday.en-GB9.name=New Year's Day
|
||||
holiday.en-GB9.date=20150101
|
||||
holiday.en-GB9.date=20160101
|
||||
holiday.en-GB10.name=Good Friday
|
||||
holiday.en-GB10.date=20150403
|
||||
holiday.en-GB10.date=20160325
|
||||
holiday.en-GB11.name=Easter Monday
|
||||
holiday.en-GB11.date=20150406
|
||||
holiday.en-GB11.date=20160328
|
||||
holiday.en-GB12.name=Early May Bank Holiday
|
||||
holiday.en-GB12.date=20150504
|
||||
holiday.en-GB12.date=20160502
|
||||
holiday.en-GB13.name=Spring Bank Holiday
|
||||
holiday.en-GB13.date=20150525
|
||||
holiday.en-GB13.date=20160530
|
||||
holiday.en-GB14.name=August Bank Holiday
|
||||
holiday.en-GB14.date=20150831
|
||||
holiday.en-GB14.date=20160829
|
||||
holiday.en-GB15.name=Christmas Day
|
||||
holiday.en-GB15.date=20151225
|
||||
holiday.en-GB15.date=20161225
|
||||
holiday.en-GB16.name=Boxing Day
|
||||
holiday.en-GB16.date=20151226
|
||||
holiday.en-GB17.name=New Year's Day
|
||||
holiday.en-GB17.date=20160101
|
||||
holiday.en-GB18.name=Good Friday
|
||||
holiday.en-GB18.date=20160325
|
||||
holiday.en-GB19.name=Easter Monday
|
||||
holiday.en-GB19.date=20160328
|
||||
holiday.en-GB20.name=Early May Bank Holiday
|
||||
holiday.en-GB20.date=20160502
|
||||
holiday.en-GB21.name=Spring Bank Holiday
|
||||
holiday.en-GB21.date=20160530
|
||||
holiday.en-GB22.name=August Bank Holiday
|
||||
holiday.en-GB22.date=20160829
|
||||
holiday.en-GB23.name=Christmas Day
|
||||
holiday.en-GB23.date=20161225
|
||||
holiday.en-GB24.name=Boxing Day
|
||||
holiday.en-GB24.date=20161226
|
||||
holiday.en-GB16.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/en-GL/2014.json
|
||||
# http://holidata.net/en-GL/2015.json
|
||||
# http://holidata.net/en-GL/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,80 +28,54 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.en-GL1.name=New Year's Day
|
||||
holiday.en-GL1.date=20140101
|
||||
holiday.en-GL1.date=20150101
|
||||
holiday.en-GL2.name=Epiphany
|
||||
holiday.en-GL2.date=20140106
|
||||
holiday.en-GL2.date=20150106
|
||||
holiday.en-GL3.name=Maundy Thursday
|
||||
holiday.en-GL3.date=20140417
|
||||
holiday.en-GL3.date=20150402
|
||||
holiday.en-GL4.name=Good Friday
|
||||
holiday.en-GL4.date=20140318
|
||||
holiday.en-GL4.date=20150303
|
||||
holiday.en-GL5.name=Easter Monday
|
||||
holiday.en-GL5.date=20140421
|
||||
holiday.en-GL5.date=20150406
|
||||
holiday.en-GL6.name=General Prayer Day
|
||||
holiday.en-GL6.date=20140516
|
||||
holiday.en-GL6.date=20150501
|
||||
holiday.en-GL7.name=Ascension
|
||||
holiday.en-GL7.date=20140529
|
||||
holiday.en-GL7.date=20150514
|
||||
holiday.en-GL8.name=Whit Monday
|
||||
holiday.en-GL8.date=20140609
|
||||
holiday.en-GL8.date=20150525
|
||||
holiday.en-GL9.name=Ullortuneq
|
||||
holiday.en-GL9.date=20140621
|
||||
holiday.en-GL9.date=20150621
|
||||
holiday.en-GL10.name=Christmas Eve
|
||||
holiday.en-GL10.date=20141224
|
||||
holiday.en-GL10.date=20151224
|
||||
holiday.en-GL11.name=Christmas Day
|
||||
holiday.en-GL11.date=20141225
|
||||
holiday.en-GL11.date=20151225
|
||||
holiday.en-GL12.name=St Stephen's Day
|
||||
holiday.en-GL12.date=20141226
|
||||
holiday.en-GL12.date=20151226
|
||||
holiday.en-GL13.name=New Year's Eve
|
||||
holiday.en-GL13.date=20141231
|
||||
holiday.en-GL13.date=20151231
|
||||
holiday.en-GL14.name=New Year's Day
|
||||
holiday.en-GL14.date=20150101
|
||||
holiday.en-GL14.date=20160101
|
||||
holiday.en-GL15.name=Epiphany
|
||||
holiday.en-GL15.date=20150106
|
||||
holiday.en-GL15.date=20160106
|
||||
holiday.en-GL16.name=Maundy Thursday
|
||||
holiday.en-GL16.date=20150402
|
||||
holiday.en-GL16.date=20160324
|
||||
holiday.en-GL17.name=Good Friday
|
||||
holiday.en-GL17.date=20150303
|
||||
holiday.en-GL17.date=20160325
|
||||
holiday.en-GL18.name=Easter Monday
|
||||
holiday.en-GL18.date=20150406
|
||||
holiday.en-GL18.date=20160428
|
||||
holiday.en-GL19.name=General Prayer Day
|
||||
holiday.en-GL19.date=20150501
|
||||
holiday.en-GL19.date=20160422
|
||||
holiday.en-GL20.name=Ascension
|
||||
holiday.en-GL20.date=20150514
|
||||
holiday.en-GL20.date=20160505
|
||||
holiday.en-GL21.name=Whit Monday
|
||||
holiday.en-GL21.date=20150525
|
||||
holiday.en-GL21.date=20160516
|
||||
holiday.en-GL22.name=Ullortuneq
|
||||
holiday.en-GL22.date=20150621
|
||||
holiday.en-GL22.date=20160621
|
||||
holiday.en-GL23.name=Christmas Eve
|
||||
holiday.en-GL23.date=20151224
|
||||
holiday.en-GL23.date=20161224
|
||||
holiday.en-GL24.name=Christmas Day
|
||||
holiday.en-GL24.date=20151225
|
||||
holiday.en-GL24.date=20161225
|
||||
holiday.en-GL25.name=St Stephen's Day
|
||||
holiday.en-GL25.date=20151226
|
||||
holiday.en-GL25.date=20161226
|
||||
holiday.en-GL26.name=New Year's Eve
|
||||
holiday.en-GL26.date=20151231
|
||||
holiday.en-GL27.name=New Year's Day
|
||||
holiday.en-GL27.date=20160101
|
||||
holiday.en-GL28.name=Epiphany
|
||||
holiday.en-GL28.date=20160106
|
||||
holiday.en-GL29.name=Maundy Thursday
|
||||
holiday.en-GL29.date=20160324
|
||||
holiday.en-GL30.name=Good Friday
|
||||
holiday.en-GL30.date=20160325
|
||||
holiday.en-GL31.name=Easter Monday
|
||||
holiday.en-GL31.date=20160428
|
||||
holiday.en-GL32.name=General Prayer Day
|
||||
holiday.en-GL32.date=20160422
|
||||
holiday.en-GL33.name=Ascension
|
||||
holiday.en-GL33.date=20160505
|
||||
holiday.en-GL34.name=Whit Monday
|
||||
holiday.en-GL34.date=20160516
|
||||
holiday.en-GL35.name=Ullortuneq
|
||||
holiday.en-GL35.date=20160621
|
||||
holiday.en-GL36.name=Christmas Eve
|
||||
holiday.en-GL36.date=20161224
|
||||
holiday.en-GL37.name=Christmas Day
|
||||
holiday.en-GL37.date=20161225
|
||||
holiday.en-GL38.name=St Stephen's Day
|
||||
holiday.en-GL38.date=20161226
|
||||
holiday.en-GL39.name=New Year's Eve
|
||||
holiday.en-GL39.date=20161231
|
||||
holiday.en-GL26.date=20161231
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/en-HK/2014.json
|
||||
# http://holidata.net/en-HK/2015.json
|
||||
# http://holidata.net/en-HK/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,100 +28,68 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.en-HK1.name=The first day of January
|
||||
holiday.en-HK1.date=20140101
|
||||
holiday.en-HK2.name=The second day of Lunar New Year
|
||||
holiday.en-HK2.date=20140201
|
||||
holiday.en-HK3.name=The fourth day of Lunar New Year
|
||||
holiday.en-HK3.date=20140203
|
||||
holiday.en-HK4.name=Good Friday
|
||||
holiday.en-HK4.date=20140418
|
||||
holiday.en-HK5.name=The day following Good Friday
|
||||
holiday.en-HK5.date=20140419
|
||||
holiday.en-HK6.name=Easter Monday
|
||||
holiday.en-HK6.date=20140421
|
||||
holiday.en-HK7.name=Ching Ming Festival
|
||||
holiday.en-HK7.date=20140405
|
||||
holiday.en-HK8.name=Labour Day
|
||||
holiday.en-HK8.date=20140501
|
||||
holiday.en-HK9.name=The Birthday of the Buddha
|
||||
holiday.en-HK9.date=20140506
|
||||
holiday.en-HK10.name=Tuen Ng Festival
|
||||
holiday.en-HK10.date=20140602
|
||||
holiday.en-HK11.name=Hong Kong Special Administrative Region Establishment Day
|
||||
holiday.en-HK11.date=20140701
|
||||
holiday.en-HK12.name=The day following the Chinese Mid-Autumn Festival
|
||||
holiday.en-HK12.date=20140909
|
||||
holiday.en-HK13.name=National Day
|
||||
holiday.en-HK13.date=20141001
|
||||
holiday.en-HK14.name=Chung Yeung Festival
|
||||
holiday.en-HK14.date=20141002
|
||||
holiday.en-HK15.name=Christmas Day
|
||||
holiday.en-HK15.date=20141225
|
||||
holiday.en-HK16.name=The first weekday after Christmas Day
|
||||
holiday.en-HK16.date=20141226
|
||||
holiday.en-HK17.name=The first day of January
|
||||
holiday.en-HK17.date=20150101
|
||||
holiday.en-HK18.name=Lunar New Year’s Day
|
||||
holiday.en-HK18.date=20150219
|
||||
holiday.en-HK19.name=The second day of Lunar New Year
|
||||
holiday.en-HK19.date=20150220
|
||||
holiday.en-HK20.name=The third day of Lunar New Year
|
||||
holiday.en-HK20.date=20150221
|
||||
holiday.en-HK21.name=Good Friday
|
||||
holiday.en-HK21.date=20150403
|
||||
holiday.en-HK22.name=The day following Good Friday
|
||||
holiday.en-HK22.date=20150404
|
||||
holiday.en-HK23.name=The day following Ching Ming Festival
|
||||
holiday.en-HK23.date=20150406
|
||||
holiday.en-HK24.name=The day following Easter Monday
|
||||
holiday.en-HK24.date=20150407
|
||||
holiday.en-HK1.date=20150101
|
||||
holiday.en-HK2.name=Lunar New Year’s Day
|
||||
holiday.en-HK2.date=20150219
|
||||
holiday.en-HK3.name=The second day of Lunar New Year
|
||||
holiday.en-HK3.date=20150220
|
||||
holiday.en-HK4.name=The third day of Lunar New Year
|
||||
holiday.en-HK4.date=20150221
|
||||
holiday.en-HK5.name=Good Friday
|
||||
holiday.en-HK5.date=20150403
|
||||
holiday.en-HK6.name=The day following Good Friday
|
||||
holiday.en-HK6.date=20150404
|
||||
holiday.en-HK7.name=The day following Ching Ming Festival
|
||||
holiday.en-HK7.date=20150406
|
||||
holiday.en-HK8.name=The day following Easter Monday
|
||||
holiday.en-HK8.date=20150407
|
||||
holiday.en-HK9.name=Labour Day
|
||||
holiday.en-HK9.date=20150501
|
||||
holiday.en-HK10.name=The Birthday of the Buddha
|
||||
holiday.en-HK10.date=20150525
|
||||
holiday.en-HK11.name=Tuen Ng Festival
|
||||
holiday.en-HK11.date=20150620
|
||||
holiday.en-HK12.name=Hong Kong Special Administrative Region Establishment Day
|
||||
holiday.en-HK12.date=20150701
|
||||
holiday.en-HK13.name=The day following the Chinese Mid-Autumn Festival
|
||||
holiday.en-HK13.date=20150928
|
||||
holiday.en-HK14.name=National Day
|
||||
holiday.en-HK14.date=20151001
|
||||
holiday.en-HK15.name=Chung Yeung Festival
|
||||
holiday.en-HK15.date=20151021
|
||||
holiday.en-HK16.name=Christmas Day
|
||||
holiday.en-HK16.date=20151225
|
||||
holiday.en-HK17.name=The first weekday after Christmas Day
|
||||
holiday.en-HK17.date=20151226
|
||||
holiday.en-HK18.name=The first day of January
|
||||
holiday.en-HK18.date=20160101
|
||||
holiday.en-HK19.name=Lunar New Year’s Day
|
||||
holiday.en-HK19.date=20160208
|
||||
holiday.en-HK20.name=The second day of Lunar New Year
|
||||
holiday.en-HK20.date=20160209
|
||||
holiday.en-HK21.name=The third day of Lunar New Year
|
||||
holiday.en-HK21.date=20160210
|
||||
holiday.en-HK22.name=Good Friday
|
||||
holiday.en-HK22.date=20160325
|
||||
holiday.en-HK23.name=The day following Good Friday
|
||||
holiday.en-HK23.date=20160326
|
||||
holiday.en-HK24.name=Ching Ming Festival
|
||||
holiday.en-HK24.date=20160404
|
||||
holiday.en-HK25.name=Labour Day
|
||||
holiday.en-HK25.date=20150501
|
||||
holiday.en-HK25.date=20160501
|
||||
holiday.en-HK26.name=The Birthday of the Buddha
|
||||
holiday.en-HK26.date=20150525
|
||||
holiday.en-HK26.date=20160514
|
||||
holiday.en-HK27.name=Tuen Ng Festival
|
||||
holiday.en-HK27.date=20150620
|
||||
holiday.en-HK27.date=20160609
|
||||
holiday.en-HK28.name=Hong Kong Special Administrative Region Establishment Day
|
||||
holiday.en-HK28.date=20150701
|
||||
holiday.en-HK28.date=20160701
|
||||
holiday.en-HK29.name=The day following the Chinese Mid-Autumn Festival
|
||||
holiday.en-HK29.date=20150928
|
||||
holiday.en-HK29.date=20160916
|
||||
holiday.en-HK30.name=National Day
|
||||
holiday.en-HK30.date=20151001
|
||||
holiday.en-HK30.date=20161001
|
||||
holiday.en-HK31.name=Chung Yeung Festival
|
||||
holiday.en-HK31.date=20151021
|
||||
holiday.en-HK31.date=20161010
|
||||
holiday.en-HK32.name=Christmas Day
|
||||
holiday.en-HK32.date=20151225
|
||||
holiday.en-HK32.date=20161225
|
||||
holiday.en-HK33.name=The first weekday after Christmas Day
|
||||
holiday.en-HK33.date=20151226
|
||||
holiday.en-HK34.name=The first day of January
|
||||
holiday.en-HK34.date=20160101
|
||||
holiday.en-HK35.name=Lunar New Year’s Day
|
||||
holiday.en-HK35.date=20160208
|
||||
holiday.en-HK36.name=The second day of Lunar New Year
|
||||
holiday.en-HK36.date=20160209
|
||||
holiday.en-HK37.name=The third day of Lunar New Year
|
||||
holiday.en-HK37.date=20160210
|
||||
holiday.en-HK38.name=Good Friday
|
||||
holiday.en-HK38.date=20160325
|
||||
holiday.en-HK39.name=The day following Good Friday
|
||||
holiday.en-HK39.date=20160326
|
||||
holiday.en-HK40.name=Ching Ming Festival
|
||||
holiday.en-HK40.date=20160404
|
||||
holiday.en-HK41.name=Labour Day
|
||||
holiday.en-HK41.date=20160501
|
||||
holiday.en-HK42.name=The Birthday of the Buddha
|
||||
holiday.en-HK42.date=20160514
|
||||
holiday.en-HK43.name=Tuen Ng Festival
|
||||
holiday.en-HK43.date=20160609
|
||||
holiday.en-HK44.name=Hong Kong Special Administrative Region Establishment Day
|
||||
holiday.en-HK44.date=20160701
|
||||
holiday.en-HK45.name=The day following the Chinese Mid-Autumn Festival
|
||||
holiday.en-HK45.date=20160916
|
||||
holiday.en-HK46.name=National Day
|
||||
holiday.en-HK46.date=20161001
|
||||
holiday.en-HK47.name=Chung Yeung Festival
|
||||
holiday.en-HK47.date=20161010
|
||||
holiday.en-HK48.name=Christmas Day
|
||||
holiday.en-HK48.date=20161225
|
||||
holiday.en-HK49.name=The first weekday after Christmas Day
|
||||
holiday.en-HK49.date=20161226
|
||||
holiday.en-HK33.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/en-NZ/2014.json
|
||||
# http://holidata.net/en-NZ/2015.json
|
||||
# http://holidata.net/en-NZ/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,62 +28,42 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.en-NZ1.name=New Year's Day
|
||||
holiday.en-NZ1.date=20140101
|
||||
holiday.en-NZ1.date=20150101
|
||||
holiday.en-NZ2.name=Day after New Years Day
|
||||
holiday.en-NZ2.date=20140102
|
||||
holiday.en-NZ2.date=20150102
|
||||
holiday.en-NZ3.name=Waitangi Day
|
||||
holiday.en-NZ3.date=20140206
|
||||
holiday.en-NZ3.date=20150206
|
||||
holiday.en-NZ4.name=Good Friday
|
||||
holiday.en-NZ4.date=20140418
|
||||
holiday.en-NZ4.date=20150403
|
||||
holiday.en-NZ5.name=Easter Monday
|
||||
holiday.en-NZ5.date=20140421
|
||||
holiday.en-NZ5.date=20150406
|
||||
holiday.en-NZ6.name=ANZAC Day
|
||||
holiday.en-NZ6.date=20140425
|
||||
holiday.en-NZ6.date=20150425
|
||||
holiday.en-NZ7.name=Queen's Birthday
|
||||
holiday.en-NZ7.date=20140602
|
||||
holiday.en-NZ7.date=20150601
|
||||
holiday.en-NZ8.name=Labour Day
|
||||
holiday.en-NZ8.date=20141027
|
||||
holiday.en-NZ8.date=20151026
|
||||
holiday.en-NZ9.name=Christmas Day
|
||||
holiday.en-NZ9.date=20141225
|
||||
holiday.en-NZ9.date=20151225
|
||||
holiday.en-NZ10.name=Boxing Day
|
||||
holiday.en-NZ10.date=20141226
|
||||
holiday.en-NZ10.date=20151226
|
||||
holiday.en-NZ11.name=New Year's Day
|
||||
holiday.en-NZ11.date=20150101
|
||||
holiday.en-NZ11.date=20160101
|
||||
holiday.en-NZ12.name=Day after New Years Day
|
||||
holiday.en-NZ12.date=20150102
|
||||
holiday.en-NZ12.date=20160104
|
||||
holiday.en-NZ13.name=Waitangi Day
|
||||
holiday.en-NZ13.date=20150206
|
||||
holiday.en-NZ13.date=20160206
|
||||
holiday.en-NZ14.name=Good Friday
|
||||
holiday.en-NZ14.date=20150403
|
||||
holiday.en-NZ14.date=20160325
|
||||
holiday.en-NZ15.name=Easter Monday
|
||||
holiday.en-NZ15.date=20150406
|
||||
holiday.en-NZ15.date=20160328
|
||||
holiday.en-NZ16.name=ANZAC Day
|
||||
holiday.en-NZ16.date=20150425
|
||||
holiday.en-NZ16.date=20160425
|
||||
holiday.en-NZ17.name=Queen's Birthday
|
||||
holiday.en-NZ17.date=20150601
|
||||
holiday.en-NZ17.date=20160606
|
||||
holiday.en-NZ18.name=Labour Day
|
||||
holiday.en-NZ18.date=20151026
|
||||
holiday.en-NZ18.date=20161024
|
||||
holiday.en-NZ19.name=Christmas Day
|
||||
holiday.en-NZ19.date=20151225
|
||||
holiday.en-NZ19.date=20161225
|
||||
holiday.en-NZ20.name=Boxing Day
|
||||
holiday.en-NZ20.date=20151226
|
||||
holiday.en-NZ21.name=New Year's Day
|
||||
holiday.en-NZ21.date=20160101
|
||||
holiday.en-NZ22.name=Day after New Years Day
|
||||
holiday.en-NZ22.date=20160104
|
||||
holiday.en-NZ23.name=Waitangi Day
|
||||
holiday.en-NZ23.date=20160206
|
||||
holiday.en-NZ24.name=Good Friday
|
||||
holiday.en-NZ24.date=20160325
|
||||
holiday.en-NZ25.name=Easter Monday
|
||||
holiday.en-NZ25.date=20160328
|
||||
holiday.en-NZ26.name=ANZAC Day
|
||||
holiday.en-NZ26.date=20160425
|
||||
holiday.en-NZ27.name=Queen's Birthday
|
||||
holiday.en-NZ27.date=20160606
|
||||
holiday.en-NZ28.name=Labour Day
|
||||
holiday.en-NZ28.date=20161024
|
||||
holiday.en-NZ29.name=Christmas Day
|
||||
holiday.en-NZ29.date=20161225
|
||||
holiday.en-NZ30.name=Boxing Day
|
||||
holiday.en-NZ30.date=20161226
|
||||
holiday.en-NZ20.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/en-US/2014.json
|
||||
# http://holidata.net/en-US/2015.json
|
||||
# http://holidata.net/en-US/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,68 +28,46 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.en-US1.name=New Year's Day
|
||||
holiday.en-US1.date=20140101
|
||||
holiday.en-US1.date=20150101
|
||||
holiday.en-US2.name=Birthday of Martin Luther King, Jr.
|
||||
holiday.en-US2.date=20140120
|
||||
holiday.en-US2.date=20150119
|
||||
holiday.en-US3.name=Washington's Birthday
|
||||
holiday.en-US3.date=20140217
|
||||
holiday.en-US3.date=20150216
|
||||
holiday.en-US4.name=Patriots' Day
|
||||
holiday.en-US4.date=20140421
|
||||
holiday.en-US4.date=20150420
|
||||
holiday.en-US5.name=Memorial Day
|
||||
holiday.en-US5.date=20140526
|
||||
holiday.en-US5.date=20150525
|
||||
holiday.en-US6.name=Independence Day
|
||||
holiday.en-US6.date=20140704
|
||||
holiday.en-US6.date=20150704
|
||||
holiday.en-US7.name=Labor Day
|
||||
holiday.en-US7.date=20140901
|
||||
holiday.en-US7.date=20150907
|
||||
holiday.en-US8.name=Columbus Day
|
||||
holiday.en-US8.date=20141013
|
||||
holiday.en-US8.date=20151012
|
||||
holiday.en-US9.name=Veterans Day
|
||||
holiday.en-US9.date=20141111
|
||||
holiday.en-US9.date=20151111
|
||||
holiday.en-US10.name=Thanksgiving Day
|
||||
holiday.en-US10.date=20141127
|
||||
holiday.en-US10.date=20151126
|
||||
holiday.en-US11.name=Christmas Day
|
||||
holiday.en-US11.date=20141225
|
||||
holiday.en-US11.date=20151225
|
||||
holiday.en-US12.name=New Year's Day
|
||||
holiday.en-US12.date=20150101
|
||||
holiday.en-US12.date=20160101
|
||||
holiday.en-US13.name=Birthday of Martin Luther King, Jr.
|
||||
holiday.en-US13.date=20150119
|
||||
holiday.en-US13.date=20160118
|
||||
holiday.en-US14.name=Washington's Birthday
|
||||
holiday.en-US14.date=20150216
|
||||
holiday.en-US14.date=20160215
|
||||
holiday.en-US15.name=Patriots' Day
|
||||
holiday.en-US15.date=20150420
|
||||
holiday.en-US15.date=20160418
|
||||
holiday.en-US16.name=Memorial Day
|
||||
holiday.en-US16.date=20150525
|
||||
holiday.en-US16.date=20160530
|
||||
holiday.en-US17.name=Independence Day
|
||||
holiday.en-US17.date=20150704
|
||||
holiday.en-US17.date=20160704
|
||||
holiday.en-US18.name=Labor Day
|
||||
holiday.en-US18.date=20150907
|
||||
holiday.en-US18.date=20160905
|
||||
holiday.en-US19.name=Columbus Day
|
||||
holiday.en-US19.date=20151012
|
||||
holiday.en-US19.date=20161010
|
||||
holiday.en-US20.name=Veterans Day
|
||||
holiday.en-US20.date=20151111
|
||||
holiday.en-US20.date=20161111
|
||||
holiday.en-US21.name=Thanksgiving Day
|
||||
holiday.en-US21.date=20151126
|
||||
holiday.en-US21.date=20161124
|
||||
holiday.en-US22.name=Christmas Day
|
||||
holiday.en-US22.date=20151225
|
||||
holiday.en-US23.name=New Year's Day
|
||||
holiday.en-US23.date=20160101
|
||||
holiday.en-US24.name=Birthday of Martin Luther King, Jr.
|
||||
holiday.en-US24.date=20160118
|
||||
holiday.en-US25.name=Washington's Birthday
|
||||
holiday.en-US25.date=20160215
|
||||
holiday.en-US26.name=Patriots' Day
|
||||
holiday.en-US26.date=20160418
|
||||
holiday.en-US27.name=Memorial Day
|
||||
holiday.en-US27.date=20160530
|
||||
holiday.en-US28.name=Independence Day
|
||||
holiday.en-US28.date=20160704
|
||||
holiday.en-US29.name=Labor Day
|
||||
holiday.en-US29.date=20160905
|
||||
holiday.en-US30.name=Columbus Day
|
||||
holiday.en-US30.date=20161010
|
||||
holiday.en-US31.name=Veterans Day
|
||||
holiday.en-US31.date=20161111
|
||||
holiday.en-US32.name=Thanksgiving Day
|
||||
holiday.en-US32.date=20161124
|
||||
holiday.en-US33.name=Christmas Day
|
||||
holiday.en-US33.date=20161225
|
||||
holiday.en-US22.date=20161225
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/en-ZA/2014.json
|
||||
# http://holidata.net/en-ZA/2015.json
|
||||
# http://holidata.net/en-ZA/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,74 +28,50 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.en-ZA1.name=New Year's Day
|
||||
holiday.en-ZA1.date=20140101
|
||||
holiday.en-ZA1.date=20150101
|
||||
holiday.en-ZA2.name=Human Rights Day
|
||||
holiday.en-ZA2.date=20140321
|
||||
holiday.en-ZA2.date=20150321
|
||||
holiday.en-ZA3.name=Good Friday
|
||||
holiday.en-ZA3.date=20140418
|
||||
holiday.en-ZA3.date=20150403
|
||||
holiday.en-ZA4.name=Family Day
|
||||
holiday.en-ZA4.date=20140421
|
||||
holiday.en-ZA4.date=20150406
|
||||
holiday.en-ZA5.name=Freedom Day
|
||||
holiday.en-ZA5.date=20140427
|
||||
holiday.en-ZA5.date=20150427
|
||||
holiday.en-ZA6.name=Workers' Day
|
||||
holiday.en-ZA6.date=20140501
|
||||
holiday.en-ZA6.date=20150501
|
||||
holiday.en-ZA7.name=Youth Day
|
||||
holiday.en-ZA7.date=20140616
|
||||
holiday.en-ZA7.date=20150616
|
||||
holiday.en-ZA8.name=National Women's Day
|
||||
holiday.en-ZA8.date=20140809
|
||||
holiday.en-ZA8.date=20150809
|
||||
holiday.en-ZA9.name=Heritage Day
|
||||
holiday.en-ZA9.date=20140924
|
||||
holiday.en-ZA9.date=20150924
|
||||
holiday.en-ZA10.name=Day of Reconciliation
|
||||
holiday.en-ZA10.date=20141217
|
||||
holiday.en-ZA10.date=20151217
|
||||
holiday.en-ZA11.name=Christmas Day
|
||||
holiday.en-ZA11.date=20141225
|
||||
holiday.en-ZA11.date=20151225
|
||||
holiday.en-ZA12.name=Day of Goodwill
|
||||
holiday.en-ZA12.date=20141226
|
||||
holiday.en-ZA12.date=20151226
|
||||
holiday.en-ZA13.name=New Year's Day
|
||||
holiday.en-ZA13.date=20150101
|
||||
holiday.en-ZA13.date=20160101
|
||||
holiday.en-ZA14.name=Human Rights Day
|
||||
holiday.en-ZA14.date=20150321
|
||||
holiday.en-ZA14.date=20160321
|
||||
holiday.en-ZA15.name=Good Friday
|
||||
holiday.en-ZA15.date=20150403
|
||||
holiday.en-ZA15.date=20160325
|
||||
holiday.en-ZA16.name=Family Day
|
||||
holiday.en-ZA16.date=20150406
|
||||
holiday.en-ZA16.date=20160328
|
||||
holiday.en-ZA17.name=Freedom Day
|
||||
holiday.en-ZA17.date=20150427
|
||||
holiday.en-ZA17.date=20160427
|
||||
holiday.en-ZA18.name=Workers' Day
|
||||
holiday.en-ZA18.date=20150501
|
||||
holiday.en-ZA18.date=20160501
|
||||
holiday.en-ZA19.name=Youth Day
|
||||
holiday.en-ZA19.date=20150616
|
||||
holiday.en-ZA19.date=20160616
|
||||
holiday.en-ZA20.name=National Women's Day
|
||||
holiday.en-ZA20.date=20150809
|
||||
holiday.en-ZA20.date=20160809
|
||||
holiday.en-ZA21.name=Heritage Day
|
||||
holiday.en-ZA21.date=20150924
|
||||
holiday.en-ZA21.date=20160924
|
||||
holiday.en-ZA22.name=Day of Reconciliation
|
||||
holiday.en-ZA22.date=20151217
|
||||
holiday.en-ZA22.date=20161217
|
||||
holiday.en-ZA23.name=Christmas Day
|
||||
holiday.en-ZA23.date=20151225
|
||||
holiday.en-ZA23.date=20161225
|
||||
holiday.en-ZA24.name=Day of Goodwill
|
||||
holiday.en-ZA24.date=20151226
|
||||
holiday.en-ZA25.name=New Year's Day
|
||||
holiday.en-ZA25.date=20160101
|
||||
holiday.en-ZA26.name=Human Rights Day
|
||||
holiday.en-ZA26.date=20160321
|
||||
holiday.en-ZA27.name=Good Friday
|
||||
holiday.en-ZA27.date=20160325
|
||||
holiday.en-ZA28.name=Family Day
|
||||
holiday.en-ZA28.date=20160328
|
||||
holiday.en-ZA29.name=Freedom Day
|
||||
holiday.en-ZA29.date=20160427
|
||||
holiday.en-ZA30.name=Workers' Day
|
||||
holiday.en-ZA30.date=20160501
|
||||
holiday.en-ZA31.name=Youth Day
|
||||
holiday.en-ZA31.date=20160616
|
||||
holiday.en-ZA32.name=National Women's Day
|
||||
holiday.en-ZA32.date=20160809
|
||||
holiday.en-ZA33.name=Heritage Day
|
||||
holiday.en-ZA33.date=20160924
|
||||
holiday.en-ZA34.name=Day of Reconciliation
|
||||
holiday.en-ZA34.date=20161217
|
||||
holiday.en-ZA35.name=Christmas Day
|
||||
holiday.en-ZA35.date=20161225
|
||||
holiday.en-ZA36.name=Day of Goodwill
|
||||
holiday.en-ZA36.date=20161226
|
||||
holiday.en-ZA24.date=20161226
|
||||
|
||||
105
doc/rc/holidays.es-CO.rc
Normal file
105
doc/rc/holidays.es-CO.rc
Normal file
@@ -0,0 +1,105 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/es-CO/2015.json
|
||||
# http://holidata.net/es-CO/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
# http://www.opensource.org/licenses/mit-license.php
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
holiday.es-CO1.name=Año Nuevo
|
||||
holiday.es-CO1.date=20150101
|
||||
holiday.es-CO2.name=Día de los Reyes Magos
|
||||
holiday.es-CO2.date=20150112
|
||||
holiday.es-CO3.name=Día de San José
|
||||
holiday.es-CO3.date=20150323
|
||||
holiday.es-CO4.name=Jueves Santo
|
||||
holiday.es-CO4.date=20150402
|
||||
holiday.es-CO5.name=Viernes Santo
|
||||
holiday.es-CO5.date=20150403
|
||||
holiday.es-CO6.name=Domingo de Pascua
|
||||
holiday.es-CO6.date=20150405
|
||||
holiday.es-CO7.name=Día del Trabajo
|
||||
holiday.es-CO7.date=20150501
|
||||
holiday.es-CO8.name=La Ascensión del Señor
|
||||
holiday.es-CO8.date=20150518
|
||||
holiday.es-CO9.name=Corpus Christi
|
||||
holiday.es-CO9.date=20150608
|
||||
holiday.es-CO10.name=El Sagrado Corazón de Jesús
|
||||
holiday.es-CO10.date=20150615
|
||||
holiday.es-CO11.name=San Pedro y San Pablo
|
||||
holiday.es-CO11.date=20150629
|
||||
holiday.es-CO12.name=Grito de Independencia
|
||||
holiday.es-CO12.date=20150720
|
||||
holiday.es-CO13.name=Batalla de Boyacá
|
||||
holiday.es-CO13.date=20150807
|
||||
holiday.es-CO14.name=Asunción de la Virgen
|
||||
holiday.es-CO14.date=20150817
|
||||
holiday.es-CO15.name=Día de la Raza
|
||||
holiday.es-CO15.date=20151012
|
||||
holiday.es-CO16.name=Todos los Santos
|
||||
holiday.es-CO16.date=20151102
|
||||
holiday.es-CO17.name=Independencia de Cartagena
|
||||
holiday.es-CO17.date=20151116
|
||||
holiday.es-CO18.name=Inmaculada Concepción
|
||||
holiday.es-CO18.date=20151208
|
||||
holiday.es-CO19.name=Navidad
|
||||
holiday.es-CO19.date=20151225
|
||||
holiday.es-CO20.name=Año Nuevo
|
||||
holiday.es-CO20.date=20160101
|
||||
holiday.es-CO21.name=Día de los Reyes Magos
|
||||
holiday.es-CO21.date=20160111
|
||||
holiday.es-CO22.name=Día de San José
|
||||
holiday.es-CO22.date=20160321
|
||||
holiday.es-CO23.name=Jueves Santo
|
||||
holiday.es-CO23.date=20160324
|
||||
holiday.es-CO24.name=Viernes Santo
|
||||
holiday.es-CO24.date=20160325
|
||||
holiday.es-CO25.name=Domingo de Pascua
|
||||
holiday.es-CO25.date=20160326
|
||||
holiday.es-CO26.name=Día del Trabajo
|
||||
holiday.es-CO26.date=20160501
|
||||
holiday.es-CO27.name=La Ascensión del Señor
|
||||
holiday.es-CO27.date=20160509
|
||||
holiday.es-CO28.name=Corpus Christi
|
||||
holiday.es-CO28.date=20160530
|
||||
holiday.es-CO29.name=El Sagrado Corazón de Jesús
|
||||
holiday.es-CO29.date=20160606
|
||||
holiday.es-CO30.name=San Pedro y San Pablo
|
||||
holiday.es-CO30.date=20160704
|
||||
holiday.es-CO31.name=Grito de Independencia
|
||||
holiday.es-CO31.date=20160720
|
||||
holiday.es-CO32.name=Batalla de Boyacá
|
||||
holiday.es-CO32.date=20160807
|
||||
holiday.es-CO33.name=Asunción de la Virgen
|
||||
holiday.es-CO33.date=20160815
|
||||
holiday.es-CO34.name=Día de la Raza
|
||||
holiday.es-CO34.date=20161017
|
||||
holiday.es-CO35.name=Todos los Santos
|
||||
holiday.es-CO35.date=20161107
|
||||
holiday.es-CO36.name=Independencia de Cartagena
|
||||
holiday.es-CO36.date=20161114
|
||||
holiday.es-CO37.name=Inmaculada Concepción
|
||||
holiday.es-CO37.date=20161208
|
||||
holiday.es-CO38.name=Navidad
|
||||
holiday.es-CO38.date=20161225
|
||||
75
doc/rc/holidays.es-EC.rc
Normal file
75
doc/rc/holidays.es-EC.rc
Normal file
@@ -0,0 +1,75 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/es-EC/2015.json
|
||||
# http://holidata.net/es-EC/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
# http://www.opensource.org/licenses/mit-license.php
|
||||
#
|
||||
###############################################################################
|
||||
|
||||
holiday.es-EC1.name=Año Nuevo
|
||||
holiday.es-EC1.date=20150101
|
||||
holiday.es-EC2.name=Año Nuevo
|
||||
holiday.es-EC2.date=20150102
|
||||
holiday.es-EC3.name=Carnaval
|
||||
holiday.es-EC3.date=20150216
|
||||
holiday.es-EC4.name=Carnaval
|
||||
holiday.es-EC4.date=20150217
|
||||
holiday.es-EC5.name=Viernes Santo
|
||||
holiday.es-EC5.date=20150403
|
||||
holiday.es-EC6.name=Día del Trabajo
|
||||
holiday.es-EC6.date=20150501
|
||||
holiday.es-EC7.name=Batalla del Pichincha
|
||||
holiday.es-EC7.date=20150524
|
||||
holiday.es-EC8.name=Primer Grito de Independencia
|
||||
holiday.es-EC8.date=20150810
|
||||
holiday.es-EC9.name=Independencia de Guayaquil
|
||||
holiday.es-EC9.date=20151009
|
||||
holiday.es-EC10.name=Día de Difuntos
|
||||
holiday.es-EC10.date=20151102
|
||||
holiday.es-EC11.name=Independencia de Cuenca
|
||||
holiday.es-EC11.date=20151103
|
||||
holiday.es-EC12.name=Navidad
|
||||
holiday.es-EC12.date=20151225
|
||||
holiday.es-EC13.name=Año Nuevo
|
||||
holiday.es-EC13.date=20160101
|
||||
holiday.es-EC14.name=Carnaval
|
||||
holiday.es-EC14.date=20160208
|
||||
holiday.es-EC15.name=Carnaval
|
||||
holiday.es-EC15.date=20160209
|
||||
holiday.es-EC16.name=Viernes Santo
|
||||
holiday.es-EC16.date=20160325
|
||||
holiday.es-EC17.name=Día del Trabajo
|
||||
holiday.es-EC17.date=20160501
|
||||
holiday.es-EC18.name=Batalla del Pichincha
|
||||
holiday.es-EC18.date=20160524
|
||||
holiday.es-EC19.name=Primer Grito de Independencia
|
||||
holiday.es-EC19.date=20160810
|
||||
holiday.es-EC20.name=Independencia de Guayaquil
|
||||
holiday.es-EC20.date=20161009
|
||||
holiday.es-EC21.name=Día de Difuntos
|
||||
holiday.es-EC21.date=20161102
|
||||
holiday.es-EC22.name=Independencia de Cuenca
|
||||
holiday.es-EC22.date=20161103
|
||||
holiday.es-EC23.name=Navidad
|
||||
holiday.es-EC23.date=20161225
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/es-ES/2014.json
|
||||
# http://holidata.net/es-ES/2015.json
|
||||
# http://holidata.net/es-ES/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,80 +28,54 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.es-ES1.name=Año Nuevo
|
||||
holiday.es-ES1.date=20140101
|
||||
holiday.es-ES1.date=20150101
|
||||
holiday.es-ES2.name=Día de los Reyes
|
||||
holiday.es-ES2.date=20140106
|
||||
holiday.es-ES2.date=20150106
|
||||
holiday.es-ES3.name=Viernes Santo
|
||||
holiday.es-ES3.date=20140418
|
||||
holiday.es-ES3.date=20150403
|
||||
holiday.es-ES4.name=Pascua
|
||||
holiday.es-ES4.date=20140420
|
||||
holiday.es-ES4.date=20150405
|
||||
holiday.es-ES5.name=Fiesta del Trabajo
|
||||
holiday.es-ES5.date=20140501
|
||||
holiday.es-ES5.date=20150501
|
||||
holiday.es-ES6.name=Asunción de la Virgen
|
||||
holiday.es-ES6.date=20140815
|
||||
holiday.es-ES6.date=20150815
|
||||
holiday.es-ES7.name=Fiesta Nacional de España
|
||||
holiday.es-ES7.date=20141012
|
||||
holiday.es-ES7.date=20151012
|
||||
holiday.es-ES8.name=Dia de todos los Santos
|
||||
holiday.es-ES8.date=20141101
|
||||
holiday.es-ES8.date=20151101
|
||||
holiday.es-ES9.name=Dia de la Constitución
|
||||
holiday.es-ES9.date=20141206
|
||||
holiday.es-ES9.date=20151206
|
||||
holiday.es-ES10.name=Inmaculada Concepción
|
||||
holiday.es-ES10.date=20141208
|
||||
holiday.es-ES10.date=20151208
|
||||
holiday.es-ES11.name=Noche Buena
|
||||
holiday.es-ES11.date=20141224
|
||||
holiday.es-ES11.date=20151224
|
||||
holiday.es-ES12.name=Navidad
|
||||
holiday.es-ES12.date=20141225
|
||||
holiday.es-ES12.date=20151225
|
||||
holiday.es-ES13.name=Noche Vieja
|
||||
holiday.es-ES13.date=20141231
|
||||
holiday.es-ES13.date=20151231
|
||||
holiday.es-ES14.name=Año Nuevo
|
||||
holiday.es-ES14.date=20150101
|
||||
holiday.es-ES14.date=20160101
|
||||
holiday.es-ES15.name=Día de los Reyes
|
||||
holiday.es-ES15.date=20150106
|
||||
holiday.es-ES15.date=20160106
|
||||
holiday.es-ES16.name=Viernes Santo
|
||||
holiday.es-ES16.date=20150403
|
||||
holiday.es-ES16.date=20160325
|
||||
holiday.es-ES17.name=Pascua
|
||||
holiday.es-ES17.date=20150405
|
||||
holiday.es-ES17.date=20160327
|
||||
holiday.es-ES18.name=Fiesta del Trabajo
|
||||
holiday.es-ES18.date=20150501
|
||||
holiday.es-ES18.date=20160501
|
||||
holiday.es-ES19.name=Asunción de la Virgen
|
||||
holiday.es-ES19.date=20150815
|
||||
holiday.es-ES19.date=20160815
|
||||
holiday.es-ES20.name=Fiesta Nacional de España
|
||||
holiday.es-ES20.date=20151012
|
||||
holiday.es-ES20.date=20161012
|
||||
holiday.es-ES21.name=Dia de todos los Santos
|
||||
holiday.es-ES21.date=20151101
|
||||
holiday.es-ES21.date=20161101
|
||||
holiday.es-ES22.name=Dia de la Constitución
|
||||
holiday.es-ES22.date=20151206
|
||||
holiday.es-ES22.date=20161206
|
||||
holiday.es-ES23.name=Inmaculada Concepción
|
||||
holiday.es-ES23.date=20151208
|
||||
holiday.es-ES23.date=20161208
|
||||
holiday.es-ES24.name=Noche Buena
|
||||
holiday.es-ES24.date=20151224
|
||||
holiday.es-ES24.date=20161224
|
||||
holiday.es-ES25.name=Navidad
|
||||
holiday.es-ES25.date=20151225
|
||||
holiday.es-ES25.date=20161225
|
||||
holiday.es-ES26.name=Noche Vieja
|
||||
holiday.es-ES26.date=20151231
|
||||
holiday.es-ES27.name=Año Nuevo
|
||||
holiday.es-ES27.date=20160101
|
||||
holiday.es-ES28.name=Día de los Reyes
|
||||
holiday.es-ES28.date=20160106
|
||||
holiday.es-ES29.name=Viernes Santo
|
||||
holiday.es-ES29.date=20160325
|
||||
holiday.es-ES30.name=Pascua
|
||||
holiday.es-ES30.date=20160327
|
||||
holiday.es-ES31.name=Fiesta del Trabajo
|
||||
holiday.es-ES31.date=20160501
|
||||
holiday.es-ES32.name=Asunción de la Virgen
|
||||
holiday.es-ES32.date=20160815
|
||||
holiday.es-ES33.name=Fiesta Nacional de España
|
||||
holiday.es-ES33.date=20161012
|
||||
holiday.es-ES34.name=Dia de todos los Santos
|
||||
holiday.es-ES34.date=20161101
|
||||
holiday.es-ES35.name=Dia de la Constitución
|
||||
holiday.es-ES35.date=20161206
|
||||
holiday.es-ES36.name=Inmaculada Concepción
|
||||
holiday.es-ES36.date=20161208
|
||||
holiday.es-ES37.name=Noche Buena
|
||||
holiday.es-ES37.date=20161224
|
||||
holiday.es-ES38.name=Navidad
|
||||
holiday.es-ES38.date=20161225
|
||||
holiday.es-ES39.name=Noche Vieja
|
||||
holiday.es-ES39.date=20161231
|
||||
holiday.es-ES26.date=20161231
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/es-MX/2014.json
|
||||
# http://holidata.net/es-MX/2015.json
|
||||
# http://holidata.net/es-MX/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,62 +28,42 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.es-MX1.name=Año Nuevo
|
||||
holiday.es-MX1.date=20140101
|
||||
holiday.es-MX1.date=20150101
|
||||
holiday.es-MX2.name=Día de la Constitución
|
||||
holiday.es-MX2.date=20140203
|
||||
holiday.es-MX2.date=20150202
|
||||
holiday.es-MX3.name=Natalicio de Benito Juárez
|
||||
holiday.es-MX3.date=20140317
|
||||
holiday.es-MX3.date=20150316
|
||||
holiday.es-MX4.name=Jueves Santo
|
||||
holiday.es-MX4.date=20140417
|
||||
holiday.es-MX4.date=20150402
|
||||
holiday.es-MX5.name=Viernes Santo
|
||||
holiday.es-MX5.date=20140418
|
||||
holiday.es-MX5.date=20150403
|
||||
holiday.es-MX6.name=Día del Trabajo
|
||||
holiday.es-MX6.date=20140501
|
||||
holiday.es-MX6.date=20150501
|
||||
holiday.es-MX7.name=Día de la Independencia
|
||||
holiday.es-MX7.date=20140916
|
||||
holiday.es-MX7.date=20150916
|
||||
holiday.es-MX8.name=Día de la Revolución
|
||||
holiday.es-MX8.date=20141117
|
||||
holiday.es-MX8.date=20151116
|
||||
holiday.es-MX9.name=Nuestra Señora de Guadalupe
|
||||
holiday.es-MX9.date=20141212
|
||||
holiday.es-MX9.date=20151212
|
||||
holiday.es-MX10.name=Navidad
|
||||
holiday.es-MX10.date=20141225
|
||||
holiday.es-MX10.date=20151225
|
||||
holiday.es-MX11.name=Año Nuevo
|
||||
holiday.es-MX11.date=20150101
|
||||
holiday.es-MX11.date=20160101
|
||||
holiday.es-MX12.name=Día de la Constitución
|
||||
holiday.es-MX12.date=20150202
|
||||
holiday.es-MX12.date=20160201
|
||||
holiday.es-MX13.name=Natalicio de Benito Juárez
|
||||
holiday.es-MX13.date=20150316
|
||||
holiday.es-MX13.date=20160314
|
||||
holiday.es-MX14.name=Jueves Santo
|
||||
holiday.es-MX14.date=20150402
|
||||
holiday.es-MX14.date=20160324
|
||||
holiday.es-MX15.name=Viernes Santo
|
||||
holiday.es-MX15.date=20150403
|
||||
holiday.es-MX15.date=20160325
|
||||
holiday.es-MX16.name=Día del Trabajo
|
||||
holiday.es-MX16.date=20150501
|
||||
holiday.es-MX16.date=20160501
|
||||
holiday.es-MX17.name=Día de la Independencia
|
||||
holiday.es-MX17.date=20150916
|
||||
holiday.es-MX17.date=20160916
|
||||
holiday.es-MX18.name=Día de la Revolución
|
||||
holiday.es-MX18.date=20151116
|
||||
holiday.es-MX18.date=20161121
|
||||
holiday.es-MX19.name=Nuestra Señora de Guadalupe
|
||||
holiday.es-MX19.date=20151212
|
||||
holiday.es-MX19.date=20161212
|
||||
holiday.es-MX20.name=Navidad
|
||||
holiday.es-MX20.date=20151225
|
||||
holiday.es-MX21.name=Año Nuevo
|
||||
holiday.es-MX21.date=20160101
|
||||
holiday.es-MX22.name=Día de la Constitución
|
||||
holiday.es-MX22.date=20160201
|
||||
holiday.es-MX23.name=Natalicio de Benito Juárez
|
||||
holiday.es-MX23.date=20160314
|
||||
holiday.es-MX24.name=Jueves Santo
|
||||
holiday.es-MX24.date=20160324
|
||||
holiday.es-MX25.name=Viernes Santo
|
||||
holiday.es-MX25.date=20160325
|
||||
holiday.es-MX26.name=Día del Trabajo
|
||||
holiday.es-MX26.date=20160501
|
||||
holiday.es-MX27.name=Día de la Independencia
|
||||
holiday.es-MX27.date=20160916
|
||||
holiday.es-MX28.name=Día de la Revolución
|
||||
holiday.es-MX28.date=20161121
|
||||
holiday.es-MX29.name=Nuestra Señora de Guadalupe
|
||||
holiday.es-MX29.date=20161212
|
||||
holiday.es-MX30.name=Navidad
|
||||
holiday.es-MX30.date=20161225
|
||||
holiday.es-MX20.date=20161225
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/es-US/2014.json
|
||||
# http://holidata.net/es-US/2015.json
|
||||
# http://holidata.net/es-US/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,68 +28,46 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.es-US1.name=Año Neuvo
|
||||
holiday.es-US1.date=20140101
|
||||
holiday.es-US1.date=20150101
|
||||
holiday.es-US2.name=Cumpleaños de Martin Luther King, Jr.
|
||||
holiday.es-US2.date=20140120
|
||||
holiday.es-US2.date=20150119
|
||||
holiday.es-US3.name=Día del Presidente
|
||||
holiday.es-US3.date=20140217
|
||||
holiday.es-US3.date=20150216
|
||||
holiday.es-US4.name=Día del Patriota
|
||||
holiday.es-US4.date=20140421
|
||||
holiday.es-US4.date=20150420
|
||||
holiday.es-US5.name=Día de los Caídos
|
||||
holiday.es-US5.date=20140526
|
||||
holiday.es-US5.date=20150525
|
||||
holiday.es-US6.name=Día de la Independiencia
|
||||
holiday.es-US6.date=20140704
|
||||
holiday.es-US6.date=20150704
|
||||
holiday.es-US7.name=Día del Trabajo
|
||||
holiday.es-US7.date=20140901
|
||||
holiday.es-US7.date=20150907
|
||||
holiday.es-US8.name=Día de Columbus
|
||||
holiday.es-US8.date=20141013
|
||||
holiday.es-US8.date=20151012
|
||||
holiday.es-US9.name=Día de los Veteranos
|
||||
holiday.es-US9.date=20141111
|
||||
holiday.es-US9.date=20151111
|
||||
holiday.es-US10.name=Día de Acción de Gracias
|
||||
holiday.es-US10.date=20141127
|
||||
holiday.es-US10.date=20151126
|
||||
holiday.es-US11.name=Navidad
|
||||
holiday.es-US11.date=20141225
|
||||
holiday.es-US11.date=20151225
|
||||
holiday.es-US12.name=Año Neuvo
|
||||
holiday.es-US12.date=20150101
|
||||
holiday.es-US12.date=20160101
|
||||
holiday.es-US13.name=Cumpleaños de Martin Luther King, Jr.
|
||||
holiday.es-US13.date=20150119
|
||||
holiday.es-US13.date=20160118
|
||||
holiday.es-US14.name=Día del Presidente
|
||||
holiday.es-US14.date=20150216
|
||||
holiday.es-US14.date=20160215
|
||||
holiday.es-US15.name=Día del Patriota
|
||||
holiday.es-US15.date=20150420
|
||||
holiday.es-US15.date=20160418
|
||||
holiday.es-US16.name=Día de los Caídos
|
||||
holiday.es-US16.date=20150525
|
||||
holiday.es-US16.date=20160530
|
||||
holiday.es-US17.name=Día de la Independiencia
|
||||
holiday.es-US17.date=20150704
|
||||
holiday.es-US17.date=20160704
|
||||
holiday.es-US18.name=Día del Trabajo
|
||||
holiday.es-US18.date=20150907
|
||||
holiday.es-US18.date=20160905
|
||||
holiday.es-US19.name=Día de Columbus
|
||||
holiday.es-US19.date=20151012
|
||||
holiday.es-US19.date=20161010
|
||||
holiday.es-US20.name=Día de los Veteranos
|
||||
holiday.es-US20.date=20151111
|
||||
holiday.es-US20.date=20161111
|
||||
holiday.es-US21.name=Día de Acción de Gracias
|
||||
holiday.es-US21.date=20151126
|
||||
holiday.es-US21.date=20161124
|
||||
holiday.es-US22.name=Navidad
|
||||
holiday.es-US22.date=20151225
|
||||
holiday.es-US23.name=Año Neuvo
|
||||
holiday.es-US23.date=20160101
|
||||
holiday.es-US24.name=Cumpleaños de Martin Luther King, Jr.
|
||||
holiday.es-US24.date=20160118
|
||||
holiday.es-US25.name=Día del Presidente
|
||||
holiday.es-US25.date=20160215
|
||||
holiday.es-US26.name=Día del Patriota
|
||||
holiday.es-US26.date=20160418
|
||||
holiday.es-US27.name=Día de los Caídos
|
||||
holiday.es-US27.date=20160530
|
||||
holiday.es-US28.name=Día de la Independiencia
|
||||
holiday.es-US28.date=20160704
|
||||
holiday.es-US29.name=Día del Trabajo
|
||||
holiday.es-US29.date=20160905
|
||||
holiday.es-US30.name=Día de Columbus
|
||||
holiday.es-US30.date=20161010
|
||||
holiday.es-US31.name=Día de los Veteranos
|
||||
holiday.es-US31.date=20161111
|
||||
holiday.es-US32.name=Día de Acción de Gracias
|
||||
holiday.es-US32.date=20161124
|
||||
holiday.es-US33.name=Navidad
|
||||
holiday.es-US33.date=20161225
|
||||
holiday.es-US22.date=20161225
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/et-EE/2014.json
|
||||
# http://holidata.net/et-EE/2015.json
|
||||
# http://holidata.net/et-EE/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,74 +28,50 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.et-EE1.name=uusaasta
|
||||
holiday.et-EE1.date=20140101
|
||||
holiday.et-EE1.date=20150101
|
||||
holiday.et-EE2.name=iseseisvuspäev
|
||||
holiday.et-EE2.date=20140224
|
||||
holiday.et-EE2.date=20150224
|
||||
holiday.et-EE3.name=suur reede
|
||||
holiday.et-EE3.date=20140418
|
||||
holiday.et-EE3.date=20150403
|
||||
holiday.et-EE4.name=ülestõusmispühade 1. püha
|
||||
holiday.et-EE4.date=20140420
|
||||
holiday.et-EE4.date=20150405
|
||||
holiday.et-EE5.name=kevadpüha
|
||||
holiday.et-EE5.date=20140501
|
||||
holiday.et-EE5.date=20150501
|
||||
holiday.et-EE6.name=nelipühade 1. püha
|
||||
holiday.et-EE6.date=20140608
|
||||
holiday.et-EE6.date=20150524
|
||||
holiday.et-EE7.name=võidupüha
|
||||
holiday.et-EE7.date=20140623
|
||||
holiday.et-EE7.date=20150623
|
||||
holiday.et-EE8.name=jaanipäev
|
||||
holiday.et-EE8.date=20140624
|
||||
holiday.et-EE8.date=20150624
|
||||
holiday.et-EE9.name=taasiseseisvumispäev
|
||||
holiday.et-EE9.date=20140820
|
||||
holiday.et-EE9.date=20150820
|
||||
holiday.et-EE10.name=jõululaupäev
|
||||
holiday.et-EE10.date=20141224
|
||||
holiday.et-EE10.date=20151224
|
||||
holiday.et-EE11.name=esimene jõulupüha
|
||||
holiday.et-EE11.date=20141225
|
||||
holiday.et-EE11.date=20151225
|
||||
holiday.et-EE12.name=teine jõulupüha
|
||||
holiday.et-EE12.date=20141226
|
||||
holiday.et-EE12.date=20151226
|
||||
holiday.et-EE13.name=uusaasta
|
||||
holiday.et-EE13.date=20150101
|
||||
holiday.et-EE13.date=20160101
|
||||
holiday.et-EE14.name=iseseisvuspäev
|
||||
holiday.et-EE14.date=20150224
|
||||
holiday.et-EE14.date=20160224
|
||||
holiday.et-EE15.name=suur reede
|
||||
holiday.et-EE15.date=20150403
|
||||
holiday.et-EE15.date=20160325
|
||||
holiday.et-EE16.name=ülestõusmispühade 1. püha
|
||||
holiday.et-EE16.date=20150405
|
||||
holiday.et-EE16.date=20160327
|
||||
holiday.et-EE17.name=kevadpüha
|
||||
holiday.et-EE17.date=20150501
|
||||
holiday.et-EE17.date=20160501
|
||||
holiday.et-EE18.name=nelipühade 1. püha
|
||||
holiday.et-EE18.date=20150524
|
||||
holiday.et-EE18.date=20160515
|
||||
holiday.et-EE19.name=võidupüha
|
||||
holiday.et-EE19.date=20150623
|
||||
holiday.et-EE19.date=20160623
|
||||
holiday.et-EE20.name=jaanipäev
|
||||
holiday.et-EE20.date=20150624
|
||||
holiday.et-EE20.date=20160624
|
||||
holiday.et-EE21.name=taasiseseisvumispäev
|
||||
holiday.et-EE21.date=20150820
|
||||
holiday.et-EE21.date=20160820
|
||||
holiday.et-EE22.name=jõululaupäev
|
||||
holiday.et-EE22.date=20151224
|
||||
holiday.et-EE22.date=20161224
|
||||
holiday.et-EE23.name=esimene jõulupüha
|
||||
holiday.et-EE23.date=20151225
|
||||
holiday.et-EE23.date=20161225
|
||||
holiday.et-EE24.name=teine jõulupüha
|
||||
holiday.et-EE24.date=20151226
|
||||
holiday.et-EE25.name=uusaasta
|
||||
holiday.et-EE25.date=20160101
|
||||
holiday.et-EE26.name=iseseisvuspäev
|
||||
holiday.et-EE26.date=20160224
|
||||
holiday.et-EE27.name=suur reede
|
||||
holiday.et-EE27.date=20160325
|
||||
holiday.et-EE28.name=ülestõusmispühade 1. püha
|
||||
holiday.et-EE28.date=20160327
|
||||
holiday.et-EE29.name=kevadpüha
|
||||
holiday.et-EE29.date=20160501
|
||||
holiday.et-EE30.name=nelipühade 1. püha
|
||||
holiday.et-EE30.date=20160515
|
||||
holiday.et-EE31.name=võidupüha
|
||||
holiday.et-EE31.date=20160623
|
||||
holiday.et-EE32.name=jaanipäev
|
||||
holiday.et-EE32.date=20160624
|
||||
holiday.et-EE33.name=taasiseseisvumispäev
|
||||
holiday.et-EE33.date=20160820
|
||||
holiday.et-EE34.name=jõululaupäev
|
||||
holiday.et-EE34.date=20161224
|
||||
holiday.et-EE35.name=esimene jõulupüha
|
||||
holiday.et-EE35.date=20161225
|
||||
holiday.et-EE36.name=teine jõulupüha
|
||||
holiday.et-EE36.date=20161226
|
||||
holiday.et-EE24.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/fi-FI/2014.json
|
||||
# http://holidata.net/fi-FI/2015.json
|
||||
# http://holidata.net/fi-FI/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,92 +28,62 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.fi-FI1.name=Uudenvuodenpäivä
|
||||
holiday.fi-FI1.date=20140101
|
||||
holiday.fi-FI1.date=20150101
|
||||
holiday.fi-FI2.name=Loppiainen
|
||||
holiday.fi-FI2.date=20140106
|
||||
holiday.fi-FI2.date=20150106
|
||||
holiday.fi-FI3.name=Pitkäperjantai
|
||||
holiday.fi-FI3.date=20140418
|
||||
holiday.fi-FI3.date=20150403
|
||||
holiday.fi-FI4.name=Pääsiäispäivä
|
||||
holiday.fi-FI4.date=20140420
|
||||
holiday.fi-FI4.date=20150405
|
||||
holiday.fi-FI5.name=2. pääsiäispäivä
|
||||
holiday.fi-FI5.date=20140421
|
||||
holiday.fi-FI5.date=20150406
|
||||
holiday.fi-FI6.name=Vappu
|
||||
holiday.fi-FI6.date=20140501
|
||||
holiday.fi-FI6.date=20150501
|
||||
holiday.fi-FI7.name=Helatorstai
|
||||
holiday.fi-FI7.date=20140529
|
||||
holiday.fi-FI7.date=20150514
|
||||
holiday.fi-FI8.name=Helluntaipäivä
|
||||
holiday.fi-FI8.date=20140608
|
||||
holiday.fi-FI8.date=20150524
|
||||
holiday.fi-FI9.name=Juhannusaatto
|
||||
holiday.fi-FI9.date=20140620
|
||||
holiday.fi-FI9.date=20150619
|
||||
holiday.fi-FI10.name=Juhannuspäivä
|
||||
holiday.fi-FI10.date=20140621
|
||||
holiday.fi-FI10.date=20150620
|
||||
holiday.fi-FI11.name=Pyhäinpäivä
|
||||
holiday.fi-FI11.date=20141101
|
||||
holiday.fi-FI11.date=20151031
|
||||
holiday.fi-FI12.name=Itsenäisyyspäivä
|
||||
holiday.fi-FI12.date=20141206
|
||||
holiday.fi-FI12.date=20151206
|
||||
holiday.fi-FI13.name=Jouluaatto
|
||||
holiday.fi-FI13.date=20141224
|
||||
holiday.fi-FI13.date=20151224
|
||||
holiday.fi-FI14.name=Joulupäivä
|
||||
holiday.fi-FI14.date=20141225
|
||||
holiday.fi-FI14.date=20151225
|
||||
holiday.fi-FI15.name=2. joulupäivä
|
||||
holiday.fi-FI15.date=20141226
|
||||
holiday.fi-FI15.date=20151226
|
||||
holiday.fi-FI16.name=Uudenvuodenpäivä
|
||||
holiday.fi-FI16.date=20150101
|
||||
holiday.fi-FI16.date=20160101
|
||||
holiday.fi-FI17.name=Loppiainen
|
||||
holiday.fi-FI17.date=20150106
|
||||
holiday.fi-FI17.date=20160106
|
||||
holiday.fi-FI18.name=Pitkäperjantai
|
||||
holiday.fi-FI18.date=20150403
|
||||
holiday.fi-FI18.date=20160325
|
||||
holiday.fi-FI19.name=Pääsiäispäivä
|
||||
holiday.fi-FI19.date=20150405
|
||||
holiday.fi-FI19.date=20160327
|
||||
holiday.fi-FI20.name=2. pääsiäispäivä
|
||||
holiday.fi-FI20.date=20150406
|
||||
holiday.fi-FI20.date=20160328
|
||||
holiday.fi-FI21.name=Vappu
|
||||
holiday.fi-FI21.date=20150501
|
||||
holiday.fi-FI21.date=20160501
|
||||
holiday.fi-FI22.name=Helatorstai
|
||||
holiday.fi-FI22.date=20150514
|
||||
holiday.fi-FI22.date=20160505
|
||||
holiday.fi-FI23.name=Helluntaipäivä
|
||||
holiday.fi-FI23.date=20150524
|
||||
holiday.fi-FI23.date=20160515
|
||||
holiday.fi-FI24.name=Juhannusaatto
|
||||
holiday.fi-FI24.date=20150619
|
||||
holiday.fi-FI24.date=20160624
|
||||
holiday.fi-FI25.name=Juhannuspäivä
|
||||
holiday.fi-FI25.date=20150620
|
||||
holiday.fi-FI25.date=20160625
|
||||
holiday.fi-FI26.name=Pyhäinpäivä
|
||||
holiday.fi-FI26.date=20151031
|
||||
holiday.fi-FI26.date=20161105
|
||||
holiday.fi-FI27.name=Itsenäisyyspäivä
|
||||
holiday.fi-FI27.date=20151206
|
||||
holiday.fi-FI27.date=20161206
|
||||
holiday.fi-FI28.name=Jouluaatto
|
||||
holiday.fi-FI28.date=20151224
|
||||
holiday.fi-FI28.date=20161224
|
||||
holiday.fi-FI29.name=Joulupäivä
|
||||
holiday.fi-FI29.date=20151225
|
||||
holiday.fi-FI29.date=20161225
|
||||
holiday.fi-FI30.name=2. joulupäivä
|
||||
holiday.fi-FI30.date=20151226
|
||||
holiday.fi-FI31.name=Uudenvuodenpäivä
|
||||
holiday.fi-FI31.date=20160101
|
||||
holiday.fi-FI32.name=Loppiainen
|
||||
holiday.fi-FI32.date=20160106
|
||||
holiday.fi-FI33.name=Pitkäperjantai
|
||||
holiday.fi-FI33.date=20160325
|
||||
holiday.fi-FI34.name=Pääsiäispäivä
|
||||
holiday.fi-FI34.date=20160327
|
||||
holiday.fi-FI35.name=2. pääsiäispäivä
|
||||
holiday.fi-FI35.date=20160328
|
||||
holiday.fi-FI36.name=Vappu
|
||||
holiday.fi-FI36.date=20160501
|
||||
holiday.fi-FI37.name=Helatorstai
|
||||
holiday.fi-FI37.date=20160505
|
||||
holiday.fi-FI38.name=Helluntaipäivä
|
||||
holiday.fi-FI38.date=20160515
|
||||
holiday.fi-FI39.name=Juhannusaatto
|
||||
holiday.fi-FI39.date=20160624
|
||||
holiday.fi-FI40.name=Juhannuspäivä
|
||||
holiday.fi-FI40.date=20160625
|
||||
holiday.fi-FI41.name=Pyhäinpäivä
|
||||
holiday.fi-FI41.date=20161105
|
||||
holiday.fi-FI42.name=Itsenäisyyspäivä
|
||||
holiday.fi-FI42.date=20161206
|
||||
holiday.fi-FI43.name=Jouluaatto
|
||||
holiday.fi-FI43.date=20161224
|
||||
holiday.fi-FI44.name=Joulupäivä
|
||||
holiday.fi-FI44.date=20161225
|
||||
holiday.fi-FI45.name=2. joulupäivä
|
||||
holiday.fi-FI45.date=20161226
|
||||
holiday.fi-FI30.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/fr-BE/2014.json
|
||||
# http://holidata.net/fr-BE/2015.json
|
||||
# http://holidata.net/fr-BE/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,74 +28,50 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.fr-BE1.name=Nouvel An
|
||||
holiday.fr-BE1.date=20140101
|
||||
holiday.fr-BE1.date=20150101
|
||||
holiday.fr-BE2.name=Pâques
|
||||
holiday.fr-BE2.date=20140420
|
||||
holiday.fr-BE2.date=20150405
|
||||
holiday.fr-BE3.name=Lundi de Pâques
|
||||
holiday.fr-BE3.date=20140421
|
||||
holiday.fr-BE3.date=20150406
|
||||
holiday.fr-BE4.name=Fête du Travail
|
||||
holiday.fr-BE4.date=20140501
|
||||
holiday.fr-BE4.date=20150501
|
||||
holiday.fr-BE5.name=Ascension
|
||||
holiday.fr-BE5.date=20140529
|
||||
holiday.fr-BE5.date=20150514
|
||||
holiday.fr-BE6.name=Pentecôte
|
||||
holiday.fr-BE6.date=20140608
|
||||
holiday.fr-BE6.date=20150524
|
||||
holiday.fr-BE7.name=Lundi de Pentecôte
|
||||
holiday.fr-BE7.date=20140609
|
||||
holiday.fr-BE7.date=20150525
|
||||
holiday.fr-BE8.name=Fête nationale
|
||||
holiday.fr-BE8.date=20140721
|
||||
holiday.fr-BE8.date=20150721
|
||||
holiday.fr-BE9.name=Assomption
|
||||
holiday.fr-BE9.date=20140815
|
||||
holiday.fr-BE9.date=20150815
|
||||
holiday.fr-BE10.name=Toussaint
|
||||
holiday.fr-BE10.date=20141101
|
||||
holiday.fr-BE10.date=20151101
|
||||
holiday.fr-BE11.name=Jour de l'armistice
|
||||
holiday.fr-BE11.date=20141111
|
||||
holiday.fr-BE11.date=20151111
|
||||
holiday.fr-BE12.name=Noël
|
||||
holiday.fr-BE12.date=20141225
|
||||
holiday.fr-BE12.date=20151225
|
||||
holiday.fr-BE13.name=Nouvel An
|
||||
holiday.fr-BE13.date=20150101
|
||||
holiday.fr-BE13.date=20160101
|
||||
holiday.fr-BE14.name=Pâques
|
||||
holiday.fr-BE14.date=20150405
|
||||
holiday.fr-BE14.date=20160527
|
||||
holiday.fr-BE15.name=Lundi de Pâques
|
||||
holiday.fr-BE15.date=20150406
|
||||
holiday.fr-BE15.date=20160528
|
||||
holiday.fr-BE16.name=Fête du Travail
|
||||
holiday.fr-BE16.date=20150501
|
||||
holiday.fr-BE16.date=20160501
|
||||
holiday.fr-BE17.name=Ascension
|
||||
holiday.fr-BE17.date=20150514
|
||||
holiday.fr-BE17.date=20160505
|
||||
holiday.fr-BE18.name=Pentecôte
|
||||
holiday.fr-BE18.date=20150524
|
||||
holiday.fr-BE18.date=20160515
|
||||
holiday.fr-BE19.name=Lundi de Pentecôte
|
||||
holiday.fr-BE19.date=20150525
|
||||
holiday.fr-BE19.date=20160516
|
||||
holiday.fr-BE20.name=Fête nationale
|
||||
holiday.fr-BE20.date=20150721
|
||||
holiday.fr-BE20.date=20160721
|
||||
holiday.fr-BE21.name=Assomption
|
||||
holiday.fr-BE21.date=20150815
|
||||
holiday.fr-BE21.date=20160815
|
||||
holiday.fr-BE22.name=Toussaint
|
||||
holiday.fr-BE22.date=20151101
|
||||
holiday.fr-BE22.date=20161101
|
||||
holiday.fr-BE23.name=Jour de l'armistice
|
||||
holiday.fr-BE23.date=20151111
|
||||
holiday.fr-BE23.date=20161111
|
||||
holiday.fr-BE24.name=Noël
|
||||
holiday.fr-BE24.date=20151225
|
||||
holiday.fr-BE25.name=Nouvel An
|
||||
holiday.fr-BE25.date=20160101
|
||||
holiday.fr-BE26.name=Pâques
|
||||
holiday.fr-BE26.date=20160527
|
||||
holiday.fr-BE27.name=Lundi de Pâques
|
||||
holiday.fr-BE27.date=20160528
|
||||
holiday.fr-BE28.name=Fête du Travail
|
||||
holiday.fr-BE28.date=20160501
|
||||
holiday.fr-BE29.name=Ascension
|
||||
holiday.fr-BE29.date=20160505
|
||||
holiday.fr-BE30.name=Pentecôte
|
||||
holiday.fr-BE30.date=20160515
|
||||
holiday.fr-BE31.name=Lundi de Pentecôte
|
||||
holiday.fr-BE31.date=20160516
|
||||
holiday.fr-BE32.name=Fête nationale
|
||||
holiday.fr-BE32.date=20160721
|
||||
holiday.fr-BE33.name=Assomption
|
||||
holiday.fr-BE33.date=20160815
|
||||
holiday.fr-BE34.name=Toussaint
|
||||
holiday.fr-BE34.date=20161101
|
||||
holiday.fr-BE35.name=Jour de l'armistice
|
||||
holiday.fr-BE35.date=20161111
|
||||
holiday.fr-BE36.name=Noël
|
||||
holiday.fr-BE36.date=20161225
|
||||
holiday.fr-BE24.date=20161225
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/fr-FR/2014.json
|
||||
# http://holidata.net/fr-FR/2015.json
|
||||
# http://holidata.net/fr-FR/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,68 +28,46 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.fr-FR1.name=Jour de l'an
|
||||
holiday.fr-FR1.date=20140101
|
||||
holiday.fr-FR1.date=20150101
|
||||
holiday.fr-FR2.name=Lundi de Pâques
|
||||
holiday.fr-FR2.date=20140421
|
||||
holiday.fr-FR2.date=20150406
|
||||
holiday.fr-FR3.name=Fête du premier mai
|
||||
holiday.fr-FR3.date=20140501
|
||||
holiday.fr-FR3.date=20150501
|
||||
holiday.fr-FR4.name=Armistice 1945
|
||||
holiday.fr-FR4.date=20140508
|
||||
holiday.fr-FR4.date=20150508
|
||||
holiday.fr-FR5.name=Ascencion
|
||||
holiday.fr-FR5.date=20140529
|
||||
holiday.fr-FR5.date=20150514
|
||||
holiday.fr-FR6.name=Pentecôte
|
||||
holiday.fr-FR6.date=20140608
|
||||
holiday.fr-FR6.date=20150524
|
||||
holiday.fr-FR7.name=Fête nationale
|
||||
holiday.fr-FR7.date=20140714
|
||||
holiday.fr-FR7.date=20150714
|
||||
holiday.fr-FR8.name=Assomption
|
||||
holiday.fr-FR8.date=20140815
|
||||
holiday.fr-FR8.date=20150815
|
||||
holiday.fr-FR9.name=Toussaint
|
||||
holiday.fr-FR9.date=20141101
|
||||
holiday.fr-FR9.date=20151101
|
||||
holiday.fr-FR10.name=Armistice 1918
|
||||
holiday.fr-FR10.date=20141111
|
||||
holiday.fr-FR10.date=20151111
|
||||
holiday.fr-FR11.name=Noël
|
||||
holiday.fr-FR11.date=20141225
|
||||
holiday.fr-FR11.date=20151225
|
||||
holiday.fr-FR12.name=Jour de l'an
|
||||
holiday.fr-FR12.date=20150101
|
||||
holiday.fr-FR12.date=20160101
|
||||
holiday.fr-FR13.name=Lundi de Pâques
|
||||
holiday.fr-FR13.date=20150406
|
||||
holiday.fr-FR13.date=20160328
|
||||
holiday.fr-FR14.name=Fête du premier mai
|
||||
holiday.fr-FR14.date=20150501
|
||||
holiday.fr-FR14.date=20160501
|
||||
holiday.fr-FR15.name=Armistice 1945
|
||||
holiday.fr-FR15.date=20150508
|
||||
holiday.fr-FR15.date=20160508
|
||||
holiday.fr-FR16.name=Ascencion
|
||||
holiday.fr-FR16.date=20150514
|
||||
holiday.fr-FR16.date=20160505
|
||||
holiday.fr-FR17.name=Pentecôte
|
||||
holiday.fr-FR17.date=20150524
|
||||
holiday.fr-FR17.date=20160515
|
||||
holiday.fr-FR18.name=Fête nationale
|
||||
holiday.fr-FR18.date=20150714
|
||||
holiday.fr-FR18.date=20160714
|
||||
holiday.fr-FR19.name=Assomption
|
||||
holiday.fr-FR19.date=20150815
|
||||
holiday.fr-FR19.date=20160815
|
||||
holiday.fr-FR20.name=Toussaint
|
||||
holiday.fr-FR20.date=20151101
|
||||
holiday.fr-FR20.date=20161101
|
||||
holiday.fr-FR21.name=Armistice 1918
|
||||
holiday.fr-FR21.date=20151111
|
||||
holiday.fr-FR21.date=20161111
|
||||
holiday.fr-FR22.name=Noël
|
||||
holiday.fr-FR22.date=20151225
|
||||
holiday.fr-FR23.name=Jour de l'an
|
||||
holiday.fr-FR23.date=20160101
|
||||
holiday.fr-FR24.name=Lundi de Pâques
|
||||
holiday.fr-FR24.date=20160328
|
||||
holiday.fr-FR25.name=Fête du premier mai
|
||||
holiday.fr-FR25.date=20160501
|
||||
holiday.fr-FR26.name=Armistice 1945
|
||||
holiday.fr-FR26.date=20160508
|
||||
holiday.fr-FR27.name=Ascencion
|
||||
holiday.fr-FR27.date=20160505
|
||||
holiday.fr-FR28.name=Pentecôte
|
||||
holiday.fr-FR28.date=20160515
|
||||
holiday.fr-FR29.name=Fête nationale
|
||||
holiday.fr-FR29.date=20160714
|
||||
holiday.fr-FR30.name=Assomption
|
||||
holiday.fr-FR30.date=20160815
|
||||
holiday.fr-FR31.name=Toussaint
|
||||
holiday.fr-FR31.date=20161101
|
||||
holiday.fr-FR32.name=Armistice 1918
|
||||
holiday.fr-FR32.date=20161111
|
||||
holiday.fr-FR33.name=Noël
|
||||
holiday.fr-FR33.date=20161225
|
||||
holiday.fr-FR22.date=20161225
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/ga-IE/2014.json
|
||||
# http://holidata.net/ga-IE/2015.json
|
||||
# http://holidata.net/ga-IE/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,56 +28,38 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.ga-IE1.name=Lá Caille or Lá Bliana Nua
|
||||
holiday.ga-IE1.date=20140101
|
||||
holiday.ga-IE1.date=20150101
|
||||
holiday.ga-IE2.name=Lá Fhéile Pádraig
|
||||
holiday.ga-IE2.date=20140317
|
||||
holiday.ga-IE2.date=20150317
|
||||
holiday.ga-IE3.name=Luan Cásca
|
||||
holiday.ga-IE3.date=20140421
|
||||
holiday.ga-IE3.date=20150406
|
||||
holiday.ga-IE4.name=Lá an Lucht Oibre
|
||||
holiday.ga-IE4.date=20140505
|
||||
holiday.ga-IE4.date=20150504
|
||||
holiday.ga-IE5.name=Lá Saoire i mí Mheitheamh
|
||||
holiday.ga-IE5.date=20140602
|
||||
holiday.ga-IE5.date=20150601
|
||||
holiday.ga-IE6.name=Lá Saoire i mí Lúnasa
|
||||
holiday.ga-IE6.date=20140804
|
||||
holiday.ga-IE6.date=20150803
|
||||
holiday.ga-IE7.name=Lá Saoire i mí Dheireadh Fómhair
|
||||
holiday.ga-IE7.date=20141027
|
||||
holiday.ga-IE7.date=20151026
|
||||
holiday.ga-IE8.name=Lá Nollag
|
||||
holiday.ga-IE8.date=20141225
|
||||
holiday.ga-IE8.date=20151225
|
||||
holiday.ga-IE9.name=Lá Fhéile Stiofáin or Lá an Dreoilín
|
||||
holiday.ga-IE9.date=20141226
|
||||
holiday.ga-IE9.date=20151226
|
||||
holiday.ga-IE10.name=Lá Caille or Lá Bliana Nua
|
||||
holiday.ga-IE10.date=20150101
|
||||
holiday.ga-IE10.date=20160101
|
||||
holiday.ga-IE11.name=Lá Fhéile Pádraig
|
||||
holiday.ga-IE11.date=20150317
|
||||
holiday.ga-IE11.date=20160317
|
||||
holiday.ga-IE12.name=Luan Cásca
|
||||
holiday.ga-IE12.date=20150406
|
||||
holiday.ga-IE12.date=20160328
|
||||
holiday.ga-IE13.name=Lá an Lucht Oibre
|
||||
holiday.ga-IE13.date=20150504
|
||||
holiday.ga-IE13.date=20160502
|
||||
holiday.ga-IE14.name=Lá Saoire i mí Mheitheamh
|
||||
holiday.ga-IE14.date=20150601
|
||||
holiday.ga-IE14.date=20160606
|
||||
holiday.ga-IE15.name=Lá Saoire i mí Lúnasa
|
||||
holiday.ga-IE15.date=20150803
|
||||
holiday.ga-IE15.date=20160801
|
||||
holiday.ga-IE16.name=Lá Saoire i mí Dheireadh Fómhair
|
||||
holiday.ga-IE16.date=20151026
|
||||
holiday.ga-IE16.date=20161031
|
||||
holiday.ga-IE17.name=Lá Nollag
|
||||
holiday.ga-IE17.date=20151225
|
||||
holiday.ga-IE17.date=20161225
|
||||
holiday.ga-IE18.name=Lá Fhéile Stiofáin or Lá an Dreoilín
|
||||
holiday.ga-IE18.date=20151226
|
||||
holiday.ga-IE19.name=Lá Caille or Lá Bliana Nua
|
||||
holiday.ga-IE19.date=20160101
|
||||
holiday.ga-IE20.name=Lá Fhéile Pádraig
|
||||
holiday.ga-IE20.date=20160317
|
||||
holiday.ga-IE21.name=Luan Cásca
|
||||
holiday.ga-IE21.date=20160328
|
||||
holiday.ga-IE22.name=Lá an Lucht Oibre
|
||||
holiday.ga-IE22.date=20160502
|
||||
holiday.ga-IE23.name=Lá Saoire i mí Mheitheamh
|
||||
holiday.ga-IE23.date=20160606
|
||||
holiday.ga-IE24.name=Lá Saoire i mí Lúnasa
|
||||
holiday.ga-IE24.date=20160801
|
||||
holiday.ga-IE25.name=Lá Saoire i mí Dheireadh Fómhair
|
||||
holiday.ga-IE25.date=20161031
|
||||
holiday.ga-IE26.name=Lá Nollag
|
||||
holiday.ga-IE26.date=20161225
|
||||
holiday.ga-IE27.name=Lá Fhéile Stiofáin or Lá an Dreoilín
|
||||
holiday.ga-IE27.date=20161226
|
||||
holiday.ga-IE18.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/hr-HR/2014.json
|
||||
# http://holidata.net/hr-HR/2015.json
|
||||
# http://holidata.net/hr-HR/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,86 +28,58 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.hr-HR1.name=Nova Godina
|
||||
holiday.hr-HR1.date=20140101
|
||||
holiday.hr-HR1.date=20150101
|
||||
holiday.hr-HR2.name=Bogojavljenje
|
||||
holiday.hr-HR2.date=20140106
|
||||
holiday.hr-HR2.date=20150106
|
||||
holiday.hr-HR3.name=Uskrs
|
||||
holiday.hr-HR3.date=20140420
|
||||
holiday.hr-HR3.date=20150405
|
||||
holiday.hr-HR4.name=Uskrsni ponedjeljak
|
||||
holiday.hr-HR4.date=20140421
|
||||
holiday.hr-HR4.date=20150406
|
||||
holiday.hr-HR5.name=Međunarodni praznik rada
|
||||
holiday.hr-HR5.date=20140501
|
||||
holiday.hr-HR5.date=20150501
|
||||
holiday.hr-HR6.name=Tijelovo
|
||||
holiday.hr-HR6.date=20140619
|
||||
holiday.hr-HR6.date=20150604
|
||||
holiday.hr-HR7.name=Dan antifašističke borbe
|
||||
holiday.hr-HR7.date=20140622
|
||||
holiday.hr-HR7.date=20150622
|
||||
holiday.hr-HR8.name=Dan državnosti
|
||||
holiday.hr-HR8.date=20140625
|
||||
holiday.hr-HR8.date=20150625
|
||||
holiday.hr-HR9.name=Dan pobjede
|
||||
holiday.hr-HR9.date=20140805
|
||||
holiday.hr-HR9.date=20150805
|
||||
holiday.hr-HR10.name=Velika Gospa
|
||||
holiday.hr-HR10.date=20140815
|
||||
holiday.hr-HR10.date=20150815
|
||||
holiday.hr-HR11.name=Dan neovisnosti
|
||||
holiday.hr-HR11.date=20141008
|
||||
holiday.hr-HR11.date=20151008
|
||||
holiday.hr-HR12.name=Dan svih svetih
|
||||
holiday.hr-HR12.date=20141101
|
||||
holiday.hr-HR12.date=20151101
|
||||
holiday.hr-HR13.name=Božić
|
||||
holiday.hr-HR13.date=20141225
|
||||
holiday.hr-HR13.date=20151225
|
||||
holiday.hr-HR14.name=Prvi dan po Božiću
|
||||
holiday.hr-HR14.date=20141226
|
||||
holiday.hr-HR14.date=20151226
|
||||
holiday.hr-HR15.name=Nova Godina
|
||||
holiday.hr-HR15.date=20150101
|
||||
holiday.hr-HR15.date=20160101
|
||||
holiday.hr-HR16.name=Bogojavljenje
|
||||
holiday.hr-HR16.date=20150106
|
||||
holiday.hr-HR16.date=20160106
|
||||
holiday.hr-HR17.name=Uskrs
|
||||
holiday.hr-HR17.date=20150405
|
||||
holiday.hr-HR17.date=20160327
|
||||
holiday.hr-HR18.name=Uskrsni ponedjeljak
|
||||
holiday.hr-HR18.date=20150406
|
||||
holiday.hr-HR18.date=20160328
|
||||
holiday.hr-HR19.name=Međunarodni praznik rada
|
||||
holiday.hr-HR19.date=20150501
|
||||
holiday.hr-HR19.date=20160501
|
||||
holiday.hr-HR20.name=Tijelovo
|
||||
holiday.hr-HR20.date=20150604
|
||||
holiday.hr-HR20.date=20160526
|
||||
holiday.hr-HR21.name=Dan antifašističke borbe
|
||||
holiday.hr-HR21.date=20150622
|
||||
holiday.hr-HR21.date=20160622
|
||||
holiday.hr-HR22.name=Dan državnosti
|
||||
holiday.hr-HR22.date=20150625
|
||||
holiday.hr-HR22.date=20160625
|
||||
holiday.hr-HR23.name=Dan pobjede
|
||||
holiday.hr-HR23.date=20150805
|
||||
holiday.hr-HR23.date=20160805
|
||||
holiday.hr-HR24.name=Velika Gospa
|
||||
holiday.hr-HR24.date=20150815
|
||||
holiday.hr-HR24.date=20160815
|
||||
holiday.hr-HR25.name=Dan neovisnosti
|
||||
holiday.hr-HR25.date=20151008
|
||||
holiday.hr-HR25.date=20161008
|
||||
holiday.hr-HR26.name=Dan svih svetih
|
||||
holiday.hr-HR26.date=20151101
|
||||
holiday.hr-HR26.date=20161101
|
||||
holiday.hr-HR27.name=Božić
|
||||
holiday.hr-HR27.date=20151225
|
||||
holiday.hr-HR27.date=20161225
|
||||
holiday.hr-HR28.name=Prvi dan po Božiću
|
||||
holiday.hr-HR28.date=20151226
|
||||
holiday.hr-HR29.name=Nova Godina
|
||||
holiday.hr-HR29.date=20160101
|
||||
holiday.hr-HR30.name=Bogojavljenje
|
||||
holiday.hr-HR30.date=20160106
|
||||
holiday.hr-HR31.name=Uskrs
|
||||
holiday.hr-HR31.date=20160327
|
||||
holiday.hr-HR32.name=Uskrsni ponedjeljak
|
||||
holiday.hr-HR32.date=20160328
|
||||
holiday.hr-HR33.name=Međunarodni praznik rada
|
||||
holiday.hr-HR33.date=20160501
|
||||
holiday.hr-HR34.name=Tijelovo
|
||||
holiday.hr-HR34.date=20160526
|
||||
holiday.hr-HR35.name=Dan antifašističke borbe
|
||||
holiday.hr-HR35.date=20160622
|
||||
holiday.hr-HR36.name=Dan državnosti
|
||||
holiday.hr-HR36.date=20160625
|
||||
holiday.hr-HR37.name=Dan pobjede
|
||||
holiday.hr-HR37.date=20160805
|
||||
holiday.hr-HR38.name=Velika Gospa
|
||||
holiday.hr-HR38.date=20160815
|
||||
holiday.hr-HR39.name=Dan neovisnosti
|
||||
holiday.hr-HR39.date=20161008
|
||||
holiday.hr-HR40.name=Dan svih svetih
|
||||
holiday.hr-HR40.date=20161101
|
||||
holiday.hr-HR41.name=Božić
|
||||
holiday.hr-HR41.date=20161225
|
||||
holiday.hr-HR42.name=Prvi dan po Božiću
|
||||
holiday.hr-HR42.date=20161226
|
||||
holiday.hr-HR28.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/is-IS/2014.json
|
||||
# http://holidata.net/is-IS/2015.json
|
||||
# http://holidata.net/is-IS/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,92 +28,62 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.is-IS1.name=Nýársdagur
|
||||
holiday.is-IS1.date=20140101
|
||||
holiday.is-IS1.date=20150101
|
||||
holiday.is-IS2.name=Skírdagur
|
||||
holiday.is-IS2.date=20140417
|
||||
holiday.is-IS2.date=20150402
|
||||
holiday.is-IS3.name=Föstudaginn langi
|
||||
holiday.is-IS3.date=20140418
|
||||
holiday.is-IS3.date=20150403
|
||||
holiday.is-IS4.name=Páskadagur
|
||||
holiday.is-IS4.date=20140420
|
||||
holiday.is-IS4.date=20150405
|
||||
holiday.is-IS5.name=Annar í páskum
|
||||
holiday.is-IS5.date=20140421
|
||||
holiday.is-IS5.date=20150406
|
||||
holiday.is-IS6.name=Sumardagurinn fyrsti
|
||||
holiday.is-IS6.date=20140424
|
||||
holiday.is-IS6.date=20150423
|
||||
holiday.is-IS7.name=Verkalýðsdagurinn
|
||||
holiday.is-IS7.date=20140501
|
||||
holiday.is-IS7.date=20150501
|
||||
holiday.is-IS8.name=Uppstigningardagur
|
||||
holiday.is-IS8.date=20140529
|
||||
holiday.is-IS8.date=20150514
|
||||
holiday.is-IS9.name=Annar í hvítasunnu
|
||||
holiday.is-IS9.date=20140609
|
||||
holiday.is-IS9.date=20150525
|
||||
holiday.is-IS10.name=Lýðveldisdagurinn
|
||||
holiday.is-IS10.date=20140617
|
||||
holiday.is-IS10.date=20150617
|
||||
holiday.is-IS11.name=Frídagur verslunarmanna
|
||||
holiday.is-IS11.date=20140804
|
||||
holiday.is-IS11.date=20150803
|
||||
holiday.is-IS12.name=Jól
|
||||
holiday.is-IS12.date=20141224
|
||||
holiday.is-IS12.date=20151224
|
||||
holiday.is-IS13.name=Jól
|
||||
holiday.is-IS13.date=20141225
|
||||
holiday.is-IS13.date=20151225
|
||||
holiday.is-IS14.name=Jól
|
||||
holiday.is-IS14.date=20141226
|
||||
holiday.is-IS14.date=20151226
|
||||
holiday.is-IS15.name=Gamlárskvöld
|
||||
holiday.is-IS15.date=20141231
|
||||
holiday.is-IS15.date=20151231
|
||||
holiday.is-IS16.name=Nýársdagur
|
||||
holiday.is-IS16.date=20150101
|
||||
holiday.is-IS16.date=20160101
|
||||
holiday.is-IS17.name=Skírdagur
|
||||
holiday.is-IS17.date=20150402
|
||||
holiday.is-IS17.date=20160324
|
||||
holiday.is-IS18.name=Föstudaginn langi
|
||||
holiday.is-IS18.date=20150403
|
||||
holiday.is-IS18.date=20160325
|
||||
holiday.is-IS19.name=Páskadagur
|
||||
holiday.is-IS19.date=20150405
|
||||
holiday.is-IS19.date=20160327
|
||||
holiday.is-IS20.name=Annar í páskum
|
||||
holiday.is-IS20.date=20150406
|
||||
holiday.is-IS20.date=20160328
|
||||
holiday.is-IS21.name=Sumardagurinn fyrsti
|
||||
holiday.is-IS21.date=20150423
|
||||
holiday.is-IS21.date=20160421
|
||||
holiday.is-IS22.name=Verkalýðsdagurinn
|
||||
holiday.is-IS22.date=20150501
|
||||
holiday.is-IS22.date=20160501
|
||||
holiday.is-IS23.name=Uppstigningardagur
|
||||
holiday.is-IS23.date=20150514
|
||||
holiday.is-IS23.date=20160505
|
||||
holiday.is-IS24.name=Annar í hvítasunnu
|
||||
holiday.is-IS24.date=20150525
|
||||
holiday.is-IS24.date=20160516
|
||||
holiday.is-IS25.name=Lýðveldisdagurinn
|
||||
holiday.is-IS25.date=20150617
|
||||
holiday.is-IS25.date=20160617
|
||||
holiday.is-IS26.name=Frídagur verslunarmanna
|
||||
holiday.is-IS26.date=20150803
|
||||
holiday.is-IS26.date=20160801
|
||||
holiday.is-IS27.name=Jól
|
||||
holiday.is-IS27.date=20151224
|
||||
holiday.is-IS27.date=20161224
|
||||
holiday.is-IS28.name=Jól
|
||||
holiday.is-IS28.date=20151225
|
||||
holiday.is-IS28.date=20161225
|
||||
holiday.is-IS29.name=Jól
|
||||
holiday.is-IS29.date=20151226
|
||||
holiday.is-IS29.date=20161226
|
||||
holiday.is-IS30.name=Gamlárskvöld
|
||||
holiday.is-IS30.date=20151231
|
||||
holiday.is-IS31.name=Nýársdagur
|
||||
holiday.is-IS31.date=20160101
|
||||
holiday.is-IS32.name=Skírdagur
|
||||
holiday.is-IS32.date=20160324
|
||||
holiday.is-IS33.name=Föstudaginn langi
|
||||
holiday.is-IS33.date=20160325
|
||||
holiday.is-IS34.name=Páskadagur
|
||||
holiday.is-IS34.date=20160327
|
||||
holiday.is-IS35.name=Annar í páskum
|
||||
holiday.is-IS35.date=20160328
|
||||
holiday.is-IS36.name=Sumardagurinn fyrsti
|
||||
holiday.is-IS36.date=20160421
|
||||
holiday.is-IS37.name=Verkalýðsdagurinn
|
||||
holiday.is-IS37.date=20160501
|
||||
holiday.is-IS38.name=Uppstigningardagur
|
||||
holiday.is-IS38.date=20160505
|
||||
holiday.is-IS39.name=Annar í hvítasunnu
|
||||
holiday.is-IS39.date=20160516
|
||||
holiday.is-IS40.name=Lýðveldisdagurinn
|
||||
holiday.is-IS40.date=20160617
|
||||
holiday.is-IS41.name=Frídagur verslunarmanna
|
||||
holiday.is-IS41.date=20160801
|
||||
holiday.is-IS42.name=Jól
|
||||
holiday.is-IS42.date=20161224
|
||||
holiday.is-IS43.name=Jól
|
||||
holiday.is-IS43.date=20161225
|
||||
holiday.is-IS44.name=Jól
|
||||
holiday.is-IS44.date=20161226
|
||||
holiday.is-IS45.name=Gamlárskvöld
|
||||
holiday.is-IS45.date=20161231
|
||||
holiday.is-IS30.date=20161231
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/it-IT/2014.json
|
||||
# http://holidata.net/it-IT/2015.json
|
||||
# http://holidata.net/it-IT/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,74 +28,50 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.it-IT1.name=Capodanno
|
||||
holiday.it-IT1.date=20140101
|
||||
holiday.it-IT1.date=20150101
|
||||
holiday.it-IT2.name=Epifania
|
||||
holiday.it-IT2.date=20140106
|
||||
holiday.it-IT2.date=20150106
|
||||
holiday.it-IT3.name=Carnevale
|
||||
holiday.it-IT3.date=20140304
|
||||
holiday.it-IT3.date=20150217
|
||||
holiday.it-IT4.name=Pasqua
|
||||
holiday.it-IT4.date=20140420
|
||||
holiday.it-IT4.date=20150405
|
||||
holiday.it-IT5.name=Festa della liberazione
|
||||
holiday.it-IT5.date=20140425
|
||||
holiday.it-IT5.date=20150425
|
||||
holiday.it-IT6.name=Festa del lavoro
|
||||
holiday.it-IT6.date=20140501
|
||||
holiday.it-IT6.date=20150501
|
||||
holiday.it-IT7.name=Festa della repubblica
|
||||
holiday.it-IT7.date=20140602
|
||||
holiday.it-IT7.date=20150602
|
||||
holiday.it-IT8.name=Assunzione (ferragosto)
|
||||
holiday.it-IT8.date=20140815
|
||||
holiday.it-IT8.date=20150815
|
||||
holiday.it-IT9.name=Ognissanti
|
||||
holiday.it-IT9.date=20141101
|
||||
holiday.it-IT9.date=20151101
|
||||
holiday.it-IT10.name=Immacolata concezione
|
||||
holiday.it-IT10.date=20141208
|
||||
holiday.it-IT10.date=20151208
|
||||
holiday.it-IT11.name=Natale
|
||||
holiday.it-IT11.date=20141225
|
||||
holiday.it-IT11.date=20151225
|
||||
holiday.it-IT12.name=S.to Stefano
|
||||
holiday.it-IT12.date=20141226
|
||||
holiday.it-IT12.date=20151226
|
||||
holiday.it-IT13.name=Capodanno
|
||||
holiday.it-IT13.date=20150101
|
||||
holiday.it-IT13.date=20160101
|
||||
holiday.it-IT14.name=Epifania
|
||||
holiday.it-IT14.date=20150106
|
||||
holiday.it-IT14.date=20160106
|
||||
holiday.it-IT15.name=Carnevale
|
||||
holiday.it-IT15.date=20150217
|
||||
holiday.it-IT15.date=20160209
|
||||
holiday.it-IT16.name=Pasqua
|
||||
holiday.it-IT16.date=20150405
|
||||
holiday.it-IT16.date=20160327
|
||||
holiday.it-IT17.name=Festa della liberazione
|
||||
holiday.it-IT17.date=20150425
|
||||
holiday.it-IT17.date=20160425
|
||||
holiday.it-IT18.name=Festa del lavoro
|
||||
holiday.it-IT18.date=20150501
|
||||
holiday.it-IT18.date=20160501
|
||||
holiday.it-IT19.name=Festa della repubblica
|
||||
holiday.it-IT19.date=20150602
|
||||
holiday.it-IT19.date=20160602
|
||||
holiday.it-IT20.name=Assunzione (ferragosto)
|
||||
holiday.it-IT20.date=20150815
|
||||
holiday.it-IT20.date=20160815
|
||||
holiday.it-IT21.name=Ognissanti
|
||||
holiday.it-IT21.date=20151101
|
||||
holiday.it-IT21.date=20161101
|
||||
holiday.it-IT22.name=Immacolata concezione
|
||||
holiday.it-IT22.date=20151208
|
||||
holiday.it-IT22.date=20161208
|
||||
holiday.it-IT23.name=Natale
|
||||
holiday.it-IT23.date=20151225
|
||||
holiday.it-IT23.date=20161225
|
||||
holiday.it-IT24.name=S.to Stefano
|
||||
holiday.it-IT24.date=20151226
|
||||
holiday.it-IT25.name=Capodanno
|
||||
holiday.it-IT25.date=20160101
|
||||
holiday.it-IT26.name=Epifania
|
||||
holiday.it-IT26.date=20160106
|
||||
holiday.it-IT27.name=Carnevale
|
||||
holiday.it-IT27.date=20160209
|
||||
holiday.it-IT28.name=Pasqua
|
||||
holiday.it-IT28.date=20160327
|
||||
holiday.it-IT29.name=Festa della liberazione
|
||||
holiday.it-IT29.date=20160425
|
||||
holiday.it-IT30.name=Festa del lavoro
|
||||
holiday.it-IT30.date=20160501
|
||||
holiday.it-IT31.name=Festa della repubblica
|
||||
holiday.it-IT31.date=20160602
|
||||
holiday.it-IT32.name=Assunzione (ferragosto)
|
||||
holiday.it-IT32.date=20160815
|
||||
holiday.it-IT33.name=Ognissanti
|
||||
holiday.it-IT33.date=20161101
|
||||
holiday.it-IT34.name=Immacolata concezione
|
||||
holiday.it-IT34.date=20161208
|
||||
holiday.it-IT35.name=Natale
|
||||
holiday.it-IT35.date=20161225
|
||||
holiday.it-IT36.name=S.to Stefano
|
||||
holiday.it-IT36.date=20161226
|
||||
holiday.it-IT24.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/jp-JP/2014.json
|
||||
# http://holidata.net/jp-JP/2015.json
|
||||
# http://holidata.net/jp-JP/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,96 +28,64 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.jp-JP1.name=元日
|
||||
holiday.jp-JP1.date=20140101
|
||||
holiday.jp-JP1.date=20150101
|
||||
holiday.jp-JP2.name=成人の日
|
||||
holiday.jp-JP2.date=20140113
|
||||
holiday.jp-JP2.date=20150112
|
||||
holiday.jp-JP3.name=建国記念の日
|
||||
holiday.jp-JP3.date=20140211
|
||||
holiday.jp-JP3.date=20150211
|
||||
holiday.jp-JP4.name=春分の日
|
||||
holiday.jp-JP4.date=20140321
|
||||
holiday.jp-JP4.date=20150321
|
||||
holiday.jp-JP5.name=昭和の日
|
||||
holiday.jp-JP5.date=20140429
|
||||
holiday.jp-JP5.date=20150429
|
||||
holiday.jp-JP6.name=憲法記念日
|
||||
holiday.jp-JP6.date=20140503
|
||||
holiday.jp-JP6.date=20150503
|
||||
holiday.jp-JP7.name=みどりの日
|
||||
holiday.jp-JP7.date=20140504
|
||||
holiday.jp-JP7.date=20150504
|
||||
holiday.jp-JP8.name=こどもの日
|
||||
holiday.jp-JP8.date=20140505
|
||||
holiday.jp-JP8.date=20150505
|
||||
holiday.jp-JP9.name=振替休日
|
||||
holiday.jp-JP9.date=20140506
|
||||
holiday.jp-JP9.date=20150506
|
||||
holiday.jp-JP10.name=海の日
|
||||
holiday.jp-JP10.date=20140721
|
||||
holiday.jp-JP10.date=20150720
|
||||
holiday.jp-JP11.name=敬老の日
|
||||
holiday.jp-JP11.date=20140915
|
||||
holiday.jp-JP11.date=20150921
|
||||
holiday.jp-JP12.name=秋分の日
|
||||
holiday.jp-JP12.date=20140923
|
||||
holiday.jp-JP12.date=20150923
|
||||
holiday.jp-JP13.name=体育の日
|
||||
holiday.jp-JP13.date=20141013
|
||||
holiday.jp-JP13.date=20151012
|
||||
holiday.jp-JP14.name=文化の日
|
||||
holiday.jp-JP14.date=20141103
|
||||
holiday.jp-JP14.date=20151103
|
||||
holiday.jp-JP15.name=勤労感謝の日
|
||||
holiday.jp-JP15.date=20141124
|
||||
holiday.jp-JP15.date=20151123
|
||||
holiday.jp-JP16.name=天皇誕生日
|
||||
holiday.jp-JP16.date=20141223
|
||||
holiday.jp-JP16.date=20151223
|
||||
holiday.jp-JP17.name=元日
|
||||
holiday.jp-JP17.date=20150101
|
||||
holiday.jp-JP17.date=20160101
|
||||
holiday.jp-JP18.name=成人の日
|
||||
holiday.jp-JP18.date=20150112
|
||||
holiday.jp-JP18.date=20160111
|
||||
holiday.jp-JP19.name=建国記念の日
|
||||
holiday.jp-JP19.date=20150211
|
||||
holiday.jp-JP19.date=20160211
|
||||
holiday.jp-JP20.name=春分の日
|
||||
holiday.jp-JP20.date=20150321
|
||||
holiday.jp-JP20.date=20160321
|
||||
holiday.jp-JP21.name=昭和の日
|
||||
holiday.jp-JP21.date=20150429
|
||||
holiday.jp-JP21.date=20160429
|
||||
holiday.jp-JP22.name=憲法記念日
|
||||
holiday.jp-JP22.date=20150503
|
||||
holiday.jp-JP22.date=20160503
|
||||
holiday.jp-JP23.name=みどりの日
|
||||
holiday.jp-JP23.date=20150504
|
||||
holiday.jp-JP23.date=20160504
|
||||
holiday.jp-JP24.name=こどもの日
|
||||
holiday.jp-JP24.date=20150505
|
||||
holiday.jp-JP25.name=振替休日
|
||||
holiday.jp-JP25.date=20150506
|
||||
holiday.jp-JP26.name=海の日
|
||||
holiday.jp-JP26.date=20150720
|
||||
holiday.jp-JP27.name=敬老の日
|
||||
holiday.jp-JP27.date=20150921
|
||||
holiday.jp-JP28.name=秋分の日
|
||||
holiday.jp-JP28.date=20150923
|
||||
holiday.jp-JP29.name=体育の日
|
||||
holiday.jp-JP29.date=20151012
|
||||
holiday.jp-JP30.name=文化の日
|
||||
holiday.jp-JP30.date=20151103
|
||||
holiday.jp-JP31.name=勤労感謝の日
|
||||
holiday.jp-JP31.date=20151123
|
||||
holiday.jp-JP32.name=天皇誕生日
|
||||
holiday.jp-JP32.date=20151223
|
||||
holiday.jp-JP33.name=元日
|
||||
holiday.jp-JP33.date=20160101
|
||||
holiday.jp-JP34.name=成人の日
|
||||
holiday.jp-JP34.date=20160111
|
||||
holiday.jp-JP35.name=建国記念の日
|
||||
holiday.jp-JP35.date=20160211
|
||||
holiday.jp-JP36.name=春分の日
|
||||
holiday.jp-JP36.date=20160321
|
||||
holiday.jp-JP37.name=昭和の日
|
||||
holiday.jp-JP37.date=20160429
|
||||
holiday.jp-JP38.name=憲法記念日
|
||||
holiday.jp-JP38.date=20160503
|
||||
holiday.jp-JP39.name=みどりの日
|
||||
holiday.jp-JP39.date=20160504
|
||||
holiday.jp-JP40.name=こどもの日
|
||||
holiday.jp-JP40.date=20160505
|
||||
holiday.jp-JP41.name=海の日
|
||||
holiday.jp-JP41.date=20160718
|
||||
holiday.jp-JP42.name=敬老の日
|
||||
holiday.jp-JP42.date=20160919
|
||||
holiday.jp-JP43.name=秋分の日
|
||||
holiday.jp-JP43.date=20160922
|
||||
holiday.jp-JP44.name=体育の日
|
||||
holiday.jp-JP44.date=20161010
|
||||
holiday.jp-JP45.name=文化の日
|
||||
holiday.jp-JP45.date=20161103
|
||||
holiday.jp-JP46.name=勤労感謝の日
|
||||
holiday.jp-JP46.date=20161123
|
||||
holiday.jp-JP47.name=天皇誕生日
|
||||
holiday.jp-JP47.date=20161223
|
||||
holiday.jp-JP24.date=20160505
|
||||
holiday.jp-JP25.name=海の日
|
||||
holiday.jp-JP25.date=20160718
|
||||
holiday.jp-JP26.name=敬老の日
|
||||
holiday.jp-JP26.date=20160919
|
||||
holiday.jp-JP27.name=秋分の日
|
||||
holiday.jp-JP27.date=20160922
|
||||
holiday.jp-JP28.name=体育の日
|
||||
holiday.jp-JP28.date=20161010
|
||||
holiday.jp-JP29.name=文化の日
|
||||
holiday.jp-JP29.date=20161103
|
||||
holiday.jp-JP30.name=勤労感謝の日
|
||||
holiday.jp-JP30.date=20161123
|
||||
holiday.jp-JP31.name=天皇誕生日
|
||||
holiday.jp-JP31.date=20161223
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/lt-LT/2014.json
|
||||
# http://holidata.net/lt-LT/2015.json
|
||||
# http://holidata.net/lt-LT/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,80 +28,54 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.lt-LT1.name=Naujieji metai
|
||||
holiday.lt-LT1.date=20140101
|
||||
holiday.lt-LT1.date=20150101
|
||||
holiday.lt-LT2.name=Lietuvos valstybės atkūrimo diena
|
||||
holiday.lt-LT2.date=20140216
|
||||
holiday.lt-LT2.date=20150216
|
||||
holiday.lt-LT3.name=Lietuvos nepriklausomybės atkūrimo diena
|
||||
holiday.lt-LT3.date=20140311
|
||||
holiday.lt-LT3.date=20150311
|
||||
holiday.lt-LT4.name=Velykos
|
||||
holiday.lt-LT4.date=20140420
|
||||
holiday.lt-LT4.date=20150405
|
||||
holiday.lt-LT5.name=Velykos
|
||||
holiday.lt-LT5.date=20140421
|
||||
holiday.lt-LT5.date=20150406
|
||||
holiday.lt-LT6.name=Tarptautinė darbo diena
|
||||
holiday.lt-LT6.date=20140501
|
||||
holiday.lt-LT6.date=20150501
|
||||
holiday.lt-LT7.name=Joninės, Rasos
|
||||
holiday.lt-LT7.date=20140624
|
||||
holiday.lt-LT7.date=20150624
|
||||
holiday.lt-LT8.name=Valstybės diena
|
||||
holiday.lt-LT8.date=20140706
|
||||
holiday.lt-LT8.date=20150706
|
||||
holiday.lt-LT9.name=Žolinė
|
||||
holiday.lt-LT9.date=20140815
|
||||
holiday.lt-LT9.date=20150815
|
||||
holiday.lt-LT10.name=Visų šventųjų diena
|
||||
holiday.lt-LT10.date=20142101
|
||||
holiday.lt-LT10.date=20152101
|
||||
holiday.lt-LT11.name=Šv. Kalėdos
|
||||
holiday.lt-LT11.date=20141224
|
||||
holiday.lt-LT11.date=20151224
|
||||
holiday.lt-LT12.name=Šv. Kalėdos
|
||||
holiday.lt-LT12.date=20141225
|
||||
holiday.lt-LT12.date=20151225
|
||||
holiday.lt-LT13.name=Šv. Kalėdos
|
||||
holiday.lt-LT13.date=20141226
|
||||
holiday.lt-LT13.date=20151226
|
||||
holiday.lt-LT14.name=Naujieji metai
|
||||
holiday.lt-LT14.date=20150101
|
||||
holiday.lt-LT14.date=20160101
|
||||
holiday.lt-LT15.name=Lietuvos valstybės atkūrimo diena
|
||||
holiday.lt-LT15.date=20150216
|
||||
holiday.lt-LT15.date=20160216
|
||||
holiday.lt-LT16.name=Lietuvos nepriklausomybės atkūrimo diena
|
||||
holiday.lt-LT16.date=20150311
|
||||
holiday.lt-LT16.date=20160311
|
||||
holiday.lt-LT17.name=Velykos
|
||||
holiday.lt-LT17.date=20150405
|
||||
holiday.lt-LT17.date=20160327
|
||||
holiday.lt-LT18.name=Velykos
|
||||
holiday.lt-LT18.date=20150406
|
||||
holiday.lt-LT18.date=20160328
|
||||
holiday.lt-LT19.name=Tarptautinė darbo diena
|
||||
holiday.lt-LT19.date=20150501
|
||||
holiday.lt-LT19.date=20160501
|
||||
holiday.lt-LT20.name=Joninės, Rasos
|
||||
holiday.lt-LT20.date=20150624
|
||||
holiday.lt-LT20.date=20160624
|
||||
holiday.lt-LT21.name=Valstybės diena
|
||||
holiday.lt-LT21.date=20150706
|
||||
holiday.lt-LT21.date=20160706
|
||||
holiday.lt-LT22.name=Žolinė
|
||||
holiday.lt-LT22.date=20150815
|
||||
holiday.lt-LT22.date=20160815
|
||||
holiday.lt-LT23.name=Visų šventųjų diena
|
||||
holiday.lt-LT23.date=20152101
|
||||
holiday.lt-LT23.date=20162101
|
||||
holiday.lt-LT24.name=Šv. Kalėdos
|
||||
holiday.lt-LT24.date=20151224
|
||||
holiday.lt-LT24.date=20161224
|
||||
holiday.lt-LT25.name=Šv. Kalėdos
|
||||
holiday.lt-LT25.date=20151225
|
||||
holiday.lt-LT25.date=20161225
|
||||
holiday.lt-LT26.name=Šv. Kalėdos
|
||||
holiday.lt-LT26.date=20151226
|
||||
holiday.lt-LT27.name=Naujieji metai
|
||||
holiday.lt-LT27.date=20160101
|
||||
holiday.lt-LT28.name=Lietuvos valstybės atkūrimo diena
|
||||
holiday.lt-LT28.date=20160216
|
||||
holiday.lt-LT29.name=Lietuvos nepriklausomybės atkūrimo diena
|
||||
holiday.lt-LT29.date=20160311
|
||||
holiday.lt-LT30.name=Velykos
|
||||
holiday.lt-LT30.date=20160327
|
||||
holiday.lt-LT31.name=Velykos
|
||||
holiday.lt-LT31.date=20160328
|
||||
holiday.lt-LT32.name=Tarptautinė darbo diena
|
||||
holiday.lt-LT32.date=20160501
|
||||
holiday.lt-LT33.name=Joninės, Rasos
|
||||
holiday.lt-LT33.date=20160624
|
||||
holiday.lt-LT34.name=Valstybės diena
|
||||
holiday.lt-LT34.date=20160706
|
||||
holiday.lt-LT35.name=Žolinė
|
||||
holiday.lt-LT35.date=20160815
|
||||
holiday.lt-LT36.name=Visų šventųjų diena
|
||||
holiday.lt-LT36.date=20162101
|
||||
holiday.lt-LT37.name=Šv. Kalėdos
|
||||
holiday.lt-LT37.date=20161224
|
||||
holiday.lt-LT38.name=Šv. Kalėdos
|
||||
holiday.lt-LT38.date=20161225
|
||||
holiday.lt-LT39.name=Šv. Kalėdos
|
||||
holiday.lt-LT39.date=20161226
|
||||
holiday.lt-LT26.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/lv-LV/2014.json
|
||||
# http://holidata.net/lv-LV/2015.json
|
||||
# http://holidata.net/lv-LV/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,74 +28,50 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.lv-LV1.name=Jaunais Gads
|
||||
holiday.lv-LV1.date=20140101
|
||||
holiday.lv-LV1.date=20150101
|
||||
holiday.lv-LV2.name=Lielā Piektdiena
|
||||
holiday.lv-LV2.date=20140418
|
||||
holiday.lv-LV2.date=20150403
|
||||
holiday.lv-LV3.name=Lieldienas
|
||||
holiday.lv-LV3.date=20140420
|
||||
holiday.lv-LV3.date=20150405
|
||||
holiday.lv-LV4.name=2. Lieldienas
|
||||
holiday.lv-LV4.date=20140421
|
||||
holiday.lv-LV4.date=20150406
|
||||
holiday.lv-LV5.name=Darba svētki
|
||||
holiday.lv-LV5.date=20140501
|
||||
holiday.lv-LV5.date=20150501
|
||||
holiday.lv-LV6.name=Latvijas Republikas Neatkarības atjaunošanas dienu
|
||||
holiday.lv-LV6.date=20140505
|
||||
holiday.lv-LV6.date=20150505
|
||||
holiday.lv-LV7.name=Jāņi
|
||||
holiday.lv-LV7.date=20140624
|
||||
holiday.lv-LV7.date=20150624
|
||||
holiday.lv-LV8.name=Latvijas Republikas proklamēšanas diena
|
||||
holiday.lv-LV8.date=20141118
|
||||
holiday.lv-LV8.date=20151118
|
||||
holiday.lv-LV9.name=Ziemassvētku vakars
|
||||
holiday.lv-LV9.date=20141224
|
||||
holiday.lv-LV9.date=20151224
|
||||
holiday.lv-LV10.name=Ziemassvētki
|
||||
holiday.lv-LV10.date=20141225
|
||||
holiday.lv-LV10.date=20151225
|
||||
holiday.lv-LV11.name=2. Ziemassvētki
|
||||
holiday.lv-LV11.date=20141226
|
||||
holiday.lv-LV11.date=20151226
|
||||
holiday.lv-LV12.name=Vecgada vakars
|
||||
holiday.lv-LV12.date=20141231
|
||||
holiday.lv-LV12.date=20151231
|
||||
holiday.lv-LV13.name=Jaunais Gads
|
||||
holiday.lv-LV13.date=20150101
|
||||
holiday.lv-LV13.date=20160101
|
||||
holiday.lv-LV14.name=Lielā Piektdiena
|
||||
holiday.lv-LV14.date=20150403
|
||||
holiday.lv-LV14.date=20160325
|
||||
holiday.lv-LV15.name=Lieldienas
|
||||
holiday.lv-LV15.date=20150405
|
||||
holiday.lv-LV15.date=20160327
|
||||
holiday.lv-LV16.name=2. Lieldienas
|
||||
holiday.lv-LV16.date=20150406
|
||||
holiday.lv-LV16.date=20160327
|
||||
holiday.lv-LV17.name=Darba svētki
|
||||
holiday.lv-LV17.date=20150501
|
||||
holiday.lv-LV17.date=20160501
|
||||
holiday.lv-LV18.name=Latvijas Republikas Neatkarības atjaunošanas dienu
|
||||
holiday.lv-LV18.date=20150505
|
||||
holiday.lv-LV18.date=20160505
|
||||
holiday.lv-LV19.name=Jāņi
|
||||
holiday.lv-LV19.date=20150624
|
||||
holiday.lv-LV19.date=20160624
|
||||
holiday.lv-LV20.name=Latvijas Republikas proklamēšanas diena
|
||||
holiday.lv-LV20.date=20151118
|
||||
holiday.lv-LV20.date=20161118
|
||||
holiday.lv-LV21.name=Ziemassvētku vakars
|
||||
holiday.lv-LV21.date=20151224
|
||||
holiday.lv-LV21.date=20161224
|
||||
holiday.lv-LV22.name=Ziemassvētki
|
||||
holiday.lv-LV22.date=20151225
|
||||
holiday.lv-LV22.date=20161225
|
||||
holiday.lv-LV23.name=2. Ziemassvētki
|
||||
holiday.lv-LV23.date=20151226
|
||||
holiday.lv-LV23.date=20161226
|
||||
holiday.lv-LV24.name=Vecgada vakars
|
||||
holiday.lv-LV24.date=20151231
|
||||
holiday.lv-LV25.name=Jaunais Gads
|
||||
holiday.lv-LV25.date=20160101
|
||||
holiday.lv-LV26.name=Lielā Piektdiena
|
||||
holiday.lv-LV26.date=20160325
|
||||
holiday.lv-LV27.name=Lieldienas
|
||||
holiday.lv-LV27.date=20160327
|
||||
holiday.lv-LV28.name=2. Lieldienas
|
||||
holiday.lv-LV28.date=20160327
|
||||
holiday.lv-LV29.name=Darba svētki
|
||||
holiday.lv-LV29.date=20160501
|
||||
holiday.lv-LV30.name=Latvijas Republikas Neatkarības atjaunošanas dienu
|
||||
holiday.lv-LV30.date=20160505
|
||||
holiday.lv-LV31.name=Jāņi
|
||||
holiday.lv-LV31.date=20160624
|
||||
holiday.lv-LV32.name=Latvijas Republikas proklamēšanas diena
|
||||
holiday.lv-LV32.date=20161118
|
||||
holiday.lv-LV33.name=Ziemassvētku vakars
|
||||
holiday.lv-LV33.date=20161224
|
||||
holiday.lv-LV34.name=Ziemassvētki
|
||||
holiday.lv-LV34.date=20161225
|
||||
holiday.lv-LV35.name=2. Ziemassvētki
|
||||
holiday.lv-LV35.date=20161226
|
||||
holiday.lv-LV36.name=Vecgada vakars
|
||||
holiday.lv-LV36.date=20161231
|
||||
holiday.lv-LV24.date=20161231
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/nb-NO/2014.json
|
||||
# http://holidata.net/nb-NO/2015.json
|
||||
# http://holidata.net/nb-NO/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,104 +28,70 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.nb-NO1.name=Nyttårsdag
|
||||
holiday.nb-NO1.date=20140101
|
||||
holiday.nb-NO1.date=20150101
|
||||
holiday.nb-NO2.name=Fastelavn
|
||||
holiday.nb-NO2.date=20140302
|
||||
holiday.nb-NO2.date=20150215
|
||||
holiday.nb-NO3.name=Palmesøndag
|
||||
holiday.nb-NO3.date=20140413
|
||||
holiday.nb-NO3.date=20150329
|
||||
holiday.nb-NO4.name=Skjærtorsdag
|
||||
holiday.nb-NO4.date=20140417
|
||||
holiday.nb-NO4.date=20150402
|
||||
holiday.nb-NO5.name=Langfredag
|
||||
holiday.nb-NO5.date=20140418
|
||||
holiday.nb-NO5.date=20150403
|
||||
holiday.nb-NO6.name=Påskedag
|
||||
holiday.nb-NO6.date=20140420
|
||||
holiday.nb-NO6.date=20150405
|
||||
holiday.nb-NO7.name=Påskedag
|
||||
holiday.nb-NO7.date=20140421
|
||||
holiday.nb-NO7.date=20150406
|
||||
holiday.nb-NO8.name=Offentlig Høytidsdag
|
||||
holiday.nb-NO8.date=20140501
|
||||
holiday.nb-NO8.date=20150501
|
||||
holiday.nb-NO9.name=Frigjøringsdag 1945
|
||||
holiday.nb-NO9.date=20140508
|
||||
holiday.nb-NO9.date=20150508
|
||||
holiday.nb-NO10.name=Grunnlovsdag
|
||||
holiday.nb-NO10.date=20140517
|
||||
holiday.nb-NO10.date=20150517
|
||||
holiday.nb-NO11.name=Kristi Himmelfartsdag
|
||||
holiday.nb-NO11.date=20140529
|
||||
holiday.nb-NO11.date=20150514
|
||||
holiday.nb-NO12.name=Pinsedag
|
||||
holiday.nb-NO12.date=20140608
|
||||
holiday.nb-NO12.date=20150524
|
||||
holiday.nb-NO13.name=Pinsedag
|
||||
holiday.nb-NO13.date=20140609
|
||||
holiday.nb-NO13.date=20150525
|
||||
holiday.nb-NO14.name=Julaften
|
||||
holiday.nb-NO14.date=20141224
|
||||
holiday.nb-NO14.date=20151224
|
||||
holiday.nb-NO15.name=Juledag
|
||||
holiday.nb-NO15.date=20141225
|
||||
holiday.nb-NO15.date=20151225
|
||||
holiday.nb-NO16.name=Juledag
|
||||
holiday.nb-NO16.date=20141226
|
||||
holiday.nb-NO16.date=20151226
|
||||
holiday.nb-NO17.name=Nyttårsaften
|
||||
holiday.nb-NO17.date=20141231
|
||||
holiday.nb-NO17.date=20151231
|
||||
holiday.nb-NO18.name=Nyttårsdag
|
||||
holiday.nb-NO18.date=20150101
|
||||
holiday.nb-NO18.date=20160101
|
||||
holiday.nb-NO19.name=Fastelavn
|
||||
holiday.nb-NO19.date=20150215
|
||||
holiday.nb-NO19.date=20160207
|
||||
holiday.nb-NO20.name=Palmesøndag
|
||||
holiday.nb-NO20.date=20150329
|
||||
holiday.nb-NO20.date=20160320
|
||||
holiday.nb-NO21.name=Skjærtorsdag
|
||||
holiday.nb-NO21.date=20150402
|
||||
holiday.nb-NO21.date=20160324
|
||||
holiday.nb-NO22.name=Langfredag
|
||||
holiday.nb-NO22.date=20150403
|
||||
holiday.nb-NO22.date=20160325
|
||||
holiday.nb-NO23.name=Påskedag
|
||||
holiday.nb-NO23.date=20150405
|
||||
holiday.nb-NO23.date=20160327
|
||||
holiday.nb-NO24.name=Påskedag
|
||||
holiday.nb-NO24.date=20150406
|
||||
holiday.nb-NO24.date=20160328
|
||||
holiday.nb-NO25.name=Offentlig Høytidsdag
|
||||
holiday.nb-NO25.date=20150501
|
||||
holiday.nb-NO25.date=20160501
|
||||
holiday.nb-NO26.name=Frigjøringsdag 1945
|
||||
holiday.nb-NO26.date=20150508
|
||||
holiday.nb-NO26.date=20160508
|
||||
holiday.nb-NO27.name=Grunnlovsdag
|
||||
holiday.nb-NO27.date=20150517
|
||||
holiday.nb-NO27.date=20160517
|
||||
holiday.nb-NO28.name=Kristi Himmelfartsdag
|
||||
holiday.nb-NO28.date=20150514
|
||||
holiday.nb-NO28.date=20160505
|
||||
holiday.nb-NO29.name=Pinsedag
|
||||
holiday.nb-NO29.date=20150524
|
||||
holiday.nb-NO29.date=20160515
|
||||
holiday.nb-NO30.name=Pinsedag
|
||||
holiday.nb-NO30.date=20150525
|
||||
holiday.nb-NO30.date=20160516
|
||||
holiday.nb-NO31.name=Julaften
|
||||
holiday.nb-NO31.date=20151224
|
||||
holiday.nb-NO31.date=20161224
|
||||
holiday.nb-NO32.name=Juledag
|
||||
holiday.nb-NO32.date=20151225
|
||||
holiday.nb-NO32.date=20161225
|
||||
holiday.nb-NO33.name=Juledag
|
||||
holiday.nb-NO33.date=20151226
|
||||
holiday.nb-NO33.date=20161226
|
||||
holiday.nb-NO34.name=Nyttårsaften
|
||||
holiday.nb-NO34.date=20151231
|
||||
holiday.nb-NO35.name=Nyttårsdag
|
||||
holiday.nb-NO35.date=20160101
|
||||
holiday.nb-NO36.name=Fastelavn
|
||||
holiday.nb-NO36.date=20160207
|
||||
holiday.nb-NO37.name=Palmesøndag
|
||||
holiday.nb-NO37.date=20160320
|
||||
holiday.nb-NO38.name=Skjærtorsdag
|
||||
holiday.nb-NO38.date=20160324
|
||||
holiday.nb-NO39.name=Langfredag
|
||||
holiday.nb-NO39.date=20160325
|
||||
holiday.nb-NO40.name=Påskedag
|
||||
holiday.nb-NO40.date=20160327
|
||||
holiday.nb-NO41.name=Påskedag
|
||||
holiday.nb-NO41.date=20160328
|
||||
holiday.nb-NO42.name=Offentlig Høytidsdag
|
||||
holiday.nb-NO42.date=20160501
|
||||
holiday.nb-NO43.name=Frigjøringsdag 1945
|
||||
holiday.nb-NO43.date=20160508
|
||||
holiday.nb-NO44.name=Grunnlovsdag
|
||||
holiday.nb-NO44.date=20160517
|
||||
holiday.nb-NO45.name=Kristi Himmelfartsdag
|
||||
holiday.nb-NO45.date=20160505
|
||||
holiday.nb-NO46.name=Pinsedag
|
||||
holiday.nb-NO46.date=20160515
|
||||
holiday.nb-NO47.name=Pinsedag
|
||||
holiday.nb-NO47.date=20160516
|
||||
holiday.nb-NO48.name=Julaften
|
||||
holiday.nb-NO48.date=20161224
|
||||
holiday.nb-NO49.name=Juledag
|
||||
holiday.nb-NO49.date=20161225
|
||||
holiday.nb-NO50.name=Juledag
|
||||
holiday.nb-NO50.date=20161226
|
||||
holiday.nb-NO51.name=Nyttårsaften
|
||||
holiday.nb-NO51.date=20161231
|
||||
holiday.nb-NO34.date=20161231
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/nb-SJ/2014.json
|
||||
# http://holidata.net/nb-SJ/2015.json
|
||||
# http://holidata.net/nb-SJ/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,104 +28,70 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.nb-SJ1.name=Nyttårsdag
|
||||
holiday.nb-SJ1.date=20140101
|
||||
holiday.nb-SJ1.date=20150101
|
||||
holiday.nb-SJ2.name=Fastelavn
|
||||
holiday.nb-SJ2.date=20140302
|
||||
holiday.nb-SJ2.date=20150215
|
||||
holiday.nb-SJ3.name=Palmesøndag
|
||||
holiday.nb-SJ3.date=20140413
|
||||
holiday.nb-SJ3.date=20150329
|
||||
holiday.nb-SJ4.name=Skjærtorsdag
|
||||
holiday.nb-SJ4.date=20140417
|
||||
holiday.nb-SJ4.date=20150402
|
||||
holiday.nb-SJ5.name=Langfredag
|
||||
holiday.nb-SJ5.date=20140418
|
||||
holiday.nb-SJ5.date=20150403
|
||||
holiday.nb-SJ6.name=Påskedag
|
||||
holiday.nb-SJ6.date=20140420
|
||||
holiday.nb-SJ6.date=20150405
|
||||
holiday.nb-SJ7.name=Påskedag
|
||||
holiday.nb-SJ7.date=20140421
|
||||
holiday.nb-SJ7.date=20150406
|
||||
holiday.nb-SJ8.name=Offentlig Høytidsdag
|
||||
holiday.nb-SJ8.date=20140501
|
||||
holiday.nb-SJ8.date=20150501
|
||||
holiday.nb-SJ9.name=Frigjøringsdag 1945
|
||||
holiday.nb-SJ9.date=20140508
|
||||
holiday.nb-SJ9.date=20150508
|
||||
holiday.nb-SJ10.name=Grunnlovsdag
|
||||
holiday.nb-SJ10.date=20140517
|
||||
holiday.nb-SJ10.date=20150517
|
||||
holiday.nb-SJ11.name=Kristi Himmelfartsdag
|
||||
holiday.nb-SJ11.date=20140529
|
||||
holiday.nb-SJ11.date=20150514
|
||||
holiday.nb-SJ12.name=Pinsedag
|
||||
holiday.nb-SJ12.date=20140608
|
||||
holiday.nb-SJ12.date=20150524
|
||||
holiday.nb-SJ13.name=Pinsedag
|
||||
holiday.nb-SJ13.date=20140609
|
||||
holiday.nb-SJ13.date=20150525
|
||||
holiday.nb-SJ14.name=Julaften
|
||||
holiday.nb-SJ14.date=20141224
|
||||
holiday.nb-SJ14.date=20151224
|
||||
holiday.nb-SJ15.name=Juledag
|
||||
holiday.nb-SJ15.date=20141225
|
||||
holiday.nb-SJ15.date=20151225
|
||||
holiday.nb-SJ16.name=Juledag
|
||||
holiday.nb-SJ16.date=20141226
|
||||
holiday.nb-SJ16.date=20151226
|
||||
holiday.nb-SJ17.name=Nyttårsaften
|
||||
holiday.nb-SJ17.date=20141231
|
||||
holiday.nb-SJ17.date=20151231
|
||||
holiday.nb-SJ18.name=Nyttårsdag
|
||||
holiday.nb-SJ18.date=20150101
|
||||
holiday.nb-SJ18.date=20160101
|
||||
holiday.nb-SJ19.name=Fastelavn
|
||||
holiday.nb-SJ19.date=20150215
|
||||
holiday.nb-SJ19.date=20160207
|
||||
holiday.nb-SJ20.name=Palmesøndag
|
||||
holiday.nb-SJ20.date=20150329
|
||||
holiday.nb-SJ20.date=20160320
|
||||
holiday.nb-SJ21.name=Skjærtorsdag
|
||||
holiday.nb-SJ21.date=20150402
|
||||
holiday.nb-SJ21.date=20160324
|
||||
holiday.nb-SJ22.name=Langfredag
|
||||
holiday.nb-SJ22.date=20150403
|
||||
holiday.nb-SJ22.date=20160325
|
||||
holiday.nb-SJ23.name=Påskedag
|
||||
holiday.nb-SJ23.date=20150405
|
||||
holiday.nb-SJ23.date=20160327
|
||||
holiday.nb-SJ24.name=Påskedag
|
||||
holiday.nb-SJ24.date=20150406
|
||||
holiday.nb-SJ24.date=20160328
|
||||
holiday.nb-SJ25.name=Offentlig Høytidsdag
|
||||
holiday.nb-SJ25.date=20150501
|
||||
holiday.nb-SJ25.date=20160501
|
||||
holiday.nb-SJ26.name=Frigjøringsdag 1945
|
||||
holiday.nb-SJ26.date=20150508
|
||||
holiday.nb-SJ26.date=20160508
|
||||
holiday.nb-SJ27.name=Grunnlovsdag
|
||||
holiday.nb-SJ27.date=20150517
|
||||
holiday.nb-SJ27.date=20160517
|
||||
holiday.nb-SJ28.name=Kristi Himmelfartsdag
|
||||
holiday.nb-SJ28.date=20150514
|
||||
holiday.nb-SJ28.date=20160505
|
||||
holiday.nb-SJ29.name=Pinsedag
|
||||
holiday.nb-SJ29.date=20150524
|
||||
holiday.nb-SJ29.date=20160515
|
||||
holiday.nb-SJ30.name=Pinsedag
|
||||
holiday.nb-SJ30.date=20150525
|
||||
holiday.nb-SJ30.date=20160516
|
||||
holiday.nb-SJ31.name=Julaften
|
||||
holiday.nb-SJ31.date=20151224
|
||||
holiday.nb-SJ31.date=20161224
|
||||
holiday.nb-SJ32.name=Juledag
|
||||
holiday.nb-SJ32.date=20151225
|
||||
holiday.nb-SJ32.date=20161225
|
||||
holiday.nb-SJ33.name=Juledag
|
||||
holiday.nb-SJ33.date=20151226
|
||||
holiday.nb-SJ33.date=20161226
|
||||
holiday.nb-SJ34.name=Nyttårsaften
|
||||
holiday.nb-SJ34.date=20151231
|
||||
holiday.nb-SJ35.name=Nyttårsdag
|
||||
holiday.nb-SJ35.date=20160101
|
||||
holiday.nb-SJ36.name=Fastelavn
|
||||
holiday.nb-SJ36.date=20160207
|
||||
holiday.nb-SJ37.name=Palmesøndag
|
||||
holiday.nb-SJ37.date=20160320
|
||||
holiday.nb-SJ38.name=Skjærtorsdag
|
||||
holiday.nb-SJ38.date=20160324
|
||||
holiday.nb-SJ39.name=Langfredag
|
||||
holiday.nb-SJ39.date=20160325
|
||||
holiday.nb-SJ40.name=Påskedag
|
||||
holiday.nb-SJ40.date=20160327
|
||||
holiday.nb-SJ41.name=Påskedag
|
||||
holiday.nb-SJ41.date=20160328
|
||||
holiday.nb-SJ42.name=Offentlig Høytidsdag
|
||||
holiday.nb-SJ42.date=20160501
|
||||
holiday.nb-SJ43.name=Frigjøringsdag 1945
|
||||
holiday.nb-SJ43.date=20160508
|
||||
holiday.nb-SJ44.name=Grunnlovsdag
|
||||
holiday.nb-SJ44.date=20160517
|
||||
holiday.nb-SJ45.name=Kristi Himmelfartsdag
|
||||
holiday.nb-SJ45.date=20160505
|
||||
holiday.nb-SJ46.name=Pinsedag
|
||||
holiday.nb-SJ46.date=20160515
|
||||
holiday.nb-SJ47.name=Pinsedag
|
||||
holiday.nb-SJ47.date=20160516
|
||||
holiday.nb-SJ48.name=Julaften
|
||||
holiday.nb-SJ48.date=20161224
|
||||
holiday.nb-SJ49.name=Juledag
|
||||
holiday.nb-SJ49.date=20161225
|
||||
holiday.nb-SJ50.name=Juledag
|
||||
holiday.nb-SJ50.date=20161226
|
||||
holiday.nb-SJ51.name=Nyttårsaften
|
||||
holiday.nb-SJ51.date=20161231
|
||||
holiday.nb-SJ34.date=20161231
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/nl-BE/2014.json
|
||||
# http://holidata.net/nl-BE/2015.json
|
||||
# http://holidata.net/nl-BE/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,74 +28,50 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.nl-BE1.name=Nieuwjaar
|
||||
holiday.nl-BE1.date=20140101
|
||||
holiday.nl-BE1.date=20150101
|
||||
holiday.nl-BE2.name=Pasen
|
||||
holiday.nl-BE2.date=20140420
|
||||
holiday.nl-BE2.date=20150405
|
||||
holiday.nl-BE3.name=Paasmaandag
|
||||
holiday.nl-BE3.date=20140421
|
||||
holiday.nl-BE3.date=20150406
|
||||
holiday.nl-BE4.name=Dag van de arbeid
|
||||
holiday.nl-BE4.date=20140501
|
||||
holiday.nl-BE4.date=20150501
|
||||
holiday.nl-BE5.name=Onze Lieve Heer hemelvaart
|
||||
holiday.nl-BE5.date=20140529
|
||||
holiday.nl-BE5.date=20150514
|
||||
holiday.nl-BE6.name=Pinksteren
|
||||
holiday.nl-BE6.date=20140608
|
||||
holiday.nl-BE6.date=20150524
|
||||
holiday.nl-BE7.name=Pinkstermaandag
|
||||
holiday.nl-BE7.date=20140609
|
||||
holiday.nl-BE7.date=20150525
|
||||
holiday.nl-BE8.name=Nationale feestdag
|
||||
holiday.nl-BE8.date=20140721
|
||||
holiday.nl-BE8.date=20150721
|
||||
holiday.nl-BE9.name=Onze Lieve Vrouw hemelvaart
|
||||
holiday.nl-BE9.date=20140815
|
||||
holiday.nl-BE9.date=20150815
|
||||
holiday.nl-BE10.name=Allerheiligen
|
||||
holiday.nl-BE10.date=20141101
|
||||
holiday.nl-BE10.date=20151101
|
||||
holiday.nl-BE11.name=Wapenstilstand
|
||||
holiday.nl-BE11.date=20141111
|
||||
holiday.nl-BE11.date=20151111
|
||||
holiday.nl-BE12.name=Kerstmis
|
||||
holiday.nl-BE12.date=20141225
|
||||
holiday.nl-BE12.date=20151225
|
||||
holiday.nl-BE13.name=Nieuwjaar
|
||||
holiday.nl-BE13.date=20150101
|
||||
holiday.nl-BE13.date=20160101
|
||||
holiday.nl-BE14.name=Pasen
|
||||
holiday.nl-BE14.date=20150405
|
||||
holiday.nl-BE14.date=20160327
|
||||
holiday.nl-BE15.name=Paasmaandag
|
||||
holiday.nl-BE15.date=20150406
|
||||
holiday.nl-BE15.date=20160328
|
||||
holiday.nl-BE16.name=Dag van de arbeid
|
||||
holiday.nl-BE16.date=20150501
|
||||
holiday.nl-BE16.date=20160501
|
||||
holiday.nl-BE17.name=Onze Lieve Heer hemelvaart
|
||||
holiday.nl-BE17.date=20150514
|
||||
holiday.nl-BE17.date=20160505
|
||||
holiday.nl-BE18.name=Pinksteren
|
||||
holiday.nl-BE18.date=20150524
|
||||
holiday.nl-BE18.date=20160515
|
||||
holiday.nl-BE19.name=Pinkstermaandag
|
||||
holiday.nl-BE19.date=20150525
|
||||
holiday.nl-BE19.date=20160516
|
||||
holiday.nl-BE20.name=Nationale feestdag
|
||||
holiday.nl-BE20.date=20150721
|
||||
holiday.nl-BE20.date=20160721
|
||||
holiday.nl-BE21.name=Onze Lieve Vrouw hemelvaart
|
||||
holiday.nl-BE21.date=20150815
|
||||
holiday.nl-BE21.date=20160815
|
||||
holiday.nl-BE22.name=Allerheiligen
|
||||
holiday.nl-BE22.date=20151101
|
||||
holiday.nl-BE22.date=20161101
|
||||
holiday.nl-BE23.name=Wapenstilstand
|
||||
holiday.nl-BE23.date=20151111
|
||||
holiday.nl-BE23.date=20161111
|
||||
holiday.nl-BE24.name=Kerstmis
|
||||
holiday.nl-BE24.date=20151225
|
||||
holiday.nl-BE25.name=Nieuwjaar
|
||||
holiday.nl-BE25.date=20160101
|
||||
holiday.nl-BE26.name=Pasen
|
||||
holiday.nl-BE26.date=20160527
|
||||
holiday.nl-BE27.name=Paasmaandag
|
||||
holiday.nl-BE27.date=20160528
|
||||
holiday.nl-BE28.name=Dag van de arbeid
|
||||
holiday.nl-BE28.date=20160501
|
||||
holiday.nl-BE29.name=Onze Lieve Heer hemelvaart
|
||||
holiday.nl-BE29.date=20160505
|
||||
holiday.nl-BE30.name=Pinksteren
|
||||
holiday.nl-BE30.date=20160515
|
||||
holiday.nl-BE31.name=Pinkstermaandag
|
||||
holiday.nl-BE31.date=20160516
|
||||
holiday.nl-BE32.name=Nationale feestdag
|
||||
holiday.nl-BE32.date=20160721
|
||||
holiday.nl-BE33.name=Onze Lieve Vrouw hemelvaart
|
||||
holiday.nl-BE33.date=20160815
|
||||
holiday.nl-BE34.name=Allerheiligen
|
||||
holiday.nl-BE34.date=20161101
|
||||
holiday.nl-BE35.name=Wapenstilstand
|
||||
holiday.nl-BE35.date=20161111
|
||||
holiday.nl-BE36.name=Kerstmis
|
||||
holiday.nl-BE36.date=20161225
|
||||
holiday.nl-BE24.date=20161225
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/nl-NL/2014.json
|
||||
# http://holidata.net/nl-NL/2015.json
|
||||
# http://holidata.net/nl-NL/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,78 +28,54 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.nl-NL1.name=Nieuwjaar
|
||||
holiday.nl-NL1.date=20140101
|
||||
holiday.nl-NL1.date=20150101
|
||||
holiday.nl-NL2.name=Goede Vrijdag
|
||||
holiday.nl-NL2.date=20140418
|
||||
holiday.nl-NL2.date=20150403
|
||||
holiday.nl-NL3.name=Pasen
|
||||
holiday.nl-NL3.date=20140420
|
||||
holiday.nl-NL3.date=20150405
|
||||
holiday.nl-NL4.name=Tweede Pasdag
|
||||
holiday.nl-NL4.date=20140421
|
||||
holiday.nl-NL4.date=20150406
|
||||
holiday.nl-NL5.name=Koninginnedag
|
||||
holiday.nl-NL5.date=20140426
|
||||
holiday.nl-NL5.date=20150427
|
||||
holiday.nl-NL6.name=Dodenherdenking
|
||||
holiday.nl-NL6.date=20140504
|
||||
holiday.nl-NL7.name=Hemelvaartsdag
|
||||
holiday.nl-NL7.date=20140529
|
||||
holiday.nl-NL8.name=Pinksteren
|
||||
holiday.nl-NL8.date=20140608
|
||||
holiday.nl-NL9.name=Tweede Pinksterdag
|
||||
holiday.nl-NL9.date=20140609
|
||||
holiday.nl-NL10.name=Sinterklaas
|
||||
holiday.nl-NL10.date=20141205
|
||||
holiday.nl-NL11.name=Kerstmis
|
||||
holiday.nl-NL11.date=20141225
|
||||
holiday.nl-NL12.name=Tweede Kerstdag
|
||||
holiday.nl-NL12.date=20141226
|
||||
holiday.nl-NL13.name=Nieuwjaar
|
||||
holiday.nl-NL13.date=20150101
|
||||
holiday.nl-NL14.name=Goede Vrijdag
|
||||
holiday.nl-NL14.date=20150403
|
||||
holiday.nl-NL15.name=Pasen
|
||||
holiday.nl-NL15.date=20150405
|
||||
holiday.nl-NL16.name=Tweede Pasdag
|
||||
holiday.nl-NL16.date=20150406
|
||||
holiday.nl-NL17.name=Koninginnedag
|
||||
holiday.nl-NL17.date=20150427
|
||||
holiday.nl-NL18.name=Dodenherdenking
|
||||
holiday.nl-NL18.date=20150504
|
||||
holiday.nl-NL19.name=Bevrijdingsdag
|
||||
holiday.nl-NL19.date=20150505
|
||||
holiday.nl-NL20.name=Hemelvaartsdag
|
||||
holiday.nl-NL20.date=20150514
|
||||
holiday.nl-NL21.name=Pinksteren
|
||||
holiday.nl-NL21.date=20150524
|
||||
holiday.nl-NL22.name=Tweede Pinksterdag
|
||||
holiday.nl-NL22.date=20150525
|
||||
holiday.nl-NL23.name=Sinterklaas
|
||||
holiday.nl-NL23.date=20151205
|
||||
holiday.nl-NL24.name=Kerstmis
|
||||
holiday.nl-NL24.date=20151225
|
||||
holiday.nl-NL25.name=Tweede Kerstdag
|
||||
holiday.nl-NL25.date=20151226
|
||||
holiday.nl-NL26.name=Nieuwjaar
|
||||
holiday.nl-NL26.date=20160101
|
||||
holiday.nl-NL27.name=Goede Vrijdag
|
||||
holiday.nl-NL27.date=20160325
|
||||
holiday.nl-NL28.name=Pasen
|
||||
holiday.nl-NL28.date=20160327
|
||||
holiday.nl-NL29.name=Tweede Pasdag
|
||||
holiday.nl-NL29.date=20160328
|
||||
holiday.nl-NL30.name=Koninginnedag
|
||||
holiday.nl-NL30.date=20160427
|
||||
holiday.nl-NL31.name=Dodenherdenking
|
||||
holiday.nl-NL31.date=20160504
|
||||
holiday.nl-NL32.name=Bevrijdingsdag
|
||||
holiday.nl-NL32.date=20160505
|
||||
holiday.nl-NL33.name=Hemelvaartsdag
|
||||
holiday.nl-NL33.date=20160505
|
||||
holiday.nl-NL34.name=Pinksteren
|
||||
holiday.nl-NL34.date=20160515
|
||||
holiday.nl-NL35.name=Tweede Pinksterdag
|
||||
holiday.nl-NL35.date=20160516
|
||||
holiday.nl-NL36.name=Sinterklaas
|
||||
holiday.nl-NL36.date=20161205
|
||||
holiday.nl-NL37.name=Kerstmis
|
||||
holiday.nl-NL37.date=20161225
|
||||
holiday.nl-NL38.name=Tweede Kerstdag
|
||||
holiday.nl-NL38.date=20161226
|
||||
holiday.nl-NL6.date=20150504
|
||||
holiday.nl-NL7.name=Bevrijdingsdag
|
||||
holiday.nl-NL7.date=20150505
|
||||
holiday.nl-NL8.name=Hemelvaartsdag
|
||||
holiday.nl-NL8.date=20150514
|
||||
holiday.nl-NL9.name=Pinksteren
|
||||
holiday.nl-NL9.date=20150524
|
||||
holiday.nl-NL10.name=Tweede Pinksterdag
|
||||
holiday.nl-NL10.date=20150525
|
||||
holiday.nl-NL11.name=Sinterklaas
|
||||
holiday.nl-NL11.date=20151205
|
||||
holiday.nl-NL12.name=Kerstmis
|
||||
holiday.nl-NL12.date=20151225
|
||||
holiday.nl-NL13.name=Tweede Kerstdag
|
||||
holiday.nl-NL13.date=20151226
|
||||
holiday.nl-NL14.name=Nieuwjaar
|
||||
holiday.nl-NL14.date=20160101
|
||||
holiday.nl-NL15.name=Goede Vrijdag
|
||||
holiday.nl-NL15.date=20160325
|
||||
holiday.nl-NL16.name=Pasen
|
||||
holiday.nl-NL16.date=20160327
|
||||
holiday.nl-NL17.name=Tweede Pasdag
|
||||
holiday.nl-NL17.date=20160328
|
||||
holiday.nl-NL18.name=Koninginnedag
|
||||
holiday.nl-NL18.date=20160427
|
||||
holiday.nl-NL19.name=Dodenherdenking
|
||||
holiday.nl-NL19.date=20160504
|
||||
holiday.nl-NL20.name=Bevrijdingsdag
|
||||
holiday.nl-NL20.date=20160505
|
||||
holiday.nl-NL21.name=Hemelvaartsdag
|
||||
holiday.nl-NL21.date=20160505
|
||||
holiday.nl-NL22.name=Pinksteren
|
||||
holiday.nl-NL22.date=20160515
|
||||
holiday.nl-NL23.name=Tweede Pinksterdag
|
||||
holiday.nl-NL23.date=20160516
|
||||
holiday.nl-NL24.name=Sinterklaas
|
||||
holiday.nl-NL24.date=20161205
|
||||
holiday.nl-NL25.name=Kerstmis
|
||||
holiday.nl-NL25.date=20161225
|
||||
holiday.nl-NL26.name=Tweede Kerstdag
|
||||
holiday.nl-NL26.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/pl-PL/2014.json
|
||||
# http://holidata.net/pl-PL/2015.json
|
||||
# http://holidata.net/pl-PL/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,86 +28,58 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.pl-PL1.name=Nowy Rok
|
||||
holiday.pl-PL1.date=20140101
|
||||
holiday.pl-PL1.date=20150101
|
||||
holiday.pl-PL2.name=Trzech Króli
|
||||
holiday.pl-PL2.date=20140106
|
||||
holiday.pl-PL2.date=20150106
|
||||
holiday.pl-PL3.name=Wielkanoc
|
||||
holiday.pl-PL3.date=20140420
|
||||
holiday.pl-PL3.date=20150405
|
||||
holiday.pl-PL4.name=Poniedziałek Wielkanocny
|
||||
holiday.pl-PL4.date=20140421
|
||||
holiday.pl-PL4.date=20150406
|
||||
holiday.pl-PL5.name=Święto Pracy
|
||||
holiday.pl-PL5.date=20140501
|
||||
holiday.pl-PL5.date=20150501
|
||||
holiday.pl-PL6.name=Święto Konstytucji Trzeciego Maja
|
||||
holiday.pl-PL6.date=20140503
|
||||
holiday.pl-PL6.date=20150503
|
||||
holiday.pl-PL7.name=Zielone Świątki
|
||||
holiday.pl-PL7.date=20140608
|
||||
holiday.pl-PL7.date=20150524
|
||||
holiday.pl-PL8.name=Boże Ciało
|
||||
holiday.pl-PL8.date=20140619
|
||||
holiday.pl-PL8.date=20150604
|
||||
holiday.pl-PL9.name=Święto Wojska Polskiego
|
||||
holiday.pl-PL9.date=20140815
|
||||
holiday.pl-PL9.date=20150815
|
||||
holiday.pl-PL10.name=Wniebowzięcia NMP
|
||||
holiday.pl-PL10.date=20140815
|
||||
holiday.pl-PL10.date=20150815
|
||||
holiday.pl-PL11.name=Wszystkich Świętych
|
||||
holiday.pl-PL11.date=20141101
|
||||
holiday.pl-PL11.date=20151101
|
||||
holiday.pl-PL12.name=Dzień Niepodległości
|
||||
holiday.pl-PL12.date=20141111
|
||||
holiday.pl-PL12.date=20151111
|
||||
holiday.pl-PL13.name=Boże Narodzenie (pierwszy dzień)
|
||||
holiday.pl-PL13.date=20141225
|
||||
holiday.pl-PL13.date=20151225
|
||||
holiday.pl-PL14.name=Boże Narodzenie (drugi dzień)
|
||||
holiday.pl-PL14.date=20141226
|
||||
holiday.pl-PL14.date=20151226
|
||||
holiday.pl-PL15.name=Nowy Rok
|
||||
holiday.pl-PL15.date=20150101
|
||||
holiday.pl-PL15.date=20160101
|
||||
holiday.pl-PL16.name=Trzech Króli
|
||||
holiday.pl-PL16.date=20150106
|
||||
holiday.pl-PL16.date=20160106
|
||||
holiday.pl-PL17.name=Wielkanoc
|
||||
holiday.pl-PL17.date=20150405
|
||||
holiday.pl-PL17.date=20160327
|
||||
holiday.pl-PL18.name=Poniedziałek Wielkanocny
|
||||
holiday.pl-PL18.date=20150406
|
||||
holiday.pl-PL18.date=20160328
|
||||
holiday.pl-PL19.name=Święto Pracy
|
||||
holiday.pl-PL19.date=20150501
|
||||
holiday.pl-PL19.date=20160501
|
||||
holiday.pl-PL20.name=Święto Konstytucji Trzeciego Maja
|
||||
holiday.pl-PL20.date=20150503
|
||||
holiday.pl-PL20.date=20160503
|
||||
holiday.pl-PL21.name=Zielone Świątki
|
||||
holiday.pl-PL21.date=20150524
|
||||
holiday.pl-PL21.date=20160515
|
||||
holiday.pl-PL22.name=Boże Ciało
|
||||
holiday.pl-PL22.date=20150604
|
||||
holiday.pl-PL22.date=20160526
|
||||
holiday.pl-PL23.name=Święto Wojska Polskiego
|
||||
holiday.pl-PL23.date=20150815
|
||||
holiday.pl-PL23.date=20160815
|
||||
holiday.pl-PL24.name=Wniebowzięcia NMP
|
||||
holiday.pl-PL24.date=20150815
|
||||
holiday.pl-PL24.date=20160815
|
||||
holiday.pl-PL25.name=Wszystkich Świętych
|
||||
holiday.pl-PL25.date=20151101
|
||||
holiday.pl-PL25.date=20161101
|
||||
holiday.pl-PL26.name=Dzień Niepodległości
|
||||
holiday.pl-PL26.date=20151111
|
||||
holiday.pl-PL26.date=20161111
|
||||
holiday.pl-PL27.name=Boże Narodzenie (pierwszy dzień)
|
||||
holiday.pl-PL27.date=20151225
|
||||
holiday.pl-PL27.date=20161225
|
||||
holiday.pl-PL28.name=Boże Narodzenie (drugi dzień)
|
||||
holiday.pl-PL28.date=20151226
|
||||
holiday.pl-PL29.name=Nowy Rok
|
||||
holiday.pl-PL29.date=20160101
|
||||
holiday.pl-PL30.name=Trzech Króli
|
||||
holiday.pl-PL30.date=20160106
|
||||
holiday.pl-PL31.name=Wielkanoc
|
||||
holiday.pl-PL31.date=20160327
|
||||
holiday.pl-PL32.name=Poniedziałek Wielkanocny
|
||||
holiday.pl-PL32.date=20160328
|
||||
holiday.pl-PL33.name=Święto Pracy
|
||||
holiday.pl-PL33.date=20160501
|
||||
holiday.pl-PL34.name=Święto Konstytucji Trzeciego Maja
|
||||
holiday.pl-PL34.date=20160503
|
||||
holiday.pl-PL35.name=Zielone Świątki
|
||||
holiday.pl-PL35.date=20160515
|
||||
holiday.pl-PL36.name=Boże Ciało
|
||||
holiday.pl-PL36.date=20160526
|
||||
holiday.pl-PL37.name=Święto Wojska Polskiego
|
||||
holiday.pl-PL37.date=20160815
|
||||
holiday.pl-PL38.name=Wniebowzięcia NMP
|
||||
holiday.pl-PL38.date=20160815
|
||||
holiday.pl-PL39.name=Wszystkich Świętych
|
||||
holiday.pl-PL39.date=20161101
|
||||
holiday.pl-PL40.name=Dzień Niepodległości
|
||||
holiday.pl-PL40.date=20161111
|
||||
holiday.pl-PL41.name=Boże Narodzenie (pierwszy dzień)
|
||||
holiday.pl-PL41.date=20161225
|
||||
holiday.pl-PL42.name=Boże Narodzenie (drugi dzień)
|
||||
holiday.pl-PL42.date=20161226
|
||||
holiday.pl-PL28.date=20161226
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/pt-BR/2014.json
|
||||
# http://holidata.net/pt-BR/2015.json
|
||||
# http://holidata.net/pt-BR/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,80 +28,54 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.pt-BR1.name=Confraternização Universal
|
||||
holiday.pt-BR1.date=20140101
|
||||
holiday.pt-BR1.date=20150101
|
||||
holiday.pt-BR2.name=Carnaval
|
||||
holiday.pt-BR2.date=20140303
|
||||
holiday.pt-BR2.date=20150216
|
||||
holiday.pt-BR3.name=Carnaval
|
||||
holiday.pt-BR3.date=20140304
|
||||
holiday.pt-BR3.date=20150217
|
||||
holiday.pt-BR4.name=Sexta-feira Santa
|
||||
holiday.pt-BR4.date=20140418
|
||||
holiday.pt-BR4.date=20150403
|
||||
holiday.pt-BR5.name=Páscoa
|
||||
holiday.pt-BR5.date=20140420
|
||||
holiday.pt-BR5.date=20150405
|
||||
holiday.pt-BR6.name=Tiradentes
|
||||
holiday.pt-BR6.date=20140421
|
||||
holiday.pt-BR6.date=20150421
|
||||
holiday.pt-BR7.name=Dia do Trabalho
|
||||
holiday.pt-BR7.date=20140501
|
||||
holiday.pt-BR7.date=20150501
|
||||
holiday.pt-BR8.name=Corpus Christi
|
||||
holiday.pt-BR8.date=20140619
|
||||
holiday.pt-BR8.date=20150604
|
||||
holiday.pt-BR9.name=Independência do Brasil
|
||||
holiday.pt-BR9.date=20140907
|
||||
holiday.pt-BR9.date=20150907
|
||||
holiday.pt-BR10.name=Nossa Senhora Aparecida
|
||||
holiday.pt-BR10.date=20141012
|
||||
holiday.pt-BR10.date=20151012
|
||||
holiday.pt-BR11.name=Finados
|
||||
holiday.pt-BR11.date=20141102
|
||||
holiday.pt-BR11.date=20151102
|
||||
holiday.pt-BR12.name=Proclamação da República
|
||||
holiday.pt-BR12.date=20141115
|
||||
holiday.pt-BR12.date=20151115
|
||||
holiday.pt-BR13.name=Natal
|
||||
holiday.pt-BR13.date=20141225
|
||||
holiday.pt-BR13.date=20151225
|
||||
holiday.pt-BR14.name=Confraternização Universal
|
||||
holiday.pt-BR14.date=20150101
|
||||
holiday.pt-BR14.date=20160101
|
||||
holiday.pt-BR15.name=Carnaval
|
||||
holiday.pt-BR15.date=20150216
|
||||
holiday.pt-BR15.date=20160208
|
||||
holiday.pt-BR16.name=Carnaval
|
||||
holiday.pt-BR16.date=20150217
|
||||
holiday.pt-BR16.date=20160209
|
||||
holiday.pt-BR17.name=Sexta-feira Santa
|
||||
holiday.pt-BR17.date=20150403
|
||||
holiday.pt-BR17.date=20160325
|
||||
holiday.pt-BR18.name=Páscoa
|
||||
holiday.pt-BR18.date=20150405
|
||||
holiday.pt-BR18.date=20160327
|
||||
holiday.pt-BR19.name=Tiradentes
|
||||
holiday.pt-BR19.date=20150421
|
||||
holiday.pt-BR19.date=20160421
|
||||
holiday.pt-BR20.name=Dia do Trabalho
|
||||
holiday.pt-BR20.date=20150501
|
||||
holiday.pt-BR20.date=20160501
|
||||
holiday.pt-BR21.name=Corpus Christi
|
||||
holiday.pt-BR21.date=20150604
|
||||
holiday.pt-BR21.date=20160526
|
||||
holiday.pt-BR22.name=Independência do Brasil
|
||||
holiday.pt-BR22.date=20150907
|
||||
holiday.pt-BR22.date=20160907
|
||||
holiday.pt-BR23.name=Nossa Senhora Aparecida
|
||||
holiday.pt-BR23.date=20151012
|
||||
holiday.pt-BR23.date=20161012
|
||||
holiday.pt-BR24.name=Finados
|
||||
holiday.pt-BR24.date=20151102
|
||||
holiday.pt-BR24.date=20161102
|
||||
holiday.pt-BR25.name=Proclamação da República
|
||||
holiday.pt-BR25.date=20151115
|
||||
holiday.pt-BR25.date=20161115
|
||||
holiday.pt-BR26.name=Natal
|
||||
holiday.pt-BR26.date=20151225
|
||||
holiday.pt-BR27.name=Confraternização Universal
|
||||
holiday.pt-BR27.date=20160101
|
||||
holiday.pt-BR28.name=Carnaval
|
||||
holiday.pt-BR28.date=20160208
|
||||
holiday.pt-BR29.name=Carnaval
|
||||
holiday.pt-BR29.date=20160209
|
||||
holiday.pt-BR30.name=Sexta-feira Santa
|
||||
holiday.pt-BR30.date=20160325
|
||||
holiday.pt-BR31.name=Páscoa
|
||||
holiday.pt-BR31.date=20160327
|
||||
holiday.pt-BR32.name=Tiradentes
|
||||
holiday.pt-BR32.date=20160421
|
||||
holiday.pt-BR33.name=Dia do Trabalho
|
||||
holiday.pt-BR33.date=20160501
|
||||
holiday.pt-BR34.name=Corpus Christi
|
||||
holiday.pt-BR34.date=20160526
|
||||
holiday.pt-BR35.name=Independência do Brasil
|
||||
holiday.pt-BR35.date=20160907
|
||||
holiday.pt-BR36.name=Nossa Senhora Aparecida
|
||||
holiday.pt-BR36.date=20161012
|
||||
holiday.pt-BR37.name=Finados
|
||||
holiday.pt-BR37.date=20161102
|
||||
holiday.pt-BR38.name=Proclamação da República
|
||||
holiday.pt-BR38.date=20161115
|
||||
holiday.pt-BR39.name=Natal
|
||||
holiday.pt-BR39.date=20161225
|
||||
holiday.pt-BR26.date=20161225
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/pt-PT/2014.json
|
||||
# http://holidata.net/pt-PT/2015.json
|
||||
# http://holidata.net/pt-PT/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,86 +28,58 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.pt-PT1.name=Ano Novo
|
||||
holiday.pt-PT1.date=20140101
|
||||
holiday.pt-PT1.date=20150101
|
||||
holiday.pt-PT2.name=Carnaval
|
||||
holiday.pt-PT2.date=20140304
|
||||
holiday.pt-PT2.date=20150217
|
||||
holiday.pt-PT3.name=Sexta-feira Santa
|
||||
holiday.pt-PT3.date=20140418
|
||||
holiday.pt-PT3.date=20150403
|
||||
holiday.pt-PT4.name=Páscoa
|
||||
holiday.pt-PT4.date=20140420
|
||||
holiday.pt-PT4.date=20150405
|
||||
holiday.pt-PT5.name=Dia da Liberdade
|
||||
holiday.pt-PT5.date=20140425
|
||||
holiday.pt-PT5.date=20150425
|
||||
holiday.pt-PT6.name=Dia do Trabalhador
|
||||
holiday.pt-PT6.date=20140501
|
||||
holiday.pt-PT6.date=20150501
|
||||
holiday.pt-PT7.name=Corpo de Deus
|
||||
holiday.pt-PT7.date=20140619
|
||||
holiday.pt-PT7.date=20150604
|
||||
holiday.pt-PT8.name=Dia de Portugal
|
||||
holiday.pt-PT8.date=20140610
|
||||
holiday.pt-PT8.date=20150610
|
||||
holiday.pt-PT9.name=Assunção de Nossa Senhora
|
||||
holiday.pt-PT9.date=20140815
|
||||
holiday.pt-PT9.date=20150815
|
||||
holiday.pt-PT10.name=Implantação da República
|
||||
holiday.pt-PT10.date=20141005
|
||||
holiday.pt-PT10.date=20151005
|
||||
holiday.pt-PT11.name=Todos os Santos
|
||||
holiday.pt-PT11.date=20141101
|
||||
holiday.pt-PT11.date=20151101
|
||||
holiday.pt-PT12.name=Restauração da Independência
|
||||
holiday.pt-PT12.date=20141201
|
||||
holiday.pt-PT12.date=20151201
|
||||
holiday.pt-PT13.name=Imaculada Conceição
|
||||
holiday.pt-PT13.date=20141208
|
||||
holiday.pt-PT13.date=20151208
|
||||
holiday.pt-PT14.name=Natal
|
||||
holiday.pt-PT14.date=20141225
|
||||
holiday.pt-PT14.date=20151225
|
||||
holiday.pt-PT15.name=Ano Novo
|
||||
holiday.pt-PT15.date=20150101
|
||||
holiday.pt-PT15.date=20160101
|
||||
holiday.pt-PT16.name=Carnaval
|
||||
holiday.pt-PT16.date=20150217
|
||||
holiday.pt-PT16.date=20160209
|
||||
holiday.pt-PT17.name=Sexta-feira Santa
|
||||
holiday.pt-PT17.date=20150403
|
||||
holiday.pt-PT17.date=20160325
|
||||
holiday.pt-PT18.name=Páscoa
|
||||
holiday.pt-PT18.date=20150405
|
||||
holiday.pt-PT18.date=20160327
|
||||
holiday.pt-PT19.name=Dia da Liberdade
|
||||
holiday.pt-PT19.date=20150425
|
||||
holiday.pt-PT19.date=20160425
|
||||
holiday.pt-PT20.name=Dia do Trabalhador
|
||||
holiday.pt-PT20.date=20150501
|
||||
holiday.pt-PT20.date=20160501
|
||||
holiday.pt-PT21.name=Corpo de Deus
|
||||
holiday.pt-PT21.date=20150604
|
||||
holiday.pt-PT21.date=20160526
|
||||
holiday.pt-PT22.name=Dia de Portugal
|
||||
holiday.pt-PT22.date=20150610
|
||||
holiday.pt-PT22.date=20160610
|
||||
holiday.pt-PT23.name=Assunção de Nossa Senhora
|
||||
holiday.pt-PT23.date=20150815
|
||||
holiday.pt-PT23.date=20160815
|
||||
holiday.pt-PT24.name=Implantação da República
|
||||
holiday.pt-PT24.date=20151005
|
||||
holiday.pt-PT24.date=20161005
|
||||
holiday.pt-PT25.name=Todos os Santos
|
||||
holiday.pt-PT25.date=20151101
|
||||
holiday.pt-PT25.date=20161101
|
||||
holiday.pt-PT26.name=Restauração da Independência
|
||||
holiday.pt-PT26.date=20151201
|
||||
holiday.pt-PT26.date=20161201
|
||||
holiday.pt-PT27.name=Imaculada Conceição
|
||||
holiday.pt-PT27.date=20151208
|
||||
holiday.pt-PT27.date=20161208
|
||||
holiday.pt-PT28.name=Natal
|
||||
holiday.pt-PT28.date=20151225
|
||||
holiday.pt-PT29.name=Ano Novo
|
||||
holiday.pt-PT29.date=20160101
|
||||
holiday.pt-PT30.name=Carnaval
|
||||
holiday.pt-PT30.date=20160209
|
||||
holiday.pt-PT31.name=Sexta-feira Santa
|
||||
holiday.pt-PT31.date=20160325
|
||||
holiday.pt-PT32.name=Páscoa
|
||||
holiday.pt-PT32.date=20160327
|
||||
holiday.pt-PT33.name=Dia da Liberdade
|
||||
holiday.pt-PT33.date=20160425
|
||||
holiday.pt-PT34.name=Dia do Trabalhador
|
||||
holiday.pt-PT34.date=20160501
|
||||
holiday.pt-PT35.name=Corpo de Deus
|
||||
holiday.pt-PT35.date=20160526
|
||||
holiday.pt-PT36.name=Dia de Portugal
|
||||
holiday.pt-PT36.date=20160610
|
||||
holiday.pt-PT37.name=Assunção de Nossa Senhora
|
||||
holiday.pt-PT37.date=20160815
|
||||
holiday.pt-PT38.name=Implantação da República
|
||||
holiday.pt-PT38.date=20161005
|
||||
holiday.pt-PT39.name=Todos os Santos
|
||||
holiday.pt-PT39.date=20161101
|
||||
holiday.pt-PT40.name=Restauração da Independência
|
||||
holiday.pt-PT40.date=20161201
|
||||
holiday.pt-PT41.name=Imaculada Conceição
|
||||
holiday.pt-PT41.date=20161208
|
||||
holiday.pt-PT42.name=Natal
|
||||
holiday.pt-PT42.date=20161225
|
||||
holiday.pt-PT28.date=20161225
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/ru-RU/2014.json
|
||||
# http://holidata.net/ru-RU/2015.json
|
||||
# http://holidata.net/ru-RU/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,56 +28,38 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.ru-RU1.name=Новый Год
|
||||
holiday.ru-RU1.date=20140101
|
||||
holiday.ru-RU1.date=20150101
|
||||
holiday.ru-RU2.name=Рождество Христово
|
||||
holiday.ru-RU2.date=20140107
|
||||
holiday.ru-RU2.date=20150107
|
||||
holiday.ru-RU3.name=День защитника Отечества
|
||||
holiday.ru-RU3.date=20140223
|
||||
holiday.ru-RU3.date=20150223
|
||||
holiday.ru-RU4.name=Международный женский день
|
||||
holiday.ru-RU4.date=20140803
|
||||
holiday.ru-RU4.date=20150803
|
||||
holiday.ru-RU5.name=Пасха
|
||||
holiday.ru-RU5.date=20140420
|
||||
holiday.ru-RU5.date=20150412
|
||||
holiday.ru-RU6.name=Праздник весны и труда
|
||||
holiday.ru-RU6.date=20140501
|
||||
holiday.ru-RU6.date=20150501
|
||||
holiday.ru-RU7.name=День Победы
|
||||
holiday.ru-RU7.date=20140509
|
||||
holiday.ru-RU7.date=20150509
|
||||
holiday.ru-RU8.name=День России
|
||||
holiday.ru-RU8.date=20140612
|
||||
holiday.ru-RU8.date=20150612
|
||||
holiday.ru-RU9.name=День народного единства
|
||||
holiday.ru-RU9.date=20141104
|
||||
holiday.ru-RU9.date=20151104
|
||||
holiday.ru-RU10.name=Новый Год
|
||||
holiday.ru-RU10.date=20150101
|
||||
holiday.ru-RU10.date=20160101
|
||||
holiday.ru-RU11.name=Рождество Христово
|
||||
holiday.ru-RU11.date=20150107
|
||||
holiday.ru-RU11.date=20160107
|
||||
holiday.ru-RU12.name=День защитника Отечества
|
||||
holiday.ru-RU12.date=20150223
|
||||
holiday.ru-RU12.date=20160223
|
||||
holiday.ru-RU13.name=Международный женский день
|
||||
holiday.ru-RU13.date=20150803
|
||||
holiday.ru-RU13.date=20160803
|
||||
holiday.ru-RU14.name=Пасха
|
||||
holiday.ru-RU14.date=20150412
|
||||
holiday.ru-RU14.date=20160501
|
||||
holiday.ru-RU15.name=Праздник весны и труда
|
||||
holiday.ru-RU15.date=20150501
|
||||
holiday.ru-RU15.date=20160501
|
||||
holiday.ru-RU16.name=День Победы
|
||||
holiday.ru-RU16.date=20150509
|
||||
holiday.ru-RU16.date=20160509
|
||||
holiday.ru-RU17.name=День России
|
||||
holiday.ru-RU17.date=20150612
|
||||
holiday.ru-RU17.date=20160612
|
||||
holiday.ru-RU18.name=День народного единства
|
||||
holiday.ru-RU18.date=20151104
|
||||
holiday.ru-RU19.name=Новый Год
|
||||
holiday.ru-RU19.date=20160101
|
||||
holiday.ru-RU20.name=Рождество Христово
|
||||
holiday.ru-RU20.date=20160107
|
||||
holiday.ru-RU21.name=День защитника Отечества
|
||||
holiday.ru-RU21.date=20160223
|
||||
holiday.ru-RU22.name=Международный женский день
|
||||
holiday.ru-RU22.date=20160803
|
||||
holiday.ru-RU23.name=Пасха
|
||||
holiday.ru-RU23.date=20160501
|
||||
holiday.ru-RU24.name=Праздник весны и труда
|
||||
holiday.ru-RU24.date=20160501
|
||||
holiday.ru-RU25.name=День Победы
|
||||
holiday.ru-RU25.date=20160509
|
||||
holiday.ru-RU26.name=День России
|
||||
holiday.ru-RU26.date=20160612
|
||||
holiday.ru-RU27.name=День народного единства
|
||||
holiday.ru-RU27.date=20161104
|
||||
holiday.ru-RU18.date=20161104
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/sv-SE/2014.json
|
||||
# http://holidata.net/sv-SE/2015.json
|
||||
# http://holidata.net/sv-SE/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,104 +28,70 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.sv-SE1.name=Nyårsdagen
|
||||
holiday.sv-SE1.date=20140101
|
||||
holiday.sv-SE1.date=20150101
|
||||
holiday.sv-SE2.name=Trettondedag jul
|
||||
holiday.sv-SE2.date=20140106
|
||||
holiday.sv-SE2.date=20150106
|
||||
holiday.sv-SE3.name=Långfredagen
|
||||
holiday.sv-SE3.date=20140418
|
||||
holiday.sv-SE3.date=20150403
|
||||
holiday.sv-SE4.name=Påskdagen
|
||||
holiday.sv-SE4.date=20140420
|
||||
holiday.sv-SE4.date=20150405
|
||||
holiday.sv-SE5.name=Annandag påsk
|
||||
holiday.sv-SE5.date=20140421
|
||||
holiday.sv-SE5.date=20150406
|
||||
holiday.sv-SE6.name=Valborgmässoafton
|
||||
holiday.sv-SE6.date=20140430
|
||||
holiday.sv-SE6.date=20150430
|
||||
holiday.sv-SE7.name=Första maj
|
||||
holiday.sv-SE7.date=20140501
|
||||
holiday.sv-SE7.date=20150501
|
||||
holiday.sv-SE8.name=Kristi Himmelsfärdsdag
|
||||
holiday.sv-SE8.date=20140529
|
||||
holiday.sv-SE8.date=20150514
|
||||
holiday.sv-SE9.name=Pingstdagen
|
||||
holiday.sv-SE9.date=20140608
|
||||
holiday.sv-SE9.date=20150524
|
||||
holiday.sv-SE10.name=Nationaldagen
|
||||
holiday.sv-SE10.date=20140606
|
||||
holiday.sv-SE10.date=20150606
|
||||
holiday.sv-SE11.name=Midsommarafton
|
||||
holiday.sv-SE11.date=20140620
|
||||
holiday.sv-SE11.date=20150619
|
||||
holiday.sv-SE12.name=Midsommardagen
|
||||
holiday.sv-SE12.date=20140621
|
||||
holiday.sv-SE12.date=20150620
|
||||
holiday.sv-SE13.name=Alla Helgons Dag
|
||||
holiday.sv-SE13.date=20141101
|
||||
holiday.sv-SE13.date=20151031
|
||||
holiday.sv-SE14.name=Julafton
|
||||
holiday.sv-SE14.date=20141224
|
||||
holiday.sv-SE14.date=20151224
|
||||
holiday.sv-SE15.name=Juldagen
|
||||
holiday.sv-SE15.date=20141225
|
||||
holiday.sv-SE15.date=20151225
|
||||
holiday.sv-SE16.name=Annandag jul
|
||||
holiday.sv-SE16.date=20141226
|
||||
holiday.sv-SE16.date=20151226
|
||||
holiday.sv-SE17.name=Nyårsafton
|
||||
holiday.sv-SE17.date=20141231
|
||||
holiday.sv-SE17.date=20151231
|
||||
holiday.sv-SE18.name=Nyårsdagen
|
||||
holiday.sv-SE18.date=20150101
|
||||
holiday.sv-SE18.date=20160101
|
||||
holiday.sv-SE19.name=Trettondedag jul
|
||||
holiday.sv-SE19.date=20150106
|
||||
holiday.sv-SE19.date=20160106
|
||||
holiday.sv-SE20.name=Långfredagen
|
||||
holiday.sv-SE20.date=20150403
|
||||
holiday.sv-SE20.date=20160325
|
||||
holiday.sv-SE21.name=Påskdagen
|
||||
holiday.sv-SE21.date=20150405
|
||||
holiday.sv-SE21.date=20160327
|
||||
holiday.sv-SE22.name=Annandag påsk
|
||||
holiday.sv-SE22.date=20150406
|
||||
holiday.sv-SE22.date=20160328
|
||||
holiday.sv-SE23.name=Valborgmässoafton
|
||||
holiday.sv-SE23.date=20150430
|
||||
holiday.sv-SE23.date=20160430
|
||||
holiday.sv-SE24.name=Första maj
|
||||
holiday.sv-SE24.date=20150501
|
||||
holiday.sv-SE24.date=20160501
|
||||
holiday.sv-SE25.name=Kristi Himmelsfärdsdag
|
||||
holiday.sv-SE25.date=20150514
|
||||
holiday.sv-SE25.date=20160505
|
||||
holiday.sv-SE26.name=Pingstdagen
|
||||
holiday.sv-SE26.date=20150524
|
||||
holiday.sv-SE26.date=20160515
|
||||
holiday.sv-SE27.name=Nationaldagen
|
||||
holiday.sv-SE27.date=20150606
|
||||
holiday.sv-SE27.date=20160606
|
||||
holiday.sv-SE28.name=Midsommarafton
|
||||
holiday.sv-SE28.date=20150619
|
||||
holiday.sv-SE28.date=20160624
|
||||
holiday.sv-SE29.name=Midsommardagen
|
||||
holiday.sv-SE29.date=20150620
|
||||
holiday.sv-SE29.date=20160625
|
||||
holiday.sv-SE30.name=Alla Helgons Dag
|
||||
holiday.sv-SE30.date=20151031
|
||||
holiday.sv-SE30.date=20161105
|
||||
holiday.sv-SE31.name=Julafton
|
||||
holiday.sv-SE31.date=20151224
|
||||
holiday.sv-SE31.date=20161224
|
||||
holiday.sv-SE32.name=Juldagen
|
||||
holiday.sv-SE32.date=20151225
|
||||
holiday.sv-SE32.date=20161225
|
||||
holiday.sv-SE33.name=Annandag jul
|
||||
holiday.sv-SE33.date=20151226
|
||||
holiday.sv-SE33.date=20161226
|
||||
holiday.sv-SE34.name=Nyårsafton
|
||||
holiday.sv-SE34.date=20151231
|
||||
holiday.sv-SE35.name=Nyårsdagen
|
||||
holiday.sv-SE35.date=20160101
|
||||
holiday.sv-SE36.name=Trettondedag jul
|
||||
holiday.sv-SE36.date=20160106
|
||||
holiday.sv-SE37.name=Långfredagen
|
||||
holiday.sv-SE37.date=20160325
|
||||
holiday.sv-SE38.name=Påskdagen
|
||||
holiday.sv-SE38.date=20160327
|
||||
holiday.sv-SE39.name=Annandag påsk
|
||||
holiday.sv-SE39.date=20160328
|
||||
holiday.sv-SE40.name=Valborgmässoafton
|
||||
holiday.sv-SE40.date=20160430
|
||||
holiday.sv-SE41.name=Första maj
|
||||
holiday.sv-SE41.date=20160501
|
||||
holiday.sv-SE42.name=Kristi Himmelsfärdsdag
|
||||
holiday.sv-SE42.date=20160505
|
||||
holiday.sv-SE43.name=Pingstdagen
|
||||
holiday.sv-SE43.date=20160515
|
||||
holiday.sv-SE44.name=Nationaldagen
|
||||
holiday.sv-SE44.date=20160606
|
||||
holiday.sv-SE45.name=Midsommarafton
|
||||
holiday.sv-SE45.date=20160624
|
||||
holiday.sv-SE46.name=Midsommardagen
|
||||
holiday.sv-SE46.date=20160625
|
||||
holiday.sv-SE47.name=Alla Helgons Dag
|
||||
holiday.sv-SE47.date=20161105
|
||||
holiday.sv-SE48.name=Julafton
|
||||
holiday.sv-SE48.date=20161224
|
||||
holiday.sv-SE49.name=Juldagen
|
||||
holiday.sv-SE49.date=20161225
|
||||
holiday.sv-SE50.name=Annandag jul
|
||||
holiday.sv-SE50.date=20161226
|
||||
holiday.sv-SE51.name=Nyårsafton
|
||||
holiday.sv-SE51.date=20161231
|
||||
holiday.sv-SE34.date=20161231
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# International Holiday Data provided by Holidata.net
|
||||
# http://holidata.net/tr-TR/2014.json
|
||||
# http://holidata.net/tr-TR/2015.json
|
||||
# http://holidata.net/tr-TR/2016.json
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
@@ -28,80 +28,54 @@
|
||||
###############################################################################
|
||||
|
||||
holiday.tr-TR1.name=Yılbaşı
|
||||
holiday.tr-TR1.date=20140101
|
||||
holiday.tr-TR1.date=20150101
|
||||
holiday.tr-TR2.name=Ulusal Egemenlik ve Çocuk Bayramı
|
||||
holiday.tr-TR2.date=20140423
|
||||
holiday.tr-TR2.date=20150423
|
||||
holiday.tr-TR3.name=Emek ve Dayanışma Günü
|
||||
holiday.tr-TR3.date=20140501
|
||||
holiday.tr-TR3.date=20150501
|
||||
holiday.tr-TR4.name=Atatürk'ü Anma Gençlik ve Spor Bayramı
|
||||
holiday.tr-TR4.date=20140519
|
||||
holiday.tr-TR4.date=20150519
|
||||
holiday.tr-TR5.name=Zafer Bayramı
|
||||
holiday.tr-TR5.date=20140830
|
||||
holiday.tr-TR5.date=20150830
|
||||
holiday.tr-TR6.name=Cumhuriyet Bayramı
|
||||
holiday.tr-TR6.date=20141029
|
||||
holiday.tr-TR6.date=20151029
|
||||
holiday.tr-TR7.name=Ramazan Bayramı 1
|
||||
holiday.tr-TR7.date=20140728
|
||||
holiday.tr-TR7.date=20150717
|
||||
holiday.tr-TR8.name=Ramazan Bayramı 2
|
||||
holiday.tr-TR8.date=20140729
|
||||
holiday.tr-TR8.date=20150718
|
||||
holiday.tr-TR9.name=Ramazan Bayramı 3
|
||||
holiday.tr-TR9.date=20140730
|
||||
holiday.tr-TR9.date=20150719
|
||||
holiday.tr-TR10.name=Kurban Bayramı 1
|
||||
holiday.tr-TR10.date=20141004
|
||||
holiday.tr-TR10.date=20150923
|
||||
holiday.tr-TR11.name=Kurban Bayramı 2
|
||||
holiday.tr-TR11.date=20141005
|
||||
holiday.tr-TR11.date=20150924
|
||||
holiday.tr-TR12.name=Kurban Bayramı 3
|
||||
holiday.tr-TR12.date=20141006
|
||||
holiday.tr-TR12.date=20150925
|
||||
holiday.tr-TR13.name=Kurban Bayramı 4
|
||||
holiday.tr-TR13.date=20141007
|
||||
holiday.tr-TR13.date=20150926
|
||||
holiday.tr-TR14.name=Yılbaşı
|
||||
holiday.tr-TR14.date=20150101
|
||||
holiday.tr-TR14.date=20160101
|
||||
holiday.tr-TR15.name=Ulusal Egemenlik ve Çocuk Bayramı
|
||||
holiday.tr-TR15.date=20150423
|
||||
holiday.tr-TR15.date=20160423
|
||||
holiday.tr-TR16.name=Emek ve Dayanışma Günü
|
||||
holiday.tr-TR16.date=20150501
|
||||
holiday.tr-TR16.date=20160501
|
||||
holiday.tr-TR17.name=Atatürk'ü Anma Gençlik ve Spor Bayramı
|
||||
holiday.tr-TR17.date=20150519
|
||||
holiday.tr-TR17.date=20160519
|
||||
holiday.tr-TR18.name=Zafer Bayramı
|
||||
holiday.tr-TR18.date=20150830
|
||||
holiday.tr-TR18.date=20160830
|
||||
holiday.tr-TR19.name=Cumhuriyet Bayramı
|
||||
holiday.tr-TR19.date=20151029
|
||||
holiday.tr-TR19.date=20161029
|
||||
holiday.tr-TR20.name=Ramazan Bayramı 1
|
||||
holiday.tr-TR20.date=20150717
|
||||
holiday.tr-TR20.date=20160705
|
||||
holiday.tr-TR21.name=Ramazan Bayramı 2
|
||||
holiday.tr-TR21.date=20150718
|
||||
holiday.tr-TR21.date=20160706
|
||||
holiday.tr-TR22.name=Ramazan Bayramı 3
|
||||
holiday.tr-TR22.date=20150719
|
||||
holiday.tr-TR22.date=20160707
|
||||
holiday.tr-TR23.name=Kurban Bayramı 1
|
||||
holiday.tr-TR23.date=20150923
|
||||
holiday.tr-TR23.date=20160912
|
||||
holiday.tr-TR24.name=Kurban Bayramı 2
|
||||
holiday.tr-TR24.date=20150924
|
||||
holiday.tr-TR24.date=20160913
|
||||
holiday.tr-TR25.name=Kurban Bayramı 3
|
||||
holiday.tr-TR25.date=20150925
|
||||
holiday.tr-TR25.date=20160914
|
||||
holiday.tr-TR26.name=Kurban Bayramı 4
|
||||
holiday.tr-TR26.date=20150926
|
||||
holiday.tr-TR27.name=Yılbaşı
|
||||
holiday.tr-TR27.date=20160101
|
||||
holiday.tr-TR28.name=Ulusal Egemenlik ve Çocuk Bayramı
|
||||
holiday.tr-TR28.date=20160423
|
||||
holiday.tr-TR29.name=Emek ve Dayanışma Günü
|
||||
holiday.tr-TR29.date=20160501
|
||||
holiday.tr-TR30.name=Atatürk'ü Anma Gençlik ve Spor Bayramı
|
||||
holiday.tr-TR30.date=20160519
|
||||
holiday.tr-TR31.name=Zafer Bayramı
|
||||
holiday.tr-TR31.date=20160830
|
||||
holiday.tr-TR32.name=Cumhuriyet Bayramı
|
||||
holiday.tr-TR32.date=20161029
|
||||
holiday.tr-TR33.name=Ramazan Bayramı 1
|
||||
holiday.tr-TR33.date=20160705
|
||||
holiday.tr-TR34.name=Ramazan Bayramı 2
|
||||
holiday.tr-TR34.date=20160706
|
||||
holiday.tr-TR35.name=Ramazan Bayramı 3
|
||||
holiday.tr-TR35.date=20160707
|
||||
holiday.tr-TR36.name=Kurban Bayramı 1
|
||||
holiday.tr-TR36.date=20160912
|
||||
holiday.tr-TR37.name=Kurban Bayramı 2
|
||||
holiday.tr-TR37.date=20160913
|
||||
holiday.tr-TR38.name=Kurban Bayramı 3
|
||||
holiday.tr-TR38.date=20160914
|
||||
holiday.tr-TR39.name=Kurban Bayramı 4
|
||||
holiday.tr-TR39.date=20160915
|
||||
holiday.tr-TR26.date=20160915
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,30 +0,0 @@
|
||||
The package-config directory contains the configuration files
|
||||
for building release packages for the different operating
|
||||
systems:
|
||||
|
||||
* osx: binary packages for Mac OSX
|
||||
* fedora: rpm packages for Fedora (Linux)
|
||||
* ubuntu: deb packages for Ubuntu and (Linux)
|
||||
* cygwin_ bz2 packages for cygwin (windows)
|
||||
|
||||
Please visit the corresponding operating systems homepage
|
||||
for instructions on how to build a binary package of task
|
||||
out of the released source tarball with these configuration
|
||||
files.
|
||||
|
||||
For Fedora rpm packages you find instructions at
|
||||
http://fedoraproject.org/wiki/PackageMaintainers/CreatingPackageHowTo
|
||||
|
||||
For Ubuntu deb packages you find instructions at
|
||||
https://wiki.ubuntu.com/PackagingGuide/Complete
|
||||
|
||||
For Cygwin bz2 packages you find instructions at
|
||||
http://cygwin.com/setup.html
|
||||
|
||||
You might also ask in the forums on taskwarrior.org if you
|
||||
have further questions.
|
||||
|
||||
This file and the corresponding package build configuration files
|
||||
are released under the terms of the MIT license.
|
||||
|
||||
Please see the file COPYING in the main directory.
|
||||
@@ -1 +0,0 @@
|
||||
howto package for cygwin
|
||||
@@ -1 +0,0 @@
|
||||
howto package for fedora
|
||||
Binary file not shown.
@@ -1,264 +0,0 @@
|
||||
How to make an OSX package
|
||||
--------------------------
|
||||
|
||||
Note: This is being written from the OSX 10.6 perspective, and may therefore
|
||||
contain steps that are different for 10.5, although I don't recall any
|
||||
actual differences.
|
||||
|
||||
|
||||
0. Philosophy
|
||||
|
||||
Only Fredde tags releases. We only make builds from tagged commits. We
|
||||
only release builds that build cleanly without errors or warnings. We only
|
||||
release builds that pass 100% of the unit tests.
|
||||
|
||||
|
||||
1. Prerequisites
|
||||
|
||||
You will need an Intel Mac, running OSX 10.5 or later.
|
||||
You will need to install the Developer Tools, which are found on your OSX DVD.
|
||||
You will need git installed, version 1.5 or later. See http://git-scm.com
|
||||
You will need autotools installed. See http://www.gnu.org/software/autoconf
|
||||
|
||||
2. Get the code
|
||||
|
||||
2.1 Clone the task git repository. It is important that this is a throwaway
|
||||
clone of the repository, because we will do (locally) destructive things
|
||||
to it.
|
||||
|
||||
$ git clone https://git.tasktools.org/scm/tm/task.git ~/task-package.git
|
||||
...
|
||||
$ cd ~/task-package.git
|
||||
|
||||
2.2 Making sure you have the right version of the code. This assumes you are
|
||||
building taskwarrior 1.9.2, but any version number is interchangeable.
|
||||
Check out the correct branch, and make sure it is sitting at the correct
|
||||
commit, via a tag. Note that while 1.9.2 is a branch name, v1.9.2 is a tag
|
||||
name.
|
||||
|
||||
$ git checkout 2.4.0
|
||||
$ git reset --hard v2.4.0
|
||||
|
||||
If there is an error in this step, stop, capture the output, and report the
|
||||
errors.
|
||||
|
||||
3. Build taskwarrior
|
||||
|
||||
3.1 First build the task binary. Note the "-j 2" tells make to use both cores
|
||||
in your dual-core Intel CPU, which means faster compiles. If you own a quad
|
||||
core Mac, use "-j 4". If you own a single core Mac, just type "make".
|
||||
|
||||
$ autoreconf -f
|
||||
$ ./configure
|
||||
...
|
||||
|
||||
If any errors are reported, stop, capture the output, and report the errors.
|
||||
|
||||
$ make -j 2
|
||||
|
||||
If there are any errors, or there are any warnings generated by the compiler
|
||||
stop, capture the output, and report the problem. You'll need to watch as
|
||||
it builds.
|
||||
|
||||
4. Build the test suite
|
||||
|
||||
4.1 The test suite exists to prove that we do not break taskwarrior features
|
||||
from one release to the next. While this is not a perfect solution, it has
|
||||
saved us many times from releasing code that is broken. Build the unit
|
||||
tests:
|
||||
|
||||
$ cd ~/task-package.git/src/tests
|
||||
$ make -j 2
|
||||
...
|
||||
|
||||
4.2 Run all the unit tests.
|
||||
|
||||
$ ./run_all
|
||||
Skipping benchmarks
|
||||
|
||||
Pass: 4241
|
||||
Fail: 0
|
||||
Skipped: 0
|
||||
Runtime: 86
|
||||
|
||||
The output should look something like this, with 0 failed, and 0 skipped
|
||||
tests. If there are any failures or skips, stop and mail the log file,
|
||||
named 'all.log' to Paul and/or Fredde.
|
||||
|
||||
5. Assemble the parts
|
||||
|
||||
5.1 There is a script that copies all the necessary files (binary, man pages
|
||||
etc) in the right place, ready for packaging. Run this:
|
||||
|
||||
$ cd ~/task-package.git/package-config/osx
|
||||
$ ./update
|
||||
|
||||
6. Adjust the package details
|
||||
|
||||
6.1 Launch the package manager.
|
||||
|
||||
$ open -a /Developer/Applications/Utilities/PackageManager.app
|
||||
|
||||
6.2 Close the 'Untitled' window that opens - we will be using a different
|
||||
file. Note that PackageManager is still running - it just has no windows.
|
||||
|
||||
6.3 Using the File -> Open menu, open the file
|
||||
|
||||
~/task-package.git/package-config/osx/task.pmdoc
|
||||
|
||||
<figure 1>
|
||||
|
||||
This is the file from the last time a package was created. It needs some
|
||||
adjustments. Start by clicking on the "Taskwarrior x.x.x Distribution" with
|
||||
a package icon in the top left part of the window.
|
||||
|
||||
6.4 Click on the "Configuration" button/tab.
|
||||
|
||||
- Change the "Title" to "Taskwarrior 1.9.2"
|
||||
- Change the "Description" to "Taskwarrior 1.9.2 install for Snow Leopard"
|
||||
|
||||
<figure 2>
|
||||
|
||||
6.5 Click on "Edit Interface..."
|
||||
|
||||
There are 5 radio buttons on the left hand side - we will visit each and
|
||||
make changes. Click on "Background", make sure it matches the figure.
|
||||
|
||||
<figure 3>
|
||||
|
||||
Click on "Introduction", make sure it matches the figure.
|
||||
|
||||
<figure 4>
|
||||
|
||||
Click on "Read Me", and on the right hand side, under "Read Me Panel", click
|
||||
on "File" and select the file:
|
||||
|
||||
/Users/<your-account>/task-package.git/package-config/osx/README.txt
|
||||
|
||||
<figure 5>
|
||||
|
||||
Click on "License", and on the right hand side, under "License Panel", click
|
||||
on "File" and select the file:
|
||||
|
||||
/Users/<your-account>/task-package.git/package-config/osx/COPYING.txt
|
||||
|
||||
<figure 6>
|
||||
|
||||
Click on "Finish Up", and make sure it matches the figure.
|
||||
|
||||
<figure 7>
|
||||
|
||||
Close the Interface Editor window (it saves automatically).
|
||||
|
||||
6.6 Back in the "task.pmdoc" window, click on the "Requirements" tab/button,
|
||||
then click on the "+" button, and add a requirement rule as shown in the
|
||||
figure. The minimum system should be 10.5.0 or 10.6.0, depending on which
|
||||
package is being built.
|
||||
|
||||
<figure 8>
|
||||
|
||||
6.7 Click on the "Actions" tab/button and make sure it matches the figure.
|
||||
|
||||
<figure 9>
|
||||
|
||||
6.8 Click on the triangle next to the "local" item in the "Contents" vertical
|
||||
bar on the left to expand and show a folder called "local", with the path
|
||||
"/usr/local", but click on the "local" next to the blue radio button, not
|
||||
the one next to the folder. Then click on the "Configuration" tab/button.
|
||||
|
||||
- Change the "Choice Name" to "local"
|
||||
- Leave the "Identifier" alone - it is automatic
|
||||
- Make sure "Selected" and "Enabled" are checked, but "Hidden" is not
|
||||
|
||||
<figure 10>
|
||||
|
||||
6.9 Click on the "Requirements" tab/button and make sure it is all blank.
|
||||
|
||||
<figure 11>
|
||||
|
||||
6.10 Click on the blue folder on the left, which is labelled "local", and has
|
||||
a path of "/usr/local". Click on the "Configuration" tab/button.
|
||||
|
||||
- Change the "Install" to /Users/<your-account>/task-package.git/package-config/osx/local
|
||||
- Make sure the "Destination" is "/usr/local"
|
||||
- Make sure "Allow custom location" is checked
|
||||
- Make sure the "Package Identifier is "com.beckingham.task192.local.pkg"
|
||||
- Make sure the "Package Version" is 1.0. If you needed to make a
|
||||
subsequent OSX package, *for the same version of task*, then this number
|
||||
would be increased to show OSX that this package supersedes the earlier
|
||||
one
|
||||
- Make sure "Restart Action" is "None"
|
||||
- Make sure "Require admin authentication" is checked
|
||||
- Make sure "Package Location" is "Self-Contained"
|
||||
|
||||
<figure 12>
|
||||
|
||||
6.11 Click on the "Contents" tab/button.
|
||||
|
||||
- Click on all the triangles in the "local" folder to expand all directories
|
||||
- Make sure "Include root in package is not checked"
|
||||
- Click on the "Apply Recommendations" button
|
||||
|
||||
Make sure it matches the figure.
|
||||
|
||||
<figure 13>
|
||||
|
||||
6.12 Click on the "Components" tab/button, make sure it is all blank.
|
||||
|
||||
6.13 Click on the "Scripts" tab/button, make sure it is all blank.
|
||||
|
||||
7. Building the package
|
||||
|
||||
7.1 Click on the "Build" hammer icon to build the package.
|
||||
|
||||
Provide a filename of "task-1.9.1-sl.pkg" for Snow Leopard (10.6), or
|
||||
"task-1.9.2.pkg" for Leopard (10.5), and save it somewhere, for example the
|
||||
Desktop.
|
||||
|
||||
All should succeed. You can click on the "Return" button to end the build
|
||||
phase, and you can quit PackageManager, but make sure you save the changes
|
||||
you made, because you may need to go through the whole process again, if there
|
||||
is an emergency change, or the package is somehow corrupt.
|
||||
|
||||
<figure 14>
|
||||
|
||||
8. Test the package
|
||||
|
||||
8.1 Double-click on the package you just created, and install taskwarrior.
|
||||
You should see the README file in the UI, and the COPYING file on another
|
||||
page. It should succeed.
|
||||
|
||||
<figure 14>
|
||||
<figure 15>
|
||||
<figure 16>
|
||||
<figure 17>
|
||||
<figure 18>
|
||||
<figure 19>
|
||||
<figure 20>
|
||||
<figure 21>
|
||||
|
||||
8.2 Run the following commands to test the installation
|
||||
|
||||
$ /usr/local/bin/task version
|
||||
|
||||
task 2.0.0 built for darwin
|
||||
Copyright (C) 2006 - 2014 P. Beckingham, F. Hernandez.
|
||||
|
||||
Taskwarrior may be copied only under the terms of the GNU General Public
|
||||
License, which may be found in the taskwarrior source kit.
|
||||
|
||||
Documentation for taskwarrior can be found using 'man task', 'man taskrc',
|
||||
'man task-sync', 'man task-color' or at http://taskwarrior.org
|
||||
|
||||
$ man task
|
||||
...
|
||||
...
|
||||
task 2.0.0 2013-01-10 task 2.0.0
|
||||
|
||||
The man page should list 2.0.0 as the version number, but the date will be
|
||||
different.
|
||||
|
||||
9. Email the package to Fredde.
|
||||
|
||||
---
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
<pkg-contents spec="1.12"><f n="local" o="paul" g="staff" p="16877" pt="/Users/paul/task-1.9.4.git/package-config/osx/local" m="false" t="file"><f n="bin" o="root" g="wheel" p="16877"><f n="task" o="root" g="wheel" p="33261"/></f><f n="share" o="root" g="wheel" p="16877"><f n="doc" o="root" g="wheel" p="16877"><f n="task" o="root" g="wheel" p="16877"><f n="AUTHORS" o="root" g="wheel" p="33188"/><f n="ChangeLog" o="root" g="wheel" p="33188"/><f n="COPYING" o="root" g="wheel" p="33188"/><f n="NEWS" o="root" g="wheel" p="33188"/><f n="rc" o="root" g="wheel" p="16877"><f n="dark-16.theme" o="root" g="wheel" p="33188"/><f n="dark-256.theme" o="root" g="wheel" p="33188"/><f n="dark-blue-256.theme" o="root" g="wheel" p="33188"/><f n="dark-gray-256.theme" o="root" g="wheel" p="33188"/><f n="dark-green-256.theme" o="root" g="wheel" p="33188"/><f n="dark-red-256.theme" o="root" g="wheel" p="33188"/><f n="dark-violets-256.theme" o="root" g="wheel" p="33188"/><f n="dark-yellow-green.theme" o="root" g="wheel" p="33188"/><f n="holidays-AT.rc" o="root" g="wheel" p="33188"/><f n="holidays-CA.rc" o="root" g="wheel" p="33188"/><f n="holidays-DE.rc" o="root" g="wheel" p="33188"/><f n="holidays-DK.rc" o="root" g="wheel" p="33188"/><f n="holidays-ES.rc" o="root" g="wheel" p="33188"/><f n="holidays-FR.rc" o="root" g="wheel" p="33188"/><f n="holidays-IT.rc" o="root" g="wheel" p="33188"/><f n="holidays-NL.rc" o="root" g="wheel" p="33188"/><f n="holidays-NO.rc" o="root" g="wheel" p="33188"/><f n="holidays-NZ.rc" o="root" g="wheel" p="33188"/><f n="holidays-SE.rc" o="root" g="wheel" p="33188"/><f n="holidays-UK.rc" o="root" g="wheel" p="33188"/><f n="holidays-US.rc" o="root" g="wheel" p="33188"/><f n="light-16.theme" o="root" g="wheel" p="33188"/><f n="light-256.theme" o="root" g="wheel" p="33188"/></f><f n="README" o="root" g="wheel" p="33188"/><f n="scripts" o="root" g="wheel" p="16877"><f n="add-ons" o="root" g="wheel" p="16877"><f n="export-csv.pl" o="root" g="wheel" p="33188"/><f n="export-ical.pl" o="root" g="wheel" p="33188"/><f n="export-xml.pl" o="root" g="wheel" p="33188"/><f n="export-xml.py" o="root" g="wheel" p="33188"/><f n="export-xml.rb" o="root" g="wheel" p="33188"/><f n="export-yaml.pl" o="root" g="wheel" p="33188"/></f><f n="bash" o="root" g="wheel" p="16877"><f n="task_completion.sh" o="root" g="wheel" p="33188"/></f><f n="fish" o="root" g="wheel" p="16877"><f n="task.fish" o="root" g="wheel" p="33188"/></f><f n="vim" o="root" g="wheel" p="16877"><f n="ftdetect" o="root" g="wheel" p="16877"><f n="task.vim" o="root" g="wheel" p="33188"/></f><f n="README" o="root" g="wheel" p="33188"/><f n="syntax" o="root" g="wheel" p="16877"><f n="taskdata.vim" o="root" g="wheel" p="33188"/><f n="taskedit.vim" o="root" g="wheel" p="33188"/><f n="taskrc.vim" o="root" g="wheel" p="33188"/></f></f><f n="zsh" o="root" g="wheel" p="16877"><f n="_task" o="root" g="wheel" p="33188"/></f></f></f></f><f n="man" o="642" g="642" p="17917"><f n="man1" o="642" g="642" p="16877"><f n="task.1" o="root" g="642" p="33188"/></f><f n="man5" o="642" g="642" p="16877"><f n="task-color.5" o="root" g="642" p="33188"/><f n="task-sync.5" o="root" g="642" p="33188"/><f n="taskrc.5" o="root" g="642" p="33188"/></f></f></f></f></pkg-contents>
|
||||
@@ -1 +0,0 @@
|
||||
<pkgref spec="1.12" uuid="B93940C5-2C4F-47D6-8038-3D24062FBC85"><config><identifier>com.gbf.task194.local.pkg</identifier><version>1.0</version><description></description><post-install type="none"/><requireAuthorization/><installFrom mod="true">/Users/paul/task-1.9.4.git/package-config/osx/local</installFrom><installTo mod="true" relocatable="true">/usr/local</installTo><flags><followSymbolicLinks/></flags><packageStore type="internal"></packageStore><mod>installTo.path</mod><mod>relocatable</mod><mod>installFrom.path</mod><mod>parent</mod><mod>identifier</mod><mod>installTo</mod></config><contents><file-list>01local-contents.xml</file-list><filter>/CVS$</filter><filter>/\.svn$</filter><filter>/\.cvsignore$</filter><filter>/\.cvspass$</filter><filter>/\.DS_Store$</filter></contents></pkgref>
|
||||
@@ -1 +0,0 @@
|
||||
<pkmkdoc spec="1.12"><properties><title>Task 1.9.4</title><build>/Users/paul/Desktop/task-1.9.4-sl.pkg</build><organization>com.beckingham</organization><userSees ui="both"/><min-target os="3"/><domain anywhere="true" system="true"/></properties><distribution><versions min-spec="1.000000"/><scripts></scripts></distribution><description>Task 1.9.4 install for Snow Leopard.</description><contents><choice title="local" id="choice37" starts_selected="true" starts_enabled="true" starts_hidden="false"><pkgref id="com.gbf.task194.local.pkg"/></choice></contents><resources bg-scale="proportional" bg-align="center"><locale lang="en"><resource mod="true" type="license">/Users/paul/task-1.9.4.git/package-config/osx/COPYING.txt</resource><resource mod="true" type="readme">/Users/paul/task-1.9.4.git/package-config/osx/README.txt</resource></locale></resources><requirements><requirement id="tosv" operator="ge" value="'10.6.0'"><message>Task requires Mac OSX 10.6.0 (Snow Leopard) or later.</message></requirement></requirements><flags/><item type="file">01local.xml</item><mod>properties.title</mod><mod>properties.customizeOption</mod><mod>description</mod><mod>properties.anywhereDomain</mod><mod>properties.systemDomain</mod></pkmkdoc>
|
||||
@@ -1,38 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
mkdir -p local/bin
|
||||
mkdir -p local/share/doc/task/scripts/bash
|
||||
mkdir -p local/share/doc/task/scripts/vim/ftdetect
|
||||
mkdir -p local/share/doc/task/scripts/vim/syntax
|
||||
mkdir -p local/share/doc/task/scripts/zsh
|
||||
mkdir -p local/share/doc/task/scripts/fish
|
||||
mkdir -p local/share/doc/task/scripts/add-ons
|
||||
mkdir -p local/share/doc/task/rc
|
||||
mkdir -p local/share/man/man1
|
||||
mkdir -p local/share/man/man5
|
||||
|
||||
cp ../../README README.txt
|
||||
cp ../../COPYING COPYING.txt
|
||||
|
||||
cp ../../src/task local/bin/
|
||||
|
||||
cp ../../AUTHORS local/share/doc/task/
|
||||
cp ../../ChangeLog local/share/doc/task/
|
||||
cp ../../COPYING local/share/doc/task/
|
||||
cp ../../NEWS local/share/doc/task/
|
||||
cp ../../README local/share/doc/task/
|
||||
|
||||
cp ../../scripts/bash/* local/share/doc/task/scripts/bash
|
||||
cp ../../scripts/vim/README local/share/doc/task/scripts/vim
|
||||
cp ../../scripts/vim/ftdetect/* local/share/doc/task/scripts/vim/ftdetect
|
||||
cp ../../scripts/vim/syntax/* local/share/doc/task/scripts/vim/syntax
|
||||
cp ../../scripts/zsh/* local/share/doc/task/scripts/zsh
|
||||
cp ../../scripts/fish/* local/share/doc/task/scripts/fish
|
||||
cp ../../scripts/add-ons/* local/share/doc/task/scripts/add-ons
|
||||
|
||||
cp ../../doc/rc/*.theme local/share/doc/task/rc
|
||||
cp ../../doc/rc/holidays* local/share/doc/task/rc
|
||||
|
||||
cp ../../doc/man/*.1 local/share/man/man1
|
||||
cp ../../doc/man/*.5 local/share/man/man5
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
howto package for Ubuntu/Debian
|
||||
@@ -1,13 +1,20 @@
|
||||
#! /bin/bash
|
||||
|
||||
echo 'Performance: setup'
|
||||
echo ' - This step will take several minutes'
|
||||
rm -f ./pending.data ./completed.data ./undo.data ./backlog.data perf.rc
|
||||
./load
|
||||
if [[ -e data/pending.data && -e data/completed.data ]]
|
||||
then
|
||||
echo ' - Using existing data'
|
||||
cp data/* .
|
||||
else
|
||||
echo ' - This step will take several minutes'
|
||||
./load
|
||||
mkdir -p data
|
||||
cp *.data perf.rc data
|
||||
fi
|
||||
|
||||
#TASK=/usr/local/bin/tw212
|
||||
#TASK=/usr/local/bin/tw220
|
||||
#TASK=/usr/local/bin/tw230
|
||||
#TASK=/usr/local/bin/tw244
|
||||
#TASK=/usr/local/bin/tw250b1
|
||||
TASK=../src/task
|
||||
|
||||
# Run benchmarks.
|
||||
|
||||
3
scripts/add-ons/README
Normal file
3
scripts/add-ons/README
Normal file
@@ -0,0 +1,3 @@
|
||||
The import/export add-on scripts have been relocated online. Please see:
|
||||
|
||||
https://taskwarrior.org/tools/#exts
|
||||
@@ -1,85 +0,0 @@
|
||||
#! /usr/bin/perl
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
# Give a nice error if the (non-standard) JSON module is not installed.
|
||||
eval "use JSON";
|
||||
if ($@)
|
||||
{
|
||||
print "Error: You need to install the JSON Perl module.\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Use the taskwarrior 2.0+ export command to filter and return JSON
|
||||
my $command = join (' ', ("env PATH=$ENV{PATH} task rc.verbose=nothing rc.json.array=no export", @ARGV));
|
||||
if ($command =~ /No matches/)
|
||||
{
|
||||
printf STDERR $command;
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Generate output.
|
||||
print "'uuid','status','tags','entry','start','due','recur','end','project',",
|
||||
"'priority','fg','bg','description'\n";
|
||||
|
||||
for my $task (split "\n", qx{$command})
|
||||
{
|
||||
my $data = from_json ($task);
|
||||
|
||||
my $desc = $data->{'description'};
|
||||
$desc =~ s/'/\\'/g;
|
||||
|
||||
print "'$data->{'uuid'}',",
|
||||
"'$data->{'status'}',",
|
||||
"'", (exists $data->{'tags'} ? join (' ', @{$data->{'tags'}}) : ''), "',",
|
||||
"'$data->{'entry'}',",
|
||||
"'", ($data->{'start'} || ''), "',",
|
||||
"'", ($data->{'due'} || ''), "',",
|
||||
"'", ($data->{'recur'} || ''), "',",
|
||||
"'", ($data->{'end'} || ''), "',",
|
||||
"'", ($data->{'project'} || ''), "',",
|
||||
"'", ($data->{'priority'} || ''), "',",
|
||||
"'", ($data->{'fg'} || ''), "',",
|
||||
"'", ($data->{'bg'} || ''), "',",
|
||||
"'$desc'",
|
||||
"\n";
|
||||
|
||||
# Note that this format ignores:
|
||||
# wait
|
||||
# until
|
||||
# annotations
|
||||
# mask
|
||||
# imask
|
||||
# UDAs
|
||||
}
|
||||
|
||||
exit 0;
|
||||
|
||||
################################################################################
|
||||
|
||||
@@ -1,90 +0,0 @@
|
||||
#! /usr/bin/perl
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
# Give a nice error if the (non-standard) JSON module is not installed.
|
||||
eval "use JSON";
|
||||
if ($@)
|
||||
{
|
||||
print "Error: You need to install the JSON Perl module.\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Use the taskwarrior 2.0+ export command to filter and return JSON
|
||||
my $command = join (' ', ("env PATH='$ENV{PATH}' task rc.verbose=nothing rc.json.array=no export", @ARGV));
|
||||
if ($command =~ /No matches/)
|
||||
{
|
||||
printf STDERR $command;
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Generate output.
|
||||
print "<html>\n",
|
||||
" <body>\n",
|
||||
" <table>\n",
|
||||
" <thead>\n",
|
||||
" <tr>\n",
|
||||
" <td>ID</td>\n",
|
||||
" <td>Pri</td>\n",
|
||||
" <td>Description</td>\n",
|
||||
" <td>Project</td>\n",
|
||||
" <td>Due</td>\n",
|
||||
" </tr>\n",
|
||||
" </thead>\n",
|
||||
" <tbody>\n";
|
||||
|
||||
my $count = 0;
|
||||
for my $task (split "\n", qx{$command})
|
||||
{
|
||||
++$count;
|
||||
my $data = from_json ($task);
|
||||
|
||||
print " <tr>\n",
|
||||
" <td>", ($data->{'id'} || ''), "</td>\n",
|
||||
" <td>", ($data->{'priority'} || ''), "</td>\n",
|
||||
" <td>", ($data->{'description'} || ''), "</td>\n",
|
||||
" <td>", ($data->{'project'} || ''), "</td>\n",
|
||||
" <td>", ($data->{'due'} || ''), "</td>\n",
|
||||
" </tr>\n";
|
||||
}
|
||||
|
||||
print " </tbody>\n",
|
||||
" <tfooter>\n",
|
||||
" <tr>\n",
|
||||
" <td>", $count, " matching tasks</td>\n",
|
||||
" </tr>\n",
|
||||
" </tfooter>\n",
|
||||
" </table>\n",
|
||||
" </body>\n",
|
||||
"</html>\n";
|
||||
|
||||
exit 0;
|
||||
|
||||
################################################################################
|
||||
|
||||
@@ -1,102 +0,0 @@
|
||||
#! /usr/bin/perl
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
# Give a nice error if the (non-standard) JSON module is not installed.
|
||||
eval "use JSON";
|
||||
if ($@)
|
||||
{
|
||||
print "Error: You need to install the JSON Perl module.\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Use the taskwarrior 2.0+ export command to filter and return JSON
|
||||
my $command = join (' ', ("env PATH=$ENV{PATH} task rc.verbose=nothing rc.json.array=no export", @ARGV));
|
||||
if ($command =~ /No matches/)
|
||||
{
|
||||
printf STDERR $command;
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Generate output.
|
||||
print "BEGIN:VCALENDAR\n",
|
||||
"VERSION:2.0\n",
|
||||
"PRODID:=//GBF/taskwarrior 1.9.4//EN\n";
|
||||
|
||||
for my $task (split "\n", qx{$command})
|
||||
{
|
||||
my $data = from_json ($task);
|
||||
|
||||
print "BEGIN:VTODO\n";
|
||||
print "UID:$data->{'uuid'}\n";
|
||||
print "DTSTAMP:$data->{'entry'}\n";
|
||||
print "DTSTART:$data->{'start'}\n" if exists $data->{'start'};
|
||||
print "DUE:$data->{'due'}\n" if exists $data->{'due'};
|
||||
print "COMPLETED:$data->{'end'}\n" if exists $data->{'end'};
|
||||
print "SUMMARY:$data->{'description'}\n";
|
||||
print "CLASS:PRIVATE\n";
|
||||
print "CATEGORIES:", join (',', @{$data->{'tags'}}), "\n" if exists $data->{'tags'};
|
||||
|
||||
# Priorities map to a 1-9 scale.
|
||||
if (exists $data->{'priority'})
|
||||
{
|
||||
print "PRIORITY:", ($data->{'priority'} eq 'H' ? '1' :
|
||||
$data->{'priority'} eq 'M' ? '5' :
|
||||
'9'), "\n";
|
||||
}
|
||||
|
||||
# Status maps differently.
|
||||
my $status = $data->{'status'};
|
||||
if ($status eq 'pending' || $status eq 'waiting')
|
||||
{
|
||||
print "STATUS:", (exists $data->{'start'} ? 'IN-PROCESS' : 'NEEDS-ACTION'), "\n";
|
||||
}
|
||||
elsif ($status eq 'completed')
|
||||
{
|
||||
print "STATUS:COMPLETED\n";
|
||||
}
|
||||
elsif ($status eq 'deleted')
|
||||
{
|
||||
print "STATUS:CANCELLED\n";
|
||||
}
|
||||
|
||||
# Annotations become comments.
|
||||
if (exists $data->{'annotations'})
|
||||
{
|
||||
print "COMMENT:$_->{'description'}\n" for @{$data->{'annotations'}};
|
||||
}
|
||||
|
||||
print "END:VTODO\n";
|
||||
}
|
||||
|
||||
print "END:VCALENDAR\n";
|
||||
exit 0;
|
||||
|
||||
################################################################################
|
||||
|
||||
@@ -1,170 +0,0 @@
|
||||
#! /usr/bin/python
|
||||
###############################################################################
|
||||
#
|
||||
# Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
# http://www.opensource.org/licenses/mit-license.php
|
||||
#
|
||||
###############################################################################
|
||||
"""
|
||||
export-sql.py -- Export the taskwarrior database as a series of SQL commands.
|
||||
|
||||
Example usage::
|
||||
|
||||
$ PYTHONIOENCODING=UTF-8 ./export-sql.py | sqlite3 mytasks.db
|
||||
$ /usr/bin/sqlite3 mytasks.db "select * from annotations;"
|
||||
|
||||
This script has only been tested with sqlite3, but in theory, it could be
|
||||
easily modified to supported mysql, postgres or whatever you choose.
|
||||
|
||||
Author: Ralph Bean
|
||||
"""
|
||||
|
||||
import sys
|
||||
import commands
|
||||
import json
|
||||
|
||||
from datetime import datetime
|
||||
|
||||
# Note that you may want to modify the field sizes to suit your usage.
|
||||
table_definitions = """
|
||||
CREATE TABLE tasks (
|
||||
uuid VARCHAR(255) NOT NULL,
|
||||
description VARCHAR(255) NOT NULL,
|
||||
entry DATETIME NOT NULL,
|
||||
end DATETIME,
|
||||
priority VARCHAR(32),
|
||||
project VARCHAR(32),
|
||||
status VARCHAR(32),
|
||||
PRIMARY KEY (uuid)
|
||||
);
|
||||
|
||||
CREATE TABLE annotations (
|
||||
uuid VARCHAR(255) NOT NULL,
|
||||
description VARCHAR(255) NOT NULL,
|
||||
entry DATETIME NOT NULL,
|
||||
FOREIGN KEY(uuid) REFERENCES tasks(uuid)
|
||||
);
|
||||
"""
|
||||
|
||||
|
||||
replacements = {
|
||||
'"': '&dquot;',
|
||||
"'": '"',
|
||||
'[': '&open;',
|
||||
']': '&close;',
|
||||
'/': '\\/',
|
||||
}
|
||||
|
||||
|
||||
def escape(s):
|
||||
""" Escape a string in the taskwarrior style """
|
||||
|
||||
for unsafe, safe in replacements.iteritems():
|
||||
s = s.replace(unsafe, safe)
|
||||
return s
|
||||
|
||||
|
||||
# A lookup table for how to convert various values by type to SQL
|
||||
conversion_lookup = {
|
||||
# Tack on an extra set of quotes
|
||||
unicode: lambda v: "'%s'" % escape(v),
|
||||
# Do the same as for unicode
|
||||
str: lambda v: convert(unicode(v)),
|
||||
# Convert to ISO format and do the same as for unicode
|
||||
datetime: lambda v: convert(v.isoformat(' ')),
|
||||
# Replace python None with SQL NULL
|
||||
type(None): lambda v: 'NULL',
|
||||
}
|
||||
|
||||
# Compose a value with its corresponding function in conversion_lookup
|
||||
convert = lambda v: conversion_lookup.get(type(v), lambda v: v)(v)
|
||||
|
||||
|
||||
def parse_datetime(task):
|
||||
""" Parse the datetime strings given to us by `task export` """
|
||||
|
||||
for key in ['entry', 'end']:
|
||||
if key in task:
|
||||
task[key] = datetime.strptime(task[key], "%Y%m%dT%H%M%SZ")
|
||||
return task
|
||||
|
||||
|
||||
def to_sql(task):
|
||||
""" Create a list of SQL INSERT statements out of a task python dict """
|
||||
|
||||
def make_annotation(annot):
|
||||
""" Create a list of SQL INSERT statements for an annotation """
|
||||
|
||||
annot['uuid'] = task['uuid']
|
||||
template = "{uuid}, {description}, {entry}"
|
||||
annot = dict(zip(annot.keys(), map(convert, annot.values())))
|
||||
values = template.format(**annot)
|
||||
return "INSERT INTO \"annotations\" VALUES(%s)" % values
|
||||
|
||||
template = u"{uuid}, {description}, {entry}, {end}, " + \
|
||||
u"{priority}, {project}, {status}"
|
||||
|
||||
nullables = ['end', 'priority', 'project', 'status']
|
||||
defaults = dict([(key, None) for key in nullables])
|
||||
defaults['annotations'] = []
|
||||
defaults.update(task)
|
||||
|
||||
defaults = dict(zip(defaults.keys(), map(convert, defaults.values())))
|
||||
|
||||
values = template.format(**defaults)
|
||||
annotations = map(make_annotation, defaults['annotations'])
|
||||
|
||||
return ["INSERT INTO \"tasks\" VALUES(%s)" % values] + annotations
|
||||
|
||||
|
||||
def main():
|
||||
""" Return a list of SQL statements. """
|
||||
|
||||
# Use the taskwarrior 2.0+ export command to filter and return JSON
|
||||
command = "task rc.verbose=nothing rc.json.array=yes " + " ".join(sys.argv[1:]) + " export"
|
||||
|
||||
# Load each task from json to a python dict
|
||||
tasks = json.loads(commands.getoutput(command))
|
||||
|
||||
# Mangle datetime strings into python datetime objects
|
||||
tasks = map(parse_datetime, tasks)
|
||||
|
||||
# Produce formatted SQL statements for each task
|
||||
inserts = sum(map(to_sql, tasks), [])
|
||||
|
||||
return inserts
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
# Get the INSERT statements
|
||||
lines = main()
|
||||
|
||||
# Combine them with semicolons
|
||||
sql = table_definitions + ";\n".join(lines) + ';'
|
||||
|
||||
# Print them out, decorated with sqlite3 trappings
|
||||
print u"""
|
||||
BEGIN TRANSACTION;
|
||||
{sql}
|
||||
COMMIT;""".format(sql=sql)
|
||||
|
||||
###############################################################################
|
||||
@@ -1,82 +0,0 @@
|
||||
#! /usr/bin/perl
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
# Give a nice error if the (non-standard) JSON module is not installed.
|
||||
eval "use JSON";
|
||||
if ($@)
|
||||
{
|
||||
print "Error: You need to install the JSON Perl module.\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Use the taskwarrior 2.0+ export command to filter and return JSON
|
||||
my $command = join (' ', ("env PATH=$ENV{PATH} task rc.verbose=nothing rc.json.array=no export", @ARGV));
|
||||
if ($command =~ /No matches/)
|
||||
{
|
||||
printf STDERR $command;
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Generate output.
|
||||
print "uuid\tstatus\ttags\tentry\tstart\tdue\trecur\tend\tproject\t",
|
||||
"priority\tfg\tbg\tdescription\n";
|
||||
|
||||
for my $task (split "\n", qx{$command})
|
||||
{
|
||||
my $data = from_json ($task);
|
||||
|
||||
print "$data->{'uuid'}\t",
|
||||
"$data->{'status'}\t",
|
||||
(exists $data->{'tags'} ? join (' ', @{$data->{'tags'}}) : ''), "\t",
|
||||
"$data->{'entry'}\t",
|
||||
($data->{'start'} || ''), "\t",
|
||||
($data->{'due'} || ''), "\t",
|
||||
($data->{'recur'} || ''), "\t",
|
||||
($data->{'end'} || ''), "\t",
|
||||
($data->{'project'} || ''), "\t",
|
||||
($data->{'priority'} || ''), "\t",
|
||||
($data->{'fg'} || ''), "\t",
|
||||
($data->{'bg'} || ''), "\t",
|
||||
"$data->{'description'}",
|
||||
"\n";
|
||||
|
||||
# Note that this format ignores:
|
||||
# wait
|
||||
# until
|
||||
# annotations
|
||||
# mask
|
||||
# imask
|
||||
# UDAs
|
||||
}
|
||||
|
||||
exit 0;
|
||||
|
||||
################################################################################
|
||||
|
||||
@@ -1,85 +0,0 @@
|
||||
#! /usr/bin/perl
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
# Give a nice error if the (non-standard) JSON module is not installed.
|
||||
eval "use JSON";
|
||||
if ($@)
|
||||
{
|
||||
print "Error: You need to install the JSON Perl module.\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Use the taskwarrior 2.0+ export command to filter and return JSON
|
||||
my $command = join (' ', ("env PATH=$ENV{PATH} task rc.verbose=nothing rc.json.array=no export", @ARGV));
|
||||
if ($command =~ /No matches/)
|
||||
{
|
||||
printf STDERR $command;
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Generate output.
|
||||
print "<tasks>\n";
|
||||
for my $task (split "\n", qx{$command})
|
||||
{
|
||||
my $data = from_json ($task);
|
||||
|
||||
print " <task>\n";
|
||||
for my $key (keys %$data)
|
||||
{
|
||||
if ($key eq 'annotations')
|
||||
{
|
||||
print " <annotations>\n";
|
||||
for my $anno (@{$data->{$key}})
|
||||
{
|
||||
print " <annotation>\n";
|
||||
print " <$_>$anno->{$_}</$_>\n" for keys %$anno;
|
||||
print " </annotation>\n";
|
||||
}
|
||||
print " </annotations>\n";
|
||||
}
|
||||
elsif ($key eq 'tags')
|
||||
{
|
||||
print " <tags>\n";
|
||||
print " <tag>$_</tag>\n" for @{$data->{'tags'}};
|
||||
print " </tags>\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
print " <$key>$data->{$key}</$key>\n";
|
||||
}
|
||||
}
|
||||
print " </task>\n";
|
||||
}
|
||||
|
||||
print "</tasks>\n";
|
||||
exit 0;
|
||||
|
||||
################################################################################
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
#! /usr/bin/python
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
import sys
|
||||
import commands
|
||||
import json
|
||||
|
||||
# Use the taskwarrior 2.0+ export command to filter and return JSON
|
||||
command = "/usr/local/bin/task rc.verbose=nothing rc.json.array=no export " + " ".join (sys.argv[1:])
|
||||
|
||||
# Generate output.
|
||||
print "<tasks>"
|
||||
for task in commands.getoutput (command).split (",\n"):
|
||||
data = json.loads (task)
|
||||
print " <task>"
|
||||
for name,value in data.items ():
|
||||
if name == "annotations":
|
||||
print " <annotations>"
|
||||
for anno in value:
|
||||
print " <annotation>"
|
||||
for name,value in anno.items ():
|
||||
print " <{0}>{1}</{0}>".format (name, value)
|
||||
print " </annotation>"
|
||||
print " </annotations>"
|
||||
elif name == "tags":
|
||||
print " <tags>"
|
||||
for tag in value:
|
||||
print " <tag>{0}</tag>".format (tag)
|
||||
print " </tags>"
|
||||
else:
|
||||
print " <{0}>{1}</{0}>".format (name, value)
|
||||
print " </task>"
|
||||
print "</tasks>"
|
||||
sys.exit (0)
|
||||
|
||||
################################################################################
|
||||
|
||||
@@ -1,66 +0,0 @@
|
||||
#! /usr/bin/ruby
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
require 'rubygems'
|
||||
require 'json'
|
||||
|
||||
# Use the taskwarrior 2.0+ export command to filter and return JSON
|
||||
lines = IO.popen("/usr/local/bin/task rc.verbose=nothing rc.json.array=no export " + ARGV.join(" ")).readlines
|
||||
|
||||
# Generate output.
|
||||
print "<tasks>\n"
|
||||
lines.each do |line|
|
||||
data = JSON.parse(line)
|
||||
print " <task>\n"
|
||||
data.each do |key,value|
|
||||
if key == "annotations"
|
||||
print " <annotations>\n"
|
||||
value.each do |anno|
|
||||
print " <annotation>\n"
|
||||
anno.each do |key,value|
|
||||
print " <#{key}>#{value}</#{key}>\n"
|
||||
end
|
||||
print " </annotation>\n"
|
||||
end
|
||||
print " </annotations>\n"
|
||||
elsif key == "tags"
|
||||
print " <tags>\n"
|
||||
value.each do |tag|
|
||||
print " <tag>#{tag}</tag>\n"
|
||||
end
|
||||
print " </tags>\n"
|
||||
else
|
||||
print " <#{key}>#{value}</#{key}>\n"
|
||||
end
|
||||
end
|
||||
print " </task>\n"
|
||||
end
|
||||
print "</tasks>\n"
|
||||
exit 0
|
||||
|
||||
################################################################################
|
||||
|
||||
@@ -1,81 +0,0 @@
|
||||
#! /usr/bin/perl
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
# Give a nice error if the (non-standard) JSON module is not installed.
|
||||
eval "use JSON";
|
||||
if ($@)
|
||||
{
|
||||
print "Error: You need to install the JSON Perl module.\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Use the taskwarrior 2.0+ export command to filter and return JSON
|
||||
my $command = join (' ', ("env PATH=$ENV{PATH} task rc.verbose=nothing rc.json.array=no export", @ARGV));
|
||||
if ($command =~ /No matches/)
|
||||
{
|
||||
printf STDERR $command;
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Generate output.
|
||||
print "'uuid','status','tags','entry','start','due','recur','end','project',",
|
||||
"'priority','fg','bg','description'\n";
|
||||
|
||||
for my $task (split "\n", qx{$command})
|
||||
{
|
||||
my $data = from_json ($task);
|
||||
|
||||
print "'$data->{'uuid'}',",
|
||||
"'$data->{'status'}',",
|
||||
"'", (exists $data->{'tags'} ? join (' ', @{$data->{'tags'}}) : ''), "',",
|
||||
"'$data->{'entry'}',",
|
||||
"'", ($data->{'start'} || ''), "',",
|
||||
"'", ($data->{'due'} || ''), "',",
|
||||
"'", ($data->{'recur'} || ''), "',",
|
||||
"'", ($data->{'end'} || ''), "',",
|
||||
"'", ($data->{'project'} || ''), "',",
|
||||
"'", ($data->{'priority'} || ''), "',",
|
||||
"'", ($data->{'fg'} || ''), "',",
|
||||
"'", ($data->{'bg'} || ''), "',",
|
||||
"'$data->{'description'}'",
|
||||
"\n";
|
||||
|
||||
# Note that this format ignores:
|
||||
# wait
|
||||
# until
|
||||
# annotations
|
||||
# mask
|
||||
# imask
|
||||
}
|
||||
|
||||
exit 0;
|
||||
|
||||
################################################################################
|
||||
|
||||
@@ -1,79 +0,0 @@
|
||||
#! /usr/bin/perl
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
# Give a nice error if the (non-standard) JSON module is not installed.
|
||||
eval "use JSON";
|
||||
if ($@)
|
||||
{
|
||||
print "Error: You need to install the JSON Perl module.\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Generate output.
|
||||
print "%YAML 1.1\n",
|
||||
"---\n";
|
||||
|
||||
while (my $json = <>)
|
||||
{
|
||||
$json =~ s/^\[//;
|
||||
$json =~ s/\]$//;
|
||||
$json =~ s/,$//;
|
||||
next if $json eq '';
|
||||
|
||||
my $data = from_json ($json);
|
||||
|
||||
print " task:\n";
|
||||
for my $key (sort keys %$data)
|
||||
{
|
||||
if ($key eq 'annotations')
|
||||
{
|
||||
print " annotations:\n";
|
||||
for my $anno (@{$data->{$key}})
|
||||
{
|
||||
print " annotation:\n";
|
||||
print " $_: $anno->{$_}\n" for keys %$anno;
|
||||
}
|
||||
}
|
||||
elsif ($key eq 'tags')
|
||||
{
|
||||
print " tags: ", join (',', @{$data->{'tags'}}), "\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
print " $key: $data->{$key}\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
print "...\n";
|
||||
exit 0;
|
||||
|
||||
################################################################################
|
||||
|
||||
@@ -1,162 +0,0 @@
|
||||
#! /usr/bin/perl
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
use Time::Local;
|
||||
|
||||
# Priority mappings.
|
||||
my %priority_map = (
|
||||
'a' => 'H', 'b' => 'M', 'c' => 'L', 'd' => 'L', 'e' => 'L', 'f' => 'L',
|
||||
'g' => 'L', 'h' => 'L', 'i' => 'L', 'j' => 'L', 'k' => 'L', 'l' => 'L',
|
||||
'm' => 'L', 'n' => 'L', 'o' => 'L', 'p' => 'L', 'q' => 'L', 'r' => 'L',
|
||||
's' => 'L', 't' => 'L', 'u' => 'L', 'v' => 'L', 'w' => 'L', 'x' => 'L',
|
||||
'y' => 'L', 'z' => 'L');
|
||||
|
||||
my @tasks;
|
||||
while (my $todo = <>)
|
||||
{
|
||||
my $status = 'pending';
|
||||
my $priority = '';
|
||||
my $entry = '';
|
||||
my $end = '';
|
||||
my @projects;
|
||||
my @contexts;
|
||||
my $description = '';
|
||||
my $due = '';
|
||||
|
||||
# pending + pri + entry
|
||||
if ($todo =~ /^\(([A-Z])\)\s(\d{4}-\d{2}-\d{2})\s(.+)$/i)
|
||||
{
|
||||
($status, $priority, $entry, $description) = ('pending', $1, epoch ($2), $3);
|
||||
}
|
||||
|
||||
# pending + pri
|
||||
elsif ($todo =~ /^\(([A-Z])\)\s(.+)$/i)
|
||||
{
|
||||
($status, $priority, $description) = ('pending', $1, $2);
|
||||
}
|
||||
|
||||
# pending + entry
|
||||
elsif ($todo =~ /^(\d{4}-\d{2}-\d{2})\s(.+)$/i)
|
||||
{
|
||||
($status, $entry, $description) = ('pending', epoch ($1), $2);
|
||||
}
|
||||
|
||||
# done + end + entry
|
||||
elsif ($todo =~ /^x\s(\d{4}-\d{2}-\d{2})\s(\d{4}-\d{2}-\d{2})\s(.+)$/i)
|
||||
{
|
||||
($status, $end, $entry, $description) = ('completed', epoch ($1), epoch ($2), $3);
|
||||
}
|
||||
|
||||
# done + end
|
||||
elsif ($todo =~ /^x\s(\d{4}-\d{2}-\d{2})\s(.+)$/i)
|
||||
{
|
||||
($status, $end, $description) = ('completed', epoch ($1), $2);
|
||||
}
|
||||
|
||||
# done
|
||||
elsif ($todo =~ /^x\s(.+)$/i)
|
||||
{
|
||||
($status, $description) = ('completed', $1);
|
||||
}
|
||||
|
||||
# pending
|
||||
elsif ($todo =~ /^(.+)$/i)
|
||||
{
|
||||
($status, $description) = ('pending', $1);
|
||||
}
|
||||
|
||||
# Project
|
||||
@projects = $description =~ /\+(\S+)/ig;
|
||||
|
||||
# Contexts
|
||||
@contexts = $description =~ /\@(\S+)/ig;
|
||||
|
||||
# Due
|
||||
$due = epoch ($1) if $todo =~ /\sdue:(\d{4}-\d{2}-\d{2})/i;
|
||||
|
||||
# Map priorities
|
||||
$priority = $priority_map{lc $priority} if $priority ne '';
|
||||
|
||||
# Pick first project
|
||||
my $first_project = shift @projects;
|
||||
|
||||
# Compose the JSON
|
||||
my $json = '';
|
||||
$json .= "{\"status\":\"${status}\"";
|
||||
$json .= ",\"priority\":\"${priority}\"" if defined $priority && $priority ne '';
|
||||
$json .= ",\"project\":\"${first_project}\"" if defined $first_project && $first_project ne '';
|
||||
$json .= ",\"entry\":\"${entry}\"" if $entry ne '';
|
||||
$json .= ",\"end\":\"${end}\"" if $end ne '';
|
||||
$json .= ",\"due\":\"${due}\"" if $due ne '';
|
||||
|
||||
if (@contexts)
|
||||
{
|
||||
$json .= ",\"tags\":[" . join (',', map {"\"$_\""} @contexts) . "]";
|
||||
}
|
||||
|
||||
$json .= ",\"description\":\"${description}\"}";
|
||||
|
||||
push @tasks, $json;
|
||||
}
|
||||
|
||||
print "[\n", join ("\n", @tasks), "\n]\n";
|
||||
exit 0;
|
||||
|
||||
################################################################################
|
||||
sub epoch
|
||||
{
|
||||
my ($input) = @_;
|
||||
|
||||
my ($y, $m, $d) = $input =~ /(\d{4})-(\d{2})-(\d{2})/;
|
||||
return timelocal (0, 0, 0, $d, $m-1, $y-1900);
|
||||
}
|
||||
|
||||
################################################################################
|
||||
|
||||
__DATA__
|
||||
(A) Thank Mom for the meatballs @phone
|
||||
(B) Schedule Goodwill pickup +GarageSale @phone
|
||||
Post signs around the neighborhood +GarageSale
|
||||
@GroceryStore Eskimo pies
|
||||
(A) Thank Mom for the meatballs @phone
|
||||
(B) Schedule Goodwill pickup +GarageSale @phone
|
||||
(B) Schedule Goodwill pickup +GarageSale @phone
|
||||
Post signs around the neighborhood +GarageSale
|
||||
Really gotta call Mom (A) @phone @someday
|
||||
(b) Get back to the boss
|
||||
(B)->Submit TPS report
|
||||
2011-03-02 Document +TodoTxt task format
|
||||
(A) 2011-03-02 Call Mom
|
||||
(A) Call Mom 2011-03-02
|
||||
(A) Call Mom +Family +PeaceLoveAndHappiness @iphone @phone
|
||||
x 2011-03-03 Call Mom
|
||||
xylophone lesson
|
||||
X 2012-01-01 Make resolutions
|
||||
(A) x Find ticket prices
|
||||
x 2011-03-02 2011-03-01 Review Tim's pull request +TodoTxtTouch @github
|
||||
@@ -1,141 +0,0 @@
|
||||
#! /usr/bin/perl
|
||||
################################################################################
|
||||
##
|
||||
## Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
##
|
||||
## 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.
|
||||
##
|
||||
## http://www.opensource.org/licenses/mit-license.php
|
||||
##
|
||||
################################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
use Time::Local;
|
||||
|
||||
my @tasks;
|
||||
|
||||
my $status = '';
|
||||
my $uuid = '';
|
||||
my $priority = '';
|
||||
my $entry = '';
|
||||
my $end = '';
|
||||
my $project = '';
|
||||
my $tags = '';
|
||||
my $description = '';
|
||||
my $due = '';
|
||||
|
||||
my %annotations;
|
||||
my $mid_anno = 0;
|
||||
my $anno_entry = '';
|
||||
my $anno_desc = '';
|
||||
|
||||
while (my $yaml = <>)
|
||||
{
|
||||
chomp $yaml;
|
||||
next if $yaml =~ /\sid:/;
|
||||
next if $yaml =~ /\sannotations:/;
|
||||
|
||||
if ($yaml =~ /task:|\.\.\./ && $description ne '')
|
||||
{
|
||||
# Compose the JSON
|
||||
my $json = "{\"status\":\"${status}\"";
|
||||
$json .= ",\"uuid\":\"${uuid}\"" if $uuid ne '';
|
||||
$json .= ",\"priority\":\"${priority}\"" if $priority ne '';
|
||||
$json .= ",\"project\":\"${project}\"" if $project ne '';
|
||||
$json .= ",\"entry\":\"${entry}\"" if $entry ne '';
|
||||
$json .= ",\"end\":\"${end}\"" if $end ne '';
|
||||
$json .= ",\"due\":\"${due}\"" if $due ne '';
|
||||
if ($tags ne '')
|
||||
{
|
||||
$tags =~ s/,/","/g;
|
||||
$json .= ",\"tags\":[\"${tags}\"]";
|
||||
}
|
||||
if (%annotations)
|
||||
{
|
||||
$json .= ",\"annotations\":[";
|
||||
my $pre = "";
|
||||
for my $key (sort keys %annotations) {
|
||||
$json .= "${pre}{\"entry\":\"${key}\",\"description\":\"${annotations{$key}}\"}";
|
||||
$pre = ",";
|
||||
}
|
||||
$json .= "]";
|
||||
}
|
||||
$json .= ",\"description\":\"${description}\"}";
|
||||
|
||||
push @tasks, $json;
|
||||
|
||||
$status = $uuid = $priority = $entry = $end = $project = $tags =
|
||||
$description = $due = $anno_entry = $anno_desc = '';
|
||||
$mid_anno = 0;
|
||||
%annotations = ();
|
||||
$yaml = '';
|
||||
}
|
||||
else
|
||||
{
|
||||
$mid_anno = 1 if $yaml =~ /annotation:/;
|
||||
$anno_entry = $1 if $mid_anno && $yaml =~ /entry:\s*(\S+)/;
|
||||
if ($mid_anno)
|
||||
{
|
||||
if ($yaml =~ /description:\s*(.+)/)
|
||||
{
|
||||
$anno_desc = $1;
|
||||
$mid_anno = 0;
|
||||
|
||||
$annotations{$anno_entry} = $anno_desc;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$entry = $1 if $yaml =~ /entry:\s*(\S+)/;
|
||||
$description = $1 if $yaml =~ /description:\s*(.+)/;
|
||||
}
|
||||
|
||||
$status = $1 if $yaml =~ /status:\s*(\S+)/;
|
||||
$uuid = $1 if $yaml =~ /uuid:\s*(\S+)/;
|
||||
$priority = $1 if $yaml =~ /priority:\s*(\S+)/;
|
||||
$project = $1 if $yaml =~ /project:\s*(\S+)/;
|
||||
$end = $1 if $yaml =~ /end:\s*(\S+)/;
|
||||
$due = $1 if $yaml =~ /due:\s*(\S+)/;
|
||||
$tags = $1 if $yaml =~ /tags:\s*(\S+)/;
|
||||
}
|
||||
}
|
||||
|
||||
print "[\n", join ("\n", @tasks), "\n]\n";
|
||||
exit 0;
|
||||
|
||||
################################################################################
|
||||
|
||||
__DATA__
|
||||
%YAML 1.1
|
||||
---
|
||||
task:
|
||||
annotations:
|
||||
annotation:
|
||||
entry: 20100706T025311Z
|
||||
description: Also needs to ignore control codes
|
||||
description: text.cpp/extractLines needs to calculate string length in a way that supports UTF8
|
||||
entry: 20090319T151633Z
|
||||
id: 9
|
||||
project: task-2.0
|
||||
status: pending
|
||||
tags: bug,utf8,next
|
||||
uuid: 0c4cf066-9413-4862-9dc8-0793f158a649
|
||||
...
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
#!/bin/bash
|
||||
# - These filters not modified, as their purpose is for special review
|
||||
# not dependent on context or focus:
|
||||
# - report.all.filter
|
||||
# - report.completed.filter status:completed
|
||||
# - What is this -FILTER about in my filters?
|
||||
# - In each filter, we negate a non-existent virtual tag -FILTER that
|
||||
# doesn't change what the filter matches but does add a recognizable
|
||||
# marker. This is used later to substitute the filter with a new one when
|
||||
# it changes.
|
||||
# - CAUTION: do not add any additional (i.e. non-context, non-focus) material
|
||||
# after -FILTER in the report filter variables or else it will be lost next
|
||||
# time the context or focus is changed.
|
||||
script_path=$(dirname ${0})
|
||||
. "${script_path}/task_functions.sh"
|
||||
|
||||
filter_type=$(basename ${0})
|
||||
task_config "${filter_type}.current" "${@}"
|
||||
context=$(task_get context.current)
|
||||
focus=$(task_get focus.current)
|
||||
colored_context="$(task_color 'white on red' ${context})"
|
||||
colored_focus="$(task_color 'white on blue' ${focus})"
|
||||
filter="${context} ${focus}"
|
||||
|
||||
filter_vars=$(task_vars filter)
|
||||
filter_vars=${filter_vars/report.all.filter/}
|
||||
filter_vars=${filter_vars/report.completed.filter/}
|
||||
for var in ${filter_vars}; do
|
||||
old_value=$(task_get ${var})
|
||||
old_value=${old_value/%-FILTER*/}
|
||||
task_config ${var} ${old_value} -FILTER ${filter}
|
||||
done
|
||||
|
||||
task_config "shell.prompt" "${colored_context}:${colored_focus}>"
|
||||
|
||||
echo "Filter applied to reports and add: ${filter}"
|
||||
@@ -1 +0,0 @@
|
||||
context
|
||||
@@ -55,6 +55,8 @@
|
||||
#
|
||||
# http://www.opensource.org/licenses/mit-license.php
|
||||
|
||||
# NOTE: remember that sed on OS X is different in some aspects. E.g. it does
|
||||
# not understand \t for tabs.
|
||||
|
||||
# convinience functions
|
||||
|
||||
@@ -74,7 +76,7 @@ end
|
||||
|
||||
function __fish.task.zsh
|
||||
set -q argv[2]; and set task_argv $argv[2..-1]
|
||||
task _zsh$argv[1] $task_argv | sed 's/:/\t/'
|
||||
task _zsh$argv[1] $task_argv | sed 's/:/ /'
|
||||
end
|
||||
|
||||
|
||||
@@ -141,7 +143,7 @@ function __fish.task.token_clean
|
||||
end
|
||||
|
||||
function __fish.task.list.attr_name
|
||||
task _columns | sed 's/$/:\tattribute/g'
|
||||
task _columns | sed 's/$/: attribute/g'
|
||||
# BUG: doesn't support file completion
|
||||
echo rc
|
||||
end
|
||||
@@ -149,7 +151,7 @@ end
|
||||
function __fish.task.list.attr_value
|
||||
set token (commandline -ct | cut -d ':' -f 1 | cut -d '.' -f 1 | __fish.task.token_clean)
|
||||
if test -n $token
|
||||
set attr_names (__fish.task.list.attr_name | sed 's/:\t/\t/g' | grep '^'$token | cut -d ' ' -f 1)
|
||||
set attr_names (__fish.task.list.attr_name | sed 's/: / /g' | grep '^'$token | cut -d ' ' -f 1)
|
||||
for attr_name in $attr_names
|
||||
if test -n $attr_name
|
||||
__fish.task.list.attr_value_by_name $attr_name
|
||||
@@ -250,7 +252,7 @@ function __fish.task.list.tag
|
||||
end
|
||||
|
||||
function __fish.task.list.task
|
||||
__fish.task.zsh ids | sed -E 's/^(.*)\t(.*)$/\2\ttask [id = \1]/g'
|
||||
__fish.task.zsh ids | sed -E 's/^(.*) (.*)$/\2 task [id = \1]/g'
|
||||
end
|
||||
|
||||
function __fish.task.list
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
#!/bin/sh
|
||||
|
||||
# The on-exit event is triggered once, after all processing is complete.
|
||||
# This hooks script has no effect on processing.
|
||||
# This hook script has no effect on processing.
|
||||
|
||||
# Input:
|
||||
# - line of JSON for each modified task
|
||||
|
||||
# Output:
|
||||
# - Optional feedback/error.
|
||||
|
||||
@@ -151,7 +151,6 @@ syn match taskrcGoodKey '^\s*\Vurgency.annotations.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.blocked.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.blocking.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.due.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.inherit.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.next.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.uda.priority.H.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.uda.priority.M.coefficient='he=e-1
|
||||
@@ -161,6 +160,7 @@ syn match taskrcGoodKey '^\s*\Vurgency.scheduled.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.tags.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.uda.\S\{-}.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.waiting.coefficient='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vurgency.inherit='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vverbose='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vweekstart='he=e-1
|
||||
syn match taskrcGoodKey '^\s*\Vxterm.title='he=e-1
|
||||
|
||||
@@ -31,34 +31,34 @@ _task_zshids=( ${(f)"$(task _zshids)"} )
|
||||
_task_config=($(task _config))
|
||||
_task_columns=($(task _columns))
|
||||
_task_modifiers=(
|
||||
'before' \
|
||||
'after' \
|
||||
'none' \
|
||||
'any' \
|
||||
'is' \
|
||||
'isnt' \
|
||||
'has' \
|
||||
'hasnt' \
|
||||
'startswith' \
|
||||
'endswith' \
|
||||
'word' \
|
||||
'noword'
|
||||
'before' \
|
||||
'after' \
|
||||
'none' \
|
||||
'any' \
|
||||
'is' \
|
||||
'isnt' \
|
||||
'has' \
|
||||
'hasnt' \
|
||||
'startswith' \
|
||||
'endswith' \
|
||||
'word' \
|
||||
'noword'
|
||||
)
|
||||
_task_conjunctions=(
|
||||
'and' \
|
||||
'or' \
|
||||
'xor' \
|
||||
'\)' \
|
||||
'\(' \
|
||||
'<' \
|
||||
'<=' \
|
||||
'=' \
|
||||
'!=' \
|
||||
'>=' \
|
||||
'>'
|
||||
'and' \
|
||||
'or' \
|
||||
'xor' \
|
||||
'\)' \
|
||||
'\(' \
|
||||
'<' \
|
||||
'<=' \
|
||||
'=' \
|
||||
'!=' \
|
||||
'>=' \
|
||||
'>'
|
||||
)
|
||||
_task_cmds=($(task _commands; task _aliases))
|
||||
_task_zshcmds=( ${(f)"$(task _zshcommands)"} )
|
||||
_task_zshcmds=( ${(f)"$(task _zshcommands)"} sentinel:sentinel:sentinel )
|
||||
|
||||
_task_aliases=($(task _aliases))
|
||||
|
||||
@@ -74,42 +74,42 @@ word=$'[^\0]#\0'
|
||||
# priorities
|
||||
local -a task_priorities
|
||||
_regex_words values 'task priorities' \
|
||||
'H:High' \
|
||||
'M:Middle' \
|
||||
'L:Low'
|
||||
'H:High' \
|
||||
'M:Middle' \
|
||||
'L:Low'
|
||||
task_priorities=("$reply[@]")
|
||||
|
||||
# projects
|
||||
local -a task_projects
|
||||
task_projects=(
|
||||
/"$word"/
|
||||
":values:task projects:compadd -a _task_projects"
|
||||
/"$word"/
|
||||
":values:task projects:compadd -a _task_projects"
|
||||
)
|
||||
|
||||
local -a _task_dates
|
||||
_regex_words values 'task dates' \
|
||||
'tod*ay:Today' \
|
||||
'yes*terday:Yesterday' \
|
||||
'tom*orrow:Tomorrow' \
|
||||
'sow:Start of week' \
|
||||
'soww:Start of work week' \
|
||||
'socw:Start of calendar week' \
|
||||
'som:Start of month' \
|
||||
'soq:Start of quarter' \
|
||||
'soy:Start of year' \
|
||||
'eow:End of week' \
|
||||
'eoww:End of work week' \
|
||||
'eocw:End of calendar week' \
|
||||
'eom:End of month' \
|
||||
'eoq:End of quarter' \
|
||||
'eoy:End of year' \
|
||||
'mon:Monday' \
|
||||
'tue:Tuesday'\
|
||||
'wed:Wednesday' \
|
||||
'thu:Thursday' \
|
||||
'fri:Friday' \
|
||||
'sat:Saturday' \
|
||||
'sun:Sunday' \
|
||||
'tod*ay:Today' \
|
||||
'yes*terday:Yesterday' \
|
||||
'tom*orrow:Tomorrow' \
|
||||
'sow:Start of week' \
|
||||
'soww:Start of work week' \
|
||||
'socw:Start of calendar week' \
|
||||
'som:Start of month' \
|
||||
'soq:Start of quarter' \
|
||||
'soy:Start of year' \
|
||||
'eow:End of week' \
|
||||
'eoww:End of work week' \
|
||||
'eocw:End of calendar week' \
|
||||
'eom:End of month' \
|
||||
'eoq:End of quarter' \
|
||||
'eoy:End of year' \
|
||||
'mon:Monday' \
|
||||
'tue:Tuesday'\
|
||||
'wed:Wednesday' \
|
||||
'thu:Thursday' \
|
||||
'fri:Friday' \
|
||||
'sat:Saturday' \
|
||||
'sun:Sunday' \
|
||||
'good*friday:Good Friday' \
|
||||
'easter:Easter' \
|
||||
'eastermonday:Easter Monday' \
|
||||
@@ -123,19 +123,19 @@ _task_dates=("$reply[@]")
|
||||
|
||||
local -a _task_reldates
|
||||
_regex_words values 'task reldates' \
|
||||
'hrs:n hours' \
|
||||
'day:n days' \
|
||||
'1st:first' \
|
||||
'2nd:second' \
|
||||
'3rd:third' \
|
||||
'th:4th, 5th, etc.' \
|
||||
'wks:weeks'
|
||||
'hrs:n hours' \
|
||||
'day:n days' \
|
||||
'1st:first' \
|
||||
'2nd:second' \
|
||||
'3rd:third' \
|
||||
'th:4th, 5th, etc.' \
|
||||
'wks:weeks'
|
||||
_task_reldates=("$reply[@]")
|
||||
|
||||
task_dates=(
|
||||
\( "$_task_dates[@]" \|
|
||||
\( "$_task_dates[@]" \|
|
||||
\( /$'[0-9][0-9]#'/- \( "$_task_reldates[@]" \) \)
|
||||
\)
|
||||
\)
|
||||
)
|
||||
|
||||
local -a task_zshids
|
||||
@@ -143,61 +143,61 @@ _regex_words values 'task IDs' $_task_zshids
|
||||
task_zshids=("$reply[@]")
|
||||
|
||||
_regex_words values 'task frequencies' \
|
||||
'daily:Every day' \
|
||||
'day:Every day' \
|
||||
'weekdays:Every day skipping weekend days' \
|
||||
'weekly:Every week' \
|
||||
'biweekly:Every two weeks' \
|
||||
'fortnight:Every two weeks' \
|
||||
'daily:Every day' \
|
||||
'day:Every day' \
|
||||
'weekdays:Every day skipping weekend days' \
|
||||
'weekly:Every week' \
|
||||
'biweekly:Every two weeks' \
|
||||
'fortnight:Every two weeks' \
|
||||
'monthly:Every month' \
|
||||
'quarterly:Every three months' \
|
||||
'semiannual:Every six months' \
|
||||
'annual:Every year' \
|
||||
'yearly:Every year' \
|
||||
'biannual:Every two years' \
|
||||
'biyearly:Every two years'
|
||||
'quarterly:Every three months' \
|
||||
'semiannual:Every six months' \
|
||||
'annual:Every year' \
|
||||
'yearly:Every year' \
|
||||
'biannual:Every two years' \
|
||||
'biyearly:Every two years'
|
||||
_task_freqs=("$reply[@]")
|
||||
|
||||
local -a _task_frequencies
|
||||
_regex_words values 'task frequencies' \
|
||||
'd:days' \
|
||||
'w:weeks' \
|
||||
'q:quarters' \
|
||||
'y:years'
|
||||
'd:days' \
|
||||
'w:weeks' \
|
||||
'q:quarters' \
|
||||
'y:years'
|
||||
_task_frequencies=("$reply[@]")
|
||||
|
||||
task_freqs=(
|
||||
\( "$_task_freqs[@]" \|
|
||||
\( "$_task_freqs[@]" \|
|
||||
\( /$'[0-9][0-9]#'/- \( "$_task_frequencies[@]" \) \)
|
||||
\)
|
||||
\)
|
||||
)
|
||||
|
||||
# attributes
|
||||
local -a task_attributes
|
||||
_regex_words -t ':' default 'task attributes' \
|
||||
'des*cription:Task description text' \
|
||||
'status:Status of task - pending, completed, deleted, waiting' \
|
||||
'pro*ject:Project name:$task_projects' \
|
||||
'pri*ority:priority:$task_priorities' \
|
||||
'du*e:Due date:$task_dates' \
|
||||
're*cur:Recurrence frequency:$task_freqs' \
|
||||
'un*til:Expiration date:$task_dates' \
|
||||
'li*mit:Desired number of rows in report' \
|
||||
'wa*it:Date until task becomes pending:$task_dates' \
|
||||
'ent*ry:Date task was created:$task_dates' \
|
||||
'end:Date task was completed/deleted:$task_dates' \
|
||||
'st*art:Date task was started:$task_dates' \
|
||||
'sc*heduled:Date task is scheduled to start:$task_dates' \
|
||||
'dep*ends:Other tasks that this task depends upon:$task_zshids'
|
||||
'des*cription:Task description text' \
|
||||
'status:Status of task - pending, completed, deleted, waiting' \
|
||||
'pro*ject:Project name:$task_projects' \
|
||||
'pri*ority:priority:$task_priorities' \
|
||||
'du*e:Due date:$task_dates' \
|
||||
're*cur:Recurrence frequency:$task_freqs' \
|
||||
'un*til:Expiration date:$task_dates' \
|
||||
'li*mit:Desired number of rows in report' \
|
||||
'wa*it:Date until task becomes pending:$task_dates' \
|
||||
'ent*ry:Date task was created:$task_dates' \
|
||||
'end:Date task was completed/deleted:$task_dates' \
|
||||
'st*art:Date task was started:$task_dates' \
|
||||
'sc*heduled:Date task is scheduled to start:$task_dates' \
|
||||
'dep*ends:Other tasks that this task depends upon:$task_zshids'
|
||||
task_attributes=("$reply[@]")
|
||||
|
||||
args=(
|
||||
\( "$task_attributes[@]" \|
|
||||
\( /'(project|description|status|entry|end|start|scheduled|depends|due|wait|recur|priority|until|limit).'/- \( /$'[^:]#:'/ ":default:modifiers:compadd -S ':' -a _task_modifiers" \) \) \|
|
||||
\( /'(rc).'/- \( /$'[^:]#:'/ ":arguments:config:compadd -S ':' -a _task_config" \) \) \|
|
||||
\( /'(+|-)'/- \( /"$word"/ ":values:remove tag:compadd -a _task_tags" \) \) \|
|
||||
\( /"$word"/ \)
|
||||
\) \#
|
||||
\( "$task_attributes[@]" \|
|
||||
\( /'(project|description|status|entry|end|start|scheduled|depends|due|wait|recur|priority|until|limit).'/- \( /$'[^:]#:'/ ":default:modifiers:compadd -S ':' -a _task_modifiers" \) \) \|
|
||||
\( /'(rc).'/- \( /$'[^:]#:'/ ":arguments:config:compadd -S ':' -a _task_config" \) \) \|
|
||||
\( /'(+|-)'/- \( /"$word"/ ":values:remove tag:compadd -a _task_tags" \) \) \|
|
||||
\( /"$word"/ \)
|
||||
\) \#
|
||||
)
|
||||
_regex_arguments _task_attributes "${args[@]}"
|
||||
|
||||
@@ -206,22 +206,50 @@ _regex_arguments _task_attributes "${args[@]}"
|
||||
# filter completion
|
||||
(( $+functions[_task_filter] )) ||
|
||||
_task_filter() {
|
||||
_task_attributes "$@"
|
||||
_task_attributes "$@"
|
||||
|
||||
# TODO complete conjunctions only if the previous word is a filter expression, i.e. attribute, ID, any non-command
|
||||
_describe -t default 'task conjunctions' _task_conjunctions
|
||||
# TODO complete conjunctions only if the previous word is a filter expression, i.e. attribute, ID, any non-command
|
||||
_describe -t default 'task conjunctions' _task_conjunctions
|
||||
}
|
||||
|
||||
# execute completion
|
||||
(( $+functions[_task_execute] )) ||
|
||||
_task_execute() {
|
||||
_files
|
||||
_files
|
||||
}
|
||||
|
||||
# id-only completion
|
||||
(( $+functions[_task_id] )) ||
|
||||
_task_id() {
|
||||
_describe -t values 'task IDs' _task_zshids
|
||||
_describe -t values 'task IDs' _task_zshids
|
||||
}
|
||||
|
||||
# subcommand-only function
|
||||
(( $+functions[_task_subcommands] )) ||
|
||||
_task_subcommands() {
|
||||
local -a subcommands
|
||||
local _zshcmd
|
||||
local cmd category desc
|
||||
local lastcategory=''
|
||||
# The list is sorted by category, in the right order.
|
||||
for _zshcmd in "$_task_zshcmds[@]"; do
|
||||
# Parse out the three fields
|
||||
cmd=${_zshcmd%%:*}
|
||||
category=${${_zshcmd#*:}%%:*}
|
||||
desc=${_zshcmd#*:*:}
|
||||
|
||||
# Present each category as soon as the first entry in the *next* category
|
||||
# is seen.
|
||||
if [[ $category != $lastcategory && -n $lastcategory ]]; then
|
||||
_describe -t ${lastcategory}-commands "task ${lastcategory} command" subcommands
|
||||
subcommands=()
|
||||
fi
|
||||
|
||||
# Log the subcommand; we will process it in some future iteration.
|
||||
subcommands+=( "$cmd:$desc" )
|
||||
|
||||
lastcategory=$category
|
||||
done
|
||||
}
|
||||
|
||||
## first level completion => task sub-command completion
|
||||
@@ -229,26 +257,28 @@ _task_id() {
|
||||
_task_default() {
|
||||
local cmd ret=1
|
||||
|
||||
integer i=1
|
||||
while (( i < $#words ))
|
||||
do
|
||||
cmd="${_task_cmds[(r)$words[$i]]}"
|
||||
if (( $#cmd )); then
|
||||
_call_function ret _task_${cmd} ||
|
||||
_call_function ret _task_filter ||
|
||||
_message "No command remaining."
|
||||
return ret
|
||||
fi
|
||||
(( i++ ))
|
||||
done
|
||||
integer i=1
|
||||
while (( i < $#words ))
|
||||
do
|
||||
cmd="${_task_cmds[(r)$words[$i]]}"
|
||||
if (( $#cmd )); then
|
||||
_call_function ret _task_${cmd} ||
|
||||
_call_function ret _task_filter ||
|
||||
_message "No command remaining."
|
||||
return ret
|
||||
fi
|
||||
(( i++ ))
|
||||
done
|
||||
|
||||
# update IDs
|
||||
_task_zshids=( ${(f)"$(task _zshids)"} )
|
||||
# update IDs
|
||||
_task_zshids=( ${(f)"$(task _zshids)"} )
|
||||
|
||||
_describe -t commands 'task command' _task_zshcmds
|
||||
_describe -t values 'task IDs' _task_zshids
|
||||
_describe -t aliases 'task aliases' _task_aliases
|
||||
_call_function ret _task_filter
|
||||
_task_subcommands
|
||||
_describe -t tasks 'task IDs' _task_zshids
|
||||
_describe -t aliases 'task aliases' _task_aliases
|
||||
_call_function ret _task_filter
|
||||
|
||||
return ret
|
||||
return ret
|
||||
}
|
||||
|
||||
_task "$@"
|
||||
|
||||
3
src/.gitignore
vendored
3
src/.gitignore
vendored
@@ -1,6 +1,5 @@
|
||||
*.o
|
||||
Makefile.in
|
||||
tw-*
|
||||
args
|
||||
debug
|
||||
calc
|
||||
lex
|
||||
|
||||
2469
src/CLI.cpp
2469
src/CLI.cpp
File diff suppressed because it is too large
Load Diff
150
src/CLI.h
150
src/CLI.h
@@ -1,150 +0,0 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
// http://www.opensource.org/licenses/mit-license.php
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
#ifndef INCLUDED_CLI
|
||||
#define INCLUDED_CLI
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <map>
|
||||
#include <Lexer.h>
|
||||
#include <Path.h>
|
||||
#include <File.h>
|
||||
|
||||
// Represents a single argument.
|
||||
class A
|
||||
{
|
||||
public:
|
||||
A ();
|
||||
A (const std::string&, const std::string&);
|
||||
A (const std::string&, const int);
|
||||
A (const std::string&, const double);
|
||||
~A ();
|
||||
A (const A&);
|
||||
A& operator= (const A&);
|
||||
bool hasTag (const std::string&) const;
|
||||
void tag (const std::string&);
|
||||
void unTag (const std::string&);
|
||||
void unTagAll ();
|
||||
void attribute (const std::string&, const std::string&);
|
||||
void attribute (const std::string&, const int);
|
||||
void attribute (const std::string&, const double);
|
||||
const std::string attribute (const std::string&) const;
|
||||
void removeAttribute (const std::string&);
|
||||
const std::string dump () const;
|
||||
|
||||
public:
|
||||
std::string _name;
|
||||
std::vector <std::string> _tags;
|
||||
std::map <std::string, std::string> _attributes;
|
||||
};
|
||||
|
||||
// Represents the command line.
|
||||
class CLI
|
||||
{
|
||||
public:
|
||||
static int minimumMatchLength;
|
||||
static void getOverride (int, const char**, std::string&, File&);
|
||||
static void getDataLocation (int, const char**, Path&);
|
||||
static void applyOverrides (int, const char**);
|
||||
|
||||
public:
|
||||
CLI ();
|
||||
~CLI ();
|
||||
void alias (const std::string&, const std::string&);
|
||||
void entity (const std::string&, const std::string&);
|
||||
void initialize (int, const char**);
|
||||
void add (const std::string&);
|
||||
void addContextFilter ();
|
||||
void addRawFilter (const std::string& arg);
|
||||
void analyze (bool parse = true, bool strict = false);
|
||||
void applyOverrides ();
|
||||
const std::string getFilter (bool applyContext = true);
|
||||
const std::vector <std::string> getWords ();
|
||||
bool canonicalize (std::string&, const std::string&, const std::string&) const;
|
||||
std::string getBinary () const;
|
||||
std::string getCommand () const;
|
||||
std::string getLimit () const;
|
||||
const std::string dump (const std::string& title = "CLI Parser") const;
|
||||
|
||||
private:
|
||||
void addArg (const std::string&, Lexer::Type type = Lexer::Type::word);
|
||||
void aliasExpansion ();
|
||||
void findOverrides ();
|
||||
void categorize ();
|
||||
bool exactMatch (const std::string&, const std::string&) const;
|
||||
void desugarFilterTags ();
|
||||
void findStrayModifications ();
|
||||
void desugarFilterAttributes ();
|
||||
void desugarFilterAttributeModifiers ();
|
||||
void desugarFilterPatterns ();
|
||||
void findIDs ();
|
||||
void findUUIDs ();
|
||||
void insertIDExpr ();
|
||||
void desugarFilterPlainArgs ();
|
||||
void findOperators ();
|
||||
void findAttributes ();
|
||||
void insertJunctions ();
|
||||
void injectDefaults ();
|
||||
void decomposeModAttributes ();
|
||||
void decomposeModAttributeModifiers ();
|
||||
void decomposeModTags ();
|
||||
void decomposeModSubstitutions ();
|
||||
|
||||
bool isTerminator (const std::string&) const;
|
||||
bool isRCOverride (const std::string&) const;
|
||||
bool isConfigOverride (const std::string&) const;
|
||||
bool isCommand (const std::string&) const;
|
||||
bool isTag (const std::string&) const;
|
||||
bool isUUIDList (const std::string&) const;
|
||||
bool isUUID (const std::string&) const;
|
||||
bool isIDSequence (const std::string&) const;
|
||||
bool isID (const std::string&) const;
|
||||
bool isPattern (const std::string&) const;
|
||||
bool isSubstitution (const std::string&) const;
|
||||
bool isAttribute (const std::string&) const;
|
||||
bool isOperator (const std::string&) const;
|
||||
bool isName (const std::string&) const;
|
||||
|
||||
bool disqualifyInsufficientTerms (const std::vector <std::pair <std::string, Lexer::Type>>&) const;
|
||||
bool disqualifyNoOps (const std::vector <std::pair <std::string, Lexer::Type>>&) const;
|
||||
bool disqualifyOnlyParenOps (const std::vector <std::pair <std::string, Lexer::Type>>&) const;
|
||||
bool disqualifyFirstLastBinary (const std::vector <std::pair <std::string, Lexer::Type>>&) const;
|
||||
bool disqualifySugarFree (const std::vector <std::pair <std::string, Lexer::Type>>&) const;
|
||||
|
||||
public:
|
||||
std::multimap <std::string, std::string> _entities;
|
||||
std::map <std::string, std::string> _aliases;
|
||||
std::vector <std::string> _original_args;
|
||||
std::vector <A> _args;
|
||||
|
||||
std::vector <std::pair <int, int>> _id_ranges;
|
||||
std::vector <std::string> _uuid_list;
|
||||
bool _strict;
|
||||
bool _terminated;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
2163
src/CLI2.cpp
Normal file
2163
src/CLI2.cpp
Normal file
File diff suppressed because it is too large
Load Diff
121
src/CLI2.h
Normal file
121
src/CLI2.h
Normal file
@@ -0,0 +1,121 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
// http://www.opensource.org/licenses/mit-license.php
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
#ifndef INCLUDED_CLI2
|
||||
#define INCLUDED_CLI2
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <map>
|
||||
#include <Lexer.h>
|
||||
#include <FS.h>
|
||||
|
||||
// Represents a single argument.
|
||||
class A2
|
||||
{
|
||||
public:
|
||||
A2 (const std::string&, Lexer::Type);
|
||||
~A2 ();
|
||||
A2 (const A2&);
|
||||
A2& operator= (const A2&);
|
||||
bool hasTag (const std::string&) const;
|
||||
void tag (const std::string&);
|
||||
void unTag (const std::string&);
|
||||
void attribute (const std::string&, const std::string&);
|
||||
const std::string attribute (const std::string&) const;
|
||||
const std::string getToken () const;
|
||||
const std::string dump () const;
|
||||
void decompose ();
|
||||
|
||||
public:
|
||||
Lexer::Type _lextype;
|
||||
std::vector <std::string> _tags;
|
||||
std::map <std::string, std::string> _attributes;
|
||||
};
|
||||
|
||||
// Represents the command line.
|
||||
class CLI2
|
||||
{
|
||||
public:
|
||||
static int minimumMatchLength;
|
||||
|
||||
static void getOverride (int, const char**, std::string&, File&);
|
||||
static void getDataLocation (int, const char**, Path&);
|
||||
static void applyOverrides (int, const char**);
|
||||
|
||||
public:
|
||||
CLI2 ();
|
||||
~CLI2 ();
|
||||
void alias (const std::string&, const std::string&);
|
||||
void entity (const std::string&, const std::string&);
|
||||
|
||||
void add (const std::string&);
|
||||
void add (const std::vector <std::string>&);
|
||||
void analyze ();
|
||||
void addFilter (const std::string& arg);
|
||||
void addContextFilter ();
|
||||
void prepareFilter ();
|
||||
const std::vector <std::string> getWords ();
|
||||
bool canonicalize (std::string&, const std::string&, const std::string&) const;
|
||||
std::string getBinary () const;
|
||||
std::string getCommand (bool canonical = true) const;
|
||||
const std::string dump (const std::string& title = "CLI2 Parser") const;
|
||||
|
||||
private:
|
||||
void handleArg0 ();
|
||||
void lexArguments ();
|
||||
void demotion ();
|
||||
void aliasExpansion ();
|
||||
void canonicalizeNames ();
|
||||
void categorizeArgs ();
|
||||
void parenthesizeOriginalFilter ();
|
||||
bool findCommand ();
|
||||
bool exactMatch (const std::string&, const std::string&) const;
|
||||
void desugarFilterTags ();
|
||||
void findStrayModifications ();
|
||||
void desugarFilterAttributes ();
|
||||
void desugarFilterPatterns ();
|
||||
void findIDs ();
|
||||
void findUUIDs ();
|
||||
void insertIDExpr ();
|
||||
void lexFilterArgs ();
|
||||
void desugarFilterPlainArgs ();
|
||||
void insertJunctions ();
|
||||
void defaultCommand ();
|
||||
std::vector <A2> lexExpression (const std::string&);
|
||||
|
||||
public:
|
||||
std::multimap <std::string, std::string> _entities;
|
||||
std::map <std::string, std::string> _aliases;
|
||||
std::vector <A2> _original_args;
|
||||
std::vector <A2> _args;
|
||||
|
||||
std::vector <std::pair <std::string, std::string>> _id_ranges;
|
||||
std::vector <std::string> _uuid_list;
|
||||
bool _context_filter_added;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -5,25 +5,21 @@ include_directories (${CMAKE_SOURCE_DIR}
|
||||
${CMAKE_SOURCE_DIR}/src/columns
|
||||
${TASK_INCLUDE_DIRS})
|
||||
|
||||
set (task_SRCS CLI.cpp CLI.h
|
||||
set (task_SRCS CLI2.cpp CLI2.h
|
||||
Color.cpp Color.h
|
||||
Config.cpp Config.h
|
||||
Context.cpp Context.h
|
||||
DOM.cpp DOM.h
|
||||
Date.cpp Date.h
|
||||
Dates.cpp Dates.h
|
||||
Directory.cpp Directory.h
|
||||
Duration.cpp Duration.h
|
||||
Eval.cpp Eval.h
|
||||
File.cpp File.h
|
||||
Filter.cpp Filter.h
|
||||
FS.cpp FS.h
|
||||
Hooks.cpp Hooks.h
|
||||
ISO8601.cpp ISO8601.h
|
||||
JSON.cpp JSON.h
|
||||
Lexer.cpp Lexer.h
|
||||
Msg.cpp Msg.h
|
||||
Nibbler.cpp Nibbler.h
|
||||
Path.cpp Path.h
|
||||
RX.cpp RX.h
|
||||
TDB2.cpp TDB2.h
|
||||
Task.cpp Task.h
|
||||
|
||||
@@ -74,14 +74,12 @@ Color::Color (const Color& other)
|
||||
Color::Color (unsigned int c)
|
||||
: _value (0)
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
if (!(c & _COLOR_HASFG)) _value &= ~_COLOR_FG;
|
||||
if (!(c & _COLOR_HASBG)) _value &= ~_COLOR_BG;
|
||||
|
||||
_value = c & (_COLOR_256 | _COLOR_HASBG | _COLOR_HASFG |_COLOR_UNDERLINE |
|
||||
_COLOR_INVERSE | _COLOR_BOLD | _COLOR_BRIGHT | _COLOR_BG |
|
||||
_COLOR_FG);
|
||||
#endif
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -99,16 +97,9 @@ Color::Color (unsigned int c)
|
||||
Color::Color (const std::string& spec)
|
||||
: _value (0)
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
// By converting underscores to spaces, we inherently support the old "on_red"
|
||||
// style of specifying background colors. We consider underscores to be
|
||||
// deprecated.
|
||||
std::string modifiable_spec = spec;
|
||||
std::replace (modifiable_spec.begin (), modifiable_spec.end (), '_', ' ');
|
||||
|
||||
// Split spec into words.
|
||||
std::vector <std::string> words;
|
||||
split (words, modifiable_spec, ' ');
|
||||
split (words, spec, ' ');
|
||||
|
||||
// Construct the color as two separate colors, then blend them later. This
|
||||
// make it possible to declare a color such as "color1 on black", and have
|
||||
@@ -119,10 +110,9 @@ Color::Color (const std::string& spec)
|
||||
bool bg = false;
|
||||
int index;
|
||||
std::string word;
|
||||
std::vector <std::string>::iterator it;
|
||||
for (it = words.begin (); it != words.end (); ++it)
|
||||
for (auto& it : words)
|
||||
{
|
||||
word = lowerCase (trim (*it));
|
||||
word = lowerCase (trim (it));
|
||||
|
||||
if (word == "bold") fg_value |= _COLOR_BOLD;
|
||||
else if (word == "bright") bg_value |= _COLOR_BRIGHT;
|
||||
@@ -154,7 +144,7 @@ Color::Color (const std::string& spec)
|
||||
{
|
||||
index = atoi (word.substr (4).c_str ());
|
||||
if (index < 0 || index > 23)
|
||||
throw format (STRING_COLOR_UNRECOGNIZED, *it);
|
||||
throw format (STRING_COLOR_UNRECOGNIZED, it);
|
||||
|
||||
if (bg)
|
||||
{
|
||||
@@ -176,7 +166,7 @@ Color::Color (const std::string& spec)
|
||||
index = atoi (word.substr (3).c_str ());
|
||||
if (word.length () != 6 ||
|
||||
index < 0 || index > 555)
|
||||
throw format (STRING_COLOR_UNRECOGNIZED, *it);
|
||||
throw format (STRING_COLOR_UNRECOGNIZED, it);
|
||||
|
||||
int r = atoi (word.substr (3, 1).c_str ());
|
||||
int g = atoi (word.substr (4, 1).c_str ());
|
||||
@@ -184,7 +174,7 @@ Color::Color (const std::string& spec)
|
||||
if (r < 0 || r > 5 ||
|
||||
g < 0 || g > 5 ||
|
||||
b < 0 || b > 5)
|
||||
throw format (STRING_COLOR_UNRECOGNIZED, *it);
|
||||
throw format (STRING_COLOR_UNRECOGNIZED, it);
|
||||
|
||||
index = 16 + r*36 + g*6 + b;
|
||||
|
||||
@@ -207,7 +197,7 @@ Color::Color (const std::string& spec)
|
||||
{
|
||||
index = atoi (word.substr (5).c_str ());
|
||||
if (index < 0 || index > 255)
|
||||
throw format (STRING_COLOR_UNRECOGNIZED, *it);
|
||||
throw format (STRING_COLOR_UNRECOGNIZED, it);
|
||||
|
||||
upgrade ();
|
||||
|
||||
@@ -225,33 +215,29 @@ Color::Color (const std::string& spec)
|
||||
}
|
||||
}
|
||||
else if (word != "")
|
||||
throw format (STRING_COLOR_UNRECOGNIZED, *it);
|
||||
throw format (STRING_COLOR_UNRECOGNIZED, it);
|
||||
}
|
||||
|
||||
// Now combine the fg and bg into a single color.
|
||||
_value = fg_value;
|
||||
blend (Color (bg_value));
|
||||
#endif
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Color::Color (color_id fg)
|
||||
: _value (0)
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
if (fg != Color::nocolor)
|
||||
{
|
||||
_value |= _COLOR_HASFG;
|
||||
_value |= fg;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Color::Color (color_id fg, color_id bg)
|
||||
: _value (0)
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
if (bg != Color::nocolor)
|
||||
{
|
||||
_value |= _COLOR_HASBG;
|
||||
@@ -263,14 +249,12 @@ Color::Color (color_id fg, color_id bg)
|
||||
_value |= _COLOR_HASFG;
|
||||
_value |= fg;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Color::Color (color_id fg, color_id bg, bool underline, bool bold, bool bright)
|
||||
: _value (0)
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
_value |= ((underline ? 1 : 0) << 18)
|
||||
| ((bold ? 1 : 0) << 17)
|
||||
| ((bright ? 1 : 0) << 16);
|
||||
@@ -286,7 +270,6 @@ Color::Color (color_id fg, color_id bg, bool underline, bool bold, bool bright)
|
||||
_value |= _COLOR_HASFG;
|
||||
_value |= fg;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -307,7 +290,6 @@ Color& Color::operator= (const Color& other)
|
||||
Color::operator std::string () const
|
||||
{
|
||||
std::string description;
|
||||
#ifdef FEATURE_COLOR
|
||||
if (_value & _COLOR_BOLD) description += "bold";
|
||||
|
||||
if (_value & _COLOR_UNDERLINE)
|
||||
@@ -328,7 +310,6 @@ Color::operator std::string () const
|
||||
|
||||
description += " " + bg ();
|
||||
}
|
||||
#endif
|
||||
|
||||
return description;
|
||||
}
|
||||
@@ -344,7 +325,6 @@ Color::operator int () const
|
||||
// other take precedence.
|
||||
void Color::blend (const Color& other)
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
if (!other.nontrivial ())
|
||||
return;
|
||||
|
||||
@@ -396,13 +376,11 @@ void Color::blend (const Color& other)
|
||||
_value |= (c._value & _COLOR_BG); // Apply other color.
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
void Color::upgrade ()
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
if (!(_value & _COLOR_256))
|
||||
{
|
||||
if (_value & _COLOR_HASFG)
|
||||
@@ -425,7 +403,6 @@ void Color::upgrade ()
|
||||
|
||||
_value |= _COLOR_256;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -442,7 +419,6 @@ void Color::upgrade ()
|
||||
// 256 bg \033[48;5;Nm
|
||||
std::string Color::colorize (const std::string& input)
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
if (!nontrivial ())
|
||||
return input;
|
||||
|
||||
@@ -452,35 +428,19 @@ std::string Color::colorize (const std::string& input)
|
||||
// 256 color
|
||||
if (_value & _COLOR_256)
|
||||
{
|
||||
bool needTerminator = false;
|
||||
|
||||
if (_value & _COLOR_UNDERLINE)
|
||||
{
|
||||
result << "\033[4m";
|
||||
needTerminator = true;
|
||||
}
|
||||
|
||||
if (_value & _COLOR_INVERSE)
|
||||
{
|
||||
result << "\033[7m";
|
||||
needTerminator = true;
|
||||
}
|
||||
|
||||
if (_value & _COLOR_HASFG)
|
||||
{
|
||||
result << "\033[38;5;" << (_value & _COLOR_FG) << "m";
|
||||
needTerminator = true;
|
||||
}
|
||||
|
||||
if (_value & _COLOR_HASBG)
|
||||
{
|
||||
result << "\033[48;5;" << ((_value & _COLOR_BG) >> 8) << "m";
|
||||
needTerminator = true;
|
||||
}
|
||||
|
||||
result << input;
|
||||
if (needTerminator)
|
||||
result << "\033[0m";
|
||||
result << input << "\033[0m";
|
||||
|
||||
return result.str ();
|
||||
}
|
||||
@@ -523,7 +483,6 @@ std::string Color::colorize (const std::string& input)
|
||||
result << "m" << input << "\033[0m";
|
||||
return result.str ();
|
||||
}
|
||||
#endif
|
||||
|
||||
return input;
|
||||
}
|
||||
@@ -532,7 +491,6 @@ std::string Color::colorize (const std::string& input)
|
||||
// Remove color codes from a string.
|
||||
std::string Color::strip (const std::string& input)
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
int length = input.length ();
|
||||
bool inside = false;
|
||||
std::string output;
|
||||
@@ -553,20 +511,13 @@ std::string Color::strip (const std::string& input)
|
||||
}
|
||||
|
||||
return output;
|
||||
#else
|
||||
return input;
|
||||
#endif
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
std::string Color::colorize (const std::string& input, const std::string& spec)
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
Color c (spec);
|
||||
return c.colorize (input);
|
||||
#else
|
||||
return input;
|
||||
#endif
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -588,7 +539,6 @@ int Color::find (const std::string& input)
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
std::string Color::fg () const
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
int index = _value & _COLOR_FG;
|
||||
|
||||
if (_value & _COLOR_256)
|
||||
@@ -606,7 +556,6 @@ std::string Color::fg () const
|
||||
if (allColors[i].index == index)
|
||||
return allColors[i].english_name;
|
||||
}
|
||||
#endif
|
||||
|
||||
return "";
|
||||
}
|
||||
@@ -614,7 +563,6 @@ std::string Color::fg () const
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
std::string Color::bg () const
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
int index = (_value & _COLOR_BG) >> 8;
|
||||
|
||||
if (_value & _COLOR_256)
|
||||
@@ -632,7 +580,6 @@ std::string Color::bg () const
|
||||
if (allColors[i].index == index)
|
||||
return allColors[i].english_name;
|
||||
}
|
||||
#endif
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
@@ -29,8 +29,6 @@
|
||||
|
||||
#include <string>
|
||||
|
||||
#define FEATURE_COLOR 1
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
#define _COLOR_INVERSE 0x00400000 // Inverse attribute.
|
||||
#define _COLOR_256 0x00200000 // 256-color mode.
|
||||
|
||||
@@ -33,9 +33,8 @@
|
||||
#include <inttypes.h>
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
||||
#include <Directory.h>
|
||||
#include <Date.h>
|
||||
#include <File.h>
|
||||
#include <ISO8601.h>
|
||||
#include <FS.h>
|
||||
#include <Timer.h>
|
||||
#include <JSON.h>
|
||||
#include <Config.h>
|
||||
@@ -76,11 +75,8 @@ std::string Config::_defaults =
|
||||
"reserved.lines=1 # Assume a 1-line prompt\n"
|
||||
"\n"
|
||||
"# Miscellaneous\n"
|
||||
"verbose=yes # Provide maximal feedback\n"
|
||||
"#verbose=no # Provide regular feedback\n"
|
||||
"#verbose=nothing # Provide no feedback\n"
|
||||
"# # Comma-separated list. May contain any subset of:\n"
|
||||
"#verbose=blank,header,footnote,label,new-id,new-uuid,affected,edit,special,project,sync,filter\n"
|
||||
"verbose=blank,header,footnote,label,new-id,new-uuid,affected,edit,special,project,sync,unwait,recur\n"
|
||||
"confirmation=yes # Confirmation on delete, big changes\n"
|
||||
"recurrence=yes # Enable recurrence\n"
|
||||
"recurrence.confirmation=prompt # Confirmation for propagating changes among recurring tasks (yes/no/prompt)\n"
|
||||
@@ -91,11 +87,7 @@ std::string Config::_defaults =
|
||||
"column.padding=1 # Spaces between each column in a report\n"
|
||||
"bulk=3 # 3 or more tasks considered a bulk change and is confirmed\n"
|
||||
"nag=You have more urgent tasks. # Nag message to keep you honest\n" // TODO
|
||||
#ifdef CYGWIN
|
||||
"search.case.sensitive=no # Case-insensitive regex searches are broken under Cygwin\n"
|
||||
#else
|
||||
"search.case.sensitive=yes # Setting to no allows case insensitive searches\n"
|
||||
#endif
|
||||
"active.indicator=* # What to show as an active task indicator\n"
|
||||
"tag.indicator=+ # What to show as a tag indicator\n"
|
||||
"dependency.indicator=D # What to show as a dependency indicator\n"
|
||||
@@ -107,7 +99,8 @@ std::string Config::_defaults =
|
||||
"xterm.title=no # Sets xterm title for some commands\n"
|
||||
"expressions=infix # Prefer infix over postfix expressions\n"
|
||||
"dom=on # Support DOM access\n"
|
||||
"json.array=off # Enclose JSON output in [ ]\n"
|
||||
"json.array=on # Enclose JSON output in [ ]\n"
|
||||
"json.depends.array=on # Encode dependencies as a JSON array\n"
|
||||
"abbreviation.minimum=2 # Shortest allowed abbreviation\n"
|
||||
"\n"
|
||||
"# Dates\n"
|
||||
@@ -119,7 +112,7 @@ std::string Config::_defaults =
|
||||
"dateformat.annotation= # Preferred display date format for annotations\n"
|
||||
"date.iso=yes # Enable ISO date support\n"
|
||||
"weekstart="
|
||||
STRING_DATE_SUNDAY_LONG
|
||||
STRING_DATE_SUNDAY
|
||||
" # Sunday or Monday only\n"
|
||||
"displayweeknumber=yes # Show week numbers on calendar\n"
|
||||
"due=7 # Task is considered due in 7 days\n"
|
||||
@@ -144,7 +137,7 @@ std::string Config::_defaults =
|
||||
"dependency.confirmation=on # Should dependency chain repair be confirmed?\n"
|
||||
"\n"
|
||||
"# Urgency Coefficients\n"
|
||||
"urgency.next.coefficient=15.0 # Urgency coefficient for 'next' special tag\n"
|
||||
"urgency.user.tag.next.coefficient=15.0 # Urgency coefficient for 'next' special tag\n"
|
||||
"urgency.due.coefficient=12.0 # Urgency coefficient for due dates\n"
|
||||
"urgency.blocking.coefficient=8.0 # Urgency coefficient for blocking tasks\n"
|
||||
"urgency.active.coefficient=4.0 # Urgency coefficient for active tasks\n"
|
||||
@@ -154,8 +147,8 @@ std::string Config::_defaults =
|
||||
"urgency.tags.coefficient=1.0 # Urgency coefficient for tags\n"
|
||||
"urgency.project.coefficient=1.0 # Urgency coefficient for projects\n"
|
||||
"urgency.blocked.coefficient=-5.0 # Urgency coefficient for blocked tasks\n"
|
||||
"urgency.inherit.coefficient=0.0 # Urgency coefficient for blocked tasks inheriting from blocking tasks\n"
|
||||
"urgency.waiting.coefficient=-3.0 # Urgency coefficient for waiting status\n"
|
||||
"urgency.inherit=off # Recursively inherit highest urgency value from blocked tasks\n"
|
||||
"urgency.age.max=365 # Maximum age in days\n"
|
||||
"\n"
|
||||
"#urgency.user.project.foo.coefficient=5.0 # Urgency coefficients for 'foo' project\n"
|
||||
@@ -169,6 +162,7 @@ std::string Config::_defaults =
|
||||
"rule.precedence.color=deleted,completed,active,keyword.,tag.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,uda.\n"
|
||||
"\n"
|
||||
"# General decoration\n"
|
||||
"rule.color.merge=yes\n"
|
||||
"color.label=\n"
|
||||
"color.label.sort=\n"
|
||||
"color.alternate=on gray2\n"
|
||||
@@ -243,6 +237,7 @@ std::string Config::_defaults =
|
||||
"rule.precedence.color=deleted,completed,active,keyword.,tag.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,uda.\n"
|
||||
"\n"
|
||||
"# General decoration\n"
|
||||
"rule.color.merge=yes\n"
|
||||
"color.label=\n"
|
||||
"color.label.sort=\n"
|
||||
"color.alternate=\n"
|
||||
@@ -342,6 +337,7 @@ std::string Config::_defaults =
|
||||
"list.all.tags=no # Include old tag names in 'tags' command\n"
|
||||
"print.empty.columns=no # Print columns which have no data for any task\n"
|
||||
"debug=no # Display diagnostics\n"
|
||||
"sugar=yes # Syntactic sugar\n"
|
||||
"obfuscate=no # Obfuscate data for error reporting\n"
|
||||
"fontunderline=yes # Uses underlines rather than -------\n"
|
||||
"shell.prompt=task> # Prompt used by the shell command\n"
|
||||
@@ -387,19 +383,19 @@ std::string Config::_defaults =
|
||||
"report.minimal.description=Minimal details of tasks\n"
|
||||
"report.minimal.labels=ID,Project,Tags,Description\n"
|
||||
"report.minimal.columns=id,project,tags.count,description.count\n"
|
||||
"report.minimal.filter=(status:pending or status:waiting)\n"
|
||||
"report.minimal.filter=status:pending or status:waiting\n"
|
||||
"report.minimal.sort=project+/,description+\n"
|
||||
"\n"
|
||||
"report.newest.description=Newest tasks\n"
|
||||
"report.newest.labels=ID,Active,Created,Age,Mod,D,P,Project,Tags,R,Wait,Sch,Due,Until,Description\n"
|
||||
"report.newest.columns=id,start.age,entry,entry.age,modified.age,depends.indicator,priority,project,tags,recur.indicator,wait.remaining,scheduled.countdown,due,until.age,description\n"
|
||||
"report.newest.filter=(status:pending or status:waiting)\n"
|
||||
"report.newest.filter=status:pending or status:waiting\n"
|
||||
"report.newest.sort=entry-\n"
|
||||
"\n"
|
||||
"report.oldest.description=Oldest tasks\n"
|
||||
"report.oldest.labels=ID,Active,Created,Age,Mod,D,P,Project,Tags,R,Wait,Sch,Due,Until,Description\n"
|
||||
"report.oldest.columns=id,start.age,entry,entry.age,modified.age,depends.indicator,priority,project,tags,recur.indicator,wait.remaining,scheduled.countdown,due,until.age,description\n"
|
||||
"report.oldest.filter=(status:pending or status:waiting)\n"
|
||||
"report.oldest.filter=status:pending or status:waiting\n"
|
||||
"report.oldest.sort=entry+\n"
|
||||
"\n"
|
||||
"report.overdue.description=Overdue tasks\n"
|
||||
@@ -410,12 +406,12 @@ std::string Config::_defaults =
|
||||
"\n"
|
||||
"report.active.description=Active tasks\n"
|
||||
"report.active.labels=ID,Started,Active,Age,D,P,Project,Tags,Recur,W,Sch,Due,Until,Description\n"
|
||||
"report.active.columns=id,start,start.age,entry.age,depends.indicator,priority,project,tags,recur,wait.indicator,scheduled.remaining,due,until,description\n"
|
||||
"report.active.columns=id,start,start.age,entry.age,depends.indicator,priority,project,tags,recur,wait,scheduled.remaining,due,until,description\n"
|
||||
"report.active.filter=status:pending and +ACTIVE\n"
|
||||
"report.active.sort=project+,start+\n"
|
||||
"\n"
|
||||
"report.completed.description=Completed tasks\n"
|
||||
"report.completed.labels=ID,UUID,Created,Completed,took,Deps,P,Project,Tags,R,Due,Description\n"
|
||||
"report.completed.labels=ID,UUID,Created,Completed,Age,Deps,P,Project,Tags,R,Due,Description\n"
|
||||
"report.completed.columns=id,uuid.short,entry,end,entry.age,depends,priority,project,tags,recur.indicator,due,description\n"
|
||||
"report.completed.filter=status:completed\n"
|
||||
"report.completed.sort=end+\n"
|
||||
@@ -427,7 +423,7 @@ std::string Config::_defaults =
|
||||
"report.recurring.sort=due+,urgency-,entry+\n"
|
||||
"\n"
|
||||
"report.waiting.description=Waiting (hidden) tasks\n"
|
||||
"report.waiting.labels=ID,A,Age,D,P,Project,Tags,R,Wait,for,Sched,Due,Until,Description\n"
|
||||
"report.waiting.labels=ID,A,Age,D,P,Project,Tags,R,Wait,Remaining,Sched,Due,Until,Description\n"
|
||||
"report.waiting.columns=id,start.active,entry.age,depends.indicator,priority,project,tags,recur.indicator,wait,wait.remaining,scheduled,due,until,description\n"
|
||||
"report.waiting.filter=+WAITING\n"
|
||||
"report.waiting.sort=due+,wait+,entry+\n"
|
||||
@@ -463,7 +459,7 @@ std::string Config::_defaults =
|
||||
"\n"
|
||||
"report.blocking.description=Blocking tasks\n"
|
||||
"report.blocking.labels=ID,UUID,A,Deps,Project,Tags,R,W,Sch,Due,Until,Description,Urg\n"
|
||||
"report.blocking.columns=id,uuid.short,start.active,depends,project,tags,recur,wait.indicator,scheduled.remaining,due.remaining,until.remaining,description.count,urgency\n"
|
||||
"report.blocking.columns=id,uuid.short,start.active,depends,project,tags,recur,wait,scheduled.remaining,due.remaining,until.remaining,description.count,urgency\n"
|
||||
"report.blocking.sort=urgency-,due+,entry+\n"
|
||||
"report.blocking.filter= status:pending +BLOCKING\n"
|
||||
"\n";
|
||||
@@ -528,13 +524,10 @@ void Config::parse (const std::string& input, int nest /* = 1 */)
|
||||
split (lines, input, "\n");
|
||||
|
||||
// Parse each line.
|
||||
std::vector <std::string>::iterator it;
|
||||
for (it = lines.begin (); it != lines.end (); ++it)
|
||||
for (auto& line : lines)
|
||||
{
|
||||
std::string line = *it;
|
||||
|
||||
// Remove comments.
|
||||
std::string::size_type pound = line.find ("#"); // no i18n
|
||||
auto pound = line.find ("#"); // no i18n
|
||||
if (pound != std::string::npos)
|
||||
line = line.substr (0, pound);
|
||||
|
||||
@@ -543,7 +536,7 @@ void Config::parse (const std::string& input, int nest /* = 1 */)
|
||||
// Skip empty lines.
|
||||
if (line.length () > 0)
|
||||
{
|
||||
std::string::size_type equal = line.find ("="); // no i18n
|
||||
auto equal = line.find ("="); // no i18n
|
||||
if (equal != std::string::npos)
|
||||
{
|
||||
std::string key = trim (line.substr (0, equal), " \t"); // no i18n
|
||||
@@ -553,7 +546,7 @@ void Config::parse (const std::string& input, int nest /* = 1 */)
|
||||
}
|
||||
else
|
||||
{
|
||||
std::string::size_type include = line.find ("include"); // no i18n.
|
||||
auto include = line.find ("include"); // no i18n.
|
||||
if (include != std::string::npos)
|
||||
{
|
||||
Path included (trim (line.substr (include + 7), " \t"));
|
||||
@@ -578,10 +571,10 @@ void Config::parse (const std::string& input, int nest /* = 1 */)
|
||||
void Config::createDefaultRC (const std::string& rc, const std::string& data)
|
||||
{
|
||||
// Override data.location in the defaults.
|
||||
std::string::size_type loc = _defaults.find ("data.location=~/.task");
|
||||
auto loc = _defaults.find ("data.location=~/.task");
|
||||
// loc+0^ +14^ +21^
|
||||
|
||||
Date now;
|
||||
ISO8601d now;
|
||||
std::stringstream contents;
|
||||
contents << "# [Created by "
|
||||
<< PACKAGE_STRING
|
||||
@@ -641,20 +634,20 @@ void Config::clear ()
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
const bool Config::has (const std::string& key)
|
||||
bool Config::has (const std::string& key)
|
||||
{
|
||||
return (*this).find (key) != (*this).end ();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Return the configuration value given the specified key.
|
||||
const std::string Config::get (const std::string& key)
|
||||
std::string Config::get (const std::string& key)
|
||||
{
|
||||
return (*this)[key];
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
const int Config::getInteger (const std::string& key)
|
||||
int Config::getInteger (const std::string& key)
|
||||
{
|
||||
if ((*this).find (key) != (*this).end ())
|
||||
return strtoimax ((*this)[key].c_str (), NULL, 10);
|
||||
@@ -663,8 +656,13 @@ const int Config::getInteger (const std::string& key)
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
const double Config::getReal (const std::string& key)
|
||||
double Config::getReal (const std::string& key)
|
||||
{
|
||||
//NOTE: Backwards compatible handling of next coefficient.
|
||||
//TODO: Remove.
|
||||
if (key == "urgency.user.tag.next.coefficient" and has("urgency.next.coefficient"))
|
||||
return getReal("urgency.next.coefficient");
|
||||
|
||||
if ((*this).find (key) != (*this).end ())
|
||||
return strtod ((*this)[key].c_str (), NULL);
|
||||
|
||||
@@ -672,7 +670,7 @@ const double Config::getReal (const std::string& key)
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
const bool Config::getBoolean (const std::string& key)
|
||||
bool Config::getBoolean (const std::string& key)
|
||||
{
|
||||
if ((*this).find (key) != (*this).end ())
|
||||
{
|
||||
@@ -714,9 +712,8 @@ void Config::set (const std::string& key, const std::string& value)
|
||||
// Provide a vector of all configuration keys.
|
||||
void Config::all (std::vector<std::string>& items) const
|
||||
{
|
||||
std::map <std::string, std::string>::const_iterator it;
|
||||
for (it = this->begin (); it != this->end (); ++it)
|
||||
items.push_back (it->first);
|
||||
for (auto& it : *this)
|
||||
items.push_back (it.first);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
12
src/Config.h
12
src/Config.h
@@ -30,7 +30,7 @@
|
||||
#include <map>
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include <File.h>
|
||||
#include <FS.h>
|
||||
|
||||
class Config : public std::map <std::string, std::string>
|
||||
{
|
||||
@@ -49,11 +49,11 @@ public:
|
||||
void setDefaults ();
|
||||
void clear ();
|
||||
|
||||
const bool has (const std::string&);
|
||||
const std::string get (const std::string&);
|
||||
const int getInteger (const std::string&);
|
||||
const double getReal (const std::string&);
|
||||
const bool getBoolean (const std::string&);
|
||||
bool has (const std::string&);
|
||||
std::string get (const std::string&);
|
||||
int getInteger (const std::string&);
|
||||
double getReal (const std::string&);
|
||||
bool getBoolean (const std::string&);
|
||||
|
||||
void set (const std::string&, const int);
|
||||
void set (const std::string&, const double);
|
||||
|
||||
331
src/Context.cpp
331
src/Context.cpp
@@ -34,10 +34,10 @@
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <Context.h>
|
||||
#include <Directory.h>
|
||||
#include <File.h>
|
||||
#include <FS.h>
|
||||
#include <Eval.h>
|
||||
#include <Variant.h>
|
||||
#include <ISO8601.h>
|
||||
#include <text.h>
|
||||
#include <util.h>
|
||||
#include <main.h>
|
||||
@@ -84,18 +84,17 @@ Context::Context ()
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Context::~Context ()
|
||||
{
|
||||
std::map<std::string, Command*>::iterator com;
|
||||
for (com = commands.begin (); com != commands.end (); ++com)
|
||||
delete com->second;
|
||||
for (auto& com : commands)
|
||||
delete com.second;
|
||||
|
||||
std::map<std::string, Column*>::iterator col;
|
||||
for (col = columns.begin (); col != columns.end (); ++col)
|
||||
delete col->second;
|
||||
for (auto& col : columns)
|
||||
delete col.second;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Context::initialize (int argc, const char** argv)
|
||||
{
|
||||
timer_total.start ();
|
||||
timer_init.start ();
|
||||
int rc = 0;
|
||||
|
||||
@@ -112,7 +111,7 @@ int Context::initialize (int argc, const char** argv)
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
CLI::getOverride (argc, argv, home_dir, rc_file);
|
||||
CLI2::getOverride (argc, argv, home_dir, rc_file);
|
||||
|
||||
char* override = getenv ("TASKRC");
|
||||
if (override)
|
||||
@@ -123,7 +122,7 @@ int Context::initialize (int argc, const char** argv)
|
||||
|
||||
config.clear ();
|
||||
config.load (rc_file);
|
||||
CLI::applyOverrides (argc, argv);
|
||||
CLI2::applyOverrides (argc, argv);
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
@@ -136,7 +135,7 @@ int Context::initialize (int argc, const char** argv)
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
CLI::getDataLocation (argc, argv, data_dir);
|
||||
CLI2::getDataLocation (argc, argv, data_dir);
|
||||
|
||||
override = getenv ("TASKDATA");
|
||||
if (override)
|
||||
@@ -151,33 +150,25 @@ int Context::initialize (int argc, const char** argv)
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// [3] Instantiate Command objects and capture entities.
|
||||
// [3] Instantiate Command objects and capture command entities.
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
Command::factory (commands);
|
||||
std::map <std::string, Command*>::iterator cmd;
|
||||
for (cmd = commands.begin (); cmd != commands.end (); ++cmd)
|
||||
{
|
||||
cli.entity ("cmd", cmd->first);
|
||||
cli.entity ((cmd->second->read_only () ? "readcmd" : "writecmd"), cmd->first);
|
||||
|
||||
if (cmd->first[0] == '_')
|
||||
cli.entity ("helper", cmd->first);
|
||||
}
|
||||
for (auto& cmd : commands)
|
||||
cli2.entity ("cmd", cmd.first);
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// [4] Instantiate Column objects and capture entities.
|
||||
// [4] Instantiate Column objects and capture column entities.
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
Column::factory (columns);
|
||||
std::map <std::string, Column*>::iterator col;
|
||||
for (col = columns.begin (); col != columns.end (); ++col)
|
||||
cli.entity ("attribute", col->first);
|
||||
for (auto& col : columns)
|
||||
cli2.entity ("attribute", col.first);
|
||||
|
||||
cli.entity ("pseudo", "limit");
|
||||
cli2.entity ("pseudo", "limit");
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
@@ -186,17 +177,13 @@ int Context::initialize (int argc, const char** argv)
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
for (unsigned int i = 0; i < NUM_MODIFIER_NAMES; ++i)
|
||||
cli.entity ("modifier", modifierNames[i]);
|
||||
cli2.entity ("modifier", modifierNames[i]);
|
||||
|
||||
std::vector <std::string> operators;
|
||||
Eval::getOperators (operators);
|
||||
std::vector <std::string>::iterator op;
|
||||
for (op = operators.begin (); op != operators.end (); ++op)
|
||||
cli.entity ("operator", *op);
|
||||
for (auto& op : Eval::getOperators ())
|
||||
cli2.entity ("operator", op);
|
||||
|
||||
Eval::getBinaryOperators (operators);
|
||||
for (op = operators.begin (); op != operators.end (); ++op)
|
||||
cli.entity ("binary_operator", *op);
|
||||
for (auto& op : Eval::getBinaryOperators ())
|
||||
cli2.entity ("binary_operator", op);
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
@@ -215,29 +202,26 @@ int Context::initialize (int argc, const char** argv)
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// Scan command line for 'rc:<file>' only.
|
||||
cli.initialize (argc, argv);
|
||||
cli.analyze (true, true);
|
||||
for (int i = 0; i < argc; i++)
|
||||
cli2.add (argv[i]);
|
||||
|
||||
cli2.analyze ();
|
||||
|
||||
// Extract a recomposed command line.
|
||||
bool foundDefault = false;
|
||||
bool foundAssumed = false;
|
||||
std::string combined;
|
||||
std::vector <A>::const_iterator a;
|
||||
for (a = cli._args.begin (); a != cli._args.end (); ++a)
|
||||
for (auto& a : cli2._args)
|
||||
{
|
||||
if (combined.length ())
|
||||
combined += ' ';
|
||||
|
||||
if (a->attribute ("canonical") != "")
|
||||
combined += a->attribute ("canonical");
|
||||
else
|
||||
combined += a->attribute ("raw");
|
||||
combined += a.attribute ("raw");
|
||||
|
||||
if (a->hasTag ("DEFAULT"))
|
||||
if (a.hasTag ("DEFAULT"))
|
||||
foundDefault = true;
|
||||
|
||||
if (a->hasTag ("ASSUMED"))
|
||||
if (a.hasTag ("ASSUMED"))
|
||||
foundAssumed = true;
|
||||
}
|
||||
|
||||
@@ -280,44 +264,40 @@ int Context::initialize (int argc, const char** argv)
|
||||
// Dump all debug messages, controlled by rc.debug.
|
||||
if (config.getBoolean ("debug"))
|
||||
{
|
||||
std::vector <std::string>::iterator d;
|
||||
for (d = debugMessages.begin (); d != debugMessages.end (); ++d)
|
||||
for (auto& d : debugMessages)
|
||||
if (color ())
|
||||
std::cerr << colorizeDebug (*d) << "\n";
|
||||
std::cerr << colorizeDebug (d) << "\n";
|
||||
else
|
||||
std::cerr << *d << "\n";
|
||||
std::cerr << d << "\n";
|
||||
}
|
||||
|
||||
// Dump all headers, controlled by 'header' verbosity token.
|
||||
if (verbose ("header"))
|
||||
{
|
||||
std::vector <std::string>::iterator h;
|
||||
for (h = headers.begin (); h != headers.end (); ++h)
|
||||
for (auto& h : headers)
|
||||
if (color ())
|
||||
std::cerr << colorizeHeader (*h) << "\n";
|
||||
std::cerr << colorizeHeader (h) << "\n";
|
||||
else
|
||||
std::cerr << *h << "\n";
|
||||
std::cerr << h << "\n";
|
||||
}
|
||||
|
||||
// Dump all footnotes, controlled by 'footnote' verbosity token.
|
||||
if (verbose ("footnote"))
|
||||
{
|
||||
std::vector <std::string>::iterator f;
|
||||
for (f = footnotes.begin (); f != footnotes.end (); ++f)
|
||||
for (auto& f : footnotes)
|
||||
if (color ())
|
||||
std::cerr << colorizeFootnote (*f) << "\n";
|
||||
std::cerr << colorizeFootnote (f) << "\n";
|
||||
else
|
||||
std::cerr << *f << "\n";
|
||||
std::cerr << f << "\n";
|
||||
}
|
||||
|
||||
// Dump all errors, non-maskable.
|
||||
// Colorized as footnotes.
|
||||
std::vector <std::string>::iterator e;
|
||||
for (e = errors.begin (); e != errors.end (); ++e)
|
||||
for (auto& e : errors)
|
||||
if (color ())
|
||||
std::cerr << colorizeFootnote (*e) << "\n";
|
||||
std::cerr << colorizeFootnote (e) << "\n";
|
||||
else
|
||||
std::cerr << *e << "\n";
|
||||
std::cerr << e << "\n";
|
||||
}
|
||||
|
||||
timer_init.stop ();
|
||||
@@ -337,6 +317,8 @@ int Context::run ()
|
||||
tdb2.commit (); // Harmless if called when nothing changed.
|
||||
hooks.onExit (); // No chance to update data.
|
||||
|
||||
timer_total.stop ();
|
||||
|
||||
std::stringstream s;
|
||||
s << "Perf "
|
||||
<< PACKAGE_STRING
|
||||
@@ -347,7 +329,7 @@ int Context::run ()
|
||||
<< "-"
|
||||
#endif
|
||||
<< " "
|
||||
<< Date ().toISO ()
|
||||
<< ISO8601d ().toISO ()
|
||||
|
||||
<< " init:" << timer_init.total ()
|
||||
<< " load:" << timer_load.total ()
|
||||
@@ -357,7 +339,8 @@ int Context::run ()
|
||||
<< " sort:" << timer_sort.total ()
|
||||
<< " render:" << timer_render.total ()
|
||||
<< " hooks:" << timer_hooks.total ()
|
||||
<< " total:" << (timer_init.total () +
|
||||
<< " other:" << timer_total.total () -
|
||||
(timer_init.total () +
|
||||
timer_load.total () +
|
||||
timer_gc.total () +
|
||||
timer_filter.total () +
|
||||
@@ -365,6 +348,7 @@ int Context::run ()
|
||||
timer_sort.total () +
|
||||
timer_render.total () +
|
||||
timer_hooks.total ())
|
||||
<< " total:" << timer_total.total ()
|
||||
<< "\n";
|
||||
debug (s.str ());
|
||||
}
|
||||
@@ -390,23 +374,21 @@ int Context::run ()
|
||||
// Dump all debug messages, controlled by rc.debug.
|
||||
if (config.getBoolean ("debug"))
|
||||
{
|
||||
std::vector <std::string>::iterator d;
|
||||
for (d = debugMessages.begin (); d != debugMessages.end (); ++d)
|
||||
for (auto& d : debugMessages)
|
||||
if (color ())
|
||||
std::cerr << colorizeDebug (*d) << "\n";
|
||||
std::cerr << colorizeDebug (d) << "\n";
|
||||
else
|
||||
std::cerr << *d << "\n";
|
||||
std::cerr << d << "\n";
|
||||
}
|
||||
|
||||
// Dump all headers, controlled by 'header' verbosity token.
|
||||
if (verbose ("header"))
|
||||
{
|
||||
std::vector <std::string>::iterator h;
|
||||
for (h = headers.begin (); h != headers.end (); ++h)
|
||||
for (auto& h : headers)
|
||||
if (color ())
|
||||
std::cerr << colorizeHeader (*h) << "\n";
|
||||
std::cerr << colorizeHeader (h) << "\n";
|
||||
else
|
||||
std::cerr << *h << "\n";
|
||||
std::cerr << h << "\n";
|
||||
}
|
||||
|
||||
// Dump the report output.
|
||||
@@ -415,22 +397,20 @@ int Context::run ()
|
||||
// Dump all footnotes, controlled by 'footnote' verbosity token.
|
||||
if (verbose ("footnote"))
|
||||
{
|
||||
std::vector <std::string>::iterator f;
|
||||
for (f = footnotes.begin (); f != footnotes.end (); ++f)
|
||||
for (auto& f : footnotes)
|
||||
if (color ())
|
||||
std::cerr << colorizeFootnote (*f) << "\n";
|
||||
std::cerr << colorizeFootnote (f) << "\n";
|
||||
else
|
||||
std::cerr << *f << "\n";
|
||||
std::cerr << f << "\n";
|
||||
}
|
||||
|
||||
// Dump all errors, non-maskable.
|
||||
// Colorized as footnotes.
|
||||
std::vector <std::string>::iterator e;
|
||||
for (e = errors.begin (); e != errors.end (); ++e)
|
||||
for (auto& e : errors)
|
||||
if (color ())
|
||||
std::cerr << colorizeError (*e) << "\n";
|
||||
std::cerr << colorizeError (e) << "\n";
|
||||
else
|
||||
std::cerr << *e << "\n";
|
||||
std::cerr << e << "\n";
|
||||
|
||||
return rc;
|
||||
}
|
||||
@@ -440,7 +420,7 @@ int Context::run ()
|
||||
int Context::dispatch (std::string &out)
|
||||
{
|
||||
// Autocomplete args against keywords.
|
||||
std::string command = cli.getCommand ();
|
||||
std::string command = cli2.getCommand ();
|
||||
if (command != "")
|
||||
{
|
||||
updateXtermTitle ();
|
||||
@@ -449,9 +429,9 @@ int Context::dispatch (std::string &out)
|
||||
Command* c = commands[command];
|
||||
assert (c);
|
||||
|
||||
// GC is invoked prior to running any command that displays task IDs, if
|
||||
// possible.
|
||||
if (c->displays_id () && !tdb2.read_only ())
|
||||
// The command know whether they need a GC.
|
||||
if (c->needs_gc () &&
|
||||
! tdb2.read_only ())
|
||||
{
|
||||
run_gc = config.getBoolean ("gc");
|
||||
tdb2.gc ();
|
||||
@@ -468,6 +448,21 @@ int Context::dispatch (std::string &out)
|
||||
throw std::string ("");
|
||||
*/
|
||||
|
||||
// This is something that is only needed for write commands with no other
|
||||
// filter processing.
|
||||
if (c->accepts_modifications () &&
|
||||
! c->accepts_filter ())
|
||||
{
|
||||
cli2.prepareFilter ();
|
||||
}
|
||||
|
||||
// With rc.debug.parser == 2, there are more tree dumps than you might want,
|
||||
// but we need the rc.debug.parser == 1 case covered also, with the final
|
||||
// tree.
|
||||
if (config.getBoolean ("debug") &&
|
||||
config.getInteger ("debug.parser") == 1)
|
||||
debug (cli2.dump ("Parse Tree (before command-specifіc processing)"));
|
||||
|
||||
return c->execute (out);
|
||||
}
|
||||
|
||||
@@ -478,7 +473,6 @@ int Context::dispatch (std::string &out)
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Context::color ()
|
||||
{
|
||||
#ifdef FEATURE_COLOR
|
||||
if (determine_color_use)
|
||||
{
|
||||
// What the config says.
|
||||
@@ -508,9 +502,6 @@ bool Context::color ()
|
||||
|
||||
// Cached result.
|
||||
return use_color;
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -526,7 +517,7 @@ bool Context::color ()
|
||||
// take the place of '0'.
|
||||
bool Context::verbose (const std::string& token)
|
||||
{
|
||||
if (! verbosity.size ())
|
||||
if (verbosity.empty ())
|
||||
{
|
||||
verbosity_legacy = config.getBoolean ("verbose");
|
||||
split (verbosity, config.get ("verbose"), ',');
|
||||
@@ -535,29 +526,42 @@ bool Context::verbose (const std::string& token)
|
||||
// This odd test is to see if a Boolean-false value is a real one, which
|
||||
// means it is not 1/true/T/yes/on, but also should not be one of the
|
||||
// valid tokens either.
|
||||
if (!verbosity_legacy &&
|
||||
verbosity.size () &&
|
||||
verbosity[0] != "nothing" &&
|
||||
verbosity[0] != "blank" && // This list must be complete.
|
||||
verbosity[0] != "header" && //
|
||||
verbosity[0] != "footnote" && //
|
||||
verbosity[0] != "label" && //
|
||||
verbosity[0] != "new-id" && //
|
||||
verbosity[0] != "new-uuid" && //
|
||||
verbosity[0] != "affected" && //
|
||||
verbosity[0] != "edit" && //
|
||||
verbosity[0] != "special" && //
|
||||
verbosity[0] != "project" && //
|
||||
verbosity[0] != "sync" && //
|
||||
verbosity[0] != "filter") //
|
||||
if (! verbosity_legacy && ! verbosity.empty ())
|
||||
{
|
||||
verbosity.clear ();
|
||||
std::string v = *(verbosity.begin ());
|
||||
if (v != "nothing" &&
|
||||
v != "blank" && // This list must be complete.
|
||||
v != "header" && //
|
||||
v != "footnote" && //
|
||||
v != "label" && //
|
||||
v != "new-id" && //
|
||||
v != "new-uuid" && //
|
||||
v != "affected" && //
|
||||
v != "edit" && //
|
||||
v != "special" && //
|
||||
v != "project" && //
|
||||
v != "sync" && //
|
||||
v != "filter" && //
|
||||
v != "unwait" && //
|
||||
v != "recur") //
|
||||
{
|
||||
// This list emulates rc.verbose=off in version 1.9.4.
|
||||
verbosity = {"blank", "label", "new-id", "edit"};
|
||||
}
|
||||
}
|
||||
|
||||
// This list emulates rc.verbose=off in version 1.9.4.
|
||||
verbosity.push_back ("blank");
|
||||
verbosity.push_back ("label");
|
||||
verbosity.push_back ("new-id");
|
||||
verbosity.push_back ("edit");
|
||||
// Some flags imply "footnote" verbosity being active. Make it so.
|
||||
if (! verbosity.count ("footnote"))
|
||||
{
|
||||
// TODO: Some of these may not use footnotes yet. They should.
|
||||
for (auto flag : {"affected", "new-id", "new-uuid", "project", "unwait", "recur"})
|
||||
{
|
||||
if (verbosity.count (flag))
|
||||
{
|
||||
verbosity.insert ("footnote");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -567,11 +571,11 @@ bool Context::verbose (const std::string& token)
|
||||
|
||||
// rc.verbose=nothing overrides all.
|
||||
if (verbosity.size () == 1 &&
|
||||
verbosity[0] == "nothing")
|
||||
*(verbosity.begin ()) == "nothing")
|
||||
return false;
|
||||
|
||||
// Specific token match.
|
||||
if (std::find (verbosity.begin (), verbosity.end (), token) != verbosity.end ())
|
||||
if (verbosity.count (token))
|
||||
return true;
|
||||
|
||||
return false;
|
||||
@@ -581,20 +585,8 @@ bool Context::verbose (const std::string& token)
|
||||
const std::vector <std::string> Context::getColumns () const
|
||||
{
|
||||
std::vector <std::string> output;
|
||||
std::map <std::string, Column*>::const_iterator i;
|
||||
for (i = columns.begin (); i != columns.end (); ++i)
|
||||
output.push_back (i->first);
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
const std::vector <std::string> Context::getCommands () const
|
||||
{
|
||||
std::vector <std::string> output;
|
||||
std::map <std::string, Command*>::const_iterator i;
|
||||
for (i = commands.begin (); i != commands.end (); ++i)
|
||||
output.push_back (i->first);
|
||||
for (auto& col : columns)
|
||||
output.push_back (col.first);
|
||||
|
||||
return output;
|
||||
}
|
||||
@@ -609,7 +601,7 @@ void Context::getLimits (int& rows, int& lines)
|
||||
lines = 0;
|
||||
|
||||
// This is an integer specified as a filter (limit:10).
|
||||
std::string limit = cli.getLimit ();
|
||||
std::string limit = config.get ("limit");
|
||||
if (limit != "")
|
||||
{
|
||||
if (limit == "page")
|
||||
@@ -630,7 +622,9 @@ void Context::getLimits (int& rows, int& lines)
|
||||
// easier, it has been decoupled from Context.
|
||||
void Context::staticInitialization ()
|
||||
{
|
||||
CLI::minimumMatchLength = config.getInteger ("abbreviation.minimum");
|
||||
CLI2::minimumMatchLength = config.getInteger ("abbreviation.minimum");
|
||||
Lexer::minimumMatchLength = config.getInteger ("abbreviation.minimum");
|
||||
ISO8601d::minimumMatchLength = config.getInteger ("abbreviation.minimum");
|
||||
|
||||
Task::defaultProject = config.get ("default.project");
|
||||
Task::defaultDue = config.get ("default.due");
|
||||
@@ -638,36 +632,39 @@ void Context::staticInitialization ()
|
||||
Task::searchCaseSensitive = Variant::searchCaseSensitive = config.getBoolean ("search.case.sensitive");
|
||||
Task::regex = Variant::searchUsingRegex = config.getBoolean ("regex");
|
||||
Lexer::dateFormat = Variant::dateFormat = config.get ("dateformat");
|
||||
Lexer::isoEnabled = Variant::isoEnabled = config.getBoolean ("date.iso");
|
||||
ISO8601p::isoEnabled = ISO8601d::isoEnabled = config.getBoolean ("date.iso");
|
||||
|
||||
Config::const_iterator rc;
|
||||
for (rc = config.begin (); rc != config.end (); ++rc)
|
||||
TDB2::debug_mode = config.getBoolean ("debug");
|
||||
|
||||
ISO8601d::weekstart = config.get ("weekstart");
|
||||
|
||||
for (auto& rc : config)
|
||||
{
|
||||
if (rc->first.substr (0, 4) == "uda." &&
|
||||
rc->first.substr (rc->first.length () - 7, 7) == ".values")
|
||||
if (rc.first.substr (0, 4) == "uda." &&
|
||||
rc.first.substr (rc.first.length () - 7, 7) == ".values")
|
||||
{
|
||||
std::string name = rc->first.substr (4, rc->first.length () - 7 - 4);
|
||||
std::string name = rc.first.substr (4, rc.first.length () - 7 - 4);
|
||||
std::vector <std::string> values;
|
||||
split (values, rc->second, ',');
|
||||
split (values, rc.second, ',');
|
||||
|
||||
for (auto r = values.rbegin(); r != values.rend (); ++r)
|
||||
Task::customOrder[name].push_back (*r);
|
||||
}
|
||||
}
|
||||
|
||||
std::map <std::string, Column*>::iterator i;
|
||||
for (i = columns.begin (); i != columns.end (); ++i)
|
||||
Task::attributes[i->first] = i->second->type ();
|
||||
for (auto& col : columns)
|
||||
{
|
||||
Task::attributes[col.first] = col.second->type ();
|
||||
Lexer::attributes[col.first] = col.second->type ();
|
||||
}
|
||||
|
||||
Task::urgencyProjectCoefficient = config.getReal ("urgency.project.coefficient");
|
||||
Task::urgencyActiveCoefficient = config.getReal ("urgency.active.coefficient");
|
||||
Task::urgencyScheduledCoefficient = config.getReal ("urgency.scheduled.coefficient");
|
||||
Task::urgencyWaitingCoefficient = config.getReal ("urgency.waiting.coefficient");
|
||||
Task::urgencyBlockedCoefficient = config.getReal ("urgency.blocked.coefficient");
|
||||
Task::urgencyInheritCoefficient = config.getReal ("urgency.inherit.coefficient");
|
||||
Task::urgencyAnnotationsCoefficient = config.getReal ("urgency.annotations.coefficient");
|
||||
Task::urgencyTagsCoefficient = config.getReal ("urgency.tags.coefficient");
|
||||
Task::urgencyNextCoefficient = config.getReal ("urgency.next.coefficient");
|
||||
Task::urgencyDueCoefficient = config.getReal ("urgency.due.coefficient");
|
||||
Task::urgencyBlockingCoefficient = config.getReal ("urgency.blocking.coefficient");
|
||||
Task::urgencyAgeCoefficient = config.getReal ("urgency.age.coefficient");
|
||||
@@ -676,11 +673,10 @@ void Context::staticInitialization ()
|
||||
// Tag- and project-specific coefficients.
|
||||
std::vector <std::string> all;
|
||||
config.all (all);
|
||||
std::vector <std::string>::iterator var;
|
||||
for (var = all.begin (); var != all.end (); ++var)
|
||||
if (var->substr (0, 13) == "urgency.user." ||
|
||||
var->substr (0, 12) == "urgency.uda.")
|
||||
Task::coefficients[*var] = config.getReal (*var);
|
||||
for (auto& var : all)
|
||||
if (var.substr (0, 13) == "urgency.user." ||
|
||||
var.substr (0, 12) == "urgency.uda.")
|
||||
Task::coefficients[var] = config.getReal (var);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -734,32 +730,6 @@ void Context::decomposeSortField (
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Note: The reason some of these are commented out is because the ::clear
|
||||
// method is not really "clear" but "clear_some". Some members do not need to
|
||||
// be initialized. That makes this method something of a misnomer. So be it.
|
||||
//
|
||||
// TODO Is this method used anywhere?
|
||||
void Context::clear ()
|
||||
{
|
||||
tdb2.clear ();
|
||||
|
||||
// Eliminate the command objects.
|
||||
std::map <std::string, Command*>::iterator com;
|
||||
for (com = commands.begin (); com != commands.end (); ++com)
|
||||
delete com->second;
|
||||
|
||||
commands.clear ();
|
||||
|
||||
// Eliminate the column objects.
|
||||
std::map <std::string, Column*>::iterator col;
|
||||
for (col = columns.begin (); col != columns.end (); ++col)
|
||||
delete col->second;
|
||||
|
||||
columns.clear ();
|
||||
clearMessages ();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// This capability is to answer the question of 'what did I just do to generate
|
||||
// this output?'.
|
||||
@@ -767,13 +737,12 @@ void Context::updateXtermTitle ()
|
||||
{
|
||||
if (config.getBoolean ("xterm.title") && isatty (STDOUT_FILENO))
|
||||
{
|
||||
std::string command = cli.getCommand ();
|
||||
std::string command = cli2.getCommand ();
|
||||
std::string title;
|
||||
|
||||
std::vector <A>::const_iterator a;
|
||||
for (a = cli._args.begin (); a != cli._args.end (); ++a)
|
||||
for (auto a = cli2._args.begin (); a != cli2._args.end (); ++a)
|
||||
{
|
||||
if (a != cli._args.begin ())
|
||||
if (a != cli2._args.begin ())
|
||||
title += ' ';
|
||||
|
||||
title += a->attribute ("raw");
|
||||
@@ -787,22 +756,20 @@ void Context::updateXtermTitle ()
|
||||
// This function allows a clean output if the command is a helper subcommand.
|
||||
void Context::updateVerbosity ()
|
||||
{
|
||||
std::string command = cli.getCommand ();
|
||||
std::string command = cli2.getCommand ();
|
||||
if (command != "" &&
|
||||
command[0] == '_')
|
||||
{
|
||||
verbosity.clear ();
|
||||
verbosity.push_back ("nothing");
|
||||
verbosity = {"nothing"};
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
void Context::loadAliases ()
|
||||
{
|
||||
std::map <std::string, std::string>::iterator i;
|
||||
for (i = config.begin (); i != config.end (); ++i)
|
||||
if (i->first.substr (0, 6) == "alias.")
|
||||
cli.alias (i->first.substr (6), i->second);
|
||||
for (auto& i : config)
|
||||
if (i.first.substr (0, 6) == "alias.")
|
||||
cli2.alias (i.first.substr (6), i.second);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -34,11 +34,10 @@
|
||||
#include <TDB2.h>
|
||||
#include <Hooks.h>
|
||||
#include <DOM.h>
|
||||
#include <Path.h>
|
||||
#include <File.h>
|
||||
#include <Directory.h>
|
||||
#include <CLI.h>
|
||||
#include <FS.h>
|
||||
#include <CLI2.h>
|
||||
#include <Timer.h>
|
||||
#include <set>
|
||||
|
||||
class Context
|
||||
{
|
||||
@@ -57,7 +56,6 @@ public:
|
||||
int getHeight (); // determine terminal height
|
||||
|
||||
const std::vector <std::string> getColumns () const;
|
||||
const std::vector <std::string> getCommands () const;
|
||||
void getLimits (int&, int&);
|
||||
|
||||
bool color (); // TTY or <other>?
|
||||
@@ -68,7 +66,6 @@ public:
|
||||
void debug (const std::string&); // Debug message sink
|
||||
void error (const std::string&); // Error message sink - non-maskable
|
||||
void clearMessages ();
|
||||
void clear ();
|
||||
|
||||
void decomposeSortField (const std::string&, std::string&, bool&, bool&);
|
||||
|
||||
@@ -81,7 +78,7 @@ private:
|
||||
void propagateDebug ();
|
||||
|
||||
public:
|
||||
CLI cli;
|
||||
CLI2 cli2;
|
||||
std::string home_dir;
|
||||
File rc_file;
|
||||
Path data_dir;
|
||||
@@ -97,7 +94,7 @@ public:
|
||||
bool run_gc;
|
||||
|
||||
bool verbosity_legacy;
|
||||
std::vector <std::string> verbosity;
|
||||
std::set <std::string> verbosity;
|
||||
std::vector <std::string> headers;
|
||||
std::vector <std::string> footnotes;
|
||||
std::vector <std::string> errors;
|
||||
@@ -109,6 +106,7 @@ public:
|
||||
int terminal_width;
|
||||
int terminal_height;
|
||||
|
||||
Timer timer_total;
|
||||
Timer timer_init;
|
||||
Timer timer_load;
|
||||
Timer timer_gc;
|
||||
|
||||
422
src/DOM.cpp
422
src/DOM.cpp
@@ -29,10 +29,9 @@
|
||||
#include <map>
|
||||
#include <stdlib.h>
|
||||
#include <Variant.h>
|
||||
#include <Duration.h>
|
||||
#include <Context.h>
|
||||
#include <Nibbler.h>
|
||||
#include <Date.h>
|
||||
#include <ISO8601.h>
|
||||
#include <text.h>
|
||||
#include <i18n.h>
|
||||
#include <DOM.h>
|
||||
@@ -49,37 +48,26 @@ DOM::~DOM ()
|
||||
{
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
const std::vector <std::string> DOM::get_references () const
|
||||
{
|
||||
std::vector <std::string> refs;
|
||||
|
||||
refs.push_back ("context.program");
|
||||
refs.push_back ("context.args");
|
||||
refs.push_back ("context.width");
|
||||
refs.push_back ("context.height");
|
||||
refs.push_back ("system.version");
|
||||
refs.push_back ("system.os");
|
||||
|
||||
return refs;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// DOM Supported References:
|
||||
//
|
||||
// Configuration:
|
||||
// rc.<name>
|
||||
//
|
||||
// System:
|
||||
// context.program
|
||||
// context.args
|
||||
// context.width
|
||||
// context.height
|
||||
//
|
||||
// TODO stats.<name> <-- context.stats
|
||||
//
|
||||
// system.version
|
||||
// system.os
|
||||
//
|
||||
bool DOM::get (const std::string& name, Variant& value)
|
||||
{
|
||||
// Special case, blank refs cause problems.
|
||||
if (name == "")
|
||||
return false;
|
||||
|
||||
int len = name.length ();
|
||||
Nibbler n (name);
|
||||
|
||||
@@ -88,7 +76,7 @@ bool DOM::get (const std::string& name, Variant& value)
|
||||
name.substr (0, 3) == "rc.")
|
||||
{
|
||||
std::string key = name.substr (3);
|
||||
std::map <std::string, std::string>::iterator c = context.config.find (key);
|
||||
auto c = context.config.find (key);
|
||||
if (c != context.config.end ())
|
||||
{
|
||||
value = Variant (c->second);
|
||||
@@ -104,13 +92,20 @@ bool DOM::get (const std::string& name, Variant& value)
|
||||
{
|
||||
if (name == "context.program")
|
||||
{
|
||||
value = Variant (context.cli.getBinary ());
|
||||
value = Variant (context.cli2.getBinary ());
|
||||
return true;
|
||||
}
|
||||
else if (name == "context.args")
|
||||
{
|
||||
std::string commandLine;
|
||||
join (commandLine, " ", context.cli._original_args);
|
||||
for (auto& arg : context.cli2._original_args)
|
||||
{
|
||||
if (commandLine != "")
|
||||
commandLine += " ";
|
||||
|
||||
commandLine += arg.attribute("raw");
|
||||
}
|
||||
|
||||
value = Variant (commandLine);
|
||||
return true;
|
||||
}
|
||||
@@ -184,11 +179,15 @@ bool DOM::get (const std::string& name, Variant& value)
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// DOM Supported References:
|
||||
//
|
||||
// Relative or absolute attribute:
|
||||
// <attribute>
|
||||
// <id>.<attribute>
|
||||
// <uuid>.<attribute>
|
||||
//
|
||||
// For certain attributes:
|
||||
// Single tag:
|
||||
// tags.<word>
|
||||
//
|
||||
// Date type:
|
||||
// <date>.year
|
||||
// <date>.month
|
||||
// <date>.day
|
||||
@@ -199,23 +198,19 @@ bool DOM::get (const std::string& name, Variant& value)
|
||||
// <date>.minute
|
||||
// <date>.second
|
||||
//
|
||||
// tags.<literal> Includes virtual tags
|
||||
//
|
||||
// Annotations (entry is a date):
|
||||
// annotations.<N>.entry
|
||||
// annotations.<N>.entry.year
|
||||
// annotations.<N>.entry.month
|
||||
// annotations.<N>.entry.day
|
||||
// annotations.<N>.entry.week
|
||||
// annotations.<N>.entry.weekday
|
||||
// annotations.<N>.entry.julian
|
||||
// annotations.<N>.entry.hour
|
||||
// annotations.<N>.entry.minute
|
||||
// annotations.<N>.entry.second
|
||||
// annotations.<N>.description
|
||||
//
|
||||
// This code emphasizes speed, hence 'id' and 'urgecny' being evaluated first
|
||||
// as special cases.
|
||||
bool DOM::get (const std::string& name, const Task& task, Variant& value)
|
||||
{
|
||||
// <attr>
|
||||
// Special case, blank refs cause problems.
|
||||
if (name == "")
|
||||
return false;
|
||||
|
||||
// Quickly deal with the most common cases.
|
||||
if (task.size () && name == "id")
|
||||
{
|
||||
value = Variant (static_cast<int> (task.id));
|
||||
@@ -232,206 +227,172 @@ bool DOM::get (const std::string& name, const Task& task, Variant& value)
|
||||
std::vector <std::string> elements;
|
||||
split (elements, name, '.');
|
||||
|
||||
if (elements.size () == 1)
|
||||
Task ref (task);
|
||||
Nibbler n (elements[0]);
|
||||
n.save ();
|
||||
int id;
|
||||
std::string uuid;
|
||||
|
||||
// If elements[0] is a UUID, load that task (if necessary), and clobber ref.
|
||||
if (n.getPartialUUID (uuid) && n.depleted ())
|
||||
{
|
||||
std::string canonical;
|
||||
if (task.size () && context.cli.canonicalize (canonical, "attribute", name))
|
||||
if (uuid != ref.get ("uuid"))
|
||||
context.tdb2.get (uuid, ref);
|
||||
|
||||
// Eat elements[0]/UUID.
|
||||
elements.erase (elements.begin ());
|
||||
}
|
||||
else
|
||||
{
|
||||
// If elements[0] is a ID, load that task (if necessary), and clobber ref.
|
||||
if (n.getInt (id) && n.depleted ())
|
||||
{
|
||||
Column* column = context.columns[canonical];
|
||||
if (column)
|
||||
if (id != ref.id)
|
||||
context.tdb2.get (id, ref);
|
||||
|
||||
// Eat elements[0]/ID.
|
||||
elements.erase (elements.begin ());
|
||||
}
|
||||
}
|
||||
|
||||
auto size = elements.size ();
|
||||
|
||||
std::string canonical;
|
||||
if ((size == 1 || size == 2) && context.cli2.canonicalize (canonical, "attribute", elements[0]))
|
||||
{
|
||||
// Now that 'ref' is the contextual task, and any ID/UUID is chopped off the
|
||||
// elements vector, DOM resolution is now simple.
|
||||
if (ref.size () && size == 1 && canonical == "id")
|
||||
{
|
||||
value = Variant (static_cast<int> (ref.id));
|
||||
return true;
|
||||
}
|
||||
|
||||
if (ref.size () && size == 1 && canonical == "urgency")
|
||||
{
|
||||
value = Variant (ref.urgency_c ());
|
||||
return true;
|
||||
}
|
||||
|
||||
Column* column = context.columns[canonical];
|
||||
|
||||
if (ref.size () && size == 1 && column)
|
||||
{
|
||||
if (column->is_uda () && ! ref.has (canonical))
|
||||
{
|
||||
if (column->is_uda () && ! task.has (canonical))
|
||||
value = Variant ("");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (column->type () == "date")
|
||||
{
|
||||
auto numeric = ref.get_date (canonical);
|
||||
if (numeric == 0)
|
||||
value = Variant ("");
|
||||
else
|
||||
value = Variant (numeric, Variant::type_date);
|
||||
}
|
||||
else if (column->type () == "duration" || canonical == "recur")
|
||||
{
|
||||
auto period = ref.get (canonical);
|
||||
|
||||
ISO8601p iso;
|
||||
std::string::size_type cursor = 0;
|
||||
if (iso.parse (period, cursor))
|
||||
value = Variant ((time_t) iso, Variant::type_duration);
|
||||
else
|
||||
value = Variant ((time_t) ISO8601p (ref.get (canonical)), Variant::type_duration);
|
||||
}
|
||||
else if (column->type () == "numeric")
|
||||
value = Variant (ref.get_float (canonical));
|
||||
else
|
||||
value = Variant (ref.get (canonical));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
if (ref.size () && size == 2 && canonical == "tags")
|
||||
{
|
||||
value = Variant (ref.hasTag (elements[1]) ? elements[1] : "");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (ref.size () && size == 2 && column && column->type () == "date")
|
||||
{
|
||||
ISO8601d date (ref.get_date (canonical));
|
||||
if (elements[1] == "year") { value = Variant (static_cast<int> (date.year ())); return true; }
|
||||
else if (elements[1] == "month") { value = Variant (static_cast<int> (date.month ())); return true; }
|
||||
else if (elements[1] == "day") { value = Variant (static_cast<int> (date.day ())); return true; }
|
||||
else if (elements[1] == "week") { value = Variant (static_cast<int> (date.week ())); return true; }
|
||||
else if (elements[1] == "weekday") { value = Variant (static_cast<int> (date.dayOfWeek ())); return true; }
|
||||
else if (elements[1] == "julian") { value = Variant (static_cast<int> (date.dayOfYear ())); return true; }
|
||||
else if (elements[1] == "hour") { value = Variant (static_cast<int> (date.hour ())); return true; }
|
||||
else if (elements[1] == "minute") { value = Variant (static_cast<int> (date.minute ())); return true; }
|
||||
else if (elements[1] == "second") { value = Variant (static_cast<int> (date.second ())); return true; }
|
||||
}
|
||||
}
|
||||
|
||||
if (ref.size () && size == 3 && elements[0] == "annotations")
|
||||
{
|
||||
std::map <std::string, std::string> annos;
|
||||
ref.getAnnotations (annos);
|
||||
|
||||
int a = strtol (elements[1].c_str (), NULL, 10);
|
||||
int count = 0;
|
||||
|
||||
// Count off the 'a'th annotation.
|
||||
for (auto& i : annos)
|
||||
{
|
||||
if (++count == a)
|
||||
{
|
||||
if (elements[2] == "entry")
|
||||
{
|
||||
value = Variant ("''");
|
||||
// annotation_1234567890
|
||||
// 0 ^11
|
||||
value = Variant ((time_t) strtol (i.first.substr (11).c_str (), NULL, 10), Variant::type_date);
|
||||
return true;
|
||||
}
|
||||
else if (elements[2] == "description")
|
||||
{
|
||||
value = Variant (i.second);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (column->type () == "date")
|
||||
value = Variant (task.get_date (canonical), Variant::type_date);
|
||||
else if (column->type () == "duration" || canonical == "recur")
|
||||
value = Variant ((time_t) Duration (task.get (canonical)), Variant::type_duration);
|
||||
else if (column->type () == "numeric")
|
||||
value = Variant (task.get_float (canonical));
|
||||
else // string
|
||||
value = Variant (task.get (canonical));
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (elements.size () > 1)
|
||||
|
||||
if (ref.size () && size == 4 && elements[0] == "annotations" && elements[2] == "entry")
|
||||
{
|
||||
Task ref;
|
||||
std::map <std::string, std::string> annos;
|
||||
ref.getAnnotations (annos);
|
||||
|
||||
Nibbler n (elements[0]);
|
||||
n.save ();
|
||||
int id;
|
||||
std::string uuid;
|
||||
bool proceed = false;
|
||||
int a = strtol (elements[1].c_str (), NULL, 10);
|
||||
int count = 0;
|
||||
|
||||
if (n.getInt (id) && n.depleted ())
|
||||
// Count off the 'a'th annotation.
|
||||
for (auto& i : annos)
|
||||
{
|
||||
if (id == task.id)
|
||||
ref = task;
|
||||
else
|
||||
context.tdb2.get (id, ref);
|
||||
|
||||
proceed = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
n.restore ();
|
||||
if (n.getUUID (uuid) && n.depleted ())
|
||||
if (++count == a)
|
||||
{
|
||||
if (uuid == task.get ("uuid"))
|
||||
ref = task;
|
||||
else
|
||||
context.tdb2.get (uuid, ref);
|
||||
|
||||
proceed = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (proceed)
|
||||
{
|
||||
if (elements[1] == "id")
|
||||
{
|
||||
value = Variant (static_cast<int> (ref.id));
|
||||
return true;
|
||||
}
|
||||
else if (elements[1] == "urgency")
|
||||
{
|
||||
value = Variant (ref.urgency_c ());
|
||||
return true;
|
||||
}
|
||||
|
||||
std::string canonical;
|
||||
if (context.cli.canonicalize (canonical, "attribute", elements[1]))
|
||||
{
|
||||
if (elements.size () == 2)
|
||||
{
|
||||
Column* column = context.columns[canonical];
|
||||
if (column)
|
||||
{
|
||||
if (column->is_uda () && ! ref.has (canonical))
|
||||
{
|
||||
value = Variant ("''");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (column->type () == "date")
|
||||
value = Variant (ref.get_date (canonical), Variant::type_date);
|
||||
else if (column->type () == "duration")
|
||||
value = Variant ((time_t) Duration (ref.get (canonical)), Variant::type_duration);
|
||||
else if (column->type () == "numeric")
|
||||
value = Variant (ref.get_float (canonical));
|
||||
else
|
||||
value = Variant (ref.get (canonical));
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else if (elements.size () == 3)
|
||||
{
|
||||
// tags.<tag>
|
||||
if (canonical == "tags")
|
||||
{
|
||||
value = Variant (ref.hasTag (elements[2]) ? elements[2] : "");
|
||||
return true;
|
||||
}
|
||||
|
||||
Column* column = context.columns[canonical];
|
||||
if (column && column->type () == "date")
|
||||
{
|
||||
// <date>.year
|
||||
// <date>.month
|
||||
// <date>.day
|
||||
// <date>.week
|
||||
// <date>.weekday
|
||||
// <date>.julian
|
||||
// <date>.hour
|
||||
// <date>.minute
|
||||
// <date>.second
|
||||
Date date (ref.get_date (canonical));
|
||||
if (elements[2] == "year") { value = Variant (static_cast<int> (date.year ())); return true; }
|
||||
else if (elements[2] == "month") { value = Variant (static_cast<int> (date.month ())); return true; }
|
||||
else if (elements[2] == "day") { value = Variant (static_cast<int> (date.day ())); return true; }
|
||||
else if (elements[2] == "week") { value = Variant (static_cast<int> (date.week ())); return true; }
|
||||
else if (elements[2] == "weekday") { value = Variant (static_cast<int> (date.dayOfWeek ())); return true; }
|
||||
else if (elements[2] == "julian") { value = Variant (static_cast<int> (date.dayOfYear ())); return true; }
|
||||
else if (elements[2] == "hour") { value = Variant (static_cast<int> (date.hour ())); return true; }
|
||||
else if (elements[2] == "minute") { value = Variant (static_cast<int> (date.minute ())); return true; }
|
||||
else if (elements[2] == "second") { value = Variant (static_cast<int> (date.second ())); return true; }
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (elements[1] == "annotations")
|
||||
{
|
||||
if (elements.size () == 4)
|
||||
{
|
||||
std::map <std::string, std::string> annos;
|
||||
ref.getAnnotations (annos);
|
||||
|
||||
int a = strtol (elements[2].c_str (), NULL, 10);
|
||||
int count = 0;
|
||||
|
||||
// Count off the 'a'th annotation.
|
||||
std::map <std::string, std::string>::iterator i;
|
||||
for (i = annos.begin (); i != annos.end (); ++i)
|
||||
{
|
||||
if (++count == a)
|
||||
{
|
||||
if (elements[3] == "entry")
|
||||
{
|
||||
// annotation_1234567890
|
||||
// 0 ^11
|
||||
value = Variant ((time_t) strtol (i->first.substr (11).c_str (), NULL, 10), Variant::type_date);
|
||||
return true;
|
||||
}
|
||||
else if (elements[3] == "description")
|
||||
{
|
||||
value = Variant (i->second);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (elements.size () == 5)
|
||||
{
|
||||
std::map <std::string, std::string> annos;
|
||||
ref.getAnnotations (annos);
|
||||
|
||||
int a = strtol (elements[2].c_str (), NULL, 10);
|
||||
int count = 0;
|
||||
|
||||
// Count off the 'a'th annotation.
|
||||
std::map <std::string, std::string>::iterator i;
|
||||
for (i = annos.begin (); i != annos.end (); ++i)
|
||||
{
|
||||
if (++count == a)
|
||||
{
|
||||
// <annotations>.<N>.entry.year
|
||||
// <annotations>.<N>.entry.month
|
||||
// <annotations>.<N>.entry.day
|
||||
// <annotations>.<N>.entry.week
|
||||
// <annotations>.<N>.entry.weekday
|
||||
// <annotations>.<N>.entry.julian
|
||||
// <annotations>.<N>.entry.hour
|
||||
// <annotations>.<N>.entry.minute
|
||||
// <annotations>.<N>.entry.second
|
||||
Date date (i->first.substr (11));
|
||||
if (elements[4] == "year") { value = Variant (static_cast<int> (date.year ())); return true; }
|
||||
else if (elements[4] == "month") { value = Variant (static_cast<int> (date.month ())); return true; }
|
||||
else if (elements[4] == "day") { value = Variant (static_cast<int> (date.day ())); return true; }
|
||||
else if (elements[4] == "week") { value = Variant (static_cast<int> (date.week ())); return true; }
|
||||
else if (elements[4] == "weekday") { value = Variant (static_cast<int> (date.dayOfWeek ())); return true; }
|
||||
else if (elements[4] == "julian") { value = Variant (static_cast<int> (date.dayOfYear ())); return true; }
|
||||
else if (elements[4] == "hour") { value = Variant (static_cast<int> (date.hour ())); return true; }
|
||||
else if (elements[4] == "minute") { value = Variant (static_cast<int> (date.minute ())); return true; }
|
||||
else if (elements[4] == "second") { value = Variant (static_cast<int> (date.second ())); return true; }
|
||||
}
|
||||
}
|
||||
}
|
||||
// <annotations>.<N>.entry.year
|
||||
// <annotations>.<N>.entry.month
|
||||
// <annotations>.<N>.entry.day
|
||||
// <annotations>.<N>.entry.week
|
||||
// <annotations>.<N>.entry.weekday
|
||||
// <annotations>.<N>.entry.julian
|
||||
// <annotations>.<N>.entry.hour
|
||||
// <annotations>.<N>.entry.minute
|
||||
// <annotations>.<N>.entry.second
|
||||
ISO8601d date (i.first.substr (11));
|
||||
if (elements[3] == "year") { value = Variant (static_cast<int> (date.year ())); return true; }
|
||||
else if (elements[3] == "month") { value = Variant (static_cast<int> (date.month ())); return true; }
|
||||
else if (elements[3] == "day") { value = Variant (static_cast<int> (date.day ())); return true; }
|
||||
else if (elements[3] == "week") { value = Variant (static_cast<int> (date.week ())); return true; }
|
||||
else if (elements[3] == "weekday") { value = Variant (static_cast<int> (date.dayOfWeek ())); return true; }
|
||||
else if (elements[3] == "julian") { value = Variant (static_cast<int> (date.dayOfYear ())); return true; }
|
||||
else if (elements[3] == "hour") { value = Variant (static_cast<int> (date.hour ())); return true; }
|
||||
else if (elements[3] == "minute") { value = Variant (static_cast<int> (date.minute ())); return true; }
|
||||
else if (elements[3] == "second") { value = Variant (static_cast<int> (date.second ())); return true; }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -441,20 +402,3 @@ bool DOM::get (const std::string& name, const Task& task, Variant& value)
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
void DOM::set (const std::string& name, const Variant& value)
|
||||
{
|
||||
int len = name.length ();
|
||||
|
||||
// rc. --> context.config
|
||||
if (len > 3 &&
|
||||
name.substr (0, 3) == "rc.")
|
||||
{
|
||||
context.config.set (name.substr (3), (std::string) value);
|
||||
}
|
||||
|
||||
// Unrecognized --> error.
|
||||
else
|
||||
throw format (STRING_DOM_CANNOT_SET, name);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -38,10 +38,8 @@ public:
|
||||
DOM ();
|
||||
~DOM ();
|
||||
|
||||
const std::vector <std::string> get_references () const;
|
||||
bool get (const std::string&, Variant&);
|
||||
bool get (const std::string&, const Task&, Variant&);
|
||||
void set (const std::string&, const Variant&);
|
||||
|
||||
private:
|
||||
};
|
||||
|
||||
836
src/Date.cpp
836
src/Date.cpp
@@ -1,836 +0,0 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Copyright 2006 - 2015, Paul Beckingham, Federico Hernandez.
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
// http://www.opensource.org/licenses/mit-license.php
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include <cmake.h>
|
||||
#include <iomanip>
|
||||
#include <sstream>
|
||||
#include <time.h>
|
||||
#include <assert.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <Nibbler.h>
|
||||
#include <Date.h>
|
||||
#include <Variant.h>
|
||||
#include <Dates.h>
|
||||
#include <text.h>
|
||||
#include <util.h>
|
||||
#include <utf8.h>
|
||||
#include <i18n.h>
|
||||
#include <Context.h>
|
||||
|
||||
extern Context context;
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Defaults to "now".
|
||||
Date::Date ()
|
||||
{
|
||||
_t = time (NULL);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date::Date (const time_t t)
|
||||
{
|
||||
_t = t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date::Date (const int m, const int d, const int y)
|
||||
{
|
||||
// Error if not valid.
|
||||
struct tm t = {0};
|
||||
t.tm_isdst = -1; // Requests that mktime determine summer time effect.
|
||||
t.tm_mday = d;
|
||||
t.tm_mon = m - 1;
|
||||
t.tm_year = y - 1900;
|
||||
|
||||
_t = mktime (&t);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date::Date (const int m, const int d, const int y,
|
||||
const int hr, const int mi, const int se)
|
||||
{
|
||||
// Error if not valid.
|
||||
struct tm t = {0};
|
||||
t.tm_isdst = -1; // Requests that mktime determine summer time effect.
|
||||
t.tm_mday = d;
|
||||
t.tm_mon = m - 1;
|
||||
t.tm_year = y - 1900;
|
||||
t.tm_hour = hr;
|
||||
t.tm_min = mi;
|
||||
t.tm_sec = se;
|
||||
|
||||
_t = mktime (&t);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date::Date (
|
||||
const std::string& input,
|
||||
const std::string& format /* = "m/d/Y" */,
|
||||
const bool iso /* = true */,
|
||||
const bool epoch /* = true */)
|
||||
{
|
||||
// Check first to see if this is supported as a named date.
|
||||
Variant v;
|
||||
if (namedDates (input, v))
|
||||
{
|
||||
_t = v.get_date ();
|
||||
return;
|
||||
}
|
||||
|
||||
// Parse a formatted date.
|
||||
Nibbler n (input);
|
||||
n.save ();
|
||||
#ifdef NIBBLER_FEATURE_DATE
|
||||
if (n.getDate (format, _t) && n.depleted ())
|
||||
return;
|
||||
#endif
|
||||
|
||||
// Parse an ISO date.
|
||||
n.restore ();
|
||||
if (iso && n.getDateISO (_t) && n.depleted ())
|
||||
return;
|
||||
|
||||
// Perhaps it is an epoch date, in string form?
|
||||
n.restore ();
|
||||
if (epoch && isEpoch (input))
|
||||
return;
|
||||
|
||||
throw ::format (STRING_DATE_INVALID_FORMAT, input, format);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date::Date (
|
||||
const std::string& input,
|
||||
std::string::size_type& i,
|
||||
const std::string& format /* = "m/d/Y" */,
|
||||
const bool iso /* = true */,
|
||||
const bool epoch /* = true */)
|
||||
{
|
||||
// Check first to see if this is supported as a named date.
|
||||
Variant v;
|
||||
if (namedDates (input, v))
|
||||
{
|
||||
i = v.source ().length ();
|
||||
_t = v.get_date ();
|
||||
return;
|
||||
}
|
||||
|
||||
// Parse a formatted date.
|
||||
Nibbler n (input);
|
||||
n.save ();
|
||||
#ifdef NIBBLER_FEATURE_DATE
|
||||
if (n.getDate (format, _t))
|
||||
{
|
||||
i = n.cursor ();
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
// Parse an ISO date.
|
||||
n.restore ();
|
||||
if (iso && n.getDateISO (_t))
|
||||
{
|
||||
i = n.cursor ();
|
||||
return;
|
||||
}
|
||||
|
||||
// Perhaps it is an epoch date, in string form?
|
||||
n.restore ();
|
||||
if (epoch && isEpoch (input))
|
||||
{
|
||||
i = 10;
|
||||
return;
|
||||
}
|
||||
|
||||
throw ::format (STRING_DATE_INVALID_FORMAT, input, format);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date::Date (const Date& rhs)
|
||||
{
|
||||
_t = rhs._t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date::~Date ()
|
||||
{
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
time_t Date::toEpoch ()
|
||||
{
|
||||
return _t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
std::string Date::toEpochString ()
|
||||
{
|
||||
std::stringstream epoch;
|
||||
epoch << _t;
|
||||
return epoch.str ();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// 19980119T070000Z = YYYYMMDDThhmmssZ
|
||||
std::string Date::toISO ()
|
||||
{
|
||||
struct tm* t = gmtime (&_t);
|
||||
|
||||
std::stringstream iso;
|
||||
iso << std::setw (4) << std::setfill ('0') << t->tm_year + 1900
|
||||
<< std::setw (2) << std::setfill ('0') << t->tm_mon + 1
|
||||
<< std::setw (2) << std::setfill ('0') << t->tm_mday
|
||||
<< "T"
|
||||
<< std::setw (2) << std::setfill ('0') << t->tm_hour
|
||||
<< std::setw (2) << std::setfill ('0') << t->tm_min
|
||||
<< std::setw (2) << std::setfill ('0') << t->tm_sec
|
||||
<< "Z";
|
||||
|
||||
return iso.str ();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
double Date::toJulian ()
|
||||
{
|
||||
return (_t / 86400.0) + 2440587.5;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
void Date::toEpoch (time_t& epoch)
|
||||
{
|
||||
epoch = _t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
void Date::toMDY (int& m, int& d, int& y)
|
||||
{
|
||||
struct tm* t = localtime (&_t);
|
||||
|
||||
m = t->tm_mon + 1;
|
||||
d = t->tm_mday;
|
||||
y = t->tm_year + 1900;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
const std::string Date::toString (
|
||||
const std::string& format /*= "m/d/Y" */) const
|
||||
{
|
||||
// Making this local copy seems to fix a bug. Remove the local copy and
|
||||
// you'll see segmentation faults and all kinds of gibberish.
|
||||
std::string localFormat = format;
|
||||
|
||||
char buffer[12];
|
||||
std::string formatted;
|
||||
for (unsigned int i = 0; i < localFormat.length (); ++i)
|
||||
{
|
||||
int c = localFormat[i];
|
||||
switch (c)
|
||||
{
|
||||
case 'm': sprintf (buffer, "%d", this->month ()); break;
|
||||
case 'M': sprintf (buffer, "%02d", this->month ()); break;
|
||||
case 'd': sprintf (buffer, "%d", this->day ()); break;
|
||||
case 'D': sprintf (buffer, "%02d", this->day ()); break;
|
||||
case 'y': sprintf (buffer, "%02d", this->year () % 100); break;
|
||||
case 'Y': sprintf (buffer, "%d", this->year ()); break;
|
||||
case 'a': sprintf (buffer, "%.3s", Date::dayName (dayOfWeek ()).c_str ()); break;
|
||||
case 'A': sprintf (buffer, "%.10s", Date::dayName (dayOfWeek ()).c_str ()); break;
|
||||
case 'b': sprintf (buffer, "%.3s", Date::monthName (month ()).c_str ()); break;
|
||||
case 'B': sprintf (buffer, "%.10s", Date::monthName (month ()).c_str ()); break;
|
||||
case 'v': sprintf (buffer, "%d", Date::weekOfYear (Date::dayOfWeek (context.config.get ("weekstart")))); break;
|
||||
case 'V': sprintf (buffer, "%02d", Date::weekOfYear (Date::dayOfWeek (context.config.get ("weekstart")))); break;
|
||||
case 'h': sprintf (buffer, "%d", this->hour ()); break;
|
||||
case 'H': sprintf (buffer, "%02d", this->hour ()); break;
|
||||
case 'n': sprintf (buffer, "%d", this->minute ()); break;
|
||||
case 'N': sprintf (buffer, "%02d", this->minute ()); break;
|
||||
case 's': sprintf (buffer, "%d", this->second ()); break;
|
||||
case 'S': sprintf (buffer, "%02d", this->second ()); break;
|
||||
case 'j': sprintf (buffer, "%d", this->dayOfYear ()); break;
|
||||
case 'J': sprintf (buffer, "%03d", this->dayOfYear ()); break;
|
||||
default: sprintf (buffer, "%c", c); break;
|
||||
}
|
||||
|
||||
formatted += buffer;
|
||||
}
|
||||
|
||||
return formatted;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date Date::startOfDay () const
|
||||
{
|
||||
return Date (month (), day (), year ());
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date Date::startOfWeek () const
|
||||
{
|
||||
Date sow (_t);
|
||||
sow -= (dayOfWeek () * 86400);
|
||||
return Date (sow.month (), sow.day (), sow.year ());
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date Date::startOfMonth () const
|
||||
{
|
||||
return Date (month (), 1, year ());
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date Date::startOfYear () const
|
||||
{
|
||||
return Date (1, 1, year ());
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::valid (const std::string& input, const std::string& format)
|
||||
{
|
||||
try
|
||||
{
|
||||
Date test (input, format);
|
||||
}
|
||||
|
||||
catch (...)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::valid (const int m, const int d, const int y, const int hr,
|
||||
const int mi, const int se)
|
||||
{
|
||||
if (hr < 0 || hr > 23)
|
||||
return false;
|
||||
|
||||
if (mi < 0 || mi > 59)
|
||||
return false;
|
||||
|
||||
if (se < 0 || se > 59)
|
||||
return false;
|
||||
|
||||
return Date::valid (m, d, y);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::valid (const int m, const int d, const int y)
|
||||
{
|
||||
// Check that the year is valid.
|
||||
if (y < 0)
|
||||
return false;
|
||||
|
||||
// Check that the month is valid.
|
||||
if (m < 1 || m > 12)
|
||||
return false;
|
||||
|
||||
// Finally check that the days fall within the acceptable range for this
|
||||
// month, and whether or not this is a leap year.
|
||||
if (d < 1 || d > Date::daysInMonth (m, y))
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Julian
|
||||
bool Date::valid (const int d, const int y)
|
||||
{
|
||||
// Check that the year is valid.
|
||||
if (y < 0)
|
||||
return false;
|
||||
|
||||
if (d < 1 || d > Date::daysInYear (y))
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::leapYear (int year)
|
||||
{
|
||||
bool ly = false;
|
||||
|
||||
// (year % 4 == 0) && (year % 100 !=0) OR
|
||||
// (year % 400 == 0)
|
||||
// are leapyears
|
||||
|
||||
if (((!(year % 4)) && (year % 100)) || (!(year % 400))) ly = true;
|
||||
|
||||
return ly;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::daysInMonth (int month, int year)
|
||||
{
|
||||
static int days[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
|
||||
|
||||
if (month == 2 && Date::leapYear (year))
|
||||
return 29;
|
||||
|
||||
return days[month - 1];
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::daysInYear (int year)
|
||||
{
|
||||
return Date::leapYear (year) ? 366 : 365;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
std::string Date::monthName (int month)
|
||||
{
|
||||
static const char* months[12] =
|
||||
{
|
||||
STRING_DATE_JANUARY_LONG,
|
||||
STRING_DATE_FEBRUARY_LONG,
|
||||
STRING_DATE_MARCH_LONG,
|
||||
STRING_DATE_APRIL_LONG,
|
||||
STRING_DATE_MAY_LONG,
|
||||
STRING_DATE_JUNE_LONG,
|
||||
STRING_DATE_JULY_LONG,
|
||||
STRING_DATE_AUGUST_LONG,
|
||||
STRING_DATE_SEPTEMBER_LONG,
|
||||
STRING_DATE_OCTOBER_LONG,
|
||||
STRING_DATE_NOVEMBER_LONG,
|
||||
STRING_DATE_DECEMBER_LONG,
|
||||
};
|
||||
|
||||
assert (month > 0);
|
||||
assert (month <= 12);
|
||||
return ucFirst (months[month - 1]);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
void Date::dayName (int dow, std::string& name)
|
||||
{
|
||||
static const char* days[7] =
|
||||
{
|
||||
STRING_DATE_SUNDAY_LONG,
|
||||
STRING_DATE_MONDAY_LONG,
|
||||
STRING_DATE_TUESDAY_LONG,
|
||||
STRING_DATE_WEDNESDAY_LONG,
|
||||
STRING_DATE_THURSDAY_LONG,
|
||||
STRING_DATE_FRIDAY_LONG,
|
||||
STRING_DATE_SATURDAY_LONG,
|
||||
};
|
||||
|
||||
name = ucFirst (days[dow]);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
std::string Date::dayName (int dow)
|
||||
{
|
||||
static const char* days[7] =
|
||||
{
|
||||
STRING_DATE_SUNDAY_LONG,
|
||||
STRING_DATE_MONDAY_LONG,
|
||||
STRING_DATE_TUESDAY_LONG,
|
||||
STRING_DATE_WEDNESDAY_LONG,
|
||||
STRING_DATE_THURSDAY_LONG,
|
||||
STRING_DATE_FRIDAY_LONG,
|
||||
STRING_DATE_SATURDAY_LONG,
|
||||
};
|
||||
|
||||
return ucFirst (days[dow]);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::weekOfYear (int weekStart) const
|
||||
{
|
||||
struct tm* t = localtime (&_t);
|
||||
char weekStr[3];
|
||||
|
||||
if (weekStart == 0)
|
||||
strftime(weekStr, sizeof(weekStr), "%U", t);
|
||||
else if (weekStart == 1)
|
||||
strftime(weekStr, sizeof(weekStr), "%V", t);
|
||||
else
|
||||
throw std::string (STRING_DATE_BAD_WEEKSTART);
|
||||
|
||||
int weekNumber = atoi (weekStr);
|
||||
|
||||
if (weekStart == 0)
|
||||
weekNumber += 1;
|
||||
|
||||
return weekNumber;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::dayOfWeek () const
|
||||
{
|
||||
struct tm* t = localtime (&_t);
|
||||
return t->tm_wday;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::dayOfWeek (const std::string& input)
|
||||
{
|
||||
std::string in = lowerCase (input);
|
||||
|
||||
if (in == STRING_DATE_SUNDAY_LONG || in == STRING_DATE_SUNDAY_SHORT) return 0;
|
||||
if (in == STRING_DATE_MONDAY_LONG || in == STRING_DATE_MONDAY_SHORT) return 1;
|
||||
if (in == STRING_DATE_TUESDAY_LONG || in == STRING_DATE_TUESDAY_SHORT) return 2;
|
||||
if (in == STRING_DATE_WEDNESDAY_LONG || in == STRING_DATE_WEDNESDAY_SHORT) return 3;
|
||||
if (in == STRING_DATE_THURSDAY_LONG || in == STRING_DATE_THURSDAY_SHORT) return 4;
|
||||
if (in == STRING_DATE_FRIDAY_LONG || in == STRING_DATE_FRIDAY_SHORT) return 5;
|
||||
if (in == STRING_DATE_SATURDAY_LONG || in == STRING_DATE_SATURDAY_SHORT) return 6;
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::dayOfYear () const
|
||||
{
|
||||
struct tm* t = localtime (&_t);
|
||||
return t->tm_yday + 1;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::monthOfYear (const std::string& input)
|
||||
{
|
||||
std::string in = lowerCase (input);
|
||||
|
||||
if (in == STRING_DATE_JANUARY_LONG || in == STRING_DATE_JANUARY_SHORT ) return 1;
|
||||
if (in == STRING_DATE_FEBRUARY_LONG || in == STRING_DATE_FEBRUARY_SHORT ) return 2;
|
||||
if (in == STRING_DATE_MARCH_LONG || in == STRING_DATE_MARCH_SHORT ) return 3;
|
||||
if (in == STRING_DATE_APRIL_LONG || in == STRING_DATE_APRIL_SHORT ) return 4;
|
||||
if (in == STRING_DATE_MAY_LONG || in == STRING_DATE_MAY_SHORT ) return 5;
|
||||
if (in == STRING_DATE_JUNE_LONG || in == STRING_DATE_JUNE_SHORT ) return 6;
|
||||
if (in == STRING_DATE_JULY_LONG || in == STRING_DATE_JULY_SHORT ) return 7;
|
||||
if (in == STRING_DATE_AUGUST_LONG || in == STRING_DATE_AUGUST_SHORT ) return 8;
|
||||
if (in == STRING_DATE_SEPTEMBER_LONG || in == STRING_DATE_SEPTEMBER_SHORT) return 9;
|
||||
if (in == STRING_DATE_OCTOBER_LONG || in == STRING_DATE_OCTOBER_SHORT ) return 10;
|
||||
if (in == STRING_DATE_NOVEMBER_LONG || in == STRING_DATE_NOVEMBER_SHORT ) return 11;
|
||||
if (in == STRING_DATE_DECEMBER_LONG || in == STRING_DATE_DECEMBER_SHORT ) return 12;
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::length (const std::string& format)
|
||||
{
|
||||
int total = 0;
|
||||
|
||||
std::string::const_iterator i;
|
||||
for (i = format.begin (); i != format.end (); ++i)
|
||||
{
|
||||
switch (*i)
|
||||
{
|
||||
case 'm':
|
||||
case 'M':
|
||||
case 'd':
|
||||
case 'D':
|
||||
case 'y':
|
||||
case 'v':
|
||||
case 'V':
|
||||
case 'h':
|
||||
case 'H':
|
||||
case 'n':
|
||||
case 'N':
|
||||
case 's':
|
||||
case 'S': total += 2; break;
|
||||
case 'b':
|
||||
case 'j':
|
||||
case 'J':
|
||||
case 'a': total += 3; break;
|
||||
case 'Y': total += 4; break;
|
||||
case 'A':
|
||||
case 'B': total += 10; break;
|
||||
|
||||
// Calculate the width, don't assume a single character width.
|
||||
default: total += mk_wcwidth (*i); break;
|
||||
}
|
||||
}
|
||||
|
||||
return total;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
time_t Date::easter (int year)
|
||||
{
|
||||
int Y = year;
|
||||
int a = Y % 19;
|
||||
int b = Y / 100;
|
||||
int c = Y % 100;
|
||||
int d = b / 4;
|
||||
int e = b % 4;
|
||||
int f = (b + 8) / 25;
|
||||
int g = (b - f + 1) / 3;
|
||||
int h = (19 * a + b - d - g + 15) % 30;
|
||||
int i = c / 4;
|
||||
int k = c % 4;
|
||||
int L = (32 + 2 * e + 2 * i - h - k) % 7;
|
||||
int m = (a + 11 * h + 22 * L) / 451;
|
||||
int month = (h + L - 7 * m + 114) / 31;
|
||||
int day = ((h + L - 7 * m + 114) % 31) + 1;
|
||||
struct tm t = {0};
|
||||
t.tm_isdst = -1; // Requests that mktime determine summer time effect.
|
||||
t.tm_mday = day;
|
||||
t.tm_mon = month - 1;
|
||||
t.tm_year = year - 1900;
|
||||
return mktime (&t);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::month () const
|
||||
{
|
||||
struct tm* t = localtime (&_t);
|
||||
return t->tm_mon + 1;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::week () const
|
||||
{
|
||||
return Date::weekOfYear (Date::dayOfWeek (context.config.get ("weekstart")));
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::day () const
|
||||
{
|
||||
struct tm* t = localtime (&_t);
|
||||
return t->tm_mday;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::year () const
|
||||
{
|
||||
struct tm* t = localtime (&_t);
|
||||
return t->tm_year + 1900;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::hour () const
|
||||
{
|
||||
struct tm* t = localtime (&_t);
|
||||
return t->tm_hour;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::minute () const
|
||||
{
|
||||
struct tm* t = localtime (&_t);
|
||||
return t->tm_min;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Date::second () const
|
||||
{
|
||||
struct tm* t = localtime (&_t);
|
||||
return t->tm_sec;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::operator== (const Date& rhs) const
|
||||
{
|
||||
return rhs._t == _t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::operator!= (const Date& rhs) const
|
||||
{
|
||||
return rhs._t != _t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::operator< (const Date& rhs) const
|
||||
{
|
||||
return _t < rhs._t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::operator> (const Date& rhs) const
|
||||
{
|
||||
return _t > rhs._t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::operator<= (const Date& rhs) const
|
||||
{
|
||||
return _t <= rhs._t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::operator>= (const Date& rhs) const
|
||||
{
|
||||
return _t >= rhs._t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::sameHour (const Date& rhs) const
|
||||
{
|
||||
if (this->year () == rhs.year () &&
|
||||
this->month () == rhs.month () &&
|
||||
this->day () == rhs.day () &&
|
||||
this->hour () == rhs.hour ())
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::sameDay (const Date& rhs) const
|
||||
{
|
||||
if (this->year () == rhs.year () &&
|
||||
this->month () == rhs.month () &&
|
||||
this->day () == rhs.day ())
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::sameWeek (const Date& rhs) const
|
||||
{
|
||||
if (this->year () == rhs.year () &&
|
||||
this->week () == rhs.week ())
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::sameMonth (const Date& rhs) const
|
||||
{
|
||||
if (this->year () == rhs.year () &&
|
||||
this->month () == rhs.month ())
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::sameYear (const Date& rhs) const
|
||||
{
|
||||
if (this->year () == rhs.year ())
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date Date::operator- (const int delta)
|
||||
{
|
||||
return Date (_t - delta);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date Date::operator+ (const int delta)
|
||||
{
|
||||
return Date (_t + delta);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date& Date::operator+= (const int delta)
|
||||
{
|
||||
_t += (time_t) delta;
|
||||
return *this;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Date& Date::operator-= (const int delta)
|
||||
{
|
||||
_t -= (time_t) delta;
|
||||
return *this;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
time_t Date::operator- (const Date& rhs)
|
||||
{
|
||||
return _t - rhs._t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Prefix decrement by one day.
|
||||
void Date::operator-- ()
|
||||
{
|
||||
Date yesterday = startOfDay () - 1;
|
||||
yesterday = Date (yesterday.month (),
|
||||
yesterday.day (),
|
||||
yesterday.year (),
|
||||
hour (),
|
||||
minute (),
|
||||
second ());
|
||||
_t = yesterday._t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Postfix decrement by one day.
|
||||
void Date::operator-- (int)
|
||||
{
|
||||
Date yesterday = startOfDay () - 1;
|
||||
yesterday = Date (yesterday.month (),
|
||||
yesterday.day (),
|
||||
yesterday.year (),
|
||||
hour (),
|
||||
minute (),
|
||||
second ());
|
||||
_t = yesterday._t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Prefix increment by one day.
|
||||
void Date::operator++ ()
|
||||
{
|
||||
Date tomorrow = (startOfDay () + 90001).startOfDay ();
|
||||
tomorrow = Date (tomorrow.month (),
|
||||
tomorrow.day (),
|
||||
tomorrow.year (),
|
||||
hour (),
|
||||
minute (),
|
||||
second ());
|
||||
_t = tomorrow._t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Postfix increment by one day.
|
||||
void Date::operator++ (int)
|
||||
{
|
||||
Date tomorrow = (startOfDay () + 90001).startOfDay ();
|
||||
tomorrow = Date (tomorrow.month (),
|
||||
tomorrow.day (),
|
||||
tomorrow.year (),
|
||||
hour (),
|
||||
minute (),
|
||||
second ());
|
||||
_t = tomorrow._t;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Date::isEpoch (const std::string& input)
|
||||
{
|
||||
if (Lexer::isAllDigits (input) &&
|
||||
input.length () <= 10 )
|
||||
{
|
||||
_t = (time_t) atoi (input.c_str ());
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user