Module:Year in various calendars/doc

MyWikiBiz, Author Your Legacy — Wednesday January 07, 2026
Jump to navigationJump to search

This is the documentation page for Module:Year in various calendars

Template:Module rating

2026 in various calendars
Gregorian calendar2026
MMXXVI
Ab urbe condita2779
Armenian calendar1475
ԹՎ ՌՆՀԵ
Assyrian calendar6776
Bahá'í calendar182–183
Balinese saka calendar1947–1948
Bengali calendar1433
Berber calendar2976
British Regnal year74 Eliz. 2 – 75 Eliz. 2
Buddhist calendar2570
Burmese calendar1388
Byzantine calendar7534–7535
Chinese calendar乙巳(Wood Snake)
4722 or 4662
    — to —
丙午年 (Fire Horse)
4723 or 4663
Coptic calendar1742–1743
Discordian calendar3192
Ethiopian calendar2018–2019
Hebrew calendar5786–5787
Hindu calendars
 - Vikram Samvat2082–2083
 - Shaka Samvat1947–1948
 - Kali Yuga5126–5127
Holocene calendar12026
Igbo calendar1026–1027
Iranian calendar1404–1405
Islamic calendar1447–1448
Japanese calendarReiwa 8
(令和8年)
Javanese calendar1959–1960
Juche calendar115
Julian calendarGregorian minus 13 days
Korean calendar4359
Minguo calendarROC 115
民國115年
Nanakshahi calendar558
Thai solar calendar2569
Tibetan calendar阴木蛇年
(female Wood-Snake)
2152 or 1771 or 999
    — to —
阳火马年
(male Fire-Horse)
2153 or 1772 or 1000
Unix time1767225600 – 1798761599

Template:Year in various calendars/doc

Adding new calendars

The module is set up to allow for easy addition of new calendars. Just scroll down to the "Build the box" section of the module code, and add your calendar as follows:

To display one year:

<syntaxhighlight lang="lua">
   local myCalendar = calendar:new()
   myCalendar:setLink( 'My calendar article' ) -- The name of the calendar's Wikipedia article.
   myCalendar:setYear( year + 10 ) -- Lua code linking the Gregorian calendar year to your calendar's year.
   box:addCalendar( myCalendar )
</syntaxhighlight>

To display a year range:

<syntaxhighlight lang="lua">
   local myCalendar = calendar:new()
   myCalendar:setLink( 'My calendar article' ) -- The name of the calendar's Wikipedia article.
   myCalendar:setYearRange( year + 10, year + 11 ) -- Lua code outputting the start year and the end year of the year range.
   box:addCalendar( myCalendar )
</syntaxhighlight>

More complicated calendars can be passed as a string to calendar:setYear().

Technical details

The module defines three classes which do the work of setting up the sidebar and displaying the data provided by the calendar functions. These are the calendarBox class, which defines the sidebar; the calendar class, which holds the data for one calendar; and the calendarGroup object, which defines a group of calendar objects with a heading.

To load these classes from another module, use the following:

<syntaxhighlight lang="lua">

local yearInOtherCalendars = require( 'Module:Year in various calendars' ) local calendarBox = yearInOtherCalendars.calendarBox local calendarGroup = yearInOtherCalendars.calendarGroup local calendar = yearInOtherCalendars.calendar

</syntaxhighlight>

calendarBox class

A calendarBox object is initiated with:

Template:Pre

  • year - sets the Gregorian year to base calendar calculations on. If not specified, the current year is used.
  • footnotes - sets text to be displayed in a footnotes section at the bottom of the sidebar.
  • navbar - sets the page name to be used by the navbar.

Calendar box objects have the following properties:

  • calendarBox.year - the Gregorian year number. This is negative for BC years; for example, for the year 100 BC the value of calendarBox.year is -99. (BC years are calculated by "1 - n" rather than "0 - n", as there is no year zero.)
  • calendarBox.yearText - the Gregorian year text. This is a string value of the format "n" for AD years and "n BC" for BC years.
  • calendarBox.caption - the text of the box caption (the bold text that appears directly above the box). The default caption is the value of calendarBox.yearText.
  • calendarBox.footnotes - the text of the box footnotes.
  • calendarBox.navbar - the page name used by the navbar.

Calendar box objects have the following methods:

  • calendarBox:setCaption( caption ) - sets the box caption (the bold text that appears directly above the box). The default caption is the value of calendarBox.yearText.
  • calendarBox:addCalendar( obj ) - adds a calendar object or a calendar group object to the calendar box.
  • calendarBox:addCalendarGroup( obj ) - an alias for myCalendarBox:addCalendar().
  • calendarBox:export() - converts the calendar box object to wikicode. This calls calendar:export() and calendarGroup:export() to export calendar objects and calendar group objects.

calendar class

A calendar object is initiated with:

Template:Pre

Calendar objects have the following properties:

  • calendar.link - the link name.
  • calendar.year - the year value. This is always a string value.

Calendar objects have the following methods:

  • calendar:setLink( link, display ) - sets the link name for the calendar object. link is the name of Wikipedia's article about the calendar, and display is an optional display name for the article link.
  • calendar:setRawLink( wikitext ) - sets the calendar link as raw wikitext.
  • calendar:getLink() - gets the link value.
  • calendar:setYear( year ) - sets the year value for the calendar. year can be a number or a string.
  • calendar:setYearRange( startYear, endYear ) - sets the year value for the calendar as a year range. Both startYear and endYear must be number values.
  • calendar:export() - exports the calendar to wikitext. If no link value was found, this returns nil. If a link was found but no year value was found, the calendar is output with a value of N/A for the year.

calendarGroup class

A calendarGroup object is initiated with:

Template:Pre

  • heading - the wikitext heading for the calendar group (e.g. [[Hindu calendar]]s).

Calendar group objects have one property:

  • calendarGroup.heading - the calendar group heading text.

Calendar group objects have the following methods:

  • calendarGroup:addCalendar( obj ) - adds a calendar object to the calendar group.
  • calendarGroup:export() - converts a calendar group to wikitext. Calls calendar:export() to export individual calendar objects.

See also

{{Year in various calendars}}