/caltext

Automatically generates a plaintext calendar between two dates.

Primary LanguagePythonBSD 2-Clause "Simplified" LicenseBSD-2-Clause

caltext -> generates a plaintext calendar given a date range.
-------
     |--> { startyear, startmonth, endyear, endmonth } == parameters
     |--> Julian calendar
     |--> add notes at the right of each week
     |--> weeks start from Sunday

=====================================================================

Here's how I generated a schedule for school,

    ./caltext.py 201910 202005 > uol.txt

---------------------------------------------------------------------
uol.txt                         | notes added afterwards
---------------------------------------------------------------------
        Su Mo Tu We Th Fr Sa
Oct            1  2  3  4  5    |
         6  7  8  9 10 11 12    |
        13 14 15 16 17 18 19    |
        20 21 22 23 24 25 26    | you are here
        27 28 29 30 31 
Nov                     1  2    |
         3  4  5  6  7  8  9    |
        10 11 12 13 14 15 16    |
        17 18 19 20 21 22 23    |
        24 25 26 27 28 29 30    |

Dec      1  2  3  4  5  6  7    |
         8  9 10 11 12 13 14    | christmas break
        15 16 17 18 19 20 21    |
        22 23 24 25 26 27 28    |
        29 30 31 
Jan               1  2  3  4    |
         5  6  7  8  9 10 11    |
        12 13 14 15 16 17 18    | lv4 & lv5 cw1 due, lv6 ppr due
        19 20 21 22 23 24 25    |
        26 27 28 29 30 31 
Feb                        1    | exam entry (portal deadline)
         2  3  4  5  6  7  8    |
         9 10 11 12 13 14 15    | lv6 cw1 due
        16 17 18 19 20 21 22    |
        23 24 25 26 27 28 29    |

Mar      1  2  3  4  5  6  7    |
         8  9 10 11 12 13 14    |
        15 16 17 18 19 20 21    | lv4 & lv5 cw2 due
        22 23 24 25 26 27 28    |
        29 30 31 
Apr               1  2  3  4    |
         5  6  7  8  9 10 11    | lv6 cw2 due
        12 13 14 15 16 17 18    |
        19 20 21 22 23 24 25    |
        26 27 28 29 30 
May                     1  2    |
         3  4  5  6  7  8  9    |
        10 11 12 13 14 15 16    | lv6 final proj. rpt due
        17 18 19 20 21 22 23    |
        24 25 26 27 28 29 30    |
        31 
---------------------------------------------------------------------