hdate(1)
π hdate β the Hebrew-date bestie π
okay so real talk, this whole page is part of the libhdate manual, and the star of the show is the command hdate. it's giving calendar-girlie main character energy, no cap. ποΈβ¨
πΈ NAME πΈ
hdate β displays Hebrew date information for a given Gregorian/Julian date π«Ά
π¦ SYNOPSIS π¦
hdate [options] [coordinates [timezone]] [[[dd] mm] yyyy]
hdate [options] [coordinates [timezone]] [ julian_day ]
and the little cheat-sheet for how you feed it coordinates and timezone:
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 π
so what does hdate actually do, bestie? it translates whatever date you hand it into the Hebrew calendar, and then β if you want β it can spill extra tea about that Hebrew date: holidays, astronomy-ish times, all of it (peep the LOCATION section below, iykyk). π
- give it no arguments at all? it just tells you about the current date. comfy.
- give it one single numeric argument? it reads that as a year, and
hdatewill output the requested info for every single day of that year. all of them. periodt. - give it two numeric arguments? that's
mm yyyy, andhdatewill output the requested info for all the days of that month. ποΈ
π₯ INPUTTING A HEBREW DATE π₯
if the year you passed is greater than 3000, hdate goes "oh, this is a Hebrew date" and instead shows you the info for the corresponding Gregorian date. Hebrew months are expected to be passed as numbers 1-12 for Tishrei - Elul; and heads up, Adar I and Adar II are expected to be passed as months 13 and 14. yes, fourteen months, don't @ me. π
π INPUTTING A JULIAN DAY π
if you give it a single numeric argument and that number is greater than 348021, hdate will interpret it as the "Julian day number" and will display the info for the corresponding Hebrew date. slay. β¨
β¨ OPTIONS β¨
-b,--bidi,--visualβ output Hebrew information in Hebrew, but in reverse sequence. πͺ-cβ print Shabbat start/end times. Shabbat starts 20 min before sunset, and ends when three stars are out. romantic tbh βββ-d,--diasporaβ use diaspora reading and holidays.-h,--holidaysβ print holidays. π-Hβ Print only if it is a holiday. (so, silence unless it's a whole event)-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 spreadsheets-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
π«Ά NOTES π«Ά
π LOCATIONS π
okay so if you want hdate to give you accurate time-of-day info, it needs location and time zone info so it can do the astronomical calculations for a given date. if you don't provide ANY of that, hdate falls back to your computer's local time zone info as an indicator, and either picks a city in that time zone, or defaults to the equator at the center of that time zone. and if hdate can't even retrieve time zone info from your computer at all? it defaults to Tel-Aviv. iconic of it honestly.
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
-5β Default city New York City β Lattitude40β Longitude-74 - Timezone
0β Default city London β Lattitude51β Longitude0 - Timezone
1β Default city Paris β Lattitude48β Longitude2 - Timezone
2β Default city Tel-Aviv β Lattitude32β Longitude34 - Timezone
3β Default city Moscow β Lattitude55β Longitude37
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 it includes its own documentation, in-line:
${XDG_CONFIG_HOME}/hcal/hcalrc
and 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 -pfor 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 π
- Create an iCal calendar of the holidays of year 2025.
hdate -Hi 2025
- Print out the weekly readings and sunset/sunrise times for Eilat, on April 2031.
hdate -sR 4 2031 -l29 -L34 -z2
π SEE ALSO π
mlterm(1), hcal(1), hebcal(1), date(1), ncal(1), cal(1), remind(1)
π AUTHORS π
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. π«‘
okay bestie that's the whole page, every flag and every fact kept safe and sound, and if you forget any of it just run hdate again β it literally does not judge. π§
and that's a wrap on the libhdate girlies' page for Linux, dated 2013-01-01 β hdate(1), signing off. π
πΈβ¨
π¦ where this page comes from
- debian bookworm: hdate 1.6.02-2.1+b3 Β· GPL-3.0-or-later
- debian trixie: hdate 1.6.02-2.1+b8 Β· GPL-3.0-or-later
- nixos 26.05: hdate 1.6.02
- nixpkgs unstable: hdate 1.6.02
- ubuntu jammy: hdate 1.6.02-2.1build1 Β· GPL-3.0-or-later
- ubuntu noble: hdate 1.6.02-2.1build5 Β· GPL-3.0-or-later
- ubuntu questing: hdate 1.6.02-2.1build6
- ubuntu resolute: hdate 1.6.02-2.1build7 Β· GPL-3.0-or-later
- ubuntu stonking: hdate 1.6.02-2.1build8 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms