---
name: "hcal"
section: "1"
platform: "linux"
package: "hdate"
version: "1.6.02-2.1+b8"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/hcal"
---

# hcal(1)

displays a Hebrew / Gregorian calendar

## NAME

hcal - displays a Hebrew / Gregorian calendar

## SYNOPSIS

**hcal** \[options\] \[coordinates \[timezone\]\] \[\[mm\] yyyy\]

- coordinates: -l \[NS\]yy\[.yyy\] -L \[EW\]xx\[.xxx\]

               \-l \[NS\]yy\[:mm\[:ss\]\] -L \[EW\]xx\[:mm\[:ss\]\]

  timezone:    -z nn\[( .nn \| :mm )\]

## DESCRIPTION

**hcal** prints a calendar with both Gregorian and Hebrew dates for the specified Gregorian month or, if no month is specified, for the whole Gregorian year. If no arguments are given, it prints the current month's calendar. Jewish holidays are annotated, and can optionally be footnoted. **hcal** tries to be sunset-aware in order to correctly highlight the current Hebrew date, and can also display Shabbat times and parshiot. See the section LOCATION, below.

**INPUTTING A HEBREW DATE:** If the year provided is greater than 3000, **hcal** will interpret the given date as a Hebrew date, and will display the calendar of the corresponding Gregorian month(s). Hebrew months are expected to be passed as numbers 1-12 for Tishrei - Elul; Adar I and Adar II are expected to be passed as months 13 and 14.

## OPTIONS

- **-1 --one-month**

  over-ride config file setting if you had set option --three-month as a default there

- **-3 --three-month**

  output previous/next months, side by side. requires 127 columns

- **-b --bidi**

  output Hebrew information in Hebrew , in reverse

     **--visual**       sequence

     **--no-bidi**      over-ride config file setting if you had set

     **--no-visual**    option -bidi as a default there

  - **-c --colorize**

    output in calming, muted tones

     **--no-color**     over-ride config file setting

  - **-d --diaspora**

    use diaspora reading and holidays. Only relevant if hcal is using location information indicating an Israeli timezone

  - **-f --footnote**

    output descriptive notes of holidays

     **--no-footnote**  over-ride config file setting

  - **-h --html**

    output in html format to stdout

     **--no-html**      over-ride config file setting

  - **-H --hebrew**

    output Hebrew information in Hebrew, in 'logical' sequence. If this displays in reverse for you, use option -b

  - **-I --israel**

    override a diaspora default. Only relevant if hcal is using location information indicating other than an Israeli timezone

  - **-i**

    use external css file "./hcal.css" for html output

  - **--no-reverse**

    do not highlight today's date

  - **-p --parasha**

    output week's parasha on each calendar row

  - **-s --shabbat**

    output Shabbat times and parshiot

  - **-l --latitude**

    \[NS\]yy\[.yyy\] decimal degrees, or \[NS\]yy\[:mm\[:ss\]\] degrees, minutes, seconds. Negative values are South

  - **-L --longitude**

    \[EW\]xx\[.xxx\] decimal degrees, or \[EW\]xx\[:mm\[:ss\]\] degrees, minutes, seconds. Negative values are West

  - **-z --timezone**

    \+/-UTC. Notation may  be in decimal hours ( hh\[.hh\] ) or hours, minutes ( hh\[:mm\] )

## NOTES

### HOLIDAYS

Holidays are depicted by a change in the symbol separating a day's Gregorian and Hebrew dates, as follows:

