# Orthocal — Orthodox Calendar Plugin for Oh My Zsh Displays today's Orthodox feast, saints, fasting, and scripture reading information in your zsh prompt using the [Orthocal.info](https://orthocal.info) API. ## Installation Clone this repository into your oh-my-zsh custom plugins directory: ```zsh git clone https://github.com/darthtrevino/omz-orthocal.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/orthocal ``` Then add `orthocal` to the plugins array in your `~/.zshrc`: ```zsh plugins=(... orthocal) ``` Finally, use any of the prompt functions in your `PROMPT` or `RPROMPT`: ```zsh RPROMPT='$(orthocal_saint) [$(orthocal_fasting)]' ``` ## Prompt Functions All functions accept an optional calendar argument: `gregorian` (default) or `julian`. | Function | Description | Example output | |---|---|---| | `orthocal_saint [cal]` | Today's primary feast/saint name | `Synaxis of Archangel Gabriel` | | `orthocal_fasting [cal]` | Current fasting level | `No Fast` or `Strict Fast` | | `orthocal_readings [cal]` | Today's scripture readings (one per line) | `1 Corinthians 5.9-6.11` | | `orthocal [cal]` | Full detail card (for terminal, not prompt) | *(see below)* | ### Examples ```zsh # Default (Gregorian) RPROMPT='☦ $(orthocal_saint)' # Julian calendar RPROMPT='☦ $(orthocal_saint julian) [$(orthocal_fasting julian)]' # Just the saint in prompt, readings on demand RPROMPT='$(orthocal_saint)' alias readings='orthocal_readings' # Full detail card $ orthocal julian ╔══════════════════════════════════════════════╗ ║ ☦ Orthodox Calendar — Today (Julian) ╠══════════════════════════════════════════════╣ ║ Feast: Synaxis of the Twelve Apostles ║ Fast: No Fast ╠══════════════════════════════════════════════╣ ║ Saints: ║ • Synaxis of the Twelve Apostles ║ Readings: ║ 📖 1 Corinthians 4.9-16 ║ 📖 Mark 3.13-19 ╚══════════════════════════════════════════════╝ ``` ## Configuration Set these variables in your `.zshrc` *before* oh-my-zsh is loaded: | Variable | Default | Description | |---|---|---| | `ORTHOCAL_CALENDAR` | `gregorian` | Default calendar: `gregorian` or `julian` | Precedence: explicit function argument > `ORTHOCAL_CALENDAR` env var > `gregorian`. ## Dependencies - `curl` or `wget` (for API requests) - `jq` (optional, recommended — enables full saint listings and readings) ## API This plugin uses the free [Orthocal.info API](https://orthocal.info). No API key is required. Data is cached per-calendar-type and refreshed once per day. ## License [MIT](LICENSE)