The current Javanese calendar was inaugurated by Sultan Agung of Mataram in the Gregorian year 1633. It is based on a combination of the Hindu calendar "Saka" and the Islamic calendar based on the lunar month, and contains different cycles: Pasaran (5-day), Dina Pitu (7-day), Wetonan (35-day), Mangsa (solar month), Wulan (Moon month), Pawukon (210-day), Tahun (Moon year), Windu (8-year), Kurup (120-year). Coincidences of these multiple cycles have special mystical meanings for any Javanese people, for instance the birthday "Weton" or the Noble Days "Dino Mulyo". This is the primary time-keeping system for all matters having cultural, historical, and metaphysical significance in the Java island, Indonesia.
This little script computes dates in the Javanese calendar, indicating Dina Pitu, Pasaran, Dino, Wuku, Wulan, Tahun, Windu, and Kurup for today or a specific list of days. It indicates also the Noble Days if necessary. If you specify your date of birth, it can calculate your "weton" and a list of your javanese birthdays. For example, weton(1968,12,3) returns:
Selasa Kliwon/Asih Julungwangi 12 Pasa 1900 Ehé Adi Arbangiyah, 3 Desember 1968.
A second use of this function is to display a month calendar that combines the 5-day "Pasaran" cycle and the 7-day Gregorian/Islamic week, called "Wetonan".
A third use is a search mode, looking for regular expression in the full Javanese date string. For example, looking for the next "30 Rejeb" date, weton('30 rejeb') will return:
Kemis Pahing/Pahit Mandasiya 30 Rejeb 1950 Je Sengara Salasiyah, 27 April 2017
See help for syntax, and details.