{"id":18925529,"url":"https://github.com/nightmachinery/jalali-calendar-cli","last_synced_at":"2025-04-15T13:32:10.821Z","repository":{"id":168794462,"uuid":"644590690","full_name":"NightMachinery/jalali-calendar-cli","owner":"NightMachinery","description":"Jalali (Shamsi) calendar in your terminal, with holidays","archived":false,"fork":false,"pushed_at":"2024-09-21T10:49:33.000Z","size":894,"stargazers_count":18,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-28T22:01:39.647Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NightMachinery.png","metadata":{"files":{"readme":"readme.org","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-23T20:58:28.000Z","updated_at":"2024-09-27T14:24:28.000Z","dependencies_parsed_at":"2024-03-09T10:21:03.658Z","dependency_job_id":"4cf63ab6-6766-48c8-811a-d011d38d8f98","html_url":"https://github.com/NightMachinery/jalali-calendar-cli","commit_stats":null,"previous_names":["nightmachinery/jalali-calendar-cli"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NightMachinery%2Fjalali-calendar-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NightMachinery%2Fjalali-calendar-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NightMachinery%2Fjalali-calendar-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NightMachinery%2Fjalali-calendar-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NightMachinery","download_url":"https://codeload.github.com/NightMachinery/jalali-calendar-cli/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249080246,"owners_count":21209495,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T11:12:10.360Z","updated_at":"2025-04-15T13:32:10.453Z","avatar_url":"https://github.com/NightMachinery.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"#+TITLE: jalali-calendar-cli\n\nJalali (Shamsi) calendar in your terminal, with holidays\n\n* Install\n#+begin_example bash\npip install -U jalali-calendar-cli\n#+end_example\n\nThis requires Python ≥3.10.\n\n* Usage\n# #+ATTR_HTML: :width 884\n# [[file:readme.org_imgs/20230524_003016_h5V1Xf.png]]\n#+ATTR_HTML: :width 914\n[[file:readme.org_imgs/20230606_125421_Bh79HZ.png]]\n\n#+ATTR_HTML: :width 900\n[[file:readme.org_imgs/20230606_125356_jLt2Jh.png]]\n\n\n#+begin_example bash\nusage: jalali-calendar [-h] [--color {auto,always,never}]\n                       [--true-color | --no-true-color]\n                       [--footnotes | --no-footnotes]\n                       [--indentation INDENTATION]\n                       [--holidays-json-path HOLIDAYS_JSON_PATH]\n                       [--color-preset {light,dark}]\n                       [--weekend-true-color WEEKEND_TRUE_COLOR]\n                       [--holiday-true-color HOLIDAY_TRUE_COLOR]\n                       [--header-true-color HEADER_TRUE_COLOR]\n                       [--today-true-color TODAY_TRUE_COLOR]\n                       [--weekend-color WEEKEND_COLOR]\n                       [--holiday-color HOLIDAY_COLOR]\n                       [--header-color HEADER_COLOR]\n                       [--today-color TODAY_COLOR]\n                       [month] [year]\n\npositional arguments:\n  month                 month in Jalali calendar (default: current month)\n  year                  year in Jalali calendar (default: current year)\n\noptions:\n  -h, --help            show this help message and exit\n  --color {auto,always,never}\n                        colorize the output\n  --true-color, --no-true-color\n                        enable true color support for output (default: False)\n  --footnotes, --no-footnotes\n                        show footnotes in the output (default: True)\n  --indentation INDENTATION\n                        number of spaces for indentation (default: 5)\n  --holidays-json-path HOLIDAYS_JSON_PATH\n                        path to JSON file containing holiday data\n  --color-preset {light,dark}\n                        color preset for the calendar output (default: light)\n\n24-bit true color options:\n  --weekend-true-color WEEKEND_TRUE_COLOR\n                        RGB values for weekend color in 24-bit true color\n  --holiday-true-color HOLIDAY_TRUE_COLOR\n                        RGB values for holiday color in 24-bit true color\n  --header-true-color HEADER_TRUE_COLOR\n                        RGB values for header color in 24-bit true color\n  --today-true-color TODAY_TRUE_COLOR\n                        RGB values for the current day's color\n\ncolorama 256 color options:\n  --weekend-color WEEKEND_COLOR\n                        colorama color name for weekend color\n  --holiday-color HOLIDAY_COLOR\n                        colorama color name for holiday color\n  --header-color HEADER_COLOR\n                        colorama color name for header color\n  --today-color TODAY_COLOR\n                        colorama color name for the current day\n#+end_example\n\n** Examples\n#+begin_example bash\njcal 12\n#+end_example\n\n#+begin_example\n            1402 Esfand           \n Sat  Sun  Mon  Tue  Wed  Thu  Fri\n                  1    2    3    4\n   5    6    7    8    9   10   11\n  12   13   14   15   16   17   18\n  19   20   21   22   23   24   25\n  26   27   28   29\n\n Holidays:\n    6: Birthday of Imam Mahdi\n   29: Nationalization of the Oil Industry\n#+end_example\n\n#+begin_example bash\njcal 7 1402\n#+end_example\n\n#+begin_example\n             1402 Mehr            \n Sat  Sun  Mon  Tue  Wed  Thu  Fri\n   1    2    3    4    5    6    7\n   8    9   10   11   12   13   14\n  15   16   17   18   19   20   21\n  22   23   24   25   26   27   28\n  29   30\n\n Holidays:\n    2: Martyrdom of Imam Hassan Askari and Start of Imamate of Imam Mahdi\n   11: Birthday of Prophet Muhammad and Imam Sadiq\n#+end_example\n\n#+ATTR_HTML: :width 968\n[[file:readme.org_imgs/20230606_125617_sazNzJ.png]]\n\n#+ATTR_HTML: :width 968\n[[file:readme.org_imgs/20230606_103928_zRAerD.png]]\n\n*** Shell Aliases in Bash\nYou can add aliases to =~/.bashrc= and =~/.bash_profile= to persist your settings:\n\n#+begin_example bash\nalias jcal='command jcal --color-preset dark'\n#+end_example\n\nAliases work the same way in Zsh, you just need to add them to =~/.zshenv=.\n\n*** Today\nThe current day is highlighted:\n#+ATTR_HTML: :width 874\n[[file:readme.org_imgs/20230630_060229_Temg6y.png]]\n\n*** Seeing All Months Together\nThere is a Perl script included in this repository that prints all months together. This script is a WIP.\n\n#+begin_example zsh\nperl ./jcal_all.pl 1402 --outer-indent 2 --horizontal-indent 1\n#+end_example\n\n#+begin_example\n       1402 Farvardin               1402 Ordibehesht                1402 Khordad        \n Sat Sun Mon Tue Wed Thu Fri   Sat Sun Mon Tue Wed Thu Fri   Sat Sun Mon Tue Wed Thu Fri\n               1   2   3   4                             1             1   2   3   4   5\n   5   6   7   8   9  10  11     2   3   4   5   6   7   8     6   7   8   9  10  11  12\n  12  13  14  15  16  17  18     9  10  11  12  13  14  15    13  14  15  16  17  18  19\n  19  20  21  22  23  24  25    16  17  18  19  20  21  22    20  21  22  23  24  25  26\n  26  27  28  29  30  31        23  24  25  26  27  28  29    27  28  29  30  31        \n                                30  31                                                  \n\n          1402 Tir                     1402 Mordad                 1402 Shahrivar       \n Sat Sun Mon Tue Wed Thu Fri   Sat Sun Mon Tue Wed Thu Fri   Sat Sun Mon Tue Wed Thu Fri\n                       1   2         1   2   3   4   5   6                     1   2   3\n   3   4   5   6   7   8   9     7   8   9  10  11  12  13     4   5   6   7   8   9  10\n  10  11  12  13  14  15  16    14  15  16  17  18  19  20    11  12  13  14  15  16  17\n  17  18  19  20  21  22  23    21  22  23  24  25  26  27    18  19  20  21  22  23  24\n  24  25  26  27  28  29  30    28  29  30  31                25  26  27  28  29  30  31\n  31                                                                                    \n\n          1402 Mehr                     1402 Aban                     1402 Azar         \n Sat Sun Mon Tue Wed Thu Fri   Sat Sun Mon Tue Wed Thu Fri   Sat Sun Mon Tue Wed Thu Fri\n   1   2   3   4   5   6   7             1   2   3   4   5                     1   2   3\n   8   9  10  11  12  13  14     6   7   8   9  10  11  12     4   5   6   7   8   9  10\n  15  16  17  18  19  20  21    13  14  15  16  17  18  19    11  12  13  14  15  16  17\n  22  23  24  25  26  27  28    20  21  22  23  24  25  26    18  19  20  21  22  23  24\n  29  30                        27  28  29  30                25  26  27  28  29  30    \n\n          1402 Dey                     1402 Bahman                   1402 Esfand        \n Sat Sun Mon Tue Wed Thu Fri   Sat Sun Mon Tue Wed Thu Fri   Sat Sun Mon Tue Wed Thu Fri\n                           1         1   2   3   4   5   6                 1   2   3   4\n   2   3   4   5   6   7   8     7   8   9  10  11  12  13     5   6   7   8   9  10  11\n   9  10  11  12  13  14  15    14  15  16  17  18  19  20    12  13  14  15  16  17  18\n  16  17  18  19  20  21  22    21  22  23  24  25  26  27    19  20  21  22  23  24  25\n  23  24  25  26  27  28  29    28  29  30                    26  27  28  29            \n  30\n#+end_example\n\n** =colorama= Colors\nThese colors are defined by your terminal theme. Use true (24-bit) colors if you want to specify colors in RGB.\n\n#+begin_example\nBLACK\nBLUE\nCYAN\nGREEN\nLIGHTBLACK_EX\nLIGHTBLUE_EX\nLIGHTCYAN_EX\nLIGHTGREEN_EX\nLIGHTMAGENTA_EX\nLIGHTRED_EX\nLIGHTWHITE_EX\nLIGHTYELLOW_EX\nMAGENTA\nRED\nRESET\nWHITE\nYELLOW\n#+end_example\n\n* Holiday Data\nThe default data dictionary is [[https://github.com/NightMachinery/jalali-calendar-cli/blob/master/jalali_calendar_cli/holidays.json][here]]. I plan to keep the data up-to-date for the upcoming years, but you can always supply your own.\n\nThe holiday data of previous years (≤1401) has not been added.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnightmachinery%2Fjalali-calendar-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnightmachinery%2Fjalali-calendar-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnightmachinery%2Fjalali-calendar-cli/lists"}