**/**  Regular day

**+**  Yom Tov (plus Yom Kippur)

**\***  Erev Yom Kippur

**~**  Hol HaMoed

**!**  Hanuka and Purim

**@**  Tzomot

**$**  Lag BaOmer ,Tu BeAv, Tu BeShvat

**#**  Independance day and Yom Yerushalaim

**%**  Tzahal and Holocaust memorial days

**^**  Other Israeli National days

Use the -f (--footnote) option to have hcal describe what any particular day is marking.

### LOCATIONS

If you want  **hcal** to display accurate Shabbat times, and to accurately advance the Hebrew 'today's date' indicator at sunset,  **hcal** requires location and time zone information in order to make astronomical calculations for a given date. If you don't provide ANY such information,  **hcal** uses your computer's local time zone information as an indicator, and either picks a city in that time zone, or defaults to the equator at the center of that time zone. If  **hcal** can't even retrieve time zone information from your computer, it defaults to Tel-Aviv. For other locations, use the  **-l -L** option pair. For other timezones, use the  **-z** option. Co-ordinates and standard time zones for some common locations are listed below.

The current defaults include:

Timezone   Default city    Lattitude  Longitude

\-5      New York City      40        -74

 0      London             51          0

 1      Paris              48          2

 2      Tel-Aviv           32         34

 3      Moscow             55         37

Useful locations and time zones

Jerusalem   31, 35, 2      Buenos Aires 34,  -58, -3

Tel Aviv    32, 34, 2      Hong Kong    22,  114,  8

Haifa       32, 34, 2      Los Angeles  34, -118, -8

Beer Sheva  31, 34, 2      Sao Paolo    23, -46,  -3

Ashdod      31, 34, 2      Toronto      43, -79   -5

Tiberias    32, 35, 2

Eilat       29, 34, 2

## FILES

### CONFIG FILE

This folder and file will be automatically created, and includes its own documentation, in-line:

*${XDG\_CONFIG\_HOME}/hcal/hcalrc*

If ${XDG\_CONFIG\_HOME} is undefined:

*~/.config/hcal/hcalrc*

## BUGS

- **Accuracy**

  The accuracy of the astronomically-derived data will suffer from not accounting for environmental conditions such as elevation, horizon, temperature and air pressure.

- **Timezones**

  The timezone support is currenlty primitive and lacks support for daylight savings time transitions.

- **Historical**

  The software does not yet account for the phenomenon and complications of the "Gregorian transition" from the prior, Julian calendar, which effectively caused an instantaneous 'loss' of two weeks for all gentiles affected. Countries (eg. Poland, Spain and Italy) began adopting the Gregorian calendar on 8 Tishrei 5343 (4 October 1582CE), although many did not transition until the 56th century (1752 CE, eg. UK colonies, Sweden). Russia did not adopt the Gregorian calendar until 5678 (1918 CE) and Turkey did not until 5687 (December, 1926 CE). Many other countries made the transition on other dates. Keep in mind that Russia invaded part of Poland, undoing, for the interim, the Gregorian transition for (only) that part of Poland; Also important to remember in this regard is that Eretz Ysroel was part of the Turkish Ottoman empire until the British mandate (5677 (1917CE)). Until all this is accounted for adequately by this application, refer to ' **ncal -p** ´ for a basic table of country transitions. However, keep in mind that European borders underwent many changes during the 426 years in question, so the accuracy of your data will depend on accurate knowledge of whether any particular date at any specific location was Julian or Gregorian.

## EXAMPLES

- 1\. Display a 2012ce year's calendar, three-months wide, in color.

  **hcal -3c 2012**

2\. Display the current month's calendar, with Shabbat times, parshiot, footnoted holiday identification, with Hebrew information in Hebrew, and all in "calming", "muted" color-tones.

**hcal -csfH**

## SEE ALSO

[mlterm(1)](/mlterm/1.md), [hdate(1)](/hdate/1.md), [hebcal(1)](/hebcal/1.md), [date(1)](/date/1.md), [ncal(1)](/ncal/1.md), [cal(1)](/cal/1.md), [remind(1)](/remind/1.md)

## AUTHORS

Boruch Baum 2011-2013, Yaacov Zamir 2005-2010.

project home page: http://libhdate.sourceforge.net

**Hcal** and **Hdate** are part of the package **libhdate** , a small C/C++ library for Hebrew dates, holidays, and reading sequences (parashiot). It uses the source code from Amos Shapir's "hdate" package, as fixed and patched by Nadav Har'El. The Torah reading sequence tables were contributed by Zvi Har'El.
