Module:Age/doc: Difference between revisions

Content deleted Content added
and {{age in years and days nts}}; try to track which templates use module
{{lua|Module:ConvertNumeric|Module:Date}}
 
(37 intermediate revisions by 8 users not shown)
Line 1:
{{documentation subpage}}
{{Module rating|protected}}
{{High-use|demo=Module:{{ROOTPAGENAME}}}}
{{lua|Module:ConvertNumeric|Module:Date}}
== Templates supported ==
[[Module:Age]] implements the following templates:
{| class="wikitable"
! Template !! Required wikitext || Template uses module
|-
| {{tl|extract}} || <code><nowiki>{{#invoke:age|extract}}</nowiki></code> || yes
|-
| {{tl|gregorian serial date}} || <code><nowiki>{{#invoke:age|gsd}}</nowiki></code> || –
|-
| {{tl|JULIANDAYtime interval}} || <code><nowiki>{{#invoke:age|JULIANDAYtime_interval}}</nowiki></code> || –
|-
| {{tl|timeage in intervaldays}} || <code><nowiki>{{#invoke:age|time_intervalage_generic|template=age_days}}</nowiki></code> || yes
|-
| {{tl|age in days nts}} || <code><nowiki>{{#invoke:age|age_generic|template=age_daysage_days_nts}}</nowiki></code> || –
|-
| {{tl|ageduration in days nts}} || <code><nowiki>{{#invoke:age|age_generic|template=age_days_ntsduration_days}}</nowiki></code> || –
|-
| {{tl|duration in days nts}} || <code><nowiki>{{#invoke:age|age_generic|template=duration_daysduration_days_nts}}</nowiki></code> || –
|-
| {{tl|durationage}} in days nts}} || <code><nowiki>{{#invoke:age|age_generic|template=duration_days_ntsage_full_years}}</nowiki></code> || –
|-
| {{tl|age nts}} || <code><nowiki>{{#invoke:age|age_generic|template=age_full_yearsage_full_years_nts}}</nowiki></code> || –
|-
| {{tl|age ntsin years}} || <code><nowiki>{{#invoke:age|age_generic|template=age_full_years_ntsage_in_years}}</nowiki></code> || –
|-
| {{tl|age in years nts}} || <code><nowiki>{{#invoke:age|age_generic|template=age_in_yearsage_in_years_nts}}</nowiki></code> || yes (sandbox)
|-
| {{tl|age infor years ntsinfant}} || <code><nowiki>{{#invoke:age|age_generic|template=age_in_years_ntsage_infant}}</nowiki></code> || –
|-
| {{tl|age forin infantmonths}} || <code><nowiki>{{#invoke:age|age_generic|template=age_infantage_m}}</nowiki></code> || –
|-
| {{tl|age in monthsweeks}} || <code><nowiki>{{#invoke:age|age_generic|template=age_mage_w}}</nowiki></code> || –
|-
| {{tl|age in weeks and days}} || <code><nowiki>{{#invoke:age|age_generic|template=age_wage_wd}}</nowiki></code> || –
|-
| {{tl|age in weeksyears and days}} || <code><nowiki>{{#invoke:age|age_generic|template=age_wdage_yd}}</nowiki></code> || –
|-
| {{tl|age in years and days nts}} || <code><nowiki>{{#invoke:age|age_generic|template=age_ydage_yd_nts}}</nowiki></code> || yes
|-
| {{tl|age in years and days ntsmonths}} || <code><nowiki>{{#invoke:age|age_generic|template=age_yd_ntsage_ym}}</nowiki></code> || yes
|-
| {{tl|age in years, months and monthsdays}} || <code><nowiki>{{#invoke:age|age_generic|template=age_ymage_ymd}}</nowiki></code> || yes
|-
| {{tl|age in years, months, weeks and days}} || <code><nowiki>{{#invoke:age|age_generic|template=age_ymdage_ymwd}}</nowiki></code> || –
|-
| {{tl|birth date and age}} in years, months, weeks and days}} || <code><nowiki>{{#invoke:age|age_generic|template=age_ymwdbirth_date_and_age}}</nowiki></code> || –
|-
| {{tl|death date and age}} || <code><nowiki>{{#invoke:age|death_date_and_age}}</nowiki></code>
|}
 
'''Redirects'''
{| class="wikitable"
! Template !! Redirects to
|-
| {{no redirect|Template:Ayd|&#123;&#123;ayd&#125;&#125;}} || {{tl|age in years and days nts}}
|-
| {{no redirect|Template:Hla|&#123;&#123;hla&#125;&#125;}} || {{tl|age in years, months and days}}
|-
| {{no redirect|Template:Age in months, weeks and days|&#123;&#123;age in months, weeks and days&#125;&#125;}} || {{tl|age in years, months, weeks and days}}
|-
| {{no redirect|Template:Bda|&#123;&#123;bda&#125;&#125;}} || {{tl|birth date and age}}
|-
| {{no redirect|Template:Dda|&#123;&#123;dda&#125;&#125;}} || {{tl|death date and age}}
|-
| {{no redirect|Template:Gsd|&#123;&#123;gsd&#125;&#125;}} || {{tl|gregorian serial date}}
|}
 
Line 61 ⟶ 84:
 
If the first or second date is omitted, the current date is used. For example:
*<code><nowiki>{{age in years and months|year2=2012|month2=2|day2=20}}</nowiki></code> → {{age in years and months|year2=2012|month2=2|day2=20}}
*<code><nowiki>{{age in years and months|year2=2012|month2=2|day2=20}}</nowiki></code> → {{age in years and months|year2=2012|month2=2|day2=20}}
*<code><nowiki>{{age in years and months||||2012|2|20}}</nowiki></code> → {{age in years and months||||2012|2|20}}
Line 85 ⟶ 107:
| <code>format=commas</code> || A value of 1,000 or more is displayed with commas.
|-
| <code>format=raw</code> || Numbers are displayed without commas and negative numbers are displayed with a hyphen for <code><nowiki>{{#expr}}</nowiki></code>. In addition, {{tl|age}} outputs a plain number and will not include a span to indicate if the result relies on the current date.
| <code>range=on</code> || Accept a year only, or a year and month only, and show a range of ages.
|-
| <code>rangeformat=dashcardinal</code> || AcceptDisplay athe yearresulting ornumber year/month,using andwords showsuch theas range"five" withinstead anof 5. See [[Dash#EnSpelling dashnumbers|en dashbelow]] (–).
|-
| <code>format=ordinal</code> || Display the resulting number using words such as "fifth" instead of 5. See [[#Spelling numbers|below]].
|-
| <code>prefix=''text''</code> || Insert the given ''text'' before the result but after any sort key. For example, <code><nowiki>{{age|23 July 1910|14 July 1976|prefix=about|sortable=on}}</nowiki></code> outputs a hidden sort key followed by "about 65".
|-
| <code>range=ondash</code> || Accept a year only, or a year and month only, and show a range of ages with an [[Dash#En dash|en dash]] (–).
|-
| <code>range=yes</code> || Accept a year or year/month, and show the range with "or".
|-
| <code>range=no</code> || Accept a year only, or year/month, but show only a single age as if full dates had been entered.
|-
| <code>round=on</code> || The age is rounded to the nearest least-significant time unit.
Line 98 ⟶ 130:
|-
| <code>sortable=on</code> || Insert a hidden sort key before the result (for use in [[WP:SORT|sortable tables]]).
|-
| <code>sortable=table</code> || Insert a sort key using table syntax <code>data-sort-value="''value''"&#124;</code>.
|-
| <code>sortable=debug</code> || Same as <code>sortable=on</code> but the sort key is displayed for testing.
Line 105 ⟶ 139:
 
Examples using the <code>range</code> parameter follow.
*<code><nowiki>{{age in years and months|year=2001|month=1|year2=2012|month2=2|range=onyes}}</nowiki></code> → {{age in years and months|year=2001|month=1|year2=2012|month2=2|range=onyes}}
*<code><nowiki>{{age in years and months|2001|1||2012|2|range=onyes}}</nowiki></code> → {{age in years and months|2001|1||2012|2|range=onyes}}
*<code><nowiki>{{age in years and months|Jan 2001|Feb 2012|range=onyes}}</nowiki></code> → {{age in years and months|Jan 2001|Feb 2012|range=onyes}}
*<code><nowiki>{{age in years and months|Jan 2001|Feb 2012|range=dash}}</nowiki></code> → {{age in years and months|Jan 2001|Feb 2012|range=dash}}
*<code><nowiki>{{age in years and months|Jan 2001|Feb 2012|range=no}}</nowiki></code> → {{age in years and months|Jan 2001|Feb 2012|range=no}} {{green|1=(assume 1 Jan 2001 to 1 Feb 2012)}}
*<code><nowiki>{{age in years and months|12 Jan 2001|Feb 2012|range=no}}</nowiki></code> → {{age in years and months|12 Jan 2001|Feb 2012|range=no}} {{green|1=(assume 12 Jan 2001 to 12 Feb 2012)}}
*<code><nowiki>{{age in years and months|year2=2001|2012|month2range=2|day2=20no}}</nowiki></code> → {{age in years and months|year2=2001|2012|month2range=2no}} {{green|day21=20(assume 1 Jan 2001 to 1 Jan 2012)}}
*<code><nowiki>{{age in years and months|2001|23 Feb 2012|range=no}}</nowiki></code> → {{age in years and months|2001|23 Feb 2012|range=no}} {{green|1=(assume 23 Feb 2001 to 23 Feb 2012)}}
 
The sort key is based on the age in days, and fractions of a day if a time is specified.
Line 124 ⟶ 162:
 
Large numbers can be formatted with commas.
*<code><nowiki>{{age in years and months|120|2012|format=commas|range=onyes}}</nowiki></code> → {{age in years and months|120|2012|format=commas|range=onyes}}
*<code><nowiki>{{age in years and months|120|2012|format=commas|range=dash}}</nowiki></code> → {{age in years and months|120|2012|format=commas|range=dash}}
 
== Spelling numbers ==
The templates that use <code>age_generic</code> can display numbers in words rather than using numerals. The result can be a [[Cardinal number (linguistics)|cardinal number]] (such as "five") or an [[Ordinal number (linguistics)|ordinal number]] (such as "fifth"). The first letter can be in uppercase, and US spelling of numbers can be used. Examples:
*<code><nowiki>{{age|1898|01|01|2018|02|01|format=cardinal}}</nowiki></code> → {{age|1898|01|01|2018|02|01|format=cardinal}}
*<code><nowiki>{{age|1898|01|01|2018|02|01|format=cardinal_us}}</nowiki></code> → {{age|1898|01|01|2018|02|01|format=cardinal_us}}
*<code><nowiki>{{age|1898|01|01|2018|02|01|format=Cardinal}}</nowiki></code> → {{age|1898|01|01|2018|02|01|format=Cardinal}}
*<code><nowiki>{{age|1898|01|01|2018|02|01|format=Cardinal_us}}</nowiki></code> → {{age|1898|01|01|2018|02|01|format=Cardinal_us}}
*<code><nowiki>{{age|1898|01|01|2018|02|01|format=Ordinal}}</nowiki></code> → {{age|1898|01|01|2018|02|01|format=Ordinal}}
*<code><nowiki>{{age|1898|01|01|2018|02|01|format=Ordinal_us}}</nowiki></code> → {{age|1898|01|01|2018|02|01|format=Ordinal_us}}
*<code><nowiki>{{age|1898|01|01|2018|02|01|format=ordinal}}</nowiki></code> → {{age|1898|01|01|2018|02|01|format=ordinal}}
*<code><nowiki>{{age|1898|01|01|2018|02|01|format=ordinal_us}}</nowiki></code> → {{age|1898|01|01|2018|02|01|format=ordinal_us}}
*<code><nowiki>{{age|1980|1990|range=yes|format=Cardinal}}</nowiki></code> → {{age|1980|1990|range=yes|format=Cardinal}}
*<code><nowiki>{{age in years, months and days|April 1980|1995|format=Cardinal|range=yes}}</nowiki></code> → {{age in years, months and days|April 1980|1995|format=Cardinal|range=yes}}
 
== Tracking category ==
* {{clc|Age error}}
 
== Localization ==
Inputs and outputs can be localized to suit the language used. Examples are at [[:bn:Module:বয়স|bnwiki]] and [[:bs:Module:Age|bswiki]].
 
== See also ==
* {{tl|time interval}} • This template supports all age/duration calculations and provides more options such as abbreviating or omitting units.
 
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | |
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Modules that add a tracking category]]
 
}}</includeonly>