hdate - displays Hebrew date information for a given
Gregorian/Julian date
hdate [options] [coordinates [timezone]] [[[dd] mm]
yyyy]
hdate [options] [coordinates [timezone]] [ julian_day ]
- coordinates:
-l [NS]yy[.yyy] -L [EW]xx[.xxx]
-l [NS]yy[:mm[:ss]] -L [EW]xx[:mm[:ss]]
timezone: -z nn[( .nn | :mm )]
hdate translates the specified date to the Hebrew calendar
and optionally displays further information about that Hebrew date,
including holidays and astronomical-related times (see section LOCATION,
below). If no arguments are given, it displays information for the current
date. If a single numeric argument is given, it will be interpreted as a
year, and hdate will output the requested information for all
days of that year. If two numeric arguments are given, it will be
interpreted as mm yyyy, and hdate will output the requested
information for all days of that month.
INPUTTING A HEBREW DATE: If the year provided is greater
than 3000, hdate will interpret the given date as a Hebrew date, and
will display information for the corresponding Gregorian date. 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.
INPUTTING A JULIAN DAY: If a single numeric argument is
provided, and it is greater than 348021, hdate will interpret it as
the "Julian day number" and will display information for the
corresponding Hebrew date.
- -b --bidi
- output Hebrew information in Hebrew, but in reverse
--visual
sequence.
- -c
- print Shabbat start/end times. Shabbat starts 20 min before sunset, and
ends when three stars are out.
- -d --diaspora
- use diaspora reading and holidays.
- -h --holidays
- print holidays.
- -H
- Print only if it is a holiday.
- -i --ical
- use iCal formatted output.
- -j --julian
- print Julian day number.
- -o --omer
- print Sefirat Ha Omer
- -q --quiet-alerts
- quiet. suppress warning messages
- -r --parasha
- print weekly reading for Shabbat.
- -R
- print only if the weekly reading is read on that Shabbat
- -s --sun
- print sunrise/sunset times.
- -S --short-format
- print using short format.
- -t
- print day times: first light, talit, sunrise, mid day, sunset, first
stars, three stars
- -T --table
- print tabular output. All data for each requested day will be output on a
single comma-delimited line. Most suitable for piping, or export to
spreadsheets0TP -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] )
- --hebrew
- forces Hebrew to print in Hebrew characters
- --yom
- force Hebrew prefix to Hebrew day of week
- --leshabbat
- insert parasha between day of week and day
- --leseder
- insert parasha between day of week and day
- --not-sunset-aware
- don't display next day if after sunset
If you want hdate to display accurate time-of-day
information, hdate requires location and time zone information in
order to make astronomical calculations for a given date. If you don't
provide ANY such information, hdate 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 hdate
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
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
- 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.
1. Create an iCal calendar of the holidays of year 2025.
hdate -Hi 2025
2. Print out the weekly readings and sunset/sunrise times for
Eilat, on April 2031.
hdate -sR 4 2031 -l29 -L34 -z2
Boruch Baum 2011-2013. Yaacov Zamir 2005-2010.
project 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.