Wikipedia
gvwiki
https://gv.wikipedia.org/wiki/Ard-ghuillag
MediaWiki 1.47.0-wmf.13
first-letter
Meanyn
Er lheh
Resooney
Ymmydeyr
Resooney ymmydeyr
Wikipedia
Resooney Wikipedia
Coadan
Resooney coadan
MediaWiki
Resooney MediaWiki
Clowan
Resooney clowan
Cooney
Resooney cooney
Ronney
Resooney ronney
TimedText
TimedText talk
Module
Module talk
Event
Event talk
Cronk Keeill Eoin
0
1601
387211
386305
2026-08-02T17:27:50Z
MacTire02
219
++
387211
wikitext
text/x-wiki
[[Coadan:Tynwald Hill.jpg|300px|thumb|Cronk Keeill Eoin ayns Balley Keeill Eoin]]
She crongan laue-jeant ayns [[Balley Keeill Eoin]], [[Mannin]], eh '''Cronk Keeill Eoin''' ny '''Çronk Tinvaal''' ({{lang-en|Tynwald Hill}}). T'eh ymmydit myr boayl çhaglee [[Tinvaal]], ard-whaiyl Vannin. She soiaghey yn çharmanys bleinoil [[Laa Tinvaal]] t'eh, ta taghyrtyn er y 5oo Jerrey Souree dagh blein ny er y chied Jelune ny yei my ta'n 5oo Jerrey Souree tuittym er Jedoonee. EC y çharmanys shen, ta slattyssyn Tinvaal veih'n vlein hie shagh goll er fogrey magh roish y theay ayns Baarle as ayns Gaelg.<ref name="Tynwald">{{cite web |title=Tynwald Hill |url=https://tynwald.org.im/ |website=Tinvaal |publisher=Ard-whaiyl Tinvaal |access-date=30 Jerrey Souree 2026 |lang=Baarle}}</ref>
Ta'n cronk soit faggys da [[Cabbal Reeoil Eoin Bashtey]] as t'eh jeant ass crongan aggagh marish ardan mullee ec y vaare. Yn ardan heose, t'eh ymmydit lesh oikee car immeeaghtyn Laa Tinvaal, choud's ta ny straneyn mygeayrt cummal cummee as fakideyryn ta frastyl yn sharmanys.<ref name="WHAF">{{cite web |title=Tynwald Hill and Environs: Norse Assembly Sites |publisher=Rheynn Cultoor, Meanyn as Spoyrt |format=PDF |url=https://assets.publishing.service.gov.uk/media/5a79ac8f40f0b642860d9e16/WHAF_Tynwald_Hill_and_environs_Norse_assembly_sites.pdf |access-date=30 Jerrey Souree 2026}}</ref>
==Jeeagh er neesht==
* [[Tinvaal]]
* [[Laa Tinvaal]]
* [[Cabbal Reeoil Eoin Bashtey]]
* [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]
==Imraaghyn==
{{reflist}}
==Kianglaghyn magh==
* [https://tynwald.org.im/ Tinvaal]
{{coord|54.203750|N|04.642352|W|type:landmark|display=title}}
[[Ronney:Tinvaal]]
[[Ronney:Laaraghyn shenndeeagh ayns Mannin]]
[[Ronney:Balley Keeill Eoin]]
[[Ronney:Laaraghyn shenndaaleeagh ayns Mannin]]
to7ubtfqvp5i38fl2z21iw21kfunjhc
387212
387211
2026-08-02T18:54:14Z
MacTire02
219
++
387212
wikitext
text/x-wiki
[[Coadan:Tynwald Hill.jpg|300px|thumb|Cronk Keeill Eoin ayns Balley Keeill Eoin]]
She crongan laue-jeant ayns [[Balley Keeill Eoin]], [[Mannin]], eh '''Cronk Keeill Eoin''' ({{lang-en|Tynwald Hill}}). T'eh ymmydit myr boayl çhaglee [[Tinvaal]], ard-whaiyl Vannin. She soiaghey yn çharmanys bleinoil [[Laa Tinvaal]] t'eh, ta taghyrtyn er y 5oo Jerrey Souree dagh blein ny er y chied Jelune ny yei my ta'n 5oo Jerrey Souree tuittym er Jedoonee. EC y çharmanys shen, ta slattyssyn Tinvaal veih'n vlein hie shagh goll er fogrey magh roish y theay ayns Baarle as ayns Gaelg.<ref name="Tynwald">{{cite web |title=Tynwald Hill |url=https://tynwald.org.im/ |website=Tinvaal |publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026 |lang=Baarle}}</ref>
Ta'n cronk soit faggys da [[Cabbal Reeoil Eoin Bashtey]] as t'eh jeant ass crongan aggagh marish ardan mullee ec y vaare. Yn ardan heose, t'eh ymmydit lesh oikee car immeeaghtyn Laa Tinvaal, choud's ta ny straneyn mygeayrt cummal cummee as fakideyryn ta frastyl yn sharmanys.<ref name="WHAF">{{cite web |title=Tynwald Hill and Environs: Norse Assembly Sites |publisher=Rheynn Cultoor, Meanyn as Spoyrt |format=PDF |url=https://assets.publishing.service.gov.uk/media/5a79ac8f40f0b642860d9e16/WHAF_Tynwald_Hill_and_environs_Norse_assembly_sites.pdf |access-date=2 Luanistyn 2026}}</ref>
==Ennym as bun-ocklaght==
'Sy Ghaelg, she ''Cronk Keeill Eoin'' ennym tradishoonagh y chruink.<ref name="Kneen">{{cite book|last=Kneen|first=J. J.|title=The Place-Names of the Isle of Man
|publisher=[[Yn Çheshaght Ghailckagh]]|year=1925}}</ref> Ta geillyn shenndeeagh recortyssey lhiegganyn elley jeh'n ennym shen, lheid as ''Cronk Keeillown'' as ''Cronk-y-Keeill-Eoin'', lettraghyn ny shinney jeh'n voayl-ennym cheddin.<ref name="ManxSoc">{{cite book|title=Manx Society Volume XVI|publisher=Yn Çheshaght Ghailckagh|year=1874 }}</ref>
Ta'n ennym ''Cronk Keeill Eoin'' freayl boayl-ennym agglishagh bunneydagh y voayl. Ta'n veer ''[[keeill (hradishoonagh)|keeill]]'' çheet er cabbal Chreestee leah as t'eh er credjal dy vel yn ennym çheet er cabbal v'er ny chasherickey da [[Eoin Bashtey]] as v'ayn roish my row [[Cabbal Reeoil Eoin Bashtey]] noa-emshiragh er ny hroggal.<ref name="keeill">{{cite web |title=The Royal Chapel of St. John the Baptist, St John's, Isle of Man |website=Isle of Man Family History Society Journal |url=https://www.isle-of-man.com/manxnotebook/famhist/v09n3.htm |access-date=2 Luanistyn 2026}}</ref>
Ta'n ennym Baarlagh—''Tynwald Hill''—çheet as y chiangley t'ayn eddyr [[Tinvaal]] as y cronk. Ta ny focklyn ''Tynwald'' as ''Tinvaal'' çheet ass ''þingvǫllr'' y Çhenn Loghlinish, ta çhyndaait myr "magher çhaglee", "magher quaiylagh" ny "boayl çhaglee yn whaiyl", as t'eh kianglt rish enmyn elley lheid as ''Þingvellir'' yn Eeslynnish as ''Tingvoll'' y Norlynnish.<ref name="TynwaldName">{{citation|title=Tynwald|publisher=Ard-whaiyl Tinvaal |url=https://tynwald.org.im/|access-date=2 Luanistyn 2026 |language=Baarle}}</ref>
==Jeeagh er neesht==
* [[Tinvaal]]
* [[Laa Tinvaal]]
* [[Cabbal Reeoil Eoin Bashtey]]
* [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]
==Imraaghyn==
{{reflist}}
==Kianglaghyn magh==
* [https://tynwald.org.im/ Tinvaal]
{{coord|54.203750|N|04.642352|W|type:landmark|display=title}}
[[Ronney:Tinvaal]]
[[Ronney:Laaraghyn shenndeeagh ayns Mannin]]
[[Ronney:Balley Keeill Eoin]]
[[Ronney:Laaraghyn shenndaaleeagh ayns Mannin]]
57u5mvuu1nq778xbl96xii7vn25somy
387213
387212
2026-08-02T19:07:15Z
MacTire02
219
++
387213
wikitext
text/x-wiki
[[Coadan:Tynwald Hill.jpg|300px|thumb|Cronk Keeill Eoin ayns Balley Keeill Eoin]]
She crongan laue-jeant ayns [[Balley Keeill Eoin]], [[Mannin]], eh '''Cronk Keeill Eoin''' ({{lang-en|Tynwald Hill}}). T'eh ymmydit myr boayl çhaglee [[Tinvaal]], ard-whaiyl Vannin. She soiaghey yn çharmanys bleinoil [[Laa Tinvaal]] t'eh, ta taghyrtyn er y 5oo Jerrey Souree dagh blein ny er y chied Jelune ny yei my ta'n 5oo Jerrey Souree tuittym er Jedoonee. Ec y çharmanys shen, ta slattyssyn Tinvaal v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay ayns Baarle as ayns Gaelg.<ref name="Tynwald">{{cite web |title=Tynwald Hill |url=https://tynwald.org.im/ |website=Tinvaal |publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026 |lang=Baarle}}</ref>
Ta'n cronk soit faggys da [[Cabbal Reeoil Eoin Bashtey]] as t'eh jeant ass crongan aggagh marish ardan mullee ec y vaare. Yn ardan heose, t'eh ymmydit lesh oikee car immeeaghtyn Laa Tinvaal, choud's ta ny straneyn mygeayrt cummal cummee as fakideyryn ta frastyl yn sharmanys.<ref name="WHAF">{{cite web |title=Tynwald Hill and Environs: Norse Assembly Sites |publisher=Rheynn Cultoor, Meanyn as Spoyrt |format=PDF |url=https://assets.publishing.service.gov.uk/media/5a79ac8f40f0b642860d9e16/WHAF_Tynwald_Hill_and_environs_Norse_assembly_sites.pdf |access-date=2 Luanistyn 2026}}</ref>
==Ennym as bun-ocklaght==
'Sy Ghaelg, she ''Cronk Keeill Eoin'' ennym tradishoonagh y chruink.<ref name="Kneen">{{cite book|last=Kneen|first=J. J.|title=The Place-Names of the Isle of Man
|publisher=[[Yn Çheshaght Ghailckagh]]|year=1925}}</ref> Ta geillyn shenndeeagh recortyssey lhiegganyn elley jeh'n ennym shen, lheid as ''Cronk Keeillown'' as ''Cronk-y-Keeill-Eoin'', lettraghyn ny shinney jeh'n voayl-ennym cheddin.<ref name="ManxSoc">{{cite book|title=Manx Society Volume XVI|publisher=Yn Çheshaght Ghailckagh|year=1874 }}</ref>
Ta'n ennym ''Cronk Keeill Eoin'' freayl boayl-ennym agglishagh bunneydagh y voayl. Ta'n bun-ockle ''[[keeill (hradishoonagh)|keeill]]'' çheet er cabbal Chreestee leah as t'eh er credjal dy vel yn ennym çheet er cabbal v'er ny chasherickey da [[Eoin Bashtey]] as v'ayn roish my row [[Cabbal Reeoil Eoin Bashtey]] noa-emshiragh er ny hroggal.<ref name="keeill">{{cite web |title=The Royal Chapel of St. John the Baptist, St John's, Isle of Man |website=Isle of Man Family History Society Journal |url=https://www.isle-of-man.com/manxnotebook/famhist/v09n3.htm |access-date=2 Luanistyn 2026}}</ref>
Ta'n ennym Baarlagh—''Tynwald Hill''—çheet as y chiangley t'ayn eddyr [[Tinvaal]] as y cronk. Ta ny focklyn ''Tynwald'' as ''Tinvaal'' çheet ass ''þingvǫllr'' y Çhenn Loghlinish, ta çhyndaait dy mennick myr "magher çhaglee", "magher quaiylagh" ny "boayl çhaglee yn whaiyl", as t'eh kianglt rish enmyn elley lheid as ''Þingvellir'' yn Eeslynnish as ''Tingvoll'' y Norlynnish.<ref name="TynwaldName">{{citation|title=Tynwald|publisher=Ard-whaiyl Tinvaal |url=https://tynwald.org.im/|access-date=2 Luanistyn 2026 |language=Baarle}}</ref>
==Jeeagh er neesht==
* [[Tinvaal]]
* [[Laa Tinvaal]]
* [[Cabbal Reeoil Eoin Bashtey]]
* [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]
==Imraaghyn==
{{reflist}}
==Kianglaghyn magh==
* [https://tynwald.org.im/ Tinvaal]
{{coord|54.203750|N|04.642352|W|type:landmark|display=title}}
[[Ronney:Tinvaal]]
[[Ronney:Laaraghyn shenndeeagh ayns Mannin]]
[[Ronney:Balley Keeill Eoin]]
[[Ronney:Laaraghyn shenndaaleeagh ayns Mannin]]
lfs0s0lss3va3ntxvv5amkkejoqpltl
387214
387213
2026-08-02T20:12:10Z
MacTire02
219
++
387214
wikitext
text/x-wiki
[[Coadan:Tynwald Hill.jpg|300px|thumb|Cronk Keeill Eoin ayns Balley Keeill Eoin]]
She crongan laue-jeant ayns [[Balley Keeill Eoin]], [[Mannin]], eh '''Cronk Keeill Eoin''' ({{lang-en|Tynwald Hill}}). T'eh ymmydit myr boayl çhaglee [[Tinvaal]], ard-whaiyl Vannin. She soiaghey yn çharmanys bleinoil [[Laa Tinvaal]] t'eh, ta taghyrtyn er y 5oo Jerrey Souree dagh blein ny er y chied Jelune ny yei my ta'n 5oo Jerrey Souree tuittym er Jedoonee. Ec y çharmanys shen, ta slattyssyn Tinvaal v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay ayns Baarle as ayns Gaelg.<ref name="Tynwald">{{cite web |title=Tynwald Hill |url=https://tynwald.org.im/ |website=Tinvaal |publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026 |lang=Baarle}}</ref>
Ta'n cronk soit faggys da [[Cabbal Reeoil Eoin Bashtey]] as t'eh jeant ass crongan aggagh marish ardan mullee ec y vaare. Yn ardan heose, t'eh ymmydit lesh oikee car immeeaghtyn Laa Tinvaal, choud's ta ny straneyn mygeayrt cummal cummee as fakideyryn ta frastyl yn sharmanys.<ref name="WHAF">{{cite web |title=Tynwald Hill and Environs: Norse Assembly Sites |publisher=Rheynn Cultoor, Meanyn as Spoyrt |format=PDF |url=https://assets.publishing.service.gov.uk/media/5a79ac8f40f0b642860d9e16/WHAF_Tynwald_Hill_and_environs_Norse_assembly_sites.pdf |access-date=2 Luanistyn 2026}}</ref>
==Ennym as bun-ocklaght==
'Sy Ghaelg, she ''Cronk Keeill Eoin'' ennym tradishoonagh y chruink.<ref name="Kneen">{{cite book|last=Kneen|first=J. J.|title=The Place-Names of the Isle of Man
|publisher=[[Yn Çheshaght Ghailckagh]]|year=1925}}</ref> Ta geillyn shenndeeagh recortyssey lhiegganyn elley jeh'n ennym shen, lheid as ''Cronk Keeillown'' as ''Cronk-y-Keeill-Eoin'', lettraghyn ny shinney jeh'n voayl-ennym cheddin.<ref name="ManxSoc">{{cite book|title=Manx Society Volume XVI|publisher=Yn Çheshaght Ghailckagh|year=1874 }}</ref>
Ta'n ennym ''Cronk Keeill Eoin'' freayl boayl-ennym agglishagh bunneydagh y voayl. Ta'n bun-ockle ''[[keeill (hradishoonagh)|keeill]]'' çheet er cabbal Chreestee leah as t'eh er credjal dy vel yn ennym çheet er cabbal v'er ny chasherickey da [[Eoin Bashtey]] as v'ayn roish my row [[Cabbal Reeoil Eoin Bashtey]] noa-emshiragh er ny hroggal.<ref name="keeill">{{cite web |title=The Royal Chapel of St. John the Baptist, St John's, Isle of Man |website=Isle of Man Family History Society Journal |url=https://www.isle-of-man.com/manxnotebook/famhist/v09n3.htm |access-date=2 Luanistyn 2026}}</ref>
Ta'n ennym Baarlagh—''Tynwald Hill''—çheet as y chiangley t'ayn eddyr [[Tinvaal]] as y cronk. Ta ny focklyn ''Tynwald'' as ''Tinvaal'' çheet ass ''þingvǫllr'' y Çhenn Loghlinish, ta çhyndaait dy mennick myr "magher çhaglee", "magher quaiylagh" ny "boayl çhaglee yn whaiyl", as t'eh kianglt rish enmyn elley lheid as ''Þingvellir'' yn Eeslynnish as ''Tingvoll'' y Norlynnish.<ref name="TynwaldName">{{citation|title=Tynwald|publisher=Ard-whaiyl Tinvaal |url=https://tynwald.org.im/|access-date=2 Luanistyn 2026 |language=Baarle}}</ref>
==Tuarastyl==
She crongan ooirrey aggagh eh Cronk Keeill Eoin as t'eh soit ayns Balley Keeill Eoin, ayns çheer-yalloo jesh-chliaghtagh shenndeeagh faggys da [[Cabbal Reeoil Eoin Bashtey]] as [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]. Ta'n crongan hene jeant ass kiare straneyn kiarkylagh ta girree dys ardan ec y vullagh. T'eh mysh {{cvt|12|ft}} er yrjid, as ta'n strane s'inshley mysh {{cvt|75–80|ft}} er crantessen.<ref name="WHAF"/><ref name="Kermode">{{cite book |last=Kermode |first=P. M. C. |title=Illustrated Notes on Manx Antiquities |publisher=Yn Çheshaght Ghailckagh |year=1904}}</ref>
Yn ardan heose jeh'n chrongan, t'eh croo yn ard-voayl jesh-chliaghtagh jeh'n chronk. Car sharmanys bleinoil [[Laa Tinvaal]], ta [[Çhiarn Vannin]], oikee gurneilagh Tinvaal, as oikee elley shassoo er y vullagh choud's ta leighyn v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay 'sy Vaarle as 'sy Ghaelg.<ref name="Tynwald"/> Ny straneyn elley mygeayrt, t'ad kiarail ynnydyn da commee, oikee, as fakideryn ta frastyl er y çharmanys.<ref name="WHAF"/>
Ta'n laare cummal preaban caggee najooragh faggys da mean yn ellan, as ta'n cronk soit er ard-chlaare geinee as shillee eddyr clashyn ushtey 'sy twoaie as 'sy jiass.<ref name="WHAF"/> Y chabbal roie t'ayn, v'er ny hroggal eddyr 1847 as 1849 ayns ynnyd strughtooryn agglishagh ny s'leaie er y laare as t'eh kianglt rish y chronk lesh bollagh cosheeaghtagh.<ref name="WHAF"/>
Cha nel date, cor, ny tuittymys troggalys y chrongan mie er enney. Dy mennick, t'eh coontit myr cleiy troggit, agh cha nel shanndaaaleeyn ny screeudeyryn shennaghys shickyr cre'n mooad ta'n cummey roie soilshaghey strughtoor bunneydagh ny kiartaghey ny s'anmee da'n stughtoor bunneydagh hene. Ta currym as caslys jesh-chliaghtagh y chruink er ny ve freilt as ceaghlit harrish ny bleeantyn.<ref name="WHAF"/>
Dy tradishoonagh, ta'n crongan kianglt rish corys quaiyllyn fo'n aer.
==Shennaghys==
===Troggal===
===Ymmyd jesh-chliaghtagh===
==Feayn-skeealleydaght as beeal-arrish==
==Laa Tinvaal==
{{ardart|Laa Tinvaal}}
==Freayltys==
==Jeeagh er neesht==
* [[Tinvaal]]
* [[Laa Tinvaal]]
* [[Cabbal Reeoil Eoin Bashtey]]
* [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]
==Imraaghyn==
{{reflist}}
==Kianglaghyn magh==
* [https://tynwald.org.im/ Tinvaal]
{{coord|54.203750|N|04.642352|W|type:landmark|display=title}}
[[Ronney:Tinvaal]]
[[Ronney:Laaraghyn shenndeeagh ayns Mannin]]
[[Ronney:Balley Keeill Eoin]]
[[Ronney:Laaraghyn shenndaaleeagh ayns Mannin]]
1z7zoc613xl2ywu7w5hy547a065yqcp
387215
387214
2026-08-02T20:57:20Z
MacTire02
219
++
387215
wikitext
text/x-wiki
[[Coadan:Tynwald Hill.jpg|300px|thumb|Cronk Keeill Eoin ayns Balley Keeill Eoin]]
She crongan laue-jeant ayns [[Balley Keeill Eoin]], [[Mannin]], eh '''Cronk Keeill Eoin''' ({{lang-en|Tynwald Hill}}). T'eh ymmydit myr boayl çhaglee [[Tinvaal]], ard-whaiyl Vannin. She soiaghey yn çharmanys bleinoil [[Laa Tinvaal]] t'eh, ta taghyrtyn er y 5oo Jerrey Souree dagh blein ny er y chied Jelune ny yei my ta'n 5oo Jerrey Souree tuittym er Jedoonee. Ec y çharmanys shen, ta slattyssyn Tinvaal v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay ayns Baarle as ayns Gaelg.<ref name="Tynwald">{{cite web |title=Tynwald Hill |url=https://tynwald.org.im/ |website=Tinvaal |publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026 |lang=Baarle}}</ref>
Ta'n cronk soit faggys da [[Cabbal Reeoil Eoin Bashtey]] as t'eh jeant ass crongan aggagh marish ardan mullee ec y vaare. Yn ardan heose, t'eh ymmydit lesh oikee car immeeaghtyn Laa Tinvaal, choud's ta ny straneyn mygeayrt cummal cummee as fakideyryn ta frastyl yn sharmanys.<ref name="WHAF">{{cite web |title=Tynwald Hill and Environs: Norse Assembly Sites |publisher=Rheynn Cultoor, Meanyn as Spoyrt |format=PDF |url=https://assets.publishing.service.gov.uk/media/5a79ac8f40f0b642860d9e16/WHAF_Tynwald_Hill_and_environs_Norse_assembly_sites.pdf |access-date=2 Luanistyn 2026}}</ref>
==Ennym as bun-ocklaght==
'Sy Ghaelg, she ''Cronk Keeill Eoin'' ennym tradishoonagh y chruink.<ref name="Kneen">{{cite book|last=Kneen|first=J. J.|title=The Place-Names of the Isle of Man
|publisher=[[Yn Çheshaght Ghailckagh]]|year=1925}}</ref> Ta geillyn shenndeeagh recortyssey lhiegganyn elley jeh'n ennym shen, lheid as ''Cronk Keeillown'' as ''Cronk-y-Keeill-Eoin'', lettraghyn ny shinney jeh'n voayl-ennym cheddin.<ref name="ManxSoc">{{cite book|title=Manx Society Volume XVI|publisher=Yn Çheshaght Ghailckagh|year=1874 }}</ref>
Ta'n ennym ''Cronk Keeill Eoin'' freayl boayl-ennym agglishagh bunneydagh y voayl. Ta'n bun-ockle ''[[keeill (hradishoonagh)|keeill]]'' çheet er cabbal Chreestee leah as t'eh er credjal dy vel yn ennym çheet er cabbal v'er ny chasherickey da [[Eoin Bashtey]] as v'ayn roish my row [[Cabbal Reeoil Eoin Bashtey]] noa-emshiragh er ny hroggal.<ref name="keeill">{{cite web |title=The Royal Chapel of St. John the Baptist, St John's, Isle of Man |website=Isle of Man Family History Society Journal |url=https://www.isle-of-man.com/manxnotebook/famhist/v09n3.htm |access-date=2 Luanistyn 2026}}</ref>
Ta'n ennym Baarlagh—''Tynwald Hill''—çheet as y chiangley t'ayn eddyr [[Tinvaal]] as y cronk. Ta ny focklyn ''Tynwald'' as ''Tinvaal'' çheet ass ''þingvǫllr'' y Çhenn Loghlinish, ta çhyndaait dy mennick myr "magher çhaglee", "magher quaiylagh" ny "boayl çhaglee yn whaiyl", as t'eh kianglt rish enmyn elley lheid as ''Þingvellir'' yn Eeslynnish as ''Tingvoll'' y Norlynnish.<ref name="TynwaldName">{{citation|title=Tynwald|publisher=Ard-whaiyl Tinvaal |url=https://tynwald.org.im/|access-date=2 Luanistyn 2026 |language=Baarle}}</ref>
==Tuarastyl==
She crongan ooirrey aggagh eh Cronk Keeill Eoin as t'eh soit ayns Balley Keeill Eoin, ayns çheer-yalloo jesh-chliaghtagh shenndeeagh faggys da [[Cabbal Reeoil Eoin Bashtey]] as [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]. Ta'n crongan hene jeant ass kiare straneyn kiarkylagh ta girree dys ardan ec y vullagh. T'eh mysh {{cvt|12|ft}} er yrjid, as ta'n strane s'inshley mysh {{cvt|75–80|ft}} er crantessen.<ref name="WHAF"/><ref name="Kermode">{{cite book |last=Kermode |first=P. M. C. |title=Illustrated Notes on Manx Antiquities |publisher=Yn Çheshaght Ghailckagh |year=1904}}</ref>
Yn ardan heose jeh'n chrongan, t'eh croo yn ard-voayl jesh-chliaghtagh jeh'n chronk. Car sharmanys bleinoil [[Laa Tinvaal]], ta [[Çhiarn Vannin]], oikee gurneilagh Tinvaal, as oikee elley shassoo er y vullagh choud's ta leighyn v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay 'sy Vaarle as 'sy Ghaelg.<ref name="Tynwald"/> Ny straneyn elley mygeayrt, t'ad kiarail ynnydyn da commee, oikee, as fakideryn ta frastyl er y çharmanys.<ref name="WHAF"/>
Ta'n laare cummal preaban caggee najooragh faggys da mean yn ellan, as ta'n cronk soit er ard-chlaare geinee as shillee eddyr clashyn ushtey 'sy twoaie as 'sy jiass.<ref name="WHAF"/> Y chabbal roie t'ayn, v'er ny hroggal eddyr 1847 as 1849 ayns ynnyd strughtooryn agglishagh ny s'leaie er y laare as t'eh kianglt rish y chronk lesh bollagh cosheeaghtagh.<ref name="WHAF"/>
Cha nel date, cor, ny tuittymys troggalys y chrongan mie er enney. Dy mennick, t'eh coontit myr cleiy troggit, agh cha nel shanndaaaleeyn ny screeudeyryn shennaghys shickyr cre'n mooad ta'n cummey roie soilshaghey strughtoor bunneydagh ny kiartaghey ny s'anmee da'n stughtoor bunneydagh hene. Ta currym as caslys jesh-chliaghtagh y chruink er ny ve freilt as ceaghlit harrish ny bleeantyn.<ref name="WHAF"/>
Dy tradishoonagh, ta'n crongan kianglt rish corys quaiyllyn fo'n aer. Ga dy vel y sharmanys noa-emshiragh taghyrtyn dagh 5oo Jerrey Souree (ny yn chied Jelhune ny yei tra ta'n 5oo tuittym er Jedoonee), ta'n cronk foast myr boayl cowreydagh da kinjaght tradishoonyn slattyssagh Tinvaal.<ref name="Tynwald"/>
==Shennaghys==
===Troggal===
===Ymmyd jesh-chliaghtagh===
==Feayn-skeealleydaght as beeal-arrish==
==Laa Tinvaal==
{{ardart|Laa Tinvaal}}
==Freayltys==
==Jeeagh er neesht==
* [[Tinvaal]]
* [[Laa Tinvaal]]
* [[Cabbal Reeoil Eoin Bashtey]]
* [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]
==Imraaghyn==
{{reflist}}
==Kianglaghyn magh==
* [https://tynwald.org.im/ Tinvaal]
{{coord|54.203750|N|04.642352|W|type:landmark|display=title}}
[[Ronney:Tinvaal]]
[[Ronney:Laaraghyn shenndeeagh ayns Mannin]]
[[Ronney:Balley Keeill Eoin]]
[[Ronney:Laaraghyn shenndaaleeagh ayns Mannin]]
py6v0xo3sgfhlr3daaxqpa8doe0ygst
387216
387215
2026-08-02T21:31:07Z
MacTire02
219
++
387216
wikitext
text/x-wiki
[[Coadan:Tynwald Hill.jpg|300px|thumb|Cronk Keeill Eoin ayns Balley Keeill Eoin]]
She crongan laue-jeant ayns [[Balley Keeill Eoin]], [[Mannin]], eh '''Cronk Keeill Eoin''' ({{lang-en|Tynwald Hill}}). T'eh ymmydit myr boayl çhymsee [[Tinvaal]], ard-whaiyl Vannin. She soiaghey yn çharmanys bleinoil [[Laa Tinvaal|Laa Tinvaal (Laa'l Eoin)]] t'eh, ta taghyrtyn er y 5oo Jerrey Souree dagh blein ny er y chied Jelune ny yei my ta'n 5oo Jerrey Souree tuittym er Jedoonee. Ec y çharmanys shen, ta slattyssyn Tinvaal v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay ayns Baarle as ayns Gaelg.<ref name="Tynwald">{{cite web |title=Tynwald Hill |url=https://tynwald.org.im/ |website=Tinvaal |publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026 |lang=Baarle}}</ref>
Ta'n cronk soit faggys da [[Cabbal Reeoil Eoin Bashtey]] as t'eh jeant ass crongan aggagh marish ardan mullee ec y vaare. Yn ardan heose, t'eh ymmydit lesh oikee car immeeaghtyn Laa Tinvaal, choud's ta ny straneyn mygeayrt cummal cummee as fakideyryn ta frastyl yn sharmanys.<ref name="WHAF">{{cite web |title=Tynwald Hill and Environs: Norse Assembly Sites |publisher=Rheynn Cultoor, Meanyn as Spoyrt |format=PDF |url=https://assets.publishing.service.gov.uk/media/5a79ac8f40f0b642860d9e16/WHAF_Tynwald_Hill_and_environs_Norse_assembly_sites.pdf |access-date=2 Luanistyn 2026}}</ref>
==Ennym as bun-ocklaght==
'Sy Ghaelg, she ''Cronk Keeill Eoin'' ennym tradishoonagh y chruink.<ref name="Kneen">{{cite book|last=Kneen|first=J. J.|author-link=J. J. Kneen|title=The Place-Names of the Isle of Man
|publisher=[[Yn Çheshaght Ghailckagh]]|year=1925}}</ref> Ta geillyn shenndeeagh recortyssey lhiegganyn elley jeh'n ennym shen, lheid as ''Cronk Keeillown'' as ''Cronk-y-Keeill-Eoin'', lettraghyn ny shinney jeh'n voayl-ennym cheddin.<ref name="ManxSoc">{{cite book|title=Manx Society Volume XVI|publisher=Yn Çheshaght Ghailckagh|year=1874 }}</ref>
Ta'n ennym ''Cronk Keeill Eoin'' freayl boayl-ennym agglishagh bunneydagh y voayl. Ta'n bun-ockle ''[[keeill (hradishoonagh)|keeill]]'' çheet er cabbal Chreestee leah as t'eh er credjal dy vel yn ennym çheet er cabbal v'er ny chasherickey da [[Eoin Bashtey]] as v'ayn roish my row [[Cabbal Reeoil Eoin Bashtey]] noa-emshiragh er ny hroggal.<ref name="keeill">{{cite web |title=The Royal Chapel of St. John the Baptist, St John's, Isle of Man |website=Isle of Man Family History Society Journal |url=https://www.isle-of-man.com/manxnotebook/famhist/v09n3.htm |access-date=2 Luanistyn 2026}}</ref>
Ta'n ennym Baarlagh—''Tynwald Hill''—çheet as y chiangley t'ayn eddyr [[Tinvaal]] as y cronk. Ta ny focklyn ''Tynwald'' as ''Tinvaal'' çheet ass ''þingvǫllr'' y Çhenn Loghlinish, ta çhyndaait dy mennick myr "magher çhymsee", "magher quaiylagh" ny "boayl çhymsee yn whaiyl", as t'eh kianglt rish enmyn elley lheid as ''Þingvellir'' yn Eeslynnish as ''Tingvoll'' y Norlynnish.<ref name="TynwaldName">{{citation|title=Tynwald|publisher=Ard-whaiyl Tinvaal |url=https://tynwald.org.im/|access-date=2 Luanistyn 2026 |language=Baarle}}</ref>
==Tuarastyl==
She crongan ooirrey aggagh eh Cronk Keeill Eoin as t'eh soit ayns Balley Keeill Eoin, ayns çheer-yalloo jesh-chliaghtagh shenndeeagh faggys da [[Cabbal Reeoil Eoin Bashtey]] as [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]. Ta'n crongan hene jeant ass kiare straneyn kiarkylagh ta girree dys ardan ec y vullagh. T'eh mysh {{cvt|12|ft}} er yrjid, as ta'n strane s'inshley mysh {{cvt|75–80|ft}} er crantessen.<ref name="WHAF"/><ref name="Kermode">{{cite book |last=Kermode |first=P. M. C. |title=Illustrated Notes on Manx Antiquities |publisher=Yn Çheshaght Ghailckagh |year=1904}}</ref>
Yn ardan heose jeh'n chrongan, t'eh croo yn ard-voayl jesh-chliaghtagh jeh'n chronk. Car sharmanys bleinoil [[Laa Tinvaal]], ta [[Çhiarn Vannin]], oikee gurneilagh Tinvaal, as oikee elley shassoo er y vullagh choud's ta leighyn v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay 'sy Vaarle as 'sy Ghaelg.<ref name="Tynwald"/> Ny straneyn elley mygeayrt, t'ad kiarail ynnydyn da commee, oikee, as fakideryn ta frastyl er y çharmanys.<ref name="WHAF"/>
Ta'n laare cummal amphitheater faggys da mean yn ellan, as ta'n cronk soit er ard-chlaare gheinee as hillee eddyr clashyn ushtey 'sy twoaie as 'sy jiass.<ref name="WHAF"/> Y chabbal t'ayn jiu, v'eh er ny hroggal eddyr 1847 as 1849 ayns ynnyd strughtooryn agglishagh ny s'leaie er y laare as t'eh kianglt rish y chrongan lesh bollagh cosheeaghtagh.<ref name="WHAF"/>
Cha nel date, cor, ny tuittymys troggalys y chrongan mie er enney. Dy mennick, t'eh coontit myr cleiy troggit, agh cha nel shanndaaaleeyn ny screeudeyryn shennaghys shickyr cre'n mooad ta'n cummey roie soilshaghey strughtoor bunneydagh ny kiartaghey ny s'anmee da'n stughtoor bunneydagh hene. Ta currym as caslys jesh-chliaghtagh y chruink er ny ve freilt as ceaghlit harrish ny bleeantyn.<ref name="WHAF"/>
Dy tradishoonagh, ta'n crongan kianglt rish corys quaiyllyn fo'n aer. Ga dy vel y sharmanys noa-emshiragh taghyrtyn dagh 5oo Jerrey Souree (ny yn chied Jelhune ny yei tra ta'n 5oo tuittym er Jedoonee), ta'n cronk foast myr boayl cowreydagh da kinjaght tradishoonyn slattyssagh Tinvaal.<ref name="Tynwald"/>
==Shennaghys==
===Bun===
Cha nel fys ain cuin va Cronk Keeill Eoin er ny hroggal. Ga dy vel y crongan er ny chochiangley shennaghys mean-eashagh as Loghlinagh Vannin, cha nel feanish henndaaleeagh er ny chur sheese date bun y chrongan.<ref name="WHAF"/>
Ansherbee, ta fys ain dy row laaraghyn cosoylagh ry-gheddyn buill elley feie'n theihll Loghlinagh, agh cha nel shin shickyr cre'm mooad dy vel Cronk Keeill Eoin freayl strughtoor mean-eashagh leah.<ref name="WHAF"/>
===Ymmyd myr boayl çhymsee===
Ta'n chied tuarastyl screeuit ta fys ain er immeeaghtyn quaiyllagh er Cronk Keeill Eoin ry-gheddyn ayns leighyn cadjinchliaghtagh Manninagh veih'n vlein 1417. Ta ny leighyn shen cur sheese er Çhiarn Vannin as eh ny hoie er y chronk car fogrey magh ny leighyn, marish oikee as ynnydee yn phobble ayn.<ref name="1417">{{cite web |title=The 1417 Manx Law Book |url=https://tynwald.org.im/ |website=Tinvaal|publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026}}</ref>
Ta'n cronk foast ymmydit jiu son fogrey magh Slattyssyn Tinvaal er Laa'l Eoin.<ref name="Tynwald"/>
==Feayn-skeealleydaght as beeal-arrish==
==Laa Tinvaal==
{{ardart|Laa Tinvaal}}
==Freayltys==
==Jeeagh er neesht==
* [[Tinvaal]]
* [[Laa Tinvaal|Laa Tinvaal (Laa'l Eoin)]]
* [[Cabbal Reeoil Eoin Bashtey]]
* [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]
==Imraaghyn==
{{reflist}}
==Kianglaghyn magh==
* [https://tynwald.org.im/ Tinvaal]
{{coord|54.203750|N|04.642352|W|type:landmark|display=title}}
[[Ronney:Tinvaal]]
[[Ronney:Laaraghyn shenndeeagh ayns Mannin]]
[[Ronney:Balley Keeill Eoin]]
[[Ronney:Laaraghyn shenndaaleeagh ayns Mannin]]
o7j24z1pbvqydri0akpntpxccv6j542
387217
387216
2026-08-02T21:31:45Z
MacTire02
219
ennym 'syn imraa
387217
wikitext
text/x-wiki
[[Coadan:Tynwald Hill.jpg|300px|thumb|Cronk Keeill Eoin ayns Balley Keeill Eoin]]
She crongan laue-jeant ayns [[Balley Keeill Eoin]], [[Mannin]], eh '''Cronk Keeill Eoin''' ({{lang-en|Tynwald Hill}}). T'eh ymmydit myr boayl çhymsee [[Tinvaal]], ard-whaiyl Vannin. She soiaghey yn çharmanys bleinoil [[Laa Tinvaal|Laa Tinvaal (Laa'l Eoin)]] t'eh, ta taghyrtyn er y 5oo Jerrey Souree dagh blein ny er y chied Jelune ny yei my ta'n 5oo Jerrey Souree tuittym er Jedoonee. Ec y çharmanys shen, ta slattyssyn Tinvaal v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay ayns Baarle as ayns Gaelg.<ref name="Tynwald">{{cite web |title=Tynwald Hill |url=https://tynwald.org.im/ |website=Tinvaal |publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026 |lang=Baarle}}</ref>
Ta'n cronk soit faggys da [[Cabbal Reeoil Eoin Bashtey]] as t'eh jeant ass crongan aggagh marish ardan mullee ec y vaare. Yn ardan heose, t'eh ymmydit lesh oikee car immeeaghtyn Laa Tinvaal, choud's ta ny straneyn mygeayrt cummal cummee as fakideyryn ta frastyl yn sharmanys.<ref name="WHAF">{{cite web |title=Tynwald Hill and Environs: Norse Assembly Sites |publisher=Rheynn Cultoor, Meanyn as Spoyrt |format=PDF |url=https://assets.publishing.service.gov.uk/media/5a79ac8f40f0b642860d9e16/WHAF_Tynwald_Hill_and_environs_Norse_assembly_sites.pdf |access-date=2 Luanistyn 2026}}</ref>
==Ennym as bun-ocklaght==
'Sy Ghaelg, she ''Cronk Keeill Eoin'' ennym tradishoonagh y chruink.<ref name="Kneen">{{cite book|last=Kneen|first=J. J.|author-link=J. J. Kneen|title=The Place-Names of the Isle of Man
|publisher=[[Yn Çheshaght Ghailckagh]]|year=1925}}</ref> Ta geillyn shenndeeagh recortyssey lhiegganyn elley jeh'n ennym shen, lheid as ''Cronk Keeillown'' as ''Cronk-y-Keeill-Eoin'', lettraghyn ny shinney jeh'n voayl-ennym cheddin.<ref name="ManxSoc">{{cite book|title=Manx Society Volume XVI|publisher=Yn Çheshaght Ghailckagh|year=1874 }}</ref>
Ta'n ennym ''Cronk Keeill Eoin'' freayl boayl-ennym agglishagh bunneydagh y voayl. Ta'n bun-ockle ''[[keeill (hradishoonagh)|keeill]]'' çheet er cabbal Chreestee leah as t'eh er credjal dy vel yn ennym çheet er cabbal v'er ny chasherickey da [[Eoin Bashtey]] as v'ayn roish my row [[Cabbal Reeoil Eoin Bashtey]] noa-emshiragh er ny hroggal.<ref name="keeill">{{cite web |title=The Royal Chapel of St. John the Baptist, St John's, Isle of Man |website=Isle of Man Family History Society Journal |url=https://www.isle-of-man.com/manxnotebook/famhist/v09n3.htm |access-date=2 Luanistyn 2026}}</ref>
Ta'n ennym Baarlagh—''Tynwald Hill''—çheet as y chiangley t'ayn eddyr [[Tinvaal]] as y cronk. Ta ny focklyn ''Tynwald'' as ''Tinvaal'' çheet ass ''þingvǫllr'' y Çhenn Loghlinish, ta çhyndaait dy mennick myr "magher çhymsee", "magher quaiylagh" ny "boayl çhymsee yn whaiyl", as t'eh kianglt rish enmyn elley lheid as ''Þingvellir'' yn Eeslynnish as ''Tingvoll'' y Norlynnish.<ref name="TynwaldName">{{citation|title=Tynwald|publisher=Ard-whaiyl Tinvaal |url=https://tynwald.org.im/|access-date=2 Luanistyn 2026 |language=Baarle}}</ref>
==Tuarastyl==
She crongan ooirrey aggagh eh Cronk Keeill Eoin as t'eh soit ayns Balley Keeill Eoin, ayns çheer-yalloo jesh-chliaghtagh shenndeeagh faggys da [[Cabbal Reeoil Eoin Bashtey]] as [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]. Ta'n crongan hene jeant ass kiare straneyn kiarkylagh ta girree dys ardan ec y vullagh. T'eh mysh {{cvt|12|ft}} er yrjid, as ta'n strane s'inshley mysh {{cvt|75–80|ft}} er crantessen.<ref name="WHAF"/><ref name="Kermode">{{cite book |last=Kermode |first=P. M. C. |title=Illustrated Notes on Manx Antiquities |publisher=Yn Çheshaght Ghailckagh |year=1904}}</ref>
Yn ardan heose jeh'n chrongan, t'eh croo yn ard-voayl jesh-chliaghtagh jeh'n chronk. Car sharmanys bleinoil [[Laa Tinvaal]], ta [[Çhiarn Vannin]], oikee gurneilagh Tinvaal, as oikee elley shassoo er y vullagh choud's ta leighyn v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay 'sy Vaarle as 'sy Ghaelg.<ref name="Tynwald"/> Ny straneyn elley mygeayrt, t'ad kiarail ynnydyn da commee, oikee, as fakideryn ta frastyl er y çharmanys.<ref name="WHAF"/>
Ta'n laare cummal amphitheater faggys da mean yn ellan, as ta'n cronk soit er ard-chlaare gheinee as hillee eddyr clashyn ushtey 'sy twoaie as 'sy jiass.<ref name="WHAF"/> Y chabbal t'ayn jiu, v'eh er ny hroggal eddyr 1847 as 1849 ayns ynnyd strughtooryn agglishagh ny s'leaie er y laare as t'eh kianglt rish y chrongan lesh bollagh cosheeaghtagh.<ref name="WHAF"/>
Cha nel date, cor, ny tuittymys troggalys y chrongan mie er enney. Dy mennick, t'eh coontit myr cleiy troggit, agh cha nel shanndaaaleeyn ny screeudeyryn shennaghys shickyr cre'n mooad ta'n cummey roie soilshaghey strughtoor bunneydagh ny kiartaghey ny s'anmee da'n stughtoor bunneydagh hene. Ta currym as caslys jesh-chliaghtagh y chruink er ny ve freilt as ceaghlit harrish ny bleeantyn.<ref name="WHAF"/>
Dy tradishoonagh, ta'n crongan kianglt rish corys quaiyllyn fo'n aer. Ga dy vel y sharmanys noa-emshiragh taghyrtyn dagh 5oo Jerrey Souree (ny yn chied Jelhune ny yei tra ta'n 5oo tuittym er Jedoonee), ta'n cronk foast myr boayl cowreydagh da kinjaght tradishoonyn slattyssagh Tinvaal.<ref name="Tynwald"/>
==Shennaghys==
===Bun===
Cha nel fys ain cuin va Cronk Keeill Eoin er ny hroggal. Ga dy vel y crongan er ny chochiangley shennaghys mean-eashagh as Loghlinagh Vannin, cha nel feanish henndaaleeagh er ny chur sheese date bun y chrongan.<ref name="WHAF"/>
Ansherbee, ta fys ain dy row laaraghyn cosoylagh ry-gheddyn buill elley feie'n theihll Loghlinagh, agh cha nel shin shickyr cre'm mooad dy vel Cronk Keeill Eoin freayl strughtoor mean-eashagh leah.<ref name="WHAF"/>
===Ymmyd myr boayl çhymsee===
Ta'n chied tuarastyl screeuit ta fys ain er immeeaghtyn quaiyllagh er Cronk Keeill Eoin ry-gheddyn ayns leighyn cadjinchliaghtagh Manninagh veih'n vlein 1417. Ta ny leighyn shen cur sheese er Çhiarn Vannin as eh ny hoie er y chronk car fogrey magh ny leighyn, marish oikee as ynnydee yn phobble ayn.<ref name="MLB-1417">{{cite web |title=The 1417 Manx Law Book |url=https://tynwald.org.im/ |website=Tinvaal|publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026}}</ref>
Ta'n cronk foast ymmydit jiu son fogrey magh Slattyssyn Tinvaal er Laa'l Eoin.<ref name="Tynwald"/>
==Feayn-skeealleydaght as beeal-arrish==
==Laa Tinvaal==
{{ardart|Laa Tinvaal}}
==Freayltys==
==Jeeagh er neesht==
* [[Tinvaal]]
* [[Laa Tinvaal|Laa Tinvaal (Laa'l Eoin)]]
* [[Cabbal Reeoil Eoin Bashtey]]
* [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]
==Imraaghyn==
{{reflist}}
==Kianglaghyn magh==
* [https://tynwald.org.im/ Tinvaal]
{{coord|54.203750|N|04.642352|W|type:landmark|display=title}}
[[Ronney:Tinvaal]]
[[Ronney:Laaraghyn shenndeeagh ayns Mannin]]
[[Ronney:Balley Keeill Eoin]]
[[Ronney:Laaraghyn shenndaaleeagh ayns Mannin]]
ssvyshm1h5m9nk6wkbljnqhy7x2g2aa
387218
387217
2026-08-03T00:27:41Z
MacTire02
219
+ronney
387218
wikitext
text/x-wiki
[[Coadan:Tynwald Hill.jpg|300px|thumb|Cronk Keeill Eoin ayns Balley Keeill Eoin]]
She crongan laue-jeant ayns [[Balley Keeill Eoin]], [[Mannin]], eh '''Cronk Keeill Eoin''' ({{lang-en|Tynwald Hill}}). T'eh ymmydit myr boayl çhymsee [[Tinvaal]], ard-whaiyl Vannin. She soiaghey yn çharmanys bleinoil [[Laa Tinvaal|Laa Tinvaal (Laa'l Eoin)]] t'eh, ta taghyrtyn er y 5oo Jerrey Souree dagh blein ny er y chied Jelune ny yei my ta'n 5oo Jerrey Souree tuittym er Jedoonee. Ec y çharmanys shen, ta slattyssyn Tinvaal v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay ayns Baarle as ayns Gaelg.<ref name="Tynwald">{{cite web |title=Tynwald Hill |url=https://tynwald.org.im/ |website=Tinvaal |publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026 |lang=Baarle}}</ref>
Ta'n cronk soit faggys da [[Cabbal Reeoil Eoin Bashtey]] as t'eh jeant ass crongan aggagh marish ardan mullee ec y vaare. Yn ardan heose, t'eh ymmydit lesh oikee car immeeaghtyn Laa Tinvaal, choud's ta ny straneyn mygeayrt cummal cummee as fakideyryn ta frastyl yn sharmanys.<ref name="WHAF">{{cite web |title=Tynwald Hill and Environs: Norse Assembly Sites |publisher=Rheynn Cultoor, Meanyn as Spoyrt |format=PDF |url=https://assets.publishing.service.gov.uk/media/5a79ac8f40f0b642860d9e16/WHAF_Tynwald_Hill_and_environs_Norse_assembly_sites.pdf |access-date=2 Luanistyn 2026}}</ref>
==Ennym as bun-ocklaght==
'Sy Ghaelg, she ''Cronk Keeill Eoin'' ennym tradishoonagh y chruink.<ref name="Kneen">{{cite book|last=Kneen|first=J. J.|author-link=J. J. Kneen|title=The Place-Names of the Isle of Man
|publisher=[[Yn Çheshaght Ghailckagh]]|year=1925}}</ref> Ta geillyn shenndeeagh recortyssey lhiegganyn elley jeh'n ennym shen, lheid as ''Cronk Keeillown'' as ''Cronk-y-Keeill-Eoin'', lettraghyn ny shinney jeh'n voayl-ennym cheddin.<ref name="ManxSoc">{{cite book|title=Manx Society Volume XVI|publisher=Yn Çheshaght Ghailckagh|year=1874 }}</ref>
Ta'n ennym ''Cronk Keeill Eoin'' freayl boayl-ennym agglishagh bunneydagh y voayl. Ta'n bun-ockle ''[[keeill (hradishoonagh)|keeill]]'' çheet er cabbal Chreestee leah as t'eh er credjal dy vel yn ennym çheet er cabbal v'er ny chasherickey da [[Eoin Bashtey]] as v'ayn roish my row [[Cabbal Reeoil Eoin Bashtey]] noa-emshiragh er ny hroggal.<ref name="keeill">{{cite web |title=The Royal Chapel of St. John the Baptist, St John's, Isle of Man |website=Isle of Man Family History Society Journal |url=https://www.isle-of-man.com/manxnotebook/famhist/v09n3.htm |access-date=2 Luanistyn 2026}}</ref>
Ta'n ennym Baarlagh—''Tynwald Hill''—çheet as y chiangley t'ayn eddyr [[Tinvaal]] as y cronk. Ta ny focklyn ''Tynwald'' as ''Tinvaal'' çheet ass ''þingvǫllr'' y Çhenn Loghlinish, ta çhyndaait dy mennick myr "magher çhymsee", "magher quaiylagh" ny "boayl çhymsee yn whaiyl", as t'eh kianglt rish enmyn elley lheid as ''Þingvellir'' yn Eeslynnish as ''Tingvoll'' y Norlynnish.<ref name="TynwaldName">{{citation|title=Tynwald|publisher=Ard-whaiyl Tinvaal |url=https://tynwald.org.im/|access-date=2 Luanistyn 2026 |language=Baarle}}</ref>
==Tuarastyl==
She crongan ooirrey aggagh eh Cronk Keeill Eoin as t'eh soit ayns Balley Keeill Eoin, ayns çheer-yalloo jesh-chliaghtagh shenndeeagh faggys da [[Cabbal Reeoil Eoin Bashtey]] as [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]. Ta'n crongan hene jeant ass kiare straneyn kiarkylagh ta girree dys ardan ec y vullagh. T'eh mysh {{cvt|12|ft}} er yrjid, as ta'n strane s'inshley mysh {{cvt|75–80|ft}} er crantessen.<ref name="WHAF"/><ref name="Kermode">{{cite book |last=Kermode |first=P. M. C. |title=Illustrated Notes on Manx Antiquities |publisher=Yn Çheshaght Ghailckagh |year=1904}}</ref>
Yn ardan heose jeh'n chrongan, t'eh croo yn ard-voayl jesh-chliaghtagh jeh'n chronk. Car sharmanys bleinoil [[Laa Tinvaal]], ta [[Çhiarn Vannin]], oikee gurneilagh Tinvaal, as oikee elley shassoo er y vullagh choud's ta leighyn v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay 'sy Vaarle as 'sy Ghaelg.<ref name="Tynwald"/> Ny straneyn elley mygeayrt, t'ad kiarail ynnydyn da commee, oikee, as fakideryn ta frastyl er y çharmanys.<ref name="WHAF"/>
Ta'n laare cummal amphitheater faggys da mean yn ellan, as ta'n cronk soit er ard-chlaare gheinee as hillee eddyr clashyn ushtey 'sy twoaie as 'sy jiass.<ref name="WHAF"/> Y chabbal t'ayn jiu, v'eh er ny hroggal eddyr 1847 as 1849 ayns ynnyd strughtooryn agglishagh ny s'leaie er y laare as t'eh kianglt rish y chrongan lesh bollagh cosheeaghtagh.<ref name="WHAF"/>
Cha nel date, cor, ny tuittymys troggalys y chrongan mie er enney. Dy mennick, t'eh coontit myr cleiy troggit, agh cha nel shanndaaaleeyn ny screeudeyryn shennaghys shickyr cre'n mooad ta'n cummey roie soilshaghey strughtoor bunneydagh ny kiartaghey ny s'anmee da'n stughtoor bunneydagh hene. Ta currym as caslys jesh-chliaghtagh y chruink er ny ve freilt as ceaghlit harrish ny bleeantyn.<ref name="WHAF"/>
Dy tradishoonagh, ta'n crongan kianglt rish corys quaiyllyn fo'n aer. Ga dy vel y sharmanys noa-emshiragh taghyrtyn dagh 5oo Jerrey Souree (ny yn chied Jelhune ny yei tra ta'n 5oo tuittym er Jedoonee), ta'n cronk foast myr boayl cowreydagh da kinjaght tradishoonyn slattyssagh Tinvaal.<ref name="Tynwald"/>
==Shennaghys==
===Bun===
Cha nel fys ain cuin va Cronk Keeill Eoin er ny hroggal. Ga dy vel y crongan er ny chochiangley shennaghys mean-eashagh as Loghlinagh Vannin, cha nel feanish henndaaleeagh er ny chur sheese date bun y chrongan.<ref name="WHAF"/>
Ansherbee, ta fys ain dy row laaraghyn cosoylagh ry-gheddyn buill elley feie'n theihll Loghlinagh, agh cha nel shin shickyr cre'm mooad dy vel Cronk Keeill Eoin freayl strughtoor mean-eashagh leah.<ref name="WHAF"/>
===Ymmyd myr boayl çhymsee===
Ta'n chied tuarastyl screeuit ta fys ain er immeeaghtyn quaiyllagh er Cronk Keeill Eoin ry-gheddyn ayns leighyn cadjinchliaghtagh Manninagh veih'n vlein 1417. Ta ny leighyn shen cur sheese er Çhiarn Vannin as eh ny hoie er y chronk car fogrey magh ny leighyn, marish oikee as ynnydee yn phobble ayn.<ref name="MLB-1417">{{cite web |title=The 1417 Manx Law Book |url=https://tynwald.org.im/ |website=Tinvaal|publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026}}</ref>
Ta'n cronk foast ymmydit jiu son fogrey magh Slattyssyn Tinvaal er Laa'l Eoin.<ref name="Tynwald"/>
==Beeal-arrish==
Ta tradishoon gra dy row Cronk Keeill Eoin er ny hroggal ass ooir veih dagh fer jeh ny shiaght skeeraghyn jeig ayns Mannin. Ta'n skeeal shoh cochianglt rish smooinaghtyn er unnaneys yn ellan, agh cha nel feanish erbee ayn dy row yn crongan er ny hroggal 'syn aght shen.<ref name="Jenkinson">{{cite book |last=Jenkinson |first=Henry Irwin |title=A Practical Guide to the Isle of Man |year=1874 |publisher=Edward Stanford |url=https://www.isle-of-man.com/manxnotebook/fulltext/jk1874/p035.htm |page=35}}</ref>
Ta beeal-arrish elley bentyn rish y chrongan ginsh skeeal bentyn rish ushagyn as ad çhaglym er y chronk dy reih ree eddyr oc hene. Rere'n skeeal, ren ny h-ushagyn co-streeu noi y cheilley as ad geearee roshtyn yn yrjid smoo veih'n chronk. Ren yn urley smooinaghtyn dy row yn varriaght echey agh, ec y thootçhey s'jerree hea drean ass aghlish skiaan yn urley as dettyl eh ny s'yrjey na'n urley as, myr shen, v'eh reiht myr ree ny h-ushagyn.<ref name="birds">{{cite web |title=The mysteries of Tynwald Hill - where politics and folklore meet |first=James |last=Franklin |website=Culture Vannin |date=21 Averil 2024 |url=https://www.iomtoday.co.im/news/entertainment/the-mysteries-of-tynwald-hill-where-politics-and-folklore-meet-679504 |access-date=2 Luanistyn 2026}}</ref>
==Jeeagh er neesht==
* [[Tinvaal]]
* [[Laa Tinvaal|Laa Tinvaal (Laa'l Eoin)]]
* [[Cabbal Reeoil Eoin Bashtey]]
* [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]
==Imraaghyn==
{{reflist}}
==Kianglaghyn magh==
* [https://tynwald.org.im/ Tinvaal]
{{coord|54.203750|N|04.642352|W|type:landmark|display=title}}
[[Ronney:Tinvaal]]
[[Ronney:Laaraghyn shenndeeagh ayns Mannin]]
[[Ronney:Balley Keeill Eoin]]
[[Ronney:Lhiaghtyn as cooinaghtaneyn ayns Mannin]]
8r2zj7qgdwmh12yskv74tbb0hslje7l
387219
387218
2026-08-03T00:53:48Z
MacTire02
219
++
387219
wikitext
text/x-wiki
[[Coadan:Tynwald Hill.jpg|300px|thumb|Cronk Keeill Eoin ayns Balley Keeill Eoin]]
She crongan laue-jeant ayns [[Balley Keeill Eoin]], [[Mannin]], eh '''Cronk Keeill Eoin''' ({{lang-en|Tynwald Hill}}). T'eh ymmydit myr boayl çhymsee [[Tinvaal]], ard-whaiyl Vannin. She soiaghey yn çharmanys bleinoil [[Laa Tinvaal|Laa Tinvaal (Laa'l Eoin)]] t'eh, ta taghyrtyn er y 5oo Jerrey Souree dagh blein ny er y chied Jelune ny yei my ta'n 5oo Jerrey Souree tuittym er Jedoonee. Ec y çharmanys shen, ta slattyssyn Tinvaal v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay ayns Baarle as ayns Gaelg.<ref name="Tynwald">{{cite web |title=Tynwald Hill |url=https://tynwald.org.im/ |website=Tinvaal |publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026 |lang=Baarle}}</ref>
Ta'n cronk soit faggys da [[Cabbal Reeoil Eoin Bashtey]] as t'eh jeant ass crongan aggagh marish ardan mullee ec y vaare. Yn ardan heose, t'eh ymmydit lesh oikee car immeeaghtyn Laa Tinvaal, choud's ta ny straneyn mygeayrt cummal cummee as fakideyryn ta frastyl yn sharmanys.<ref name="WHAF">{{cite web |title=Tynwald Hill and Environs: Norse Assembly Sites |publisher=Rheynn Cultoor, Meanyn as Spoyrt |format=PDF |url=https://assets.publishing.service.gov.uk/media/5a79ac8f40f0b642860d9e16/WHAF_Tynwald_Hill_and_environs_Norse_assembly_sites.pdf |access-date=2 Luanistyn 2026}}</ref>
==Ennym as bun-ocklaght==
'Sy Ghaelg, she ''Cronk Keeill Eoin'' ennym tradishoonagh y chruink.<ref name="Kneen">{{cite book|last=Kneen|first=J. J.|author-link=J. J. Kneen|title=The Place-Names of the Isle of Man
|publisher=[[Yn Çheshaght Ghailckagh]]|year=1925}}</ref> Ta geillyn shenndeeagh recortyssey lhiegganyn elley jeh'n ennym shen, lheid as ''Cronk Keeillown'' as ''Cronk-y-Keeill-Eoin'', lettraghyn ny shinney jeh'n voayl-ennym cheddin.<ref name="ManxSoc">{{cite book|title=Manx Society Volume XVI|publisher=Yn Çheshaght Ghailckagh|year=1874 }}</ref>
Ta'n ennym ''Cronk Keeill Eoin'' freayl boayl-ennym agglishagh bunneydagh y voayl. Ta'n bun-ockle ''[[keeill (hradishoonagh)|keeill]]'' çheet er cabbal Chreestee leah as t'eh er credjal dy vel yn ennym çheet er cabbal v'er ny chasherickey da [[Eoin Bashtey]] as v'ayn roish my row [[Cabbal Reeoil Eoin Bashtey]] noa-emshiragh er ny hroggal.<ref name="keeill">{{cite web |title=The Royal Chapel of St. John the Baptist, St John's, Isle of Man |website=Isle of Man Family History Society Journal |url=https://www.isle-of-man.com/manxnotebook/famhist/v09n3.htm |access-date=2 Luanistyn 2026}}</ref>
Ta'n ennym Baarlagh—''Tynwald Hill''—çheet as y chiangley t'ayn eddyr [[Tinvaal]] as y cronk. Ta ny focklyn ''Tynwald'' as ''Tinvaal'' çheet ass ''þingvǫllr'' y Çhenn Loghlinish, ta çhyndaait dy mennick myr "magher çhymsee", "magher quaiylagh" ny "boayl çhymsee yn whaiyl", as t'eh kianglt rish enmyn elley lheid as ''Þingvellir'' yn Eeslynnish as ''Tingvoll'' y Norlynnish.<ref name="TynwaldName">{{citation|title=Tynwald|publisher=Ard-whaiyl Tinvaal |url=https://tynwald.org.im/|access-date=2 Luanistyn 2026 |language=Baarle}}</ref>
==Tuarastyl==
She crongan ooirrey aggagh eh Cronk Keeill Eoin as t'eh soit ayns Balley Keeill Eoin, ayns çheer-yalloo jesh-chliaghtagh shenndeeagh faggys da [[Cabbal Reeoil Eoin Bashtey]] as [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]. Ta'n crongan hene jeant ass kiare straneyn kiarkylagh ta girree dys ardan ec y vullagh. T'eh mysh {{cvt|12|ft}} er yrjid, as ta'n strane s'inshley mysh {{cvt|75–80|ft}} er crantessen.<ref name="WHAF"/><ref name="Kermode">{{cite book |last=Kermode |first=P. M. C. |title=Illustrated Notes on Manx Antiquities |publisher=Yn Çheshaght Ghailckagh |year=1904}}</ref>
Yn ardan heose jeh'n chrongan, t'eh croo yn ard-voayl jesh-chliaghtagh jeh'n chronk. Car sharmanys bleinoil [[Laa Tinvaal]], ta [[Çhiarn Vannin]], oikee gurneilagh Tinvaal, as oikee elley shassoo er y vullagh choud's ta leighyn v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay 'sy Vaarle as 'sy Ghaelg.<ref name="Tynwald"/> Ny straneyn elley mygeayrt, t'ad kiarail ynnydyn da commee, oikee, as fakideryn ta frastyl er y çharmanys.<ref name="WHAF"/>
Ta'n laare cummal amphitheater faggys da mean yn ellan, as ta'n cronk soit er ard-chlaare gheinee as hillee eddyr clashyn ushtey 'sy twoaie as 'sy jiass.<ref name="WHAF"/> Y chabbal t'ayn jiu, v'eh er ny hroggal eddyr 1847 as 1849 ayns ynnyd strughtooryn agglishagh ny s'leaie er y laare as t'eh kianglt rish y chrongan lesh bollagh cosheeaghtagh.<ref name="WHAF"/>
Cha nel date, cor, ny tuittymys troggalys y chrongan mie er enney. Dy mennick, t'eh coontit myr cleiy troggit, agh cha nel shanndaaaleeyn ny screeudeyryn shennaghys shickyr cre'n mooad ta'n cummey roie soilshaghey strughtoor bunneydagh ny kiartaghey ny s'anmee da'n stughtoor bunneydagh hene. Ta currym as caslys jesh-chliaghtagh y chruink er ny ve freilt as ceaghlit harrish ny bleeantyn.<ref name="WHAF"/>
Dy tradishoonagh, ta'n crongan kianglt rish corys quaiyllyn fo'n aer. Ga dy vel y sharmanys noa-emshiragh taghyrtyn dagh 5oo Jerrey Souree (ny yn chied Jelhune ny yei tra ta'n 5oo tuittym er Jedoonee), ta'n cronk foast myr boayl cowreydagh da kinjaght tradishoonyn slattyssagh Tinvaal.<ref name="Tynwald"/>
==Shennaghys==
===Bun===
Cha nel fys ain cuin va Cronk Keeill Eoin er ny hroggal. Ga dy vel y crongan er ny chochiangley shennaghys mean-eashagh as Loghlinagh Vannin, cha nel feanish henndaaleeagh er ny chur sheese date bun y chrongan.<ref name="WHAF"/>
Ansherbee, ta fys ain dy row laaraghyn cosoylagh ry-gheddyn buill elley feie'n theihll Loghlinagh, agh cha nel shin shickyr cre'm mooad dy vel Cronk Keeill Eoin freayl strughtoor mean-eashagh leah.<ref name="WHAF"/>
===Ymmyd myr boayl çhymsee===
Ta'n chied tuarastyl screeuit ta fys ain er immeeaghtyn quaiyllagh er Cronk Keeill Eoin ry-gheddyn ayns leighyn cadjinchliaghtagh Manninagh veih'n vlein 1417. Ta ny leighyn shen cur sheese er Çhiarn Vannin as eh ny hoie er y chronk car fogrey magh ny leighyn, marish oikee as ynnydee yn phobble ayn.<ref name="MLB-1417">{{cite web |title=The 1417 Manx Law Book |url=https://tynwald.org.im/ |website=Tinvaal|publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026}}</ref>
Ta'n cronk foast ymmydit jiu son fogrey magh Slattyssyn Tinvaal er Laa'l Eoin.<ref name="Tynwald"/>
==Beeal-arrish==
Ta tradishoon gra dy row Cronk Keeill Eoin er ny hroggal ass ooir veih dagh fer jeh ny shiaght skeeraghyn jeig ayns Mannin. Ta'n skeeal shoh cochianglt rish smooinaghtyn er unnaneys yn ellan, agh cha nel feanish erbee ayn dy row yn crongan er ny hroggal 'syn aght shen.<ref name="Jenkinson">{{cite book |last=Jenkinson |first=Henry Irwin |title=A Practical Guide to the Isle of Man |year=1874 |publisher=Edward Stanford |url=https://www.isle-of-man.com/manxnotebook/fulltext/jk1874/p035.htm |page=35}}</ref>
Ta beeal-arrish elley bentyn rish y chrongan ginsh skeeal bentyn rish ushagyn as ad çhaglym er y chronk dy reih ree eddyr oc hene. Rere'n skeeal, ren ny h-ushagyn co-streeu noi y cheilley as ad geearee roshtyn yn yrjid smoo veih'n chronk. Ren yn urley smooinaghtyn dy row yn varriaght echey agh, ec y thootçhey s'jerree hea drean ass aghlish skiaan yn urley as dettyl eh ny s'yrjey na'n urley as, myr shen, v'eh reiht myr ree ny h-ushagyn.<ref name="birds">{{cite web |title=The mysteries of Tynwald Hill - where politics and folklore meet |first=James |last=Franklin |website=Culture Vannin |date=21 Averil 2024 |url=https://www.iomtoday.co.im/news/entertainment/the-mysteries-of-tynwald-hill-where-politics-and-folklore-meet-679504 |access-date=2 Luanistyn 2026}}</ref>
==Jeeagh er neesht==
* [[Tinvaal]]
* [[Laa Tinvaal|Laa Tinvaal (Laa'l Eoin)]]
* [[Cabbal Reeoil Eoin Bashtey]]
* [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]
==Imraaghyn==
{{reflist}}
==Kianglaghyn magh==
{{commonscat|Tynwald Hill|Cronk Keeill Eoin}}
* [https://tynwald.org.im/ Tinvaal] {{in lang-en}}
* [https://manxnationalheritage.im/visit-2/about-the-isle-of-man/tynwald/ Cronk Keeill Eoin] ec [[Eiraght Ashoonagh Vannin]] {{in lang|en}}
{{coord|54.203750|N|04.642352|W|type:landmark|display=title}}
[[Ronney:Tinvaal]]
[[Ronney:Laaraghyn shenndeeagh ayns Mannin]]
[[Ronney:Balley Keeill Eoin]]
[[Ronney:Lhiaghtyn as cooinaghtaneyn ayns Mannin]]
cx85l9rtego6rm4r3o38wm3u6o5p05s
387220
387219
2026-08-03T00:54:00Z
MacTire02
219
piob
387220
wikitext
text/x-wiki
[[Coadan:Tynwald Hill.jpg|300px|thumb|Cronk Keeill Eoin ayns Balley Keeill Eoin]]
She crongan laue-jeant ayns [[Balley Keeill Eoin]], [[Mannin]], eh '''Cronk Keeill Eoin''' ({{lang-en|Tynwald Hill}}). T'eh ymmydit myr boayl çhymsee [[Tinvaal]], ard-whaiyl Vannin. She soiaghey yn çharmanys bleinoil [[Laa Tinvaal|Laa Tinvaal (Laa'l Eoin)]] t'eh, ta taghyrtyn er y 5oo Jerrey Souree dagh blein ny er y chied Jelune ny yei my ta'n 5oo Jerrey Souree tuittym er Jedoonee. Ec y çharmanys shen, ta slattyssyn Tinvaal v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay ayns Baarle as ayns Gaelg.<ref name="Tynwald">{{cite web |title=Tynwald Hill |url=https://tynwald.org.im/ |website=Tinvaal |publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026 |lang=Baarle}}</ref>
Ta'n cronk soit faggys da [[Cabbal Reeoil Eoin Bashtey]] as t'eh jeant ass crongan aggagh marish ardan mullee ec y vaare. Yn ardan heose, t'eh ymmydit lesh oikee car immeeaghtyn Laa Tinvaal, choud's ta ny straneyn mygeayrt cummal cummee as fakideyryn ta frastyl yn sharmanys.<ref name="WHAF">{{cite web |title=Tynwald Hill and Environs: Norse Assembly Sites |publisher=Rheynn Cultoor, Meanyn as Spoyrt |format=PDF |url=https://assets.publishing.service.gov.uk/media/5a79ac8f40f0b642860d9e16/WHAF_Tynwald_Hill_and_environs_Norse_assembly_sites.pdf |access-date=2 Luanistyn 2026}}</ref>
==Ennym as bun-ocklaght==
'Sy Ghaelg, she ''Cronk Keeill Eoin'' ennym tradishoonagh y chruink.<ref name="Kneen">{{cite book|last=Kneen|first=J. J.|author-link=J. J. Kneen|title=The Place-Names of the Isle of Man
|publisher=[[Yn Çheshaght Ghailckagh]]|year=1925}}</ref> Ta geillyn shenndeeagh recortyssey lhiegganyn elley jeh'n ennym shen, lheid as ''Cronk Keeillown'' as ''Cronk-y-Keeill-Eoin'', lettraghyn ny shinney jeh'n voayl-ennym cheddin.<ref name="ManxSoc">{{cite book|title=Manx Society Volume XVI|publisher=Yn Çheshaght Ghailckagh|year=1874 }}</ref>
Ta'n ennym ''Cronk Keeill Eoin'' freayl boayl-ennym agglishagh bunneydagh y voayl. Ta'n bun-ockle ''[[keeill (hradishoonagh)|keeill]]'' çheet er cabbal Chreestee leah as t'eh er credjal dy vel yn ennym çheet er cabbal v'er ny chasherickey da [[Eoin Bashtey]] as v'ayn roish my row [[Cabbal Reeoil Eoin Bashtey]] noa-emshiragh er ny hroggal.<ref name="keeill">{{cite web |title=The Royal Chapel of St. John the Baptist, St John's, Isle of Man |website=Isle of Man Family History Society Journal |url=https://www.isle-of-man.com/manxnotebook/famhist/v09n3.htm |access-date=2 Luanistyn 2026}}</ref>
Ta'n ennym Baarlagh—''Tynwald Hill''—çheet as y chiangley t'ayn eddyr [[Tinvaal]] as y cronk. Ta ny focklyn ''Tynwald'' as ''Tinvaal'' çheet ass ''þingvǫllr'' y Çhenn Loghlinish, ta çhyndaait dy mennick myr "magher çhymsee", "magher quaiylagh" ny "boayl çhymsee yn whaiyl", as t'eh kianglt rish enmyn elley lheid as ''Þingvellir'' yn Eeslynnish as ''Tingvoll'' y Norlynnish.<ref name="TynwaldName">{{citation|title=Tynwald|publisher=Ard-whaiyl Tinvaal |url=https://tynwald.org.im/|access-date=2 Luanistyn 2026 |language=Baarle}}</ref>
==Tuarastyl==
She crongan ooirrey aggagh eh Cronk Keeill Eoin as t'eh soit ayns Balley Keeill Eoin, ayns çheer-yalloo jesh-chliaghtagh shenndeeagh faggys da [[Cabbal Reeoil Eoin Bashtey]] as [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]. Ta'n crongan hene jeant ass kiare straneyn kiarkylagh ta girree dys ardan ec y vullagh. T'eh mysh {{cvt|12|ft}} er yrjid, as ta'n strane s'inshley mysh {{cvt|75–80|ft}} er crantessen.<ref name="WHAF"/><ref name="Kermode">{{cite book |last=Kermode |first=P. M. C. |title=Illustrated Notes on Manx Antiquities |publisher=Yn Çheshaght Ghailckagh |year=1904}}</ref>
Yn ardan heose jeh'n chrongan, t'eh croo yn ard-voayl jesh-chliaghtagh jeh'n chronk. Car sharmanys bleinoil [[Laa Tinvaal]], ta [[Çhiarn Vannin]], oikee gurneilagh Tinvaal, as oikee elley shassoo er y vullagh choud's ta leighyn v'er ny ghoaill rish 'sy vlein hie shagh goll er fogrey magh roish y theay 'sy Vaarle as 'sy Ghaelg.<ref name="Tynwald"/> Ny straneyn elley mygeayrt, t'ad kiarail ynnydyn da commee, oikee, as fakideryn ta frastyl er y çharmanys.<ref name="WHAF"/>
Ta'n laare cummal amphitheater faggys da mean yn ellan, as ta'n cronk soit er ard-chlaare gheinee as hillee eddyr clashyn ushtey 'sy twoaie as 'sy jiass.<ref name="WHAF"/> Y chabbal t'ayn jiu, v'eh er ny hroggal eddyr 1847 as 1849 ayns ynnyd strughtooryn agglishagh ny s'leaie er y laare as t'eh kianglt rish y chrongan lesh bollagh cosheeaghtagh.<ref name="WHAF"/>
Cha nel date, cor, ny tuittymys troggalys y chrongan mie er enney. Dy mennick, t'eh coontit myr cleiy troggit, agh cha nel shanndaaaleeyn ny screeudeyryn shennaghys shickyr cre'n mooad ta'n cummey roie soilshaghey strughtoor bunneydagh ny kiartaghey ny s'anmee da'n stughtoor bunneydagh hene. Ta currym as caslys jesh-chliaghtagh y chruink er ny ve freilt as ceaghlit harrish ny bleeantyn.<ref name="WHAF"/>
Dy tradishoonagh, ta'n crongan kianglt rish corys quaiyllyn fo'n aer. Ga dy vel y sharmanys noa-emshiragh taghyrtyn dagh 5oo Jerrey Souree (ny yn chied Jelhune ny yei tra ta'n 5oo tuittym er Jedoonee), ta'n cronk foast myr boayl cowreydagh da kinjaght tradishoonyn slattyssagh Tinvaal.<ref name="Tynwald"/>
==Shennaghys==
===Bun===
Cha nel fys ain cuin va Cronk Keeill Eoin er ny hroggal. Ga dy vel y crongan er ny chochiangley shennaghys mean-eashagh as Loghlinagh Vannin, cha nel feanish henndaaleeagh er ny chur sheese date bun y chrongan.<ref name="WHAF"/>
Ansherbee, ta fys ain dy row laaraghyn cosoylagh ry-gheddyn buill elley feie'n theihll Loghlinagh, agh cha nel shin shickyr cre'm mooad dy vel Cronk Keeill Eoin freayl strughtoor mean-eashagh leah.<ref name="WHAF"/>
===Ymmyd myr boayl çhymsee===
Ta'n chied tuarastyl screeuit ta fys ain er immeeaghtyn quaiyllagh er Cronk Keeill Eoin ry-gheddyn ayns leighyn cadjinchliaghtagh Manninagh veih'n vlein 1417. Ta ny leighyn shen cur sheese er Çhiarn Vannin as eh ny hoie er y chronk car fogrey magh ny leighyn, marish oikee as ynnydee yn phobble ayn.<ref name="MLB-1417">{{cite web |title=The 1417 Manx Law Book |url=https://tynwald.org.im/ |website=Tinvaal|publisher=Ard-whaiyl Tinvaal |access-date=2 Luanistyn 2026}}</ref>
Ta'n cronk foast ymmydit jiu son fogrey magh Slattyssyn Tinvaal er Laa'l Eoin.<ref name="Tynwald"/>
==Beeal-arrish==
Ta tradishoon gra dy row Cronk Keeill Eoin er ny hroggal ass ooir veih dagh fer jeh ny shiaght skeeraghyn jeig ayns Mannin. Ta'n skeeal shoh cochianglt rish smooinaghtyn er unnaneys yn ellan, agh cha nel feanish erbee ayn dy row yn crongan er ny hroggal 'syn aght shen.<ref name="Jenkinson">{{cite book |last=Jenkinson |first=Henry Irwin |title=A Practical Guide to the Isle of Man |year=1874 |publisher=Edward Stanford |url=https://www.isle-of-man.com/manxnotebook/fulltext/jk1874/p035.htm |page=35}}</ref>
Ta beeal-arrish elley bentyn rish y chrongan ginsh skeeal bentyn rish ushagyn as ad çhaglym er y chronk dy reih ree eddyr oc hene. Rere'n skeeal, ren ny h-ushagyn co-streeu noi y cheilley as ad geearee roshtyn yn yrjid smoo veih'n chronk. Ren yn urley smooinaghtyn dy row yn varriaght echey agh, ec y thootçhey s'jerree hea drean ass aghlish skiaan yn urley as dettyl eh ny s'yrjey na'n urley as, myr shen, v'eh reiht myr ree ny h-ushagyn.<ref name="birds">{{cite web |title=The mysteries of Tynwald Hill - where politics and folklore meet |first=James |last=Franklin |website=Culture Vannin |date=21 Averil 2024 |url=https://www.iomtoday.co.im/news/entertainment/the-mysteries-of-tynwald-hill-where-politics-and-folklore-meet-679504 |access-date=2 Luanistyn 2026}}</ref>
==Jeeagh er neesht==
* [[Tinvaal]]
* [[Laa Tinvaal|Laa Tinvaal (Laa'l Eoin)]]
* [[Cabbal Reeoil Eoin Bashtey]]
* [[Pairk Ashoonagh as Garey Biljagh Tinvaal]]
==Imraaghyn==
{{reflist}}
==Kianglaghyn magh==
{{commonscat|Tynwald Hill|Cronk Keeill Eoin}}
* [https://tynwald.org.im/ Tinvaal] {{in lang|en}}
* [https://manxnationalheritage.im/visit-2/about-the-isle-of-man/tynwald/ Cronk Keeill Eoin] ec [[Eiraght Ashoonagh Vannin]] {{in lang|en}}
{{coord|54.203750|N|04.642352|W|type:landmark|display=title}}
[[Ronney:Tinvaal]]
[[Ronney:Laaraghyn shenndeeagh ayns Mannin]]
[[Ronney:Balley Keeill Eoin]]
[[Ronney:Lhiaghtyn as cooinaghtaneyn ayns Mannin]]
szcp1gjmkuyp84hzdu0vqtrd034ord2
Ronney:Shennaghys Vannin
14
4196
387253
363657
2026-08-03T02:15:02Z
MacTire02
219
ronnaghyn elley
387253
wikitext
text/x-wiki
{{cat main}}
{{commonscat|History of the Isle of Man|Shennaghys Vannin}}
[[Ronney:Mannin]]
[[Ronney:Shennaghys ny h-Ellanyn Goaldagh| Vannin]]
[[Ronney:Shennaghys rere croghane y Reeriaght Unnaneysit| Vannin]]
[[Ronney:Shennaghys rere ellan|Vannin]]
[[Ronney:Shennaghys yn Oarpey rere croghane|Vannin]]
mvy33cnljdv5dq5ex1pmcwm1e1y234k
Resooney ymmydeyr:Revi C.
3
19239
387208
387203
2026-08-02T14:21:47Z
Pathoschild
195
global user pages ([[m:Synchbot|requested by Revi C.]])
387208
wikitext
text/x-wiki
__NOINDEX__<div class="mw-content-ltr" lang="en" dir="ltr">[[File:Revi logo (pink).png|thumb|center|<span style="color:red">PLEASE DO NOT LEAVE MESSAGE HERE!</span>]]
'''<span style="color:red"> BEFORE YOU BLOCK MY ACCOUNT: IF MY EDIT SUMMARY INCLUDE PREFIX </span>''(Script)''<span style="color:red">, DON'T BLOCK ME, JUST TELL ME TO SLOW DOWN AT COMMONS' TALK PAGE. IT IS AN AUTOMATED SCRIPT BEING USED ON COMMONS TO MOVE FILES.</span>'''
Instead, please leave your message following site:
<br />
[[File:Wikidata-logo-en.svg|45px|link=d:User talk:Revi C.]] [[d:User talk:Revi C.]] for Wikidata (Interwiki links) stuff <!--(I am {{int:Group-sysop}} there)-->
<br />
[[File:Commons-logo.svg|45px|link=commons:User talk:Revi C.]] [[commons:User talk:Revi C.]] for renaming stuff or [[User:CommonsDelinker|CommonsDelinker]] action (I am {{int:Group-sysop}} there)
<br />
[[File:Wikimedia Community Logo optimized.svg|45px|link=m:User talk:Revi C.]] [[meta:User talk:Revi C.]] for other stuff (User right notification, revert message, etc...)
Messages left on this page may be reverted or moved without any response.</div>
5b8qtz4dnjnrhc9ts3mku14m3gujbq8
Clowan:Blein ennymagh
10
31247
387222
382965
2026-08-03T01:01:18Z
MacTire02
219
++
387222
wikitext
text/x-wiki
{{#invoke:String|match|{{{page|{{#invoke:String|match|{{PAGENAME}}|[^:]+$}}}}}|(%d+) RC|nomatch={{#invoke:String|match|{{{page|{{#invoke:String|match|{{PAGENAME}}|[^:]+$}}}}}|(%d+)|nomatch={{{2|{{{nomatch|}}}}}}}}}}<noinclude>
{{documentation}}
</noinclude>
gktgw4p75j25bhnm6288y2h0abny08a
387223
387222
2026-08-03T01:02:48Z
MacTire02
219
Undid revision [[Special:Diff/387222|387222]] by [[Special:Contributions/MacTire02|MacTire02]] ([[User talk:MacTire02|talk]])
387223
wikitext
text/x-wiki
{{#invoke:String|match|{{{page|{{#invoke:String|match|{{PAGENAME}}|[^:]+$}}}}}|(%d+) RC|nomatch={{#invoke:String|match|{{{page|{{#invoke:String|match|{{PAGENAME}}|[^:]+$}}}}}|(%d+)$|nomatch={{{2|{{{nomatch|}}}}}}}}}}<noinclude>
{{documentation}}
</noinclude>
e7n4j0x80lz9np4vibpdoc1t2t0bhvw
387224
387223
2026-08-03T01:06:06Z
MacTire02
219
++
387224
wikitext
text/x-wiki
{{#invoke:String|match|{{{page|{{#invoke:String|match|{{PAGENAME}}|[^:]+$}}}}}|[bv]lein (%d+) RC|nomatch={{#invoke:String|match|{{{page|{{#invoke:String|match|{{PAGENAME}}|[^:]+$}}}}}|[bv]lein (%d+)|nomatch={{{2|{{{nomatch|}}}}}}}}}}<noinclude>
{{documentation}}
</noinclude>
inp5c6bpqqc4btgmlj2bgj0eklmeasn
387227
387224
2026-08-03T01:10:52Z
MacTire02
219
++
387227
wikitext
text/x-wiki
{{#invoke:String|match|{{{page|{{#invoke:String|match|{{PAGENAME}}|[^:]+$}}}}}|(%d%d%d+) RC|nomatch={{#invoke:String|match|{{{page|{{#invoke:String|match|{{PAGENAME}}|[^:]+$}}}}}|(%d%d%d+)|nomatch={{{2|{{{nomatch|}}}}}}}}}}<noinclude>
{{documentation}}
</noinclude>
p7xlo9hcufjf7u9v6j7om8wdnbx3ipk
Ronney:Mannin ayns ny 1990yn
14
33016
387298
380606
2026-08-03T11:50:21Z
MacTire02
219
ronney elley
387298
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:1990yn rere çheer]]
[[Ronney:Mannin 'sy 20oo eash| ]]
[[Ronney:Yn Oarpey ayns ny 1990yn]]
[[Ronney:Mannin rere jeihaght| ]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit ayns ny 1990yn]]
isxsthm5r0dd0py4i0xj4lu9nlgkoeu
Ronney:Mannin ayns ny 2000yn
14
33017
387296
380586
2026-08-03T11:49:32Z
MacTire02
219
ronney elley
387296
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:2000yn rere çheer]]
[[Ronney:Mannin 'sy 21d eash| ]]
[[Ronney:Yn Oarpey ayns ny 2000yn]]
[[Ronney:Mannin rere jeihaght| ]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit ayns ny 2010yn]]
m3xr2q81qotqmlxkeaxndp5g24tc5dq
387297
387296
2026-08-03T11:49:49Z
MacTire02
219
ronney elley
387297
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:2000yn rere çheer]]
[[Ronney:Mannin 'sy 21d eash| ]]
[[Ronney:Yn Oarpey ayns ny 2000yn]]
[[Ronney:Mannin rere jeihaght| ]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit ayns ny 2000yn]]
swnjaixh2h1oot0zf30fsclphsxmk2d
Ronney:Mannin ayns ny 2010yn
14
33018
387280
380588
2026-08-03T03:07:14Z
MacTire02
219
ronney elley
387280
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:2010yn rere çheer]]
[[Ronney:Mannin 'sy 21d eash| ]]
[[Ronney:Yn Oarpey ayns ny 2010yn]]
[[Ronney:Mannin rere jeihaght| ]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit ayns ny 2010yn]]
eenp2drbqogzvona5yije5zgv2j6ykd
Ronney:Mannin ayns ny 2020yn
14
33019
387271
380589
2026-08-03T02:48:17Z
MacTire02
219
ronney noa
387271
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:2020yn rere çheer]]
[[Ronney:Mannin 'sy 21d eash| ]]
[[Ronney:Yn Oarpey ayns ny 2020yn]]
[[Ronney:Mannin rere jeihaght| 2020]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit ayns ny 2020yn]]
mlx63l2sg6r6ns4su1n14d72irxcfdv
Ronney:Mannin rere jeihaght
14
33020
387279
350655
2026-08-03T03:06:42Z
MacTire02
219
+ronney
387279
wikitext
text/x-wiki
[[Ronney:Jeihaghtyn rere çheer]]
[[Ronney:Yn Oarpey rere jeihaght]]
[[Ronney:Shennaghys Vannin rere earish| 2]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit rere jeihaght]]
nmexsz83iiyadaro8ut2atxk7xkjanx
Ronney:Mannin 'sy 21d eash
14
33021
387267
380570
2026-08-03T02:37:15Z
MacTire02
219
ronney elley
387267
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:21d eash rere çheer]]
[[Ronney:Mannin rere eash|21]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 21d eash]]
[[Ronney:Yn Oarpey 'sy 21d eash]]
33p4baqc7dxjsk6o3l77zmwpcdrbxls
Ronney:Yn Ookraan 'sy 21d eash rere blein
14
33026
387294
380454
2026-08-03T03:25:24Z
MacTire02
219
ronnaghyn elley
387294
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:Yn Ookraan 'sy 21d eash| Blein]]
[[Ronney:Yn Ookraan rere blein|21]]
[[Ronney:Yn Oarpey 'sy 21d eash rere blein|Ookraan]]
[[Ronney:Bleeantyn y 21d eash rere çheer|Ookraan]]
2jhprwlrr3mwnsr4bv8cjpmztnw6af3
Resooney ymmydeyr:-revi
3
36508
387210
347124
2026-08-02T15:35:13Z
Pathoschild
195
global user pages ([[m:Synchbot|requested by Revi C.]])
387210
wikitext
text/x-wiki
#REDIRECT [[User talk:Revi C.]]
o9z79lcc9a9pfmqmrod5w3eyk4q9i0o
Ymmydeyr:-revi
2
36509
387209
347125
2026-08-02T14:55:43Z
Pathoschild
195
global user pages ([[m:Synchbot|requested by Revi C.]])
387209
wikitext
text/x-wiki
#REDIRECT [[User:Revi C.]]
88g0cv17whfgb1wkeh281mptujwtlut
Module:Category series navigation
828
36546
387228
385550
2026-08-03T01:14:43Z
MacTire02
219
-ronney nagh lhisagh ve ayn
387228
Scribunto
text/plain
require('strict')
local p = {}
local horizontal = require('Module:List').horizontal
local rtarget = require('Module:Resolve category redirect').rtarget
--[[==========================================================================]]
--[[ Globals ]]
--[[==========================================================================]]
local currtitle = mw.title.getCurrentTitle()
local nexistingcats = 0
local errors = ''
local testcasecolon = ''
local testcases = string.match(currtitle.subpageText, '^testcases')
if testcases then testcasecolon = ':' end
local navborder = true
local followRs = true
local skipgaps = false
local skipgaps_limit = 50
local term_limit = 10
local hgap_limit = 6
local ygap_limit = 5
local listall = false
local tlistall = {}
local tlistallbwd = {}
local tlistallfwd = {}
local ttrackingcats = { --when reindexing, Ctrl+H 'trackcat(13,' & 'ttrackingcats[16]'
'', -- [1] placeholder for [[Category:Category series navigation using cat parameter]]
'', -- [2] placeholder for [[Category:Category series navigation using testcase parameter]]
'', -- [3] placeholder for [[Category:Category series navigation using unknown parameter]]
'', -- [4] placeholder for [[Category:Category series navigation range not using en dash]]
'', -- [5] placeholder for [[Category:Category series navigation range abbreviated (MOS)]]
'', -- [6] placeholder for [[Category:Category series navigation range redirected (base change)]]
'', -- [7] placeholder for [[Category:Category series navigation range redirected (var change)]]
'', -- [8] placeholder for [[Category:Category series navigation range redirected (end)]]
'', -- [9] placeholder for [[Category:Category series navigation range redirected (MOS)]]
'', --[10] placeholder for [[Category:Category series navigation range redirected (other)]]
'', --[11] placeholder for [[Category:Category series navigation range gaps]]
'', --[12] placeholder for [[Category:Category series navigation range irregular]]
'', --[13] placeholder for [[Category:Category series navigation range irregular, 0-length]]
'', --[14] placeholder for [[Category:Category series navigation range ends (present)]]
'', --[15] placeholder for [[Category:Category series navigation range ends (blank, MOS)]]
'', --[16] placeholder for [[Category:Category series navigation isolated]]
'', --[17] placeholder for [[Category:Category series navigation default season gap size]]
'', --[18] placeholder for [[Category:Category series navigation decade redirected]]
'', --[19] placeholder for [[Category:Category series navigation year redirected (base change)]]
'', --[20] placeholder for [[Category:Category series navigation year redirected (var change)]]
'', --[21] placeholder for [[Category:Category series navigation year redirected (other)]]
'', --[22] placeholder for [[Category:Category series navigation roman numeral redirected]]
'', --[23] placeholder for [[Category:Category series navigation nordinal redirected]]
'', --[24] placeholder for [[Category:Category series navigation wordinal redirected]]
'', --[25] placeholder for [[Category:Category series navigation TV season redirected]]
'', --[26] placeholder for [[Category:Category series navigation using skip-gaps parameter]]
'', --[27] placeholder for [[Category:Category series navigation blein as reayn]]
'', --[28] placeholder for [[Category:Category series navigation blein as jeihaght]]
'', --[29] placeholder for [[Category:Category series navigation jeihaght as eash]]
'', --[30] placeholder for [[Category:Category series navigation in mainspace]]
'', --[31] placeholder for [[Category:Category series navigation redirection error]]
}
local avoidself = (not string.match(currtitle.text, 'Category series navigation with') and
not string.match(currtitle.text, 'Category series navigation.*/doc') and
not string.match(currtitle.text, 'Category series navigation.*/sandbox') and
currtitle.text ~= 'Category series navigation' and
currtitle.nsText:gsub('_', ' ') ~= 'User talk' and -- [[phab:T369784]]
currtitle.nsText:gsub('_', ' ') ~= 'Template talk' and
(currtitle.nsText ~= 'Template' or testcases)) --avoid nested transclusion errors (i.e. {{Infilmdecade}})
--[[==========================================================================]]
--[[ Utility & category functions ]]
--[[==========================================================================]]
--Determine if a category exists (in a function for easier localization).
local function catexists( title )
return mw.title.new( title, 'Category' ).exists
end
--Error message handling.
function p.errorclass( msg )
return mw.text.tag( 'span', {class='error mw-ext-cite-error'}, '<b>Error!</b> '..string.gsub(msg, '&#', '&#') )
end
--Failure handling.
function p.failedcat( errors, sortkey )
if avoidself then
return (errors or '')..'***Category series navigation failed to generate navbox***'..
'[['..testcasecolon..'Category:Category series navigation failed to generate navbox|'..(sortkey or 'O')..']]\n'
end
return ''
end
--Tracking cat handling.
-- key: 15 (when reindexing ttrackingcats{}, Ctrl+H 'trackcat(13,' & 'ttrackingcats[16]')
-- cat: 'Category series navigation isolated'; '' to remove
--Used by main, all nav_*(), & several utility functions.
local function trackcat( key, cat )
if avoidself and key and cat then
if cat ~= '' then
ttrackingcats[key] = '[['..testcasecolon..'Category:'..cat..']]'
else
ttrackingcats[key] = ''
end
end
return
end
--Check for unknown parameters.
--Used by main only.
local function checkforunknownparams( tbl )
local knownparams = { --parameter whitelist
['min'] = 'min',
['max'] = 'max',
['cat'] = 'cat',
['show'] = 'show',
['testcase'] = 'testcase',
['testcasegap'] = 'testcasegap',
['skip-gaps'] = 'skip-gaps',
['list-all-links'] = 'list-all-links',
['follow-redirects'] = 'follow-redirects',
}
for k, _ in pairs (tbl) do
if knownparams[k] == nil then
trackcat(3, 'Category series navigation using unknown parameter')
break
end
end
end
--Check for nav_*() navigational isolation (not necessarily an error).
--Used by all nav_*().
local function isolatedcat()
if nexistingcats == 0 then
trackcat(16, 'Category series navigation isolated')
end
end
--Similar to {{LinkCatIfExists2}}: make a piped link to a category, if it exists;
--if it doesn't exist, just display the greyed link title without linking.
--Follows {{Category redirect}}s.
--Returns {
-- ['cat'] = cat,
-- ['catexists'] = true,
-- ['rtarget'] = <#R target>,
-- ['navelement'] = <#R target navelement>,
-- ['displaytext'] = displaytext,
-- }
-- if #R followed;
--returns {
-- ['cat'] = cat,
-- ['catexists'] = <true|false>,
-- ['rtarget'] = nil,
-- ['navelement'] = <cat navelement>,
-- ['displaytext'] = displaytext,
-- }
-- otherwise.
--Used by all nav_*().
local function catlinkfollowr( frame, cat, displaytext, displayend, listoverride )
cat = mw.text.trim(cat or '')
displaytext = mw.text.trim(displaytext or '')
displayend = displayend or false --bool flag to override displaytext IIF the cat/target is terminal (e.g. "2021–present" or "2021–")
local disp = cat
if displaytext ~= '' then --use 'displaytext' parameter if present
disp = mw.ustring.gsub(displaytext, '%s+%(.+$', ''); --strip any trailing disambiguator
end
local link, nilorR
local exists = catexists(cat)
if exists then
nexistingcats = nexistingcats + 1
if followRs then
local R = rtarget(cat, frame) --find & follow #R
if R ~= cat then --#R followed
nilorR = R
end
if displayend then
local y, hyph, ending = mw.ustring.match(R, '^.-(%d+)([–-])(.*)$')
if ending == 'present' then
disp = y..hyph..ending
elseif ending == '' then
disp = y..hyph..'<span style="visibility:hidden">'..y..'</span>' --hidden y to match spacing
end
end
link = '[[:Category:'..R..'|'..disp..']]'
else
link = '[[:Category:'..cat..'|'..disp..']]'
end
else
link = '<span class="categorySeriesNavigation-item-inactive">'..disp..'</span>'
end
if listall and listoverride == nil then
if nilorR then --#R followed
table.insert( tlistall, '[[:Category:'..cat..']] → '..'[[:Category:'..nilorR..']] ('..link..')' )
else --no #R
table.insert( tlistall, '[[:Category:'..cat..']] ('..link..')' )
end
end
return {
['cat'] = cat,
['catexists'] = exists,
['rtarget'] = nilorR,
['navelement'] = link,
['displaytext'] = disp,
}
end
--Returns a numbered list of all {{Category redirect}}s followed by catlinkfollowr() -> rtarget().
--For a nav_hyphen() cat, also returns a formatted list of all cats searched for & found, & all loop indices.
--Used by all nav_*().
local function listalllinks()
local nl = '\n# '
local out = ''
if currtitle.nsText == 'Category' then
errors = p.errorclass('The <b><code>|list-all-links=yes</code></b> parameter/utility '..
'should not be saved in category space, only previewed.')
out = p.failedcat(errors, 'Z')
end
local bwd, fwd = '', ''
if tlistallbwd[1] then
bwd = '\n\nbackward search:'..nl..table.concat(tlistallbwd, nl)
end
if tlistallfwd[1] then
fwd = '\n\nforward search:'..nl..table.concat(tlistallfwd, nl)
end
if tlistall[1] then
return out..nl..table.concat(tlistall, nl)..bwd..fwd
else
return out..nl..'No links found!?'..bwd..fwd
end
end
--Returns the difference b/w 2 ints separated by endash|hyphen, nil if error.
--Used by nav_hyphen() only.
local function find_duration( cat )
local from, to = mw.ustring.match(cat, '(%d+)[–-](%d+)')
if from and to then
if to == '00' then return nil end --doesn't follow MOS:DATERANGE
if (#from == 4) and (#to == 2) then --1900-01
to = string.match(from, '(%d%d)%d%d')..to --1900-1901
elseif (#from == 2) and (#to == 4) then -- 01-1902
from = string.match(to, '(%d%d)%d%d')..from --1901-1902
end
return (tonumber(to) - tonumber(from))
end
return 0
end
--Returns the ending of a terminal cat, and sets the appropriate tracking cat, else nil.
--Used by nav_hyphen() only.
local function find_terminaltxt( cat )
local terminaltxt = nil
if mw.ustring.match(cat, '%d+[–-]present$') then
terminaltxt = 'present'
trackcat(14, 'Category series navigation range ends (present)')
elseif mw.ustring.match(cat, '%d+[–-]$') then
terminaltxt = ''
trackcat(15, 'Category series navigation range ends (blank, MOS)')
end
return terminaltxt
end
--Returns an unsigned string of the 1-4 digit decade ending in "0", else nil.
--Used by nav_decade() only.
local function sterilizedec( decade )
if decade == nil or decade == '' then
return nil
end
local dec = string.match(decade, '^[-%+]?(%d?%d?%d?0)$') or
string.match(decade, '^[-%+]?(%d?%d?%d?0)%D')
if dec then
return dec
else
--fix 2-4 digit decade
local decade_fixed234 = string.match(decade, '^[-%+]?(%d%d?%d?)%d$') or
string.match(decade, '^[-%+]?(%d%d?%d?)%d%D')
if decade_fixed234 then
return decade_fixed234..'0'
end
--fix 1-digit decade
local decade_fixed1 = string.match(decade, '^[-%+]?(%d)$') or
string.match(decade, '^[-%+]?(%d)%D')
if decade_fixed1 then
return '0'
end
--unfixable
return nil
end
end
--Check for nav_hyphen default gap size + isolatedcat() (not necessarily an error).
--Used by nav_hyphen() only.
local function defaultgapcat( bool )
if bool and nexistingcats == 0 then
--using "nexistingcats > 0" isn't as useful, since the default gap size obviously worked
trackcat(17, 'Category series navigation default season gap size')
end
end
--12 -> 12h, etc.
--Used by nav_nordinal() & nav_wordinal().
function p.addord( i )
if tonumber(i) then
local s = tostring(i)
local n = tonumber(i)
local ones = n % 10
if ones == 1 then
return s .. 'd'
elseif ones == 2 then
return s .. 'h'
else
return s .. 'oo'
end
end
return i
end
--Returns the properly formatted central nav element.
--Expects an integer i, and a catlinkfollowr() table.
--Used by nav_decade() & nav_ordinal() only.
local function navcenter( i, catlink )
if i == 0 then --center nav element
if navborder == true then
return '<b>'..catlink.displaytext..'</b>'
else
return '<b>'..catlink.navelement..'</b>'
end
else
return catlink.navelement
end
end
--Wrap one or two navs in a <div> with ARIA attributes; add TemplateStyles
--before it. This also aligns the navs in case some floating element (like a
--portal box) breaks their alignment.
--Used by main only.
local function wrap( nav1, nav2 )
local templatestyles = require("Module:TemplateStyles")(
"Module:Category series navigation/styles.css"
)
local prepare = function (nav)
if nav then
nav = '\n'..nav
else
nav = ''
end
return nav
end
return templatestyles..
'<div class="categorySeriesNavigation" role="navigation" aria-label="Range">'..
prepare(nav1)..prepare(nav2)..
'\n</div>'
end
--[[==========================================================================]]
--[[ Formerly separated templates/modules ]]
--[[==========================================================================]]
--[[==========================={{ nav_hyphen }}=============================]]
local function nav_hyphen( frame, start, hyph, finish, firstpart, lastpart, minseas, maxseas, testgap )
--Expects a PAGENAME of the form "Some sequential 2015–16 example cat", where
-- start = 2015
-- hyph = –
-- finish = 16 (sequential years can be abbreviated, but others should be full year, e.g. "2001–2005")
-- firstpart = Some sequential
-- lastpart = example cat
-- minseas = 1800 ('min' starting season shown; optional; defaults to -9999)
-- maxseas = 2000 ('max' starting season shown; optional; defaults to 9999; 2000 will show 2000-01)
-- testgap = 0 (testcasegap parameter for easier testing; optional)
--sterilize start
if string.match(start or '', '^%d%d?%d?%d?$') == nil then --1-4 digits, AD only
local start_fixed = mw.ustring.match(start or '', '^%s*(%d%d?%d?%d?)%D')
if start_fixed then
start = start_fixed
else
errors = p.errorclass('Function nav_hyphen can\'t recognize the number "'..(start or '')..'" '..
'in the first part of the "season" that was passed to it. '..
'For e.g. "2015–16", "2015" is expected via "|2015|–|16|".')
return p.failedcat(errors, 'H')
end
end
local nstart = tonumber(start)
--en dash check
if hyph ~= '–' then
trackcat(4, 'Category series navigation range not using en dash') --nav still processable, but track
end
--sterilize finish & check for weird parents
local tgaps = {} --table of gap sizes found b/w terms { [<gap size found>] = 1 } for -3 <= j <= 3
local tgapsj4 = {} --table of gap sizes found b/w terms { [<gap size found>] = 1 } for j = { -4, 4 }
local ttlens = {} --table of term lengths found w/i terms { [<term length found>] = 1 }
local tirregs = {} --table of ir/regular-term-length cats' "from"s & "to"s found
local regularparent = true
if (finish == -1) or --"Members of the Scottish Parliament 2021–present"
(finish == 0) --"Members of the Scottish Parliament 2021–"
then
regularparent = false
if maxseas == nil or maxseas == '' then
maxseas = start --hide subsequent ranges
end
if finish == -1 then trackcat(14, 'Category series navigation range ends (present)')
else trackcat(15, 'Category series navigation range ends (blank, MOS)') end
elseif (start == finish) and
(ttrackingcats[16] ~= '') --nav_year found isolated; check for surrounding hyphenated terms (e.g. UK MPs 1974)
then
trackcat(16, '') --reset for another check later
trackcat(13, 'Category series navigation range irregular, 0-length')
ttlens[0] = 1 --calc ttlens for std cases below
regularparent = 'isolated'
end
if (string.match(finish or '', '^%d+$') == nil) and
(string.match(finish or '', '^%-%d+$') == nil)
then
local finish_fixed = mw.ustring.match(finish or '', '^%s*(%d%d?%d?%d?)%D')
if finish_fixed then
finish = finish_fixed
else
errors = p.errorclass('Function nav_hyphen can\'t recognize "'..(finish or '')..'" '..
'in the second part of the "season" that was passed to it. '..
'For e.g. "2015–16", "16" is expected via "|2015|–|16|".')
return p.failedcat(errors, 'I')
end
else
if string.len(finish) >= 5 then
errors = p.errorclass('The second part of the season passed to function nav_hyphen should only be four or fewer digits, not "'..(finish or '')..'". '..
'See [[MOS:DATERANGE]] for details.')
return p.failedcat(errors, 'J')
end
end
local nfinish = tonumber(finish)
--save sterilized parent range for easier lookup later
tirregs['from0'] = nstart
tirregs['to0'] = nfinish
--sterilize min/max
local nminseas_default = -9999
local nmaxseas_default = 9999
local nminseas = tonumber(minseas) or nminseas_default --same behavior as nav_year
local nmaxseas = tonumber(maxseas) or nmaxseas_default --same behavior as nav_year
if nminseas > nstart then nminseas = nstart end
if nmaxseas < nstart then nmaxseas = nstart end
local lspace = ' ' --assume a leading space (most common)
local tspace = ' ' --assume a trailing space (most common)
if string.match(firstpart, '%($') then lspace = '' end --DNE for "Madrid city councillors (2007–2011)"-type cats
if string.match(lastpart, '^%)') then tspace = '' end --DNE for "Madrid city councillors (2007–2011)"-type cats
--calculate term length/intRAseason size & finishing year
local t = 1
while t <= term_limit and regularparent == true do
local nish = nstart + t --use switchADBC to flip this sign to work for years BC, if/when the time comes
if (nish == nfinish) or (string.match(nish, '%d?%d$') == finish) then
ttlens[t] = 1
break
end
if t == term_limit then
errors = p.errorclass('Function nav_hyphen can\'t determine a reasonable term length for "'..start..hyph..finish..'".')
return p.failedcat(errors, 'K')
end
t = t + 1
end
--apply MOS:DATERANGE to parent
local lenstart = string.len(start)
local lenfinish = string.len(finish)
if lenstart == 4 and regularparent == true then --"2001–..."
if t == 1 then --"2001–02" & "2001–2002" both allowed
if lenfinish ~= 2 and lenfinish ~= 4 then
errors = p.errorclass('The second part of the season passed to function nav_hyphen should be two or four digits, not "'..finish..'".')
return p.failedcat(errors, 'L')
end
else --"2001–2005" is required for t > 1; track "2001–05"; anything else = error
if lenfinish == 2 then
trackcat(5, 'Category series navigation range abbreviated (MOS)')
elseif lenfinish ~= 4 then
errors = p.errorclass('The second part of the season passed to function nav_hyphen should be four digits, not "'..finish..'".')
return p.failedcat(errors, 'M')
end
end
if finish == '00' then --full year required regardless of term length
trackcat(5, 'Category series navigation range abbreviated (MOS)')
end
end
--calculate intERseason gap size
local hgap_default = 0 --assume & start at the most common case: 2001–02 -> 2002–03, etc.
local hgap_limit_reg = hgap_limit --less expensive per-increment (inc x 4)
local hgap_limit_irreg = hgap_limit --more expensive per-increment (inc x 23 = inc x (k_bwd + k_fwd) = inc x (12 + 11))
local hgap_success = false
local hgap = hgap_default
while hgap <= hgap_limit_reg and regularparent == true do --verify
local prevseason2 = firstpart..lspace..(nstart-t-hgap)..hyph..string.match(nstart-hgap, '%d?%d$') ..tspace..lastpart
local nextseason2 = firstpart..lspace..(nstart+t+hgap)..hyph..string.match(nstart+2*t+hgap, '%d?%d$')..tspace..lastpart
local prevseason4 = firstpart..lspace..(nstart-t-hgap)..hyph..(nstart-hgap) ..tspace..lastpart
local nextseason4 = firstpart..lspace..(nstart+t+hgap)..hyph..(nstart+2*t+hgap)..tspace..lastpart
if t == 1 then --test abbreviated range first, then full range, to be frugal with expensive functions
if catexists(prevseason2) or --use 'or', in case we're at the edge of the cat structure,
catexists(nextseason2) or --or we hit a "–00"/"–2000" situation on one side
catexists(prevseason4) or
catexists(nextseason4)
then
hgap_success = true
break
end
elseif t > 1 then --test full range first, then abbreviated range, to be frugal with expensive functions
if catexists(prevseason4) or --use 'or', in case we're at the edge of the cat structure,
catexists(nextseason4) or --or we hit a "–00"/"–2000" situation on one side
catexists(prevseason2) or
catexists(nextseason2)
then
hgap_success = true
break
end
end
hgap = hgap + 1
end
if hgap_success == false then
hgap = tonumber(testgap) or hgap_default --tracked via defaultgapcat()
end
--preliminary scan to determine ir/regular spacing of nearby cats;
--to limit expensive function calls, MOS:DATERANGE-violating cats are ignored;
--an irregular-term-length series should follow "YYYY..hyph..YYYY" throughout
local jlimit = 4 --4-a-side if all YYYY-YY, 3-a-side if all YYYY-YYYY, with some threshold in between
if hgap <= hgap_limit_reg then --also to isolate temp vars
--find # of nav-visible ir/regular-term-length cats
local bwanchor = nstart --backward anchor/common year
local fwanchor = bwanchor + t --forward anchor/common year
if regularparent == 'isolated' then
fwanchor = bwanchor
end
local spangreen = '[<span style="color:green">j, g, k = ' --used for/when debugging via list-all-links=yes
local spanblue = '<span style="color:blue">'
local spanred = ' (<span style="color:red">'
local span = '</span>'
local lastg = nil --to check for run-on searches
local lastk = nil --to check for run-on searches
local endfound = false --switch used to stop searching forward
local iirregs = 0 --index of tirregs[] for j < 0, since search starts from parent
local j = -jlimit --index of tirregs[] for j > 0 & pseudo navh position
while j <= jlimit do
if j < 0 then --search backward from parent
local gbreak = false --switch used to break out of g-loop
local g = 0 --gap size
while g <= hgap_limit_irreg do
local k = 0 --term length: 0 = "0-length", 1+ = normal
while k <= term_limit do
local from = bwanchor - k - g
local to = bwanchor - g
local full = mw.text.trim( firstpart..lspace..from..hyph..to..tspace..lastpart )
if k == 0 then
if regularparent ~= 'isolated' then --+restrict to g == 0 if repeating year problems arise
to = '0-length'
full = mw.text.trim( firstpart..lspace..from..tspace..lastpart )
if catlinkfollowr( frame, full ).rtarget ~= nil then --#R followed
table.insert( tlistallbwd, spangreen..j..', '..g..', '..k..span..'] '..full..spanred..'#R ignored'..span..')' )
full, to = '', '' --don't use/follow 0-length cat #Rs from nav_hyphen(); otherwise gets messy
end
end
end
if (k >= 1) or --the normal case; only continue k = 0 if 0-length found
(to == '0-length') --ghetto "continue" (thx Lua) to avoid expensive searches for "UK MPs 1974-1974", etc.
then
table.insert( tlistallbwd, spangreen..j..', '..g..', '..k..span..'] '..full )
if (k == 1) and
-- (g == 0 or g == 1) and --commented to match j>0 case ("1995–96 in Federal Republic of Yugoslavia basketball")
(catexists(full) == false)
then --allow bare-bones MOS:DATERANGE alternation, in case we're on a 0|1-gap, 1-year term series
local to2 = string.match(to, '%d%d$')
if to2 and to2 ~= '00' then --and not at a century transition (i.e. 1999–2000)
to = to2
full = mw.text.trim( firstpart..lspace..from..hyph..to..tspace..lastpart )
table.insert( tlistallbwd, spangreen..j..', '..g..', '..k..span..'] '..full )
end
end
if catexists(full) then
if to == '0-length' then
trackcat(13, 'Category series navigation range irregular, 0-length')
end
tlistallbwd[#tlistallbwd] = spanblue..tlistallbwd[#tlistallbwd]..span..' (found)'
ttlens[ find_duration(full) ] = 1
if j == -1 then tgapsj4[g] = 1 -- -1 since bwd search starts from parent @ -4 and ends at -1
else tgaps[g] = 1 end
iirregs = iirregs + 1
tirregs['from-'..iirregs] = from
tirregs['to-'..iirregs] = to
bwanchor = from --ratchet down
if to ~= '0-length' then
gbreak = true
break
else
g = 0 --soft-reset g, to keep stepping thru k
j = j + 1 --save, but keep searching thru k
if j > 0 then --(restore "> 3" if acts up) lest we keep searching bwd & finding 0-length cats ("MEPs for the Republic of Ireland 1973" & down)
j = -1 --allow a normal, full search fwd after break
gbreak = true
break
end
end
elseif (j >= 0) and
(lastg and lastk) and
((lastg >= hgap_limit_irreg) or
(lastk >= term_limit))
then --bwd search exhausted and/or done (runaway bwd search on "2018–19 FIA World Endurance Championship season")
j = -1 --allow a normal, full search fwd after break
gbreak = true
break
end
end --ghetto "continue"
k = k + 1
lastk = k
end --while k <= term_limit do
if gbreak == true then break end
g = g + 1
lastg = g
end --while g <= hgap_limit_irreg do
end --if j < 0
if j > 0 and endfound == false then --search forward from parent
local gbreak = false --switch used to break out of g-loop
local g = 0 --gap size
while g <= hgap_limit_irreg do
local k = -2 --term length: -2 = "0-length", -1 = "2020–present", 0 = "2020–", 1+ = normal
while k <= term_limit do
local from = fwanchor + g
local to4 = fwanchor + k + g --override carefully
local to2 = nil --last 2 digits of to4, IIF exists
if k == -1 then to4 = 'present' --see if end-cat exists (present)
elseif k == 0 then to4 = '' end --see if end-cat exists (blank)
local full = mw.text.trim( firstpart..lspace..from..hyph..to4..tspace..lastpart )
if k == -2 then
if regularparent ~= 'isolated' then --+restrict to g == 0 if repeating year problems arise
to4 = '0-length' --see if 0-length cat exists
full = mw.text.trim( firstpart..lspace..from..tspace..lastpart )
if catlinkfollowr( frame, full ).rtarget ~= nil then --#R followed
table.insert( tlistallfwd, spangreen..j..', '..g..', '..k..span..'] '..full..spanred..'#R ignored'..span..')' )
full, to4 = '', '' --don't use/follow 0-length cat #Rs from nav_hyphen(); otherwise gets messy
end
end
end
if (k >= -1) or --only continue k = -2 if 0-length found
(to4 == '0-length') --ghetto "continue" (thx Lua) to avoid expensive searches for "UK MPs 1974-1974", etc.
then
table.insert( tlistallfwd, spangreen..j..', '..g..', '..k..span..'] '..full )
if (k == 1) and
-- (g == 0 or g == 1) and --commented to let "2002–03 in Scottish women's football" find "2008–09 in Scottish women's football"
(catexists(full) == false)
then --allow bare-bones MOS:DATERANGE alternation, in case we're on a 0|1-gap, 1-year term series
to2 = string.match(to4, '%d%d$')
if to2 and to2 ~= '00' then --and not at a century transition (i.e. 1999–2000)
full = mw.text.trim( firstpart..lspace..from..hyph..to2..tspace..lastpart )
table.insert( tlistallfwd, spangreen..j..', '..g..', '..k..span..'] '..full )
end
end
if catexists(full) then
if to4 == '0-length' then
if rtarget(full, frame) == full then --only use 0-length cats that don't #R
trackcat(13, 'Category series navigation range irregular, 0-length')
end
end
tirregs['from'..j] = from
tirregs['to'..j] = (to2 or to4)
if (k == -1) or (k == 0) then
endfound = true --tentative
else --k == { -2, > 0 }
tlistallfwd[#tlistallfwd] = spanblue..tlistallfwd[#tlistallfwd]..span..' (found)'
ttlens[ find_duration(full) ] = 1
if j == 4 then tgapsj4[g] = 1
else tgaps[g] = 1 end
endfound = false
if to4 ~= '0-length' then --k > 0
fwanchor = to4 --ratchet up
gbreak = true
break --only break on k > 0 b/c old end-cat #Rs still exist like "Members of the Scottish Parliament 2011–"
else --k == -2
j = j + 1 --save, but keep searching k's, in case "1974" → "1974-1979"
if j > jlimit then --lest we keep searching & finding 0-length cats ("2018 CONCACAF Champions League" & up)
gbreak = true
break
elseif g == hgap_limit_irreg then
--keep searching, since not a runaway, just far away ("American soccer clubs 1958–59 season")
hgap_limit_irreg = hgap_limit_irreg + 1
end
end
end
end
end --ghetto "continue"
k = k + 1
lastk = k
end --while k <= term_limit do
if gbreak == true then break end
g = g + 1
lastg = g
end --while g <= hgap_limit_irreg do
end --if j > 0 and endfound == false then
if (lastg and lastk) and
(lastg > hgap_limit_irreg) and
(lastk > term_limit)
then --search exhausted
if j < 0 then j = 0 --bwd search exhausted; continue fwd
elseif j > 0 then break end --fwd search exhausted
end
j = j + 1
end --while j <= jlimit
end --if hgap <= hgap_limit_reg
--determine # of displayed navh elements based on "YYYY-YY" vs. "YYYY-YYYY" counts
local Ythreshold = 3.3 --((YYYY-YY x 7) + (YYYY-YYYY x 2))/18 = 3.222; ((YYYY-YY x 6) + (YYYY-YYYY x 3))/18 = 3.333
local Ycount = 0 --"Y" count
local ycount = 0 --tirregs counter; # of contiguous #s
for k, v in pairs (tirregs) do
local dummy, dunce = mw.ustring.gsub(tostring(v), '%d', '') --why can't gsub just return a table??
Ycount = Ycount + dunce
ycount = ycount + 1
end
local ycount_limit = ((jlimit * 2) + 1) * 2 --i.e. ((4 * 2) + 1) * 2 = 18
if ycount < ycount_limit then --fill in the blanks with Ycount_parent, since hidden/dne cats aren't in tirregs
local dummy_finish = finish
if not regularparent then dummy_finish = start end
local dummy, dunce_from = mw.ustring.gsub(start, '%d', '')
local dummy, dunce_to = mw.ustring.gsub(dummy_finish, '%d', '')
local Ycount_parent_avg = (dunce_from + dunce_to)/2 --"YYYY-YYYY" = 4; "YYYY-YY" = 3
Ycount = Ycount + (Ycount_parent_avg * (ycount_limit - ycount))
ycount = ycount_limit
end
local iwidth = 3 --default to 3-a-side, 7 total
local Y_per_y = Ycount / ycount --normalized range: [3-4]
if Y_per_y < Ythreshold then
iwidth = 4 --extend to 4-a-side, 9 total
end
--begin navhyphen
local navh = '<div class="toccolours categorySeriesNavigation-range">\n'
local navlist = {}
local terminalcat = false --switch used to hide future cats
local terminaltxt = nil
local i = -iwidth --nav position
while i <= iwidth do
local from = nstart + i*(t+hgap) --the logical, but not necessarily correct, 'from'
if tirregs['from'..i] then --prefer the irregular term table
from = tonumber(tirregs['from'..i])
else --fallback to lazy/naive 'from'
if i > 0 and
tirregs['from'..(i-1)] and
tirregs['from'..(i-1)] >= from
then --end of the line: avoid dups/past, and create reasonable grey'd ranges
local greyto = tonumber(tirregs['to' .. (i-1)]) or -9999
local greyfrom = tonumber(tirregs['from'..(i-1)]) or -9999
local grey = greyto --prefer 'to'
if greyfrom > greyto then grey = greyfrom end --'from' fallback, in case "1995–96", "1995-present", etc.
if grey > -9999 then
if grey ~= greyto then
from = grey + t + hgap --account for missing/incomplete 'to'
else
from = grey + hgap
end
tirregs['from'..i] = from --remember
tirregs['to' .. i] = from + t
end
elseif i < 0 then
local greyfrom
local ii = 0
while ii < 3 do
ii = ii + 1
greyfrom = tonumber(tirregs['from'..(i+ii)])
if greyfrom then break end
end
from = (greyfrom or nstart) - ii*(t+hgap)
tirregs['from'..i] = from --remember
tirregs['to' .. i] = from + t
end
end
local from2 = string.match(from, '%d?%d$')
local to = tostring(from+t) --the logical, naive range, but
if tirregs['to'..i] then --prefer irregular term table
to = tirregs['to'..i]
elseif regularparent == false and tirregs and i > 0 then
to = tirregs['to-1'] --special treatment for parent terminal cats, since they have no natural 'to'
end
local to2 = string.match(to, '%d?%d$')
local tofinal = (to2 or '') --assume t=1 and abbreviated 'to' (the most common case)
if t > 1 or --per MOS:DATERANGE (e.g. 1999-2004)
(from2 - (to2 or from2)) > 0 --century transition exception (e.g. 1999–2000)
then
tofinal = (to or '') --default to the MOS-correct format, in case no fallbacks found
end
if to == '0-length' then
tofinal = to
end
--check existance of 4-digit, MOS-correct range, with abbreviation fallback
if tofinal ~= '0-length' then
if t > 1 and string.len(from) == 4 then --e.g. 1999-2004
--determine which link exists (full or abbr)
local full = firstpart..lspace..from..hyph..tofinal..tspace..lastpart
if not catexists(full) then
local abbr = firstpart..lspace..from..hyph..to2..tspace..lastpart
if catexists(abbr) then
tofinal = (to2 or '') --rv to MOS-incorrect format; if full AND abbr DNE, then tofinal is still in its MOS-correct format
end
end
elseif t == 1 then --full-year consecutive ranges are also allowed
local abbr = firstpart..lspace..from..hyph..tofinal..tspace..lastpart --assume tofinal is in abbr format
if not catexists(abbr) and tofinal ~= to then
local full = firstpart..lspace..from..hyph..to..tspace..lastpart
if catexists(full) then
tofinal = (to or '') --if abbr AND full DNE, then tofinal is still in its abbr format (unless it's a century transition)
end end end end
--populate navh
if i ~= 0 then --left/right navh
local orig = firstpart..lspace..from..hyph..tofinal..tspace..lastpart
local disp = from..hyph..tofinal
if tofinal == '0-length' then
orig = firstpart..lspace..from..tspace..lastpart
disp = from
end
local catlink = catlinkfollowr(frame, orig, disp, true) --force terminal cat display
if terminalcat == false then
terminaltxt = find_terminaltxt( disp ) --also sets tracking cats
terminalcat = (terminaltxt ~= nil)
end
if catlink.rtarget and avoidself then --a {{Category redirect}} was followed, figure out why
--determine new term length & gap size
ttlens[ find_duration( catlink.rtarget ) ] = 1
if i > -iwidth then
local lastto = tirregs['to'..(i-1)]
if lastto == nil then
local lastfrom = nstart + (i-1)*(t+hgap)
lastto = lastfrom+t --use last logical 'from' to calc lastto
end
if lastto then
local gapcat = lastto..'-'..from --dummy cat to calc with
local gap = find_duration(gapcat) or -1 --in case of nil,
if iwidth == 4 then
tgapsj4[ gap ] = 1 --tgapsj4[-1] are ignored later
else
tgaps[ gap ] = 1 --tgaps[-1] are ignored later
end
end
end
--display/tracking handling
local base_regex = '%d+[–-]%d+'
local origbase = mw.ustring.gsub(orig, base_regex, '')
local rtarbase, rtarbase_success = mw.ustring.gsub(catlink.rtarget, base_regex, '')
if rtarbase_success == 0 then
local base_regex_lax = '%d%d%d%d' --in case rtarget is a year cat
rtarbase, rtarbase_success = mw.ustring.gsub(catlink.rtarget, base_regex_lax, '')
end
local terminal_regex = '%d+[–-]'..(terminaltxt or '')..'$' --more manual ORs bc Lua regex sux
if mw.ustring.match(orig, terminal_regex) then
origbase = mw.ustring.gsub(orig, terminal_regex, '')
end
if mw.ustring.match(catlink.rtarget, terminal_regex) then
--finagle/overload terminalcat type to set nmaxseas on 1st occurence only
if terminalcat == false then terminalcat = 1 end
local dummy = find_terminaltxt( catlink.rtarget ) --also sets tracking cats
rtarbase = mw.ustring.gsub(catlink.rtarget, terminal_regex, '')
end
origbase = mw.text.trim(origbase)
rtarbase = mw.text.trim(rtarbase)
if origbase ~= rtarbase then
trackcat(6, 'Category series navigation range redirected (base change)')
elseif terminalcat == 1 then
trackcat(8, 'Category series navigation range redirected (end)')
else --origbase == rtarbase
local all4s_regex = '%d%d%d%d[–-]%d%d%d%d'
local orig_all4s = mw.ustring.match(orig, all4s_regex)
local rtar_all4s = mw.ustring.match(catlink.rtarget, all4s_regex)
if orig_all4s and rtar_all4s then
trackcat(10, 'Category series navigation range redirected (other)')
else
local year_regex1 = '%d%d%d%d$'
local year_regex2 = '%d%d%d%d[%s%)]'
local year_rtar = mw.ustring.match(catlink.rtarget, year_regex1) or
mw.ustring.match(catlink.rtarget, year_regex2)
if orig_all4s and year_rtar then
trackcat(7, 'Category series navigation range redirected (var change)')
else
trackcat(9, 'Category series navigation range redirected (MOS)')
end
end
end
end
if terminalcat then --true or 1
if type(terminalcat) ~= 'boolean' then nmaxseas = from end --only want to do this once
terminalcat = true --done finagling/overloading
end
if (from >= 0) and (nminseas <= from) and (from <= nmaxseas) then
table.insert(navlist, catlink.navelement)
if terminalcat then nmaxseas = nminseas_default end --prevent display of future ranges
else
local hidden = '<span style="visibility:hidden">'..disp..'</span>'
table.insert(navlist, hidden)
if listall then
tlistall[#tlistall] = tlistall[#tlistall]..' ('..hidden..')'
end
end
else --center navh
if finish == -1 then finish = 'present'
elseif finish == 0 then finish = '<span style="visibility:hidden">'..start..'</span>' end
local disp = start..hyph..finish
if regularparent == 'isolated' then disp = start end
table.insert(navlist, '<b>'..disp..'</b>')
end
i = i + 1
end
-- add the list
navh = navh..horizontal(navlist)..'\n'
--tracking cats & finalize
if avoidself then
local igaps = 0 --# of diff gap sizes > 0 found
local itlens = 0 --# of diff term lengths found
for s = 1, hgap_limit_reg do --must loop; #tgaps, #ttlens unreliable
igaps = igaps + (tgaps[s] or 0)
end
if iwidth == 4 then --only count gaps if they were displayed ("Karnataka MLAs 1957–1962")
for s = 1, hgap_limit_reg do
igaps = igaps + (tgapsj4[s] or 0)
end
end
for s = 0, term_limit do
itlens = itlens + (ttlens[s] or 0)
end
if igaps > 0 then trackcat(11, 'Category series navigation range gaps') end
if itlens > 1 and ttrackingcats[13] == '' then --avoid duplication in "Category series navigation range irregular, 0-length"
trackcat(12, 'Category series navigation range irregular')
end
end
isolatedcat()
defaultgapcat(not hgap_success)
if listall then
return listalllinks()
else
return navh..'</div>'
end
end
--[[=========================={{ nav_tvseason }}============================]]
local function nav_tvseason( frame, firstpart, tv, lastpart, maximumtv )
--Expects a PAGENAME of the form "Futurama season 1 episodes", where
-- firstpart = Futurama season
-- tv = 1
-- lastpart = episodes
-- maximumtv = 7 ('max' tv season parameter; optional; defaults to 9999)
tv = tonumber(tv)
if tv == nil then
errors = p.errorclass('Function nav_tvseason can\'t recognize the TV season number sent to its 3rd parameter.')
return p.failedcat(errors, 'T')
end
--"(season 1) episodes" -> "season 1 episodes" following March 2024 RfC:
--[[Wikipedia talk:Naming conventions (television)#Follow-up RfC on TV season article titles]]
-- [[Special:Permalink/1216885280#Follow-up RfC on TV season article titles]]
local tspace = ' ' --"season 1 episodes"
local parenth_check = string.match(lastpart, '^%)')
if parenth_check then tspace = '' end --accommodate old style "(season 1) episodes" just in case
local maxtv_default = 9999
local maxtv = tonumber(maximumtv) or maxtv_default --allow +/- qualifier
if maxtv < tv then maxtv = tv end --input error; maxtv should be >= parent
--begin navtvseason
local navt = '<div class="toccolours categorySeriesNavigation-range">\n'
local navlist = {}
local prepad = ''
local i = -5 --nav position
while i <= 5 do
local t = tv + i
if i ~= 0 then --left/right navt
local catlink = catlinkfollowr( frame, firstpart..' '..t..tspace..lastpart, t )
if t >= 1 and t <= maxtv then --hardcode mintv
if catlink.rtarget then --a {{Category redirect}} was followed
trackcat(25, 'Category series navigation TV season redirected')
end
if catlink.catexists or
(maxtv ~= maxtv_default and t <= maxtv)
then
table.insert(navlist, prepad..catlink.navelement) --display normally
prepad = ''
else
local postpad = '<span style="visibility:hidden"> • '..t..'</span>'
navlist[#navlist] = (navlist[#navlist] or '')..postpad
if listall then tlistall[#tlistall] = tlistall[#tlistall]..' ('..postpad..')' end
end
elseif t < 1 then
prepad = prepad..'<span style="visibility:hidden"> • '..'0'..'</span>'
if listall then tlistall[#tlistall] = (tlistall[#tlistall] or '')..' (x)' end
else --t > maxtv
local postpad = '<span style="visibility:hidden"> • '..t..'</span>'
navlist[#navlist] = (navlist[#navlist] or '')..postpad
if listall then tlistall[#tlistall] = tlistall[#tlistall]..' ('..postpad..')' end
end
else --center navt
table.insert(navlist, prepad..'<b>'..tv..'</b>')
prepad = ''
end
i = i + 1
end
-- add the list
navt = navt..horizontal(navlist)..'\n'
isolatedcat()
if listall then
return listalllinks()
else
return navt..'</div>'
end
end
--[[==========================={{ nav_decade }}=============================]]
local function nav_decade( frame, firstpart, decade, lastpart, mindecade, maxdecade )
--Expects a PAGENAME of the form "Some sequential 2000 example cat", where
-- firstpart = Some sequential
-- decade = 2000
-- lastpart = example cat
-- mindecade = 1800 ('min' decade parameter; optional; defaults to -9999)
-- maxdecade = 2020 ('max' decade parameter; optional; defaults to 9999)
--sterilize dec
local dec = sterilizedec(decade)
if dec == nil then
errors = p.errorclass('Function nav_decade was sent "'..(decade or '')..'" as its 2nd parameter, '..
'but expects a 1 to 4-digit year ending in "0".')
return p.failedcat(errors, 'D')
end
local ndec = tonumber(dec)
--sterilize mindecade & determine AD/BC
local mindefault = '-9999'
local mindec = sterilizedec(mindecade) --returns a tostring(unsigned int), or nil
if mindec then
if string.match(mindecade, '-%d') or
string.match(mindecade, 'BC')
then
mindec = '-'..mindec --better +/-0 behavior with strings (0-initialized int == "-0" string...)
end
elseif mindec == nil and mindecade and mindecade ~= '' then
errors = p.errorclass('Function nav_decade was sent "'..(mindecade or '')..'" as its 4th parameter, '..
'but expects a 1 to 4-digit year ending in "0", the earliest decade to be shown.')
return p.failedcat(errors, 'E')
else --mindec == nil
mindec = mindefault --tonumber() later, after error checks
end
--sterilize maxdecade & determine AD/BC
local maxdefault = '9999'
local maxdec = sterilizedec(maxdecade) --returns a tostring(unsigned int), or nil + error
if maxdec then
if string.match(maxdecade, '-%d') or
string.match(maxdecade, 'BC')
then --better +/-0 behavior with strings (0-initialized int == "-0" string...),
maxdec = '-'..maxdec --but a "-0" string -> tonumber() -> tostring() = "-0",
end --and a "0" string -> tonumber() -> tostring() = "0"
elseif maxdec == nil and maxdecade and maxdecade ~= '' then
errors = p.errorclass('Function nav_decade was sent "'..(maxdecade or '')..'" as its 5th parameter, '..
'but expects a 1 to 4-digit year ending in "0", the highest decade to be shown.')
return p.failedcat(errors, 'F')
else --maxdec == nil
maxdec = maxdefault
end
local tspace = ' ' --assume trailing space for "1950s in X"-type cats
if string.match(lastpart, '^-') then tspace = '' end --DNE for "1970s-related"-type cats
--AD/BC switches & varR
local parentBC = string.match(lastpart, '^RC') --following the "0s BC" convention for all years BC
local BCe = parentBC and 'RC' or 'BC' --use RC for Manx categories, BC otherwise
lastpart = mw.ustring.gsub(lastpart, '^RC%s*', '') --handle BC separately; AD never used
--TODO?: handle BCE, but only if it exists in the wild
local dec0to40AD = (ndec >= 0 and ndec <= 40 and not parentBC) --special behavior in this range
local switchADBC = 1 -- 1=AD parent
if parentBC then switchADBC = -1 end -- -1=BC parent; possibly adjusted later
local BCdisp = ''
local D = -math.huge --secondary switch & iterator for AD/BC transition
--check non-default min/max more carefully
if mindec ~= mindefault then
if tonumber(mindec) > ndec*switchADBC then
mindec = tostring(ndec*switchADBC) --input error; mindec should be <= parent
end
end
if maxdec ~= maxdefault then
if tonumber(maxdec) < ndec*switchADBC then
maxdec = tostring(ndec*switchADBC) --input error; maxdec should be >= parent
end
end
local nmindec = tonumber(mindec) --similar behavior to nav_year & nav_nordinal
local nmaxdec = tonumber(maxdec) --similar behavior to nav_nordinal
--begin navdecade
local bnb = '' --border/no border
if navborder == false then --for Category series navigation year and decade
bnb = 'categorySeriesNavigation-range-transparent'
end
local navd = '<div class="toccolours categorySeriesNavigation-range '..bnb..'">\n'
local navlist = {}
local i = -50 --nav position x 10
while i <= 50 do
local d = ndec + i*switchADBC
local BC = ''
BCdisp = ''
if dec0to40AD then
if D < -10 then
d = math.abs(d + 10) --b/c 2 "0s" decades exist: "0s BC" & "0s" (AD)
BC = 'RC '
if d == 0 then
D = -10 --track 1st d = 0 use (BC)
end
elseif D >= -10 then
D = D + 10 --now iterate from 0s AD
d = D --2nd d = 0 use
end
elseif parentBC then
if switchADBC == -1 then --parentBC looking at the BC side (the common case)
BC = 'RC '
if d == 0 then --prepare to switch to the AD side on the next iteration
switchADBC = 1 --1st d = 0 use (BC)
D = -10 --prep
end
elseif switchADBC == 1 then --switched to the AD side
D = D + 10 --now iterate from 0s AD
d = D --2nd d = 0 use (on first use)
end
end
if BC ~= '' and ndec <= 50 then
BCdisp = ' '..BCe --show BC/RC for all BC decades whenever a "0yn" is displayed on the nav
end
--determine target cat
local disp = d..'yn'..BCdisp
local catlink = catlinkfollowr( frame, firstpart..' '..d..'yn'..tspace..BC..lastpart, disp )
if catlink.rtarget then --a {{Category redirect}} was followed
trackcat(18, 'Category series navigation decade redirected')
end
--populate left/right navd
local shown = navcenter(i, catlink)
local hidden = '<span style="visibility:hidden">'..disp..'</span>'
local dsign = d --use d for display & dsign for logic
if BC ~= '' then dsign = -dsign end
if (nmindec <= dsign) and (dsign <= nmaxdec) then
if dsign == 0 and (nmindec == 0 or nmaxdec == 0) then --distinguish b/w -0 (BC) & 0 (AD)
--"zoom in" on +/- 0 and turn dsign/min/max temporarily into +/- 1 for easier processing
local zsign, zmin, zmax = 1, nmindec, nmaxdec
if BC ~= '' then zsign = -1 end
if mindec == '-0' then zmin = -1
elseif mindec == '0' then zmin = 1 end
if maxdec == '-0' then zmax = -1
elseif maxdec == '0' then zmax = 1 end
if (zmin <= zsign) and (zsign <= zmax) then
table.insert(navlist, shown)
hidden = nil
else
table.insert(navlist, hidden)
end
else
table.insert(navlist, shown)--the common case
hidden = nil
end
else
table.insert(navlist, hidden)
end
if listall and hidden then
tlistall[#tlistall] = tlistall[#tlistall]..' ('..hidden..')'
end
i = i + 10
end
-- add the list
navd = navd..horizontal(navlist)..'\n'
isolatedcat()
if listall then
return listalllinks()
else
return navd..'</div>'
end
end
--[[============================{{ nav_year }}==============================]]
local function nav_year( frame, firstpart, year, lastpart, minimumyear, maximumyear )
--Expects a PAGENAME of the form "Some sequential 1760 example cat", where
-- firstpart = Some sequential
-- year = 1760
-- lastpart = example cat
-- minimumyear = 1758 ('min' year parameter; optional)
-- maximumyear = 1800 ('max' year parameter; optional)
local minyear_default = -9999
local maxyear_default = 9999
year = tonumber(year) or tonumber(mw.ustring.match(year or '', '^%s*(%d*)'))
local minyear = tonumber(string.match(minimumyear or '', '-?%d+')) or minyear_default --allow +/- qualifier
local maxyear = tonumber(string.match(maximumyear or '', '-?%d+')) or maxyear_default --allow +/- qualifier
if string.match(minimumyear or '', 'BC') then minyear = -math.abs(minyear) end --allow BC qualifier (AD otherwise assumed)
if string.match(maximumyear or '', 'BC') then maxyear = -math.abs(maxyear) end --allow BC qualifier (AD otherwise assumed)
if year == nil then
errors = p.errorclass('Function nav_year can\'t recognize the year sent to its 3rd parameter.')
return p.failedcat(errors, 'Y')
end
--AD/BC switches & vars
local yearBCElastparts = { --needed for parent = AD 1-5, when the BC/E format is unknown
--"BCE" removed to match both AD & BCE cats; easier & faster than multiple string.match()s
['example_Hebrew people_example'] = 'BCE', --example entry format; add to & adjust as needed
}
local parentAD = string.match(firstpart, 'BNJ$') --following the "AD 1" convention from AD 1 to AD 10
local parentBC = string.match(lastpart, '^RC?') --following the "1 BC" convention for all years BC
firstpart = mw.ustring.gsub(firstpart, '%s*BNJ$', '') --handle AD/BC separately for easier & faster accounting
lastpart = mw.ustring.gsub(lastpart, '^RC?%s*', '')
local BCe = parentBC or yearBCElastparts[lastpart] or 'RC' --"BC" default
local year1to10 = (year >= 1 and year <= 10)
local year1to10ADBC = year1to10 and (parentBC or parentAD) --special behavior 1-10 for low-# non-year series
local year1to15AD = (year >= 1 and year <= 15 and not parentBC) --special behavior 1-15 for AD/BC display
local switchADBC = 1 -- 1=AD parent
if parentBC then switchADBC = -1 end -- -1=BC parent; possibly adjusted later
local Y = 0 --secondary iterator for AD-on-a-BC-parent
if minyear > year*switchADBC then minyear = year*switchADBC end --input error; minyear should be <= parent
if maxyear < year*switchADBC then maxyear = year*switchADBC end --input error; maxyear should be >= parent
local lspace = ' ' --leading space before year, after firstpart
if string.match(firstpart, '[%-VW]$') then
lspace = '' --e.g. "Straight-8 engines"
end
local tspace = ' ' --trailing space after year, before lastpart
if string.match(lastpart, '^-') then
tspace = '' --e.g. "2018-related timelines"
end
--determine interyear gap size to condense special category types, if possible
local ygapdefault = 1 --assume/start at the most common case: 2001, 2002, etc.
local ygap = ygapdefault
if string.match(lastpart, 'presidential') then
local ygap1, ygap2 = ygapdefault, ygapdefault --need to determine previous & next year gaps indepedently
local ygap1_success, ygap2_success = false, false
local prevseason = nil
while ygap1 <= ygap_limit do --Czech Republic, Poland, Sri Lanka, etc. have 5-year terms
prevseason = firstpart..lspace..(year-ygap1)..tspace..lastpart
if catexists(prevseason) then
ygap1_success = true
break
end
ygap1 = ygap1 + 1
end
local nextseason = nil
while ygap2 <= ygap_limit do --Czech Republic, Poland, Sri Lanka, etc. have 5-year terms
nextseason = firstpart..lspace..(year+ygap2)..tspace..lastpart
if catexists(nextseason) then
ygap2_success = true
break
end
ygap2 = ygap2 + 1
end
if ygap1_success and ygap2_success then
if ygap1 == ygap2 then ygap = ygap1 end
elseif ygap1_success then ygap = ygap1
elseif ygap2_success then ygap = ygap2
end
end
--skip non-existing years, if requested
local ynogaps = {} --populate with existing years in the range, at most, [year - (skipgaps_limit * 5), year + (skipgaps_limit * 5)]
if skipgaps then
if minyear == minyear_default then
minyear = 0 --automatically set minyear to 0, as AD/BC not supported anyway
end
if (year > 70) or --add support for AD/BC (<= AD 10) if/when needed
(minyear >= 0 and --must be a non-year series like "AC with 0 elements"
not parentAD and not parentBC)
then
local yskipped = {} --track skipped y's to avoid double-checking
local cat, found, Yeary
--populate nav element queue outwards positively from the parent
local Year = year --to save/ratchet progression
local i = 1
while i <= 5 do
local y = 1
while y <= skipgaps_limit do
found = false
Yeary = Year + y
if yskipped[Yeary] == nil then
yskipped[Yeary] = Yeary
cat = firstpart..lspace..Yeary..tspace..lastpart
found = catexists(cat)
if found then break end
end
y = y + 1
end
if found then Year = Yeary
else Year = Year + 1 end
ynogaps[i] = Year
i = i + 1
end
ynogaps[0] = year --the parent
--populate nav element queue outwards negatively from the parent
Year = year --reset ratchet
i = -1
while i >= -5 do
local y = -1
while y >= -skipgaps_limit do
found = false
Yeary = Year + y
if yskipped[Yeary] == nil then
yskipped[Yeary] = Yeary
cat = firstpart..lspace..Yeary..tspace..lastpart
found = catexists(cat)
if found then break end
end
y = y - 1
end
if found then Year = Yeary
else Year = Year - 1 end
ynogaps[i] = Year
i = i - 1
end
else
skipgaps = false --TODO: AD/BC support, then lift BC restrictions @ [[Template:Establishment category BC]] & [[Template:Year category header/core]]
end
end
--begin navyears
local navy = '<div class="toccolours categorySeriesNavigation-range">\n'
local navlist = {}
local y
local j = 0 --decrementor for special cases "2021 World Rugby Sevens Series" -> "2021–2022"
local i = -5 --nav position
while i <= 5 do
if skipgaps then
y = ynogaps[i]
else
y = year + i*ygap*switchADBC - j
end
local BCdisp = ''
if i ~= 0 then --left/right navy
local AD = ''
local BC = ''
if year1to15AD and not
(year1to10 and not year1to10ADBC) --don't AD/BC 1-10's if parents don't contain AD/BC
then
if year >= 11 then --parent = AD 11-15
if y <= 10 then --prepend AD on y = 1-10 cats only, per existing cats
AD = 'AD '
end
elseif year >= 1 then --parent = AD 1-10
if y <= 0 then
BC = BCe..' '
y = math.abs(y - 1) --skip y = 0 (DNE)
elseif y >= 1 and y <= 10 then --prepend AD on y = 1-10 cats only, per existing cats
AD = 'AD '
end
end
elseif parentBC then
if switchADBC == -1 then --displayed y is in the BC regime
if y >= 1 then --the common case
BC = BCe..' '
elseif y == 0 then --switch from BC to AD regime
switchADBC = 1
end
end
if switchADBC == 1 then --displayed y is now in the AD regime
Y = Y + 1 --skip y = 0 (DNE)
y = Y --easiest solution: start another iterator for these AD y's displayed on a BC year parent
AD = 'AD '
end
end
if BC ~= '' and year <= 5 then --only show 'BC' for parent years <= 5: saves room, easier to read,
BCdisp = ' '..BCe --and 6 is the first/last nav year that doesn't need a disambiguator;
end --the center/parent year will always show BC, so no need to show it another 10x
--populate left/right navy
local ysign = y --use y for display & ysign for logic
local disp = y..BCdisp
if BC ~= '' then ysign = -ysign end
local firsttry = firstpart..lspace..AD..y..tspace..BC..lastpart
if (minyear <= ysign) and (ysign <= maxyear) then
local catlinkAD = catlinkfollowr( frame, firsttry, disp ) --try AD
local catlink = catlinkAD --tentative winner
if AD ~= '' then --for "ACArt with 5 suppressed elements"-type cats
local catlinkNoAD = catlinkfollowr( frame, firstpart..lspace..y..tspace..BC..lastpart, disp ) --try !AD
if catlinkNoAD.catexists == true then
catlink = catlinkNoAD --usurp
elseif listall then
tlistall[#tlistall] = tlistall[#tlistall]..' (tried; not displayed)<sup>1</sup>'
end
end
if (AD..BC == '') and (catlink.catexists == false) and (y >= 1000) then --!ADBC & DNE; 4-digit only, to be frugal
--try basic hyphenated cats: 1-year, endash, MOS-correct only, no #Rs
local yHyph_4 = y..'–'..(y+1) --try 2010–2011 type cats
local catlinkHyph_4 = catlinkfollowr( frame, firstpart..lspace..yHyph_4..tspace..BC..lastpart, yHyph_4 )
if catlinkHyph_4.catexists and catlinkHyph_4.rtarget == nil then --exists & no #Rs
catlink = catlinkHyph_4 --usurp
trackcat(27, 'Category series navigation year and range')
else
if listall then
tlistall[#tlistall] = tlistall[#tlistall]..' (tried; not displayed)<sup>2</sup>'
end
local yHyph_2 = y..'–'..string.match(y+1, '%d%d$') --try 2010–11 type cats
if i == 1 then
local yHyph_2_special = (y-1)..'–'..string.match(y, '%d%d$') --try special case 2021 -> 2021–22
local catlinkHyph_2_special = catlinkfollowr( frame, firstpart..lspace..yHyph_2_special..tspace..BC..lastpart, yHyph_2_special )
if catlinkHyph_2_special.catexists and catlinkHyph_2_special.rtarget == nil then --exists & no #Rs
catlink = catlinkHyph_2_special --usurp
trackcat(27, 'Category series navigation year and range')
j = 1
elseif listall then
tlistall[#tlistall] = tlistall[#tlistall]..' (tried; not displayed)<sup>3</sup>'
end
end
if not (i == 1 and j == 1) then
local catlinkHyph_2 = catlinkfollowr( frame, firstpart..lspace..yHyph_2..tspace..BC..lastpart, yHyph_2 )
if catlinkHyph_2.catexists and catlinkHyph_2.rtarget == nil then --exists & no #Rs
catlink = catlinkHyph_2 --usurp
trackcat(27, 'Category series navigation year and range')
elseif listall then
tlistall[#tlistall] = tlistall[#tlistall]..' (tried; not displayed)<sup>4</sup>'
end
end
end
end
if catlink.rtarget then --#R followed; determine why
local r = catlink.rtarget
local c = catlink.cat
local year_regex = '%d%d%d%d[–-]?%d?%d?%d?%d?' --prioritize year/range stripping, e.g. for "2006 Super 14 season"
local hyph_regex = '%d%d%d%d[–-]%d+' --stricter
local num_regex = '%d+' --strip any number otherwise
local final_regex = nil --best choice goes here
if mw.ustring.match(r, year_regex) and mw.ustring.match(c, year_regex) then
final_regex = year_regex
elseif mw.ustring.match(r, num_regex) and mw.ustring.match(c, num_regex) then
final_regex = num_regex
end
if final_regex then
local r_base = mw.ustring.gsub(r, final_regex, '')
local c_base = mw.ustring.gsub(c, final_regex, '')
if r_base ~= c_base then
trackcat(19, 'Category series navigation year redirected (base change)') --acceptable #R target
elseif mw.ustring.match(r, hyph_regex) then
trackcat(20, 'Category series navigation year redirected (var change)') --e.g. "2008 in Scottish women's football" to "2008–09"
else
trackcat(21, 'Category series navigation year redirected (other)') --exceptions go here
end
else
trackcat(20, 'Category series navigation year redirected (var change)') --e.g. "V2 engines" to "V-twin engines"
end
end
table.insert(navlist, catlink.navelement)
else --OOB vs min/max
local hidden = '<span style="visibility:hidden">'..disp..'</span>'
table.insert(navlist, hidden)
if listall then
local dummy = catlinkfollowr( frame, firsttry, disp )
tlistall[#tlistall] = tlistall[#tlistall]..' ('..hidden..')'
end
end
else --center navy
if parentBC then BCdisp = ' '..BCe end
table.insert(navlist, '<b>'..year..BCdisp..'</b>')
end
i = i + 1
end
--add the list
navy = navy..horizontal(navlist)..'\n'
isolatedcat()
if listall then
return listalllinks()
else
return navy..'</div>'
end
end
--[[==========================={{ nav_roman }}==============================]]
local function nav_roman( frame, firstpart, roman, lastpart, minimumrom, maximumrom )
local toarabic = require('Module:ConvertNumeric').roman_to_numeral
local toroman = require('Module:Roman').main
--sterilize/convert rom/num
local num = tonumber(toarabic(roman))
local rom = toroman({ [1] = num })
if num == nil or rom == nil then --out of range or some other error
errors = p.errorclass('Function nav_roman can\'t recognize one or more of "'..(num or 'nil')..'" & "'..
(rom or 'nil')..'" in category "'..firstpart..' '..roman..' '..lastpart..'".')
return p.failedcat(errors, 'R')
end
--sterilize min/max
local minrom = tonumber(minimumrom or '') or tonumber(toarabic(minimumrom or ''))
local maxrom = tonumber(maximumrom or '') or tonumber(toarabic(maximumrom or ''))
if minrom < 1 then minrom = 1 end --toarabic() returns -1 on error
if maxrom < 1 then maxrom = 9999 end --toarabic() returns -1 on error
if minrom > num then minrom = num end
if maxrom < num then maxrom = num end
--begin navroman
local navr = '<div class="toccolours categorySeriesNavigation-range">\n'
local navlist = {}
local i = -5 --nav position
while i <= 5 do
local n = num + i
if n >= 1 then
local r = toroman({ [1] = n })
if i ~= 0 then --left/right navr
local catlink = catlinkfollowr( frame, firstpart..' '..r..' '..lastpart, r )
if minrom <= n and n <= maxrom then
if catlink.rtarget then --a {{Category redirect}} was followed
trackcat(22, 'Category series navigation roman numeral redirected')
end
table.insert(navlist, catlink.navelement)
else
local hidden = '<span style="visibility:hidden">'..r..'</span>'
table.insert(navlist, hidden)
if listall then
tlistall[#tlistall] = tlistall[#tlistall]..' ('..hidden..')'
end
end
else --center navr
table.insert(navlist, '<b>'..r..'</b>')
end
else
table.insert(navlist, '<span style="visibility:hidden">I</span>')
end
i = i + 1
end
-- add the list
navr = navr..horizontal(navlist)..'\n'
isolatedcat()
if listall then
return listalllinks()
else
return navr..'</div>'
end
end
--[[=========================={{ nav_nordinal }}============================]]
local function nav_nordinal( frame, firstpart, ord, lastpart, minimumord, maximumord )
local nord = tonumber(ord)
local minord = tonumber(string.match(minimumord or '', '(-?%d+)[snrt]?[tdh]?')) or -9999 --allow full ord & +/- qualifier
local maxord = tonumber(string.match(maximumord or '', '(-?%d+)[snrt]?[tdh]?')) or 9999 --allow full ord & +/- qualifier
if string.match(minimumord or '', 'BC') or string.match(minimumord or '', 'RC') then minord = -math.abs(minord) end
if string.match(maximumord or '', 'BC') or string.match(maximumord or '', 'RC') then maxord = -math.abs(maxord) end
local temporal = string.match(lastpart, 'century') or
string.match(lastpart, 'millennium') or
string.match(lastpart, 'milley bleeaney') or
string.match(lastpart, 'villey bleeaney') or
string.match(lastpart, '^eash')
local isManxMillenium = string.match(lastpart, 'milley bleeaney') or
string.match(lastpart, 'villey bleeaney')
local isManxCentury = string.match(lastpart, '^eash')
local tspace = ' ' --assume a trailing space after ordinal
if string.match(lastpart, '^-') then tspace = '' end --DNE for "19th-century"-type cats
--AD/BC switches & vars
local ordBCElastparts = { --needed for parent = AD 1-5, when the BC/E format is unknown
--lists the lastpart of valid BCE cats
--"BCE" removed to match both AD & BCE cats; easier & faster than multiple string.match()s
['-century Hebrew people'] = 'BCE', --WP:CFD/Log/2016 June 21#Category:11th-century BC Hebrew people
['-century Jews'] = 'BCE', --co-nominated
['-century Judaism'] = 'BCE', --co-nominated
['-century rabbis'] = 'BCE', --co-nominated
['-century High Priests of Israel'] = 'BCE',
}
local parentBC = mw.ustring.match(lastpart, '%s(BCE?)')
or mw.ustring.match(lastpart, '%s(RC)')
local lastpartNoBC = mw.ustring.gsub(lastpart, '%sBCE?', '')
lastpartNoBC = mw.ustring.gsub(lastpartNoBC, '%sRC', '')
local BCe = parentBC
or ordBCElastparts[lastpartNoBC]
or ((isManxMillenium or isManxCentury) and 'RC')
or 'BC'
local switchADBC = 1 -- 1=AD parent
if parentBC then switchADBC = -1 end -- -1=BC parent; possibly adjusted later
local O = 0 --secondary iterator for AD-on-a-BC-parent
if not temporal and not parentBC and minord < 1 then minord = 1 end
if not temporal and parentBC and maxord < 1 then maxord = -1 end
if minord > nord*switchADBC then minord = nord*switchADBC end --input error; minord should be <= parent
if maxord < nord*switchADBC then maxord = nord*switchADBC end --input error; maxord should be >= parent
--begin navnordinal
local bnb = '' --border/no border
if navborder == false then --for Category series navigation decade and century
bnb = 'categorySeriesNavigation-range-transparent'
end
local navo = '<div class="toccolours categorySeriesNavigation-range '..bnb..'">\n'
local navlist = {}
local i = -5 --nav position
while i <= 5 do
local o = nord + i*switchADBC
local BC = ''
local BCdisp = ''
if parentBC then
if switchADBC == -1 then --parentBC looking at the BC side
if o >= 1 then --the common case
BC = ' '..BCe
elseif o == 0 then --switch to the AD side
BC = ''
switchADBC = 1
end
end
if switchADBC == 1 then --displayed o is now in the AD regime
O = O + 1 --skip o = 0 (DNE)
o = O --easiest solution: start another iterator for these AD o's displayed on a BC year parent
end
elseif o <= 0 then --parentAD looking at BC side
BC = ' '..BCe
o = math.abs(o - 1) --skip o = 0 (DNE)
end
if BC ~= '' and nord <= 5 then --only show 'BC' for parent ords <= 5: saves room, easier to read,
BCdisp = ' '..BCe --and 6 is the first/last nav ord that doesn't need a disambiguator;
end --the center/parent ord will always show BC, so no need to show it another 10x
--populate left/right navo
local oth = (isManxMillenium or isManxCentury) and p.addord(o) or tostring(o)
local osign = o
if BC ~= '' and temporal then osign = -osign end
local hidden = '<span style="visibility:hidden">'..oth..'</span>'
if temporal then --e.g. "3rd-century BC"
local lastpart = lastpartNoBC --lest we recursively add multiple "BC"s
if isManxMillenium then
-- 1d and 2h trigger lenition: villey bleeaney
-- 3oo and above use the base form: milley bleeaney
local ones = o % 10
local correct_form
if ones == 1 or ones == 2 then
correct_form = 'villey bleeaney'
else
correct_form = 'milley bleeaney'
end
local replacement = correct_form
if BC ~= '' then
replacement = replacement .. BC
end
lastpart = string.gsub(lastpart, temporal, replacement, 1) --swap in the correct mutation, preserving the rest of lastpart
elseif BC ~= '' then
lastpart = string.gsub(lastpart, temporal, temporal..BC) --replace BC if needed
end
local catlink = catlinkfollowr( frame, firstpart..' '..oth..tspace..lastpart, oth..BCdisp )
if (minord <= osign) and (osign <= maxord) then
if catlink.rtarget then --a {{Category redirect}} was followed
trackcat(23, 'Category series navigation nordinal redirected')
end
table.insert(navlist, navcenter(i, catlink))
else
table.insert(navlist, hidden)
if listall then
tlistall[#tlistall] = tlistall[#tlistall]..' ('..hidden..')'
end
end
elseif minord <= osign and osign <= maxord then
local catTarget = firstpart..' '..oth..tspace..lastpartNoBC
if BC ~= '' then
catTarget = firstpart..' '..oth..tspace..lastpartNoBC..BC
end
local dispText = oth..BCdisp
local catlink = catlinkfollowr( frame, catTarget, dispText )
if catlink.rtarget then
trackcat(23, 'Category series navigation nordinal redirected')
end
table.insert(navlist, navcenter(i, catlink))
else --out-of-range: hide
table.insert(navlist, hidden)
if listall then
tlistall[#tlistall] = tlistall[#tlistall]..' ('..hidden..')'
end
end
i = i + 1
end
navo = navo..horizontal(navlist)..'\n'
isolatedcat()
if listall then
return listalllinks()
else
return navo..'</div>'
end
end
--[[========================={{ nav_wordinal }}=============================]]
local function nav_wordinal( frame, firstpart, word, lastpart, minimumword, maximumword, ordinal, frame )
--Module:ConvertNumeric.spell_number2() args:
-- ordinal == true : 'second' is output instead of 'two'
-- ordinal == false: 'two' is output instead of 'second'
local ord2eng = require('Module:ConvertNumeric').spell_number2
local eng2ord = require('Module:ConvertNumeric').english_to_ordinal
local th = 'th'
if not ordinal then
th = ''
eng2ord = require('Module:ConvertNumeric').english_to_numeral
end
local capitalize = nil ~= string.match(word, '^%u') --determine capitalization
local nord = eng2ord(string.lower(word)) --operate on/with lowercase, and restore any capitalization later
local lspace = ' ' --assume a leading space (most common)
local tspace = ' ' --assume a trailing space (most common)
if string.match(firstpart, '[%-%(]$') then lspace = '' end --DNE for "Straight-eight engines"-type cats
if string.match(lastpart, '^[%-%)]' ) then tspace = '' end --DNE for "Nine-cylinder engines"-type cats
--sterilize min/max
local maxword_default = 99
local maxword = maxword_default
local minword = 1
if minimumword then
local num = tonumber(minimumword)
if num and 0 < num and num < maxword then
minword = num
else
local ord = eng2ord(minimumword)
if 0 < ord and ord < maxword then
minword = ord
end
end
end
if maximumword then
local num = tonumber(maximumword)
if num and 0 < num and num < maxword then
maxword = num
else
local ord = eng2ord(maximumword)
if 0 < ord and ord < maxword then
maxword = ord
end
end
end
if minword > nord then minword = nord end
if maxword < nord then maxword = nord end
--determine max existing cat
local listoverride = true
local n_max = nord
local m = 1
while m <= 5 do
local n = nord + m
local nth = p.addord(n)
if not ordinal then nth = n end
local w = ord2eng{ num = n, ordinal = ordinal, capitalize = capitalize }
local catlink = catlinkfollowr( frame, firstpart..lspace..w..tspace..lastpart, nth, nil, listoverride )
if catlink.catexists then n_max = n end
m = m + 1
end
--begin navwordinal
local navw = '<div class="toccolours categorySeriesNavigation-range">\n'
local navlist = {}
local prepad = ''
local i = -5 --nav position
while i <= 5 do
local n = nord + i
if n >= 1 then
local nth = p.addord(n)
if not ordinal then nth = n end
if i ~= 0 then --left/right navw
local w = ord2eng{ num = n, ordinal = ordinal, capitalize = capitalize }
local catlink = catlinkfollowr( frame, firstpart..lspace..w..tspace..lastpart, nth )
if minword <= n and n <= maxword then
if catlink.rtarget then --a {{Category redirect}} was followed
trackcat(24, 'Category series navigation wordinal redirected')
end
if n <= n_max or
maxword ~= maxword_default
then
table.insert(navlist, prepad..catlink.navelement) --display normally
prepad = ''
else
local postpad = '<span style="visibility:hidden"> • '..nth..'</span>'
navlist[#navlist] = (navlist[#navlist] or '')..postpad
if listall then tlistall[#tlistall] = tlistall[#tlistall]..' ('..postpad..')' end
end
else
local postpad = '<span style="visibility:hidden"> • '..nth..'</span>'
navlist[#navlist] = (navlist[#navlist] or '')..postpad
if listall then tlistall[#tlistall] = tlistall[#tlistall]..' ('..postpad..')' end
end
else --center navw
table.insert(navlist, prepad..'<b>'..nth..'</b>')
prepad = ''
end
else --n < 1
prepad = prepad..'<span style="visibility:hidden"> • '..'0'..th..'</span>'
if listall then tlistall[#tlistall] = (tlistall[#tlistall] or '')..' (x)' end
end
i = i + 1
end
-- Add the list
navw = navw..horizontal(navlist)..'\n'
isolatedcat()
if listall then
return listalllinks()
else
return navw..'</div>'
end
end
--[[==========================={{ find_var }}===============================]]
local function find_var( pn )
--Extracts the variable text (e.g. 2015, 2015–16, 2000s, 3rd, III, etc.) from a string,
--and returns { ['vtype'] = <'year'|'season'|etc.>, <v> = <2015|2015–16|etc.> }
local pagename = currtitle.text
if pn and pn ~= '' then
pagename = pn
end
local cpagename = 'Ronney:'..pagename --limited-Lua-regex workaround
local d_season = mw.ustring.match(cpagename, ':(%d+yn).+%(%d+[–-]%d+%)') --i.e. "1760yn in the Province of Quebec (1763–1791)"
local y_season = mw.ustring.match(cpagename, ':(%d+) .+%(%d+[–-]%d+%)') --i.e. "1763 establishments in the Province of Quebec (1763–1791)"
local e_season = mw.ustring.match(cpagename, '%s(%d+[–-])$') or --irreg; ending unknown, e.g. "Members of the Scottish Parliament 2021–"
mw.ustring.match(cpagename, '%s(%d+[–-]jiu)$') --e.g. "UK MPs 2019–present"
local season = mw.ustring.match(cpagename, '[:%s%(](%d+[–-]%d+)[%)%s]') or --split in 2 b/c you can't frontier '$'/eos?
mw.ustring.match(cpagename, '[:%s](%d+[–-]%d+)$')
local tvseason = mw.ustring.match(cpagename, 'season (%d+)') or
mw.ustring.match(cpagename, 'series (%d+)') or
mw.ustring.match(cpagename, 'meetup (%d+)')
-- Require at least the two-character core of an ordinal suffix (st, nd, rd, th)
-- so that bare numbers and yn-suffixed decades do not match as nordinals.
local nordinal = string.match(pagename, '%d+[snrt][tdh]') or
string.match(pagename, '%d+oo%f[%A]') or
string.match(pagename, '%d+[dh]%f[%A]')
local decade = mw.ustring.match(cpagename, '[:%s](%d+yn)[%s-]') or
mw.ustring.match(cpagename, '[:%s](%d+yn)$')
local year = mw.ustring.match(cpagename, '[:%s](%d%d%d%d)%s') or --prioritize 4-digit years
mw.ustring.match(cpagename, '[:%s](%d%d%d%d)$') or
mw.ustring.match(cpagename, '[:%s](%d+)%s') or
mw.ustring.match(cpagename, '[:%s](%d+)$') or
--expand/combine exceptions below as needed
mw.ustring.match(cpagename, '[:%s](%d+)-related') or
mw.ustring.match(cpagename, '[:%s](%d+)-cylinder') or
mw.ustring.match(cpagename, '[:%-VW](%d+)%s') --e.g. "Straight-8 engines"
local roman = mw.ustring.match(cpagename, '%s([IVXLCDM]+)%s')
local found = d_season or y_season or e_season or season or tvseason or
nordinal or decade or year or roman
if found then
if string.match(found, '%d%d%d%d%d') == nil then
--return in order of decreasing complexity/chance for duplication
if nordinal and season --i.e. "18th-century establishments in the Province of Quebec (1763–1791)"
then return { ['vtype'] = 'nordinal', ['v'] = nordinal } end
if d_season then return { ['vtype'] = 'decade', ['v'] = d_season } end
if y_season then return { ['vtype'] = 'year', ['v'] = y_season } end
if e_season then return { ['vtype'] = 'ending', ['v'] = e_season } end
if season then return { ['vtype'] = 'season', ['v'] = season } end
if tvseason then return { ['vtype'] = 'tvseason', ['v'] = tvseason } end
if decade then return { ['vtype'] = 'decade', ['v'] = decade } end
if nordinal then return { ['vtype'] = 'nordinal', ['v'] = nordinal } end
if year then return { ['vtype'] = 'year', ['v'] = year } end
if roman then return { ['vtype'] = 'roman', ['v'] = roman } end
end
else
--try wordinals ('zeroth' to 'ninety-ninth' only)
local eng2ord = require('Module:ConvertNumeric').english_to_ordinal
local split = mw.text.split(pagename, ' ')
for i=1, #split do
if eng2ord(split[i]) > -1 then
return { ['vtype'] = 'wordinal', ['v'] = split[i] }
end
end
--try English numerics ('one'/'single' to 'ninety-nine' only)
local eng2num = require('Module:ConvertNumeric').english_to_numeral
local split = mw.text.split(pagename, '[%s%-]') --e.g. "Nine-cylinder engines"
for i=1, #split do
if eng2num(split[i]) > -1 then
return { ['vtype'] = 'enumeric', ['v'] = split[i] }
end
end
end
errors = p.errorclass('Function find_var can\'t find the variable text in category "'..pagename..'".')
return { ['vtype'] = 'error', ['v'] = p.failedcat(errors, 'V') }
end
--[[==========================================================================]]
--[[ Main ]]
--[[==========================================================================]]
function p.csn( frame )
--arg checks & handling
local args = frame:getParent().args
checkforunknownparams(args) --for template args
checkforunknownparams(frame.args) --for #invoke'd args
local cat = args['cat'] --'testcase' alias for catspace
local list = args['list-all-links'] --debugging utility to output all links & followed #Rs
local follow = args['follow-redirects'] --default 'yes'
local testcase = args['testcase']
local testcasegap = args['testcasegap']
local minimum = args['min']
local maximum = args['max']
local skip_gaps = args['skip-gaps']
local show = args['show']
if show and show ~= '' then
if show == 'skip-gaps' then return skipgaps_limit
elseif show == 'term-limit' then return term_limit
elseif show == 'hgap-limit' then return hgap_limit
elseif show == 'ygap-limit' then return ygap_limit end
end
--apply args
local pagename = testcase or cat or currtitle.text
local testcaseindent = ''
if testcasecolon == ':' then testcaseindent = '\n::' end
if follow and follow == 'no' then followRs = false end
if list and list == 'yes' then listall = true end
if skip_gaps and skip_gaps == 'yes' then
skipgaps = true
trackcat(26, 'Category series navigation using skip-gaps parameter')
end
--ns checks
if currtitle.nsText == 'Category' then
if cat and cat ~= '' then
trackcat(1, 'Category series navigation using cat parameter')
end
if testcase and testcase ~= '' then
trackcat(2, 'Category series navigation using testcase parameter')
end
elseif currtitle.nsText == '' then
trackcat(30, 'Category series navigation in mainspace')
end
--find the variable parts of pagename
local findvar = find_var(pagename)
if findvar.vtype == 'error' then --basic format error checking in find_var()
return findvar.v..table.concat(ttrackingcats)
end
local start = string.match(findvar.v, '^%d+')
--the rest is static
local findvar_escaped = string.gsub( findvar.v, '%-', '%%%-')
local firstpart, lastpart = string.match(pagename, '^(.-)'..findvar_escaped..'(.*)$')
if findvar.vtype == 'tvseason' then --double check for cases like "30 Rock (season 3) episodes"
firstpart, lastpart = string.match(pagename, '^(.-season )'..findvar_escaped..'(.*)$')
if firstpart == nil then
firstpart, lastpart = string.match(pagename, '^(.-series )'..findvar_escaped..'(.*)$')
end
if firstpart == nil then
firstpart, lastpart = string.match(pagename, '^(.-meetup )'..findvar_escaped..'(.*)$')
end
end
firstpart = mw.text.trim(firstpart or '')
lastpart = mw.text.trim(lastpart or '')
--call the appropriate nav function, in order of decreasing popularity
if findvar.vtype == 'year' then --e.g. "500", "2001"; nav_year..nav_decade; ~75% of cats
local nav1 = nav_year( frame, firstpart, start, lastpart, minimum, maximum )..testcaseindent..table.concat(ttrackingcats)
local dec = math.floor(findvar.v/10)
local decadecat = nil
local firstpart_dec = firstpart
if firstpart_dec ~= '' then
firstpart_dec = firstpart_dec..' the'
elseif firstpart_dec == 'AD' and dec <= 1 then
firstpart_dec = ''
if dec == 0 then dec = '' end
end
local decade = dec..'0yn '
decadecat = mw.text.trim( firstpart_dec..' '..decade..lastpart )
local exists = catexists(decadecat)
if exists then
navborder = false
local nav2 = nav_decade( frame, firstpart_dec, decade, lastpart, minimum, maximum )..testcaseindent..table.concat(ttrackingcats)
return wrap( nav1, nav2 )
elseif ttrackingcats[16] ~= '' then --nav_year isolated; check nav_hyphen (e.g. UK MPs 1974, Moldovan MPs 2009, etc.)
local hyphen = '–'
local finish = start
local nav2 = nav_hyphen( frame, start, hyphen, finish, firstpart, lastpart, minimum, maximum, testcasegap )..testcaseindent..table.concat(ttrackingcats)
if ttrackingcats[16] ~= '' then return wrap( nav1 ) --still isolated; rv to nav_year
else return wrap( nav2 ) end
else --regular nav_year
return wrap( nav1 )
end
elseif findvar.vtype == 'decade' then --e.g. "0yn", "2010yn"; nav_decade..nav_nordinal; ~12% of cats
local nav1 = nav_decade( frame, firstpart, start, lastpart, minimum, maximum )..testcaseindent..table.concat(ttrackingcats)
local decade = tonumber(string.match(findvar.v, '^(%d+)yn'))
local century = math.floor( ((decade-1)/100) + 1 ) --from {{CENTURY}}
if century == 0 then century = 1 end --no 0th century
if string.match(decade, '00$') then
century = century + 1 --'2000' is in the 20th, but the rest of the 2000s is in the 21st
end
local clastpart = ' century '..lastpart
local centurycat = mw.text.trim( firstpart..' '..p.addord(century)..clastpart )
local exists = catexists(centurycat)
if not exists then --check for hyphenated century
clastpart = '-century '..lastpart
centurycat = mw.text.trim( firstpart..' '..p.addord(century)..clastpart )
exists = catexists(centurycat)
end
if exists then
navborder = false
trackcat(29, 'Category series navigation decade and century')
local nav2 = nav_nordinal( frame, firstpart, century, clastpart, minimum, maximum )..testcaseindent..table.concat(ttrackingcats)
return wrap( nav1, nav2 )
else
return wrap( nav1 )
end
elseif findvar.vtype == 'nordinal' then --e.g. "1st", "99th"; ~7.5% of cats
return wrap( nav_nordinal( frame, firstpart, start, lastpart, minimum, maximum )..testcaseindent..table.concat(ttrackingcats) )
elseif findvar.vtype == 'season' then --e.g. "1–4", "1999–2000", "2001–02", "2001–2002", "2005–2010", etc.; ~5.25%
local hyphen, finish = mw.ustring.match(findvar.v, '%d([–-])(%d+)') --ascii 150 & 45 (ndash & keyboard hyphen); mw req'd
return wrap( nav_hyphen( frame, start, hyphen, finish, firstpart, lastpart, minimum, maximum, testcasegap )..testcaseindent..table.concat(ttrackingcats) )
elseif findvar.vtype == 'tvseason' then --e.g. "1", "15" but preceded with "season" or "series"; <1% of cats
return wrap( nav_tvseason( frame, firstpart, start, lastpart, maximum )..testcaseindent..table.concat(ttrackingcats) ) --"minimum" defaults to 1
elseif findvar.vtype == 'wordinal' then --e.g. "first", "ninety-ninth"; <<1% of cats
local ordinal = true
return wrap( nav_wordinal( frame, firstpart, findvar.v, lastpart, minimum, maximum, ordinal, frame )..testcaseindent..table.concat(ttrackingcats) )
elseif findvar.vtype == 'enumeric' then --e.g. "one", "ninety-nine"; <<1% of cats
local ordinal = false
return wrap( nav_wordinal( frame, firstpart, findvar.v, lastpart, minimum, maximum, ordinal, frame )..testcaseindent..table.concat(ttrackingcats) )
elseif findvar.vtype == 'roman' then --e.g. "I", "XXVIII"; <<1% of cats
return wrap( nav_roman( frame, firstpart, findvar.v, lastpart, minimum, maximum )..testcaseindent..table.concat(ttrackingcats) )
elseif findvar.vtype == 'ending' then --e.g. "2021–" (irregular; ending unknown); <<<1% of cats
local hyphen, finish = mw.ustring.match(findvar.v, '%d([–-])present$'), -1 --ascii 150 & 45 (ndash & keyboard hyphen); mw req'd
if hyphen == nil then
hyphen, finish = mw.ustring.match(findvar.v, '%d([–-])$'), 0 --0/-1 are hardcoded switches for nav_hyphen()
end
return wrap( nav_hyphen( frame, start, hyphen, finish, firstpart, lastpart, minimum, maximum, testcasegap )..testcaseindent..table.concat(ttrackingcats) )
else --malformed
errors = p.errorclass('Failed to determine the appropriate nav function from malformed season "'..findvar.v..'". ')
return p.failedcat(errors, 'N')..table.concat(ttrackingcats)
end
end
return p
5ayboqcnpecdt0onp45dka43i14rhvs
Ronney:Mannin rere milley bleeaney
14
38054
387248
381268
2026-08-03T02:07:55Z
MacTire02
219
ronney elley
387248
wikitext
text/x-wiki
[[Ronney:Shennaghys Vannin rere earish| 4]]
[[Ronney:Yn Oarpey rere milley bleeaney]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit rere milley bleeaney|Mannin]]
5i3i28f08ber13ayoiv3pjwcaet0nnk
Ronney:Mannin 'sy 3oo milley bleeaney
14
38055
387263
381267
2026-08-03T02:30:37Z
MacTire02
219
ronney elley
387263
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:Mannin rere milley bleeaney|3]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 3oo milley bleeaney|Mannin]]
[[Ronney:Yn Oarpey 'sy 3oo milley bleeaney]]
[[Ronney:3oo milley bleeaney rere çheer]]
dxe1w6lcgu4911jv4uv9r9j6xdi70sj
Ronney:Mannin 'sy 2h villey bleeaney
14
38056
387245
381266
2026-08-03T01:45:35Z
MacTire02
219
ronney elley
387245
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:Mannin rere milley bleeaney|2]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 2h villey bleeaney|Mannin]]
[[Ronney:Yn Oarpey 'sy 2h villey bleeaney]]
[[Ronney:2h villey bleeaney rere çheer]]
h6gtsapmwwkfyn1duxsxsl8pb3g0z5v
Ronney:Mannin 'sy vlein 2011
14
41687
387289
371769
2026-08-03T03:15:32Z
MacTire02
219
ronney elley
387289
wikitext
text/x-wiki
{{Category series navigation}}
[[Ronney:2011 rere çheer|Mannin]]
[[Ronney:Mannin 'sy 21d eash rere blein|11]]
[[Ronney:Mannin ayns ny 2010yn| 1]]
[[Ronney:Yn Oarpey 'sy vlein 2011|Mannin]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy vlein 2011]]
360ndftpdwm8gvl4nhzo1ykkpqkg1md
Ronney:Yn Oarpey 'sy 21d eash rere blein
14
50625
387295
380455
2026-08-03T03:25:43Z
MacTire02
219
MacTire02 moved page [[Ronney:Yn Oarpey 'sy 21d eash rere çheer]] to [[Ronney:Yn Oarpey 'sy 21d eash rere blein]] without leaving a redirect
380455
wikitext
text/x-wiki
{{navseasoncats}}
[[Ronney:Yn Oarpey 'sy 21d eash| Bleeantyn]]
[[Ronney:Yn Oarpey rere blein|21]]
[[Ronney:Bleeantyn y 21d eash rere mooar-rheynn|Oarpey]]
kesjsdy7zmtorr1clk2fsgib24g22it
Ronney:Bunneeaghtyn ayns Mannin 'sy vlein 1951
14
53855
387221
2026-08-03T00:55:19Z
MacTire02
219
ronney noa
387221
wikitext
text/x-wiki
{{Category series navigation}}
[[Ronney:Bunneeaghtyn 'sy vlein 1951 rere çheer|Mannin]]
[[Ronney:Bunneeaghtyn ayns Mannin ayns ny 1950yn| 1]]
[[Ronney:Bunneeaghtyn ayns Mannin rere blein|1951]]
[[Ronney:Mannin 'sy vlein 1951]]
[[Ronney:Bunneeaghtyn 'syn Impiraght Ghoaldagh 'sy vlein 1951|Mannin]]
[[Ronney:Bunneeaghtyn 'syn Oarpey 'sy vlein 1951|Mannin]]
fwztoh3ag55y4kk6a2x1ktfg3t8hun4
Ronney:Bunneeaghtyn 'sy vlein 1951 rere çheer
14
53856
387225
2026-08-03T01:06:50Z
MacTire02
219
ronney noa
387225
wikitext
text/x-wiki
{{Estcatbycountry}}
1qc8xa7cr0hcugv54hggjm4ojxdyjz1
Ronney:Bunneeaghtyn ayns ny 1950yn rere çheer
14
53857
387226
2026-08-03T01:07:52Z
MacTire02
219
ronney noa
387226
wikitext
text/x-wiki
{{category series navigation}}
{{Commons category|1950s establishments by country|{{PAGENAME}}}}
[[Ronney:Bunneeaghtyn 'sy 20oo eash rere çheer| 1950]]
[[Ronney:Bunneeaghtyn ayns ny 1950yn| Cheer]]
[[Ronney:1950yn rere çheer| Bunneeaghtyn]]
[[Ronney:Bunneeaghtyn rere jeihaght as çheer|1950]]
djjr2q8jmdusv5fp0g3htkocuhvijto
Ronney:1951 rere çheer
14
53858
387229
2026-08-03T01:15:10Z
MacTire02
219
ronney noa
387229
wikitext
text/x-wiki
{{Year by country category}}
dbr7g9yldivw092rdzcdrzyp4x8j79g
Ronney:Bunneeaghtyn ayns Mannin ayns ny 1950yn
14
53859
387230
2026-08-03T01:16:13Z
MacTire02
219
ronney noa
387230
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:Bunneeaghtyn ayns ny 1950yn rere çheer|Mannin]]
[[Ronney:Bunneeaghtyn ayns Mannin 'sy 20oo eash| 1950]]
[[Ronney:Bunneeaghtyn ayns Mannin rere jeihaght|1950]]
[[Ronney:Mannin ayns ny 1950yn]]
[[Ronney:Bunneeaghtyn 'syn Oarpey ayns ny 1950yn|Mannin]]
[[Ronney:Bunneeaghtyn 'syn Impiraght Ghoaldagh ayns ny 1950yn|Mannin]]
i2greedyxjekuj5i6udmfjyhmw1wrd2
Ronney:Bunneeaghtyn 'syn Impiraght Ghoaldagh ayns ny 1950yn
14
53860
387231
2026-08-03T01:19:24Z
MacTire02
219
ronney noa
387231
wikitext
text/x-wiki
{{category series navigation}}
[[Ronney:Bunneeaghtyn ayns ny 1950yn rere çheer|Ghoaldagh, Impiraght]]
[[Ronney:Bunneeaghtyn 'syn Impiraght Ghoaldagh 'sy 20oo eash| 1950]]
[[Ronney:Bunneeaghtyn 'syn Impiraght Ghoaldagh rere jeihaght|1950]]
[[Ronney:Yn Impiraght Ghoaldagh ayns ny 1950yn]]
[[Ronney:Bunneeaghtyn 'sy Reeriaght Unnaneysit ayns ny 1950yn| Impiraght]]
9c4a8wncpqmt3kts2my8zewv486t85i
Ronney:Yn Impiraght Ghoaldagh ayns ny 1950yn
14
53861
387232
2026-08-03T01:21:10Z
MacTire02
219
ronney noa
387232
wikitext
text/x-wiki
{{Navseasoncats}}
{{CatAutoTOC}}
[[Ronney:1950yn rere çheer|Ghoaldagh, Impiragh]]
[[Ronney:Yn Impiraght Ghoaldagh 'sy 20oo eash| 1950]]
[[Ronney:Yn Reeriaght Unnaneysit ayns ny 1950yn|-Impiraght]]
[[ROnney:Yn Impiraght Ghoaldagh rere jeihaght|1950]]
6wu93dy97zbkxvltsbz90vs9b0lrhcf
Ronney:Yn Impiraght Ghoaldagh rere jeihaght
14
53862
387233
2026-08-03T01:24:32Z
MacTire02
219
ronney noa
387233
wikitext
text/x-wiki
{{CatRel|Croghaneyn y Reeriaght Unnaneysit rere jeihaght}}
{{Commons category|British Empire by decade|Yn Impiraght Ghoaldagh rere jeihaght}}
{{DEFAULTSORT:Ghoaldagh, Impiraght}}
[[Ronney:Jeihaghtyn rere çheer]]
[[Ronney:Shennaghys yn Impiraght Ghoaldagh rere earish|Jeihaght]]
[[Ronney:Yn Aishey rere jeihaght]]
[[Ronney:Yn Affrick rere jeihaght]]
[[Ronney:Yn Oarpey rere jeihaght]]
[[Ronney:America Hwoaie rere jeihaght]]
[[Ronney:America Yiass rere jeihaght]]
[[Ronney:Yn Aarkeylann rere jeihaght]]
[[Ronney:Yn Reeriaght Unnaneysit rere jeihaght|-Impiraght]]
[[Ronney:Jeihaghtyn rere impiraght|Ghoaldagh]]
f3dtzxgkuus3unecvqctav0r52mbolc
Ronney:Shennaghys yn Impiraght Ghoaldagh rere earish
14
53863
387234
2026-08-03T01:25:53Z
MacTire02
219
ronney noa
387234
wikitext
text/x-wiki
[[Ronney:Shennaghys yn Impiraght Ghoaldagh| Earish]]
[[Ronney:Eear-heeraghyn rere earish|Ghoaldagh, Impiraght]]
[[Ronney:Shennaghys y Reeriaght Unnaneysit rere earish|•Impiraght]]
5zfsg17h232s5vca2ffmxz16szz5a6q
Ronney:Shennaghys yn Impiraght Ghoaldagh
14
53864
387235
2026-08-03T01:27:12Z
MacTire02
219
ronney noa
387235
wikitext
text/x-wiki
{{Commons category|History of the British Empire|Shennaghys yn Impiraght Ghoaldagh}}
[[Ronney:Yn Impiraght Ghoaldagh]]
[[Ronney:Shennaghys rere impiraght|Ghoaldagh]]
[[Ronney:Shennaghys rere eear-heer|Ghoaldagh, Impiraght]]
oe4ymlw5xc4opz4wi3aqp1k75fw9bon
Ronney:Yn Affrick rere jeihaght
14
53865
387236
2026-08-03T01:28:01Z
MacTire02
219
ronney noa
387236
wikitext
text/x-wiki
{{Commons category|Decades in Africa|Yn Affrick rere jeihaght}}
{{CategoryTOC}}
[[Ronney:Jeihaghtyn rere mooar-rheynn|Affrick]]
[[Ronney:Shennaghys yn Affrick rere earish| Jeihaght]]
nykmkz0peovomhudzkrt8j9lijd6p64
Ronney:Yn Aarkeylann rere jeihaght
14
53866
387237
2026-08-03T01:28:42Z
MacTire02
219
ronney noa
387237
wikitext
text/x-wiki
{{Commons category|Decades in Oceania|Yn Aarkeylann rere jeihaght}}
{{CategoryTOC}}
[[Ronney:Jeihaghtyn rere mooar-rheynn|Aarkeylann]]
[[Ronney:Shennaghys yn Aarkeylann rere earish| Jeihaght]]
9k3519lxrmogwc19bwcftfux2x6n8y9
Ronney:America Yiass rere jeihaght
14
53867
387238
2026-08-03T01:29:25Z
MacTire02
219
ronney noa
387238
wikitext
text/x-wiki
{{Commons category|Decades in South America|America Yiass rere jeihaght}}
{{CategoryTOC}}
[[Ronney:Jeihaghtyn rere mooar-rheynn|America Yiass]]
[[Ronney:Shennaghys America Yiass rere earish| Jeihaght]]
60a07v73rka3buy0uwq4tg2u32xb5ow
Ronney:Yn Reeriaght Unnaneysit rere jeihaght
14
53868
387239
2026-08-03T01:31:17Z
MacTire02
219
ronney noa
387239
wikitext
text/x-wiki
{{category see also|Yn Reeriaght Unnaneysit rere blein|Yn Reeriaght Unnaneysit rere eash}}
{{Commons category|United Kingdom by decade|Yn Reeriaght Unnaneysit rere jeihaght}}
[[Ronney:Shennaghys y Reeriaght Unnaneysit rere earish| 2]]
[[Ronney:Jeihaghtyn rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Yn Oarpey rere jeihaght|Reeriaght Unnaneysit]]
bksqh8y5fc9st6q8ziqo28itoulb3zb
Ronney:Yn Reeriaght Unnaneysit ayns ny 1950yn
14
53869
387240
2026-08-03T01:34:30Z
MacTire02
219
ronney noa
387240
wikitext
text/x-wiki
{{Commons category|United Kingdom in the 1950s|Yn Reeriaght Unnaneysit ayns ny 1950yn}}
{{Navseasoncats}}
[[Ronney:Yn Reeriaght Unnaneysit 'sy 20oo eash| 1950]]
[[Ronney:Yn Reeriaght Unnaneysit rere jeihaght|1950]]
[[Ronney:1950yn rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Yn Oarpey ayns ny 1950yn|Reeriaght Unnaneysit]]
[[Ronney:Shennaghys co-emshiragh y Reeriaght Unnaneysit| 1950]]
5e11nhc2f2bvjhpxdsl959a4nemtfnx
Ronney:Shennaghys co-emshiragh y Reeriaght Unnaneysit
14
53870
387241
2026-08-03T01:38:29Z
MacTire02
219
ronney noa
387241
wikitext
text/x-wiki
*'''{{C|Shennaghys co-emshiragh}}''' y '''{{C|Shennaghys y Reeriaght Unnaneysit rere earish|Reeriaght Unnaneysit}}'''.
:::::*From the {{C|Eiyrtys y Nah Chaggey Dowanagh|eiyrtys y Nah Chaggey Dowanagh}} ayns ny {{C|Yn Reeriaght Unnaneysit ayns ny 1940yn|1940yn}} jeianagh, feie eash y {{C|Yn Caggey Feayr|Chaggey Feayr}}, derrey'n laa t'ayn jiu 'sy {{C|Yn Reeriaght Unnaneysit 'sy 21d eash|21d eash}}.
{{preceding category|Ronney:Shennaghys noa-emshiragh y Reeriaght Unnaneysit}}
{{Catmain|Shennaghys y Reeriaght Unnaneysit (1945–jiu)}}
[[Ronney:Shennaghys y Reeriaght Unnaneysit rere earish|Co-emshiragh]]
[[Ronney:Shennaghys co-emshiragh rere çheer|Reeriaght Unnaneysit]]
s1dcmxwjkb49qhum4fwkr0x3ekezhr7
Ronney:Yn Reeriaght Unnaneysit 'sy 20oo eash
14
53871
387242
2026-08-03T01:42:20Z
MacTire02
219
ronney noa
387242
wikitext
text/x-wiki
{{Navseasoncats}}
{{Commons category|United Kingdom in the 20th century|Yn Reeriaght Unnaneysit 'sy 20oo eash}}
[[Ronney:Yn Reeriaght Unnaneysit rere eash|20]]
[[Ronney:20oo eash rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Yn Oarpey 'sy 20oo eash|Reeriaght Unnaneysit]]
[[Ronney:Yn Reeriaght Unnaneysit 'sy 2h villey bleeaney]]
[[Ronney:Shennaghys noa-emshiragh y Reeriaght Unnaneysit| 20]]
dltqk4lc3y3p44wul6p0qcf9hg3vtbm
387243
387242
2026-08-03T01:43:15Z
MacTire02
219
catsort
387243
wikitext
text/x-wiki
{{Navseasoncats}}
{{Commons category|United Kingdom in the 20th century|Yn Reeriaght Unnaneysit 'sy 20oo eash}}
[[Ronney:Yn Reeriaght Unnaneysit rere eash|20]]
[[Ronney:20oo eash rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Yn Oarpey 'sy 20oo eash|Reeriaght Unnaneysit]]
[[Ronney:Yn Reeriaght Unnaneysit 'sy 2h villey bleeaney|20]]
[[Ronney:Shennaghys noa-emshiragh y Reeriaght Unnaneysit| 20]]
2dz3hmmwu4spwrdja061h1ql7hqyceo
Ronney:Yn Reeriaght Unnaneysit 'sy 2h villey bleeaney
14
53872
387244
2026-08-03T01:44:05Z
MacTire02
219
ronney noa
387244
wikitext
text/x-wiki
{{Navseasoncats}}
[[Ronney:2h villey bleeaney rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Yn Reeriaght Unnaneysit rere milley bleeaney|2]]
[[Ronney:Yn Oarpey 'sy 2h villey bleeaney|Reeriaght Unnaneysit]]
qdjecslc6bmhcubmdtnyumxo6b8qiys
Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 2h villey bleeaney
14
53873
387246
2026-08-03T01:46:22Z
MacTire02
219
ronney noa
387246
wikitext
text/x-wiki
[[Ronney:Croghaneyn y Reeriaght Unnaneysit rere milley bleeaney|2]]
[[Ronney:Yn Reeriaght Unnaneysit 'sy 2h villey bleeaney| Croghaneyn]]
88iyfzazlxfxi3x56epudyzhu4x8aq2
Ronney:Croghaneyn y Reeriaght Unnaneysit rere milley bleeaney
14
53874
387247
2026-08-03T02:07:04Z
MacTire02
219
ronney noa
387247
wikitext
text/x-wiki
[[Ronney:Shennaghys chroghaneyn y Reeriaght Unnaneysit rere earish| Milley bleeaney]]
[[Ronney:Yn Reeriaght Unnaneysit rere milley bleeaney|+Croghaneyn]]
[[Ronney:Milley bleeantyn rere çheer|+Croghaneyn y Reeriaght Unnaneysit]]
bcfyhal8vxkh57psx65ams6xd1q7lpd
Ronney:Yn Reeriaght Unnaneysit rere milley bleeaney
14
53875
387249
2026-08-03T02:10:03Z
MacTire02
219
ronney noa
387249
wikitext
text/x-wiki
[[Ronney:Milley bleeantyn rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Shennaghys y Reeriaght Unnaneysit rere earish| 0]]
[[Ronney:Yn Oarpey rere milley bleeaney|Reeriaght Unnaneysit]]
2wpr8to43wvs0ii0cjf04v13a9tpoji
Ronney:Shennaghys chroghaneyn y Reeriaght Unnaneysit rere earish
14
53876
387250
2026-08-03T02:11:43Z
MacTire02
219
ronney noa
387250
wikitext
text/x-wiki
[[Ronney:Shennaghys chroghaneyn y Reeriaght Unnaneysit| Earish]]
[[Ronney:Shennaghys y Reeriaght Unnaneysit rere earish|•Chroghaneyn]]
ngzfrjr8ey83v95lulca9blx8vn07vs
387251
387250
2026-08-03T02:12:47Z
MacTire02
219
ronney elley
387251
wikitext
text/x-wiki
[[Ronney:Shennaghys rere croghane y Reeriaght Unnaneysit| Earish]]
[[Ronney:Shennaghys y Reeriaght Unnaneysit rere earish|•Chroghaneyn]]
4u5t4ndp0dfq1o0pxnejcmrkvx5fr1l
Ronney:Shennaghys rere croghane y Reeriaght Unnaneysit
14
53877
387252
2026-08-03T02:13:32Z
MacTire02
219
ronney noa
387252
wikitext
text/x-wiki
[[Ronney:Croghaneyn y Reeriaght Unnaneysit]]
[[Ronney:Shennaghys rere croghane|*Reeriaght Unnaneysit]]
[[Ronney:Shennaghys y Reeriaght Unnaneysit rere ynnydys|+]]
tgw7w7qx5mblbj4sqnof0ew50pnarnn
Ronney:Shennaghys y Reeriaght Unnaneysit rere ynnydys
14
53878
387254
2026-08-03T02:16:48Z
MacTire02
219
ronney noa
387254
wikitext
text/x-wiki
{{moir-ronney}}
[[Ronney:Shennaghys y Reeriaght Unnaneysit rere boayl|Ynnydys]]
[[Ronney:Ronnaghyn rere ynnydys 'sy Reeriaght Unnaneysit]]
[[Ronney:Shennaghys ynnydagh y Reeriaght Unnaneysit|Ynnydys]]
4zgxzp4isns7dbhtq0fz4812cg8lm29
Ronney:Shennaghys ynnydagh y Reeriaght Unnaneysit
14
53879
387255
2026-08-03T02:18:41Z
MacTire02
219
ronney noa
387255
wikitext
text/x-wiki
[[Ronney:Shennaghys ny h-Ellanyn Goaldagh|Ynnydagh]]
[[Ronney:Shennaghys ynnydagh|Reeriaght Unnaneysit]]
[[Ronney:Shennaghys-oaylleeaght y Reeriaght Unnaneysit|Ynnydagh]]
h26iw2kadc6w25vih2d6mtjhsv5qcss
Ronney:Shennaghys-oaylleeaght y Reeriaght Unnaneysit
14
53880
387256
2026-08-03T02:20:17Z
MacTire02
219
ronney noa
387256
wikitext
text/x-wiki
[[Ronney:Shennaghys-oaylleeaght rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Shennaghys y Reeriaght Unnaneysit]]
[[Ronney:Shennaghys-oaylleeaght yn Oarpey|Reeriaght Unnaneysit]]
fgqa3j8os1g2w2yd2wqv2ie9w0s27a9
Ronney:Shennaghys ynnydagh
14
53881
387257
2026-08-03T02:21:50Z
MacTire02
219
ronney noa
387257
wikitext
text/x-wiki
{{Commons category|Local history|Shennaghys ynnydagh}}
{{catmain}}
[[Ronney:Magheryn shennaghys|Ynnydagh]]
0zpj5qpbqijhbcfx97ijsuhjid5lae3
Ronney:Ronnaghyn rere ynnydys 'sy Reeriaght Unnaneysit
14
53882
387258
2026-08-03T02:23:48Z
MacTire02
219
ronney noa
387258
wikitext
text/x-wiki
[[Ronney:Çheer-oaylleeaght y Reeriaght Unnaneysit|:]]
[[Ronney:Ronnaghyn rere çheer as ynnyds|Reeriaght Unnaneysit]]
{{catmore|Yn Reeriaght Unnaneysit}}
{{moir-ronney}}
puq50vsrkz1g84i2ofnkdqoe9wmfycg
387259
387258
2026-08-03T02:25:04Z
MacTire02
219
++
387259
wikitext
text/x-wiki
[[Ronney:Çheer-oaylleeaght y Reeriaght Unnaneysit|:]]
[[Ronney:Ronnaghyn rere çheer as ynnydys|Reeriaght Unnaneysit]]
{{catmore|Yn Reeriaght Unnaneysit}}
{{moir-ronney}}
2asajopucg0cgg62swujnb0o26qwulx
Ronney:Ronnaghyn rere çheer as ynnydys
14
53883
387260
2026-08-03T02:26:15Z
MacTire02
219
ronney noa
387260
wikitext
text/x-wiki
{{moir-ronney}}
[[Ronney:Ronnaghyn rere çheer as boayl cummaltit| Ynnydys]]
mefrabvwm8odzm5agxrt96dq588q5kj
Ronney:Shennaghys y Reeriaght Unnaneysit rere boayl
14
53884
387261
2026-08-03T02:27:49Z
MacTire02
219
ronney noa
387261
wikitext
text/x-wiki
{{moir-ronney}}
[[Ronney:Shennaghys y Reeriaght Unnaneysit| Boayl]]
[[Ronney:Shennaghys rere boayl|Reeriaght Unnaneysit]]
3vgm4rnxre1ghcsw8yj0qqx1bnjmtit
Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 3oo milley bleeaney
14
53885
387262
2026-08-03T02:29:18Z
MacTire02
219
ronney noa
387262
wikitext
text/x-wiki
[[Ronney:Croghaneyn y Reeriaght Unnaneysit rere milley bleeaney|3]]
[[Ronney:Yn Reeriaght Unnaneysit 'sy 3oo milley bleeaney| Croghaneyn]]
34m7uuljo2jnlf6qx2a63032cf2hob8
Ronney:Yn Reeriaght Unnaneysit 'sy 3oo milley bleeaney
14
53886
387264
2026-08-03T02:31:44Z
MacTire02
219
ronney noa
387264
wikitext
text/x-wiki
{{Navseasoncats}}
[[Ronney:3oo milley bleeaney rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Yn Reeriaght Unnaneysit rere milley bleeaney|3]]
[[Ronney:Yn Oarpey 'sy 3oo milley bleeaney|Reeriaght Unnaneysit]]
a9od7cusohc0jyd4us1ga8mga3gfnqc
Ronney:Yn Reeriaght Unnaneysit rere eash
14
53887
387265
2026-08-03T02:33:28Z
MacTire02
219
ronney noa
387265
wikitext
text/x-wiki
{{moir-ronney}}
{{Commons category}}
[[Ronney:Eashyn rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Shennaghys y Reeriaght Unnaneysit rere earish| 1]]
[[Ronney:Yn Oarpey rere eash|Reeriaght Unnaneysit]]
ij91e96qy5s5w7l5qn5gt5rzj3s4ubu
Ronney:Yn Impiraght Ghoaldagh 'sy 20oo eash
14
53888
387266
2026-08-03T02:35:54Z
MacTire02
219
ronney noa
387266
wikitext
text/x-wiki
{{Category series navigation}}
{{Category pair|Yn Impiraght Ghoaldagh 'sy 19oo eash|Croghaneyn y Reeriaght Unnaneysit 'sy 21d eash}}
[[Ronney:Yn Impiraght Ghoaldagh rere eash|20]]
[[Ronney:20oo eash rere çheer|Ghoaldagh, Impiraght]]
[[Ronney:Yn Reeriaght Unnaneysit 'sy 20oo eash| Impiraght]]
dqnzslyx3xgxc149c1l0uz153i0pn6r
Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 21d eash
14
53889
387268
2026-08-03T02:39:14Z
MacTire02
219
ronney noa
387268
wikitext
text/x-wiki
{{Category series navigation}}
{{Category see also|Yn Impiraght Ghoaldagh 'sy 20oo eash}}
[[Ronney:Yn Impiraght Ghoaldagh rere eash|21]]
[[Ronney:21d eash rere çheer|Ghoaldagh, Impiraght]]
[[Ronney:Yn Reeriaght Unnaneysit 'sy 21d eash| Impiraght]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 3oo milley bleeaney|21]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit rere eash|21]]
fobfu6ur7ulpuzfkx6yawd9rggux6kl
Ronney:Yn Reeriaght Unnaneysit 'sy 21d eash
14
53890
387269
2026-08-03T02:42:09Z
MacTire02
219
ronney noa
387269
wikitext
text/x-wiki
{{Commons category|United Kingdom in the 21st century|Yn Reeriaght Unnaneysit 'sy 21d eash}}
{{Navseasoncats}}
[[Ronney:Yn Reeriaght Unnaneysit rere eash|21]]
[[Ronney:Shennaghys co-emshiragh y Reeriaght Unnaneysit|2000]]
[[Ronney:21d eash rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Yn Oarpey 'sy 21d eash|Reeriaght Unnaneysit]]
[[Ronney:3oo milley bleeaney 'sy Reeriaght Unnaneysit|21]]
cdigg86iyw9gi0487w44lpl8dfea5df
387270
387269
2026-08-03T02:46:19Z
MacTire02
219
ronney elley
387270
wikitext
text/x-wiki
{{Commons category|United Kingdom in the 21st century|Yn Reeriaght Unnaneysit 'sy 21d eash}}
{{Navseasoncats}}
[[Ronney:Yn Reeriaght Unnaneysit rere eash|21]]
[[Ronney:Shennaghys co-emshiragh y Reeriaght Unnaneysit|2000]]
[[Ronney:21d eash rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Yn Oarpey 'sy 21d eash|Reeriaght Unnaneysit]]
[[Ronney:Yn Reeriaght Unnaneysit 'sy 3oo milley bleeaney|21]]
0yd5a4wejh060pf35yrg76tvnm2ds4k
Ronney:Croghaneyn y Reeriaght Unnaneysit ayns ny 2020yn
14
53891
387272
2026-08-03T02:50:04Z
MacTire02
219
ronney noa
387272
wikitext
text/x-wiki
{{Category series navigation}}
[[Ronney:Croghaneyn y Reeriaght Unnaneysit rere jeihaght|2020]]
[[Ronney:Yn Reeriaght Unnaneysit ayns ny 2020yn|-Croghaneyn]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 21d eash|2020]]
ndt62dywi0kwrkz2j2lj6guvjic5cgi
Ronney:Croghaneyn y Reeriaght Unnaneysit rere jeihaght
14
53892
387273
2026-08-03T02:51:46Z
MacTire02
219
ronney noa
387273
wikitext
text/x-wiki
{{CatRel|Yn Impiraght Ghoaldagh rere jeihaght}}
[[Ronney:Jeihaghtyn rere çheer|+Croghaneyn y Reeriaght Unnaneysit]]
[[Ronney:Shennaghys chroghaneyn y Reeriaght Unnaneysit rere earish| Jeihaght]]
[[Ronney:Yn Reeriaght Unnaneysit rere jeihaght|-Croghaneyn]]
73sf5sp6xm4y6fwbhwta92yo8wssekr
Ronney:Yn Reeriaght Unnaneysit ayns ny 2020yn
14
53893
387274
2026-08-03T02:53:30Z
MacTire02
219
ronney noa
387274
wikitext
text/x-wiki
{{Navseasoncats}}
{{Category main article}}
[[Ronney:2020yn rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Yn Reeriaght Unnaneysit rere jeihaght|2020]]
[[Ronney:Yn Oarpey ayns ny 2020yn|Reeriaght Unnaneysit]]
[[Ronney:Yn Reeriaght Unnaneysit 'sy 21d eash|2020]]
kznor8tshq10d5dj7rcwofxx3f2d4zf
Ronney:Yn Oarpey ayns ny 2020yn
14
53894
387275
2026-08-03T02:55:31Z
MacTire02
219
ronney noa
387275
wikitext
text/x-wiki
{{Commons category|Europe in the 2020s|Yn Oarpey ayns ny 2020yn}}
{{Navseasoncats}}
{{Category main article}}
{{CatAutoTOC}}
[[Ronney:2020yn rere mooar-rheynn|Oarpey]]
[[Ronney:Yn Oarpey rere jeihaght|2020]]
[[Ronney:Yn Oarpey 'sy 21d eash|2020]]
iho70fy1f83sh9etrjyfol0fbs4uf1r
Ronney:2020yn rere mooar-rheynn
14
53895
387276
2026-08-03T02:57:33Z
MacTire02
219
ronney noa
387276
wikitext
text/x-wiki
{{Commons category|2020s by continent|2020yn rere mooar-rheynn}}
[[Ronney:2020yn| Mooar-rheynn]]
[[Ronney:Jeihaghtyn rere mooar-rheynn]]
[[Ronney:21d eash rere mooar-rheynn]]
[[Ronney:Shennaghys co-emshiragh rere mooar-rheynn]]
1gk5j3o77v5qtcf4e7ajphxj12i8led
387287
387276
2026-08-03T03:13:07Z
MacTire02
219
+clowan
387287
wikitext
text/x-wiki
{{category series navigation}}
{{Commons category|2020s by continent|2020yn rere mooar-rheynn}}
[[Ronney:2020yn| Mooar-rheynn]]
[[Ronney:Jeihaghtyn rere mooar-rheynn]]
[[Ronney:21d eash rere mooar-rheynn]]
[[Ronney:Shennaghys co-emshiragh rere mooar-rheynn]]
anfls1hzlo5iluhzst7z37gd80e6fiq
Ronney:2020yn rere çheer
14
53896
387277
2026-08-03T02:59:31Z
MacTire02
219
ronney noa
387277
wikitext
text/x-wiki
{{Commons category|2020s by country|2020yn rere çheer}}
[[Ronney:Jeihaghtyn y 21d eash rere çheer|2020]]
[[Ronney:Shennaghys co-emshiragh rere çheer| 2020]]
[[Ronney:2020yn|.Cheer]]
kivepbnvb1laq2lxjo5kvj6kd1rpvyf
387285
387277
2026-08-03T03:11:25Z
MacTire02
219
+clowan
387285
wikitext
text/x-wiki
{{category series navigation}}
{{Commons category|2020s by country|2020yn rere çheer}}
[[Ronney:Jeihaghtyn y 21d eash rere çheer|2020]]
[[Ronney:Shennaghys co-emshiragh rere çheer| 2020]]
[[Ronney:2020yn|.Cheer]]
riogucggpqzpxpsb0fq9ki9qqqxbep8
Ronney:Jeihaghtyn y 21d eash rere çheer
14
53897
387278
2026-08-03T03:01:44Z
MacTire02
219
ronney noa
387278
wikitext
text/x-wiki
{{moir-ronney}}
{{Navseasoncats}}
{{CatAutoTOC}}
[[Ronney:21d eash rere çheer]]
[[Ronney:Jeihaghtyn rere çheer|21]]
50xlaqsiz2iu5z14yabs2xbym1zsm74
Ronney:Croghaneyn y Reeriaght Unnaneysit ayns ny 2010yn
14
53898
387281
2026-08-03T03:08:05Z
MacTire02
219
ronney noa
387281
wikitext
text/x-wiki
{{Category series navigation}}
[[Ronney:Croghaneyn y Reeriaght Unnaneysit rere jeihaght|2010]]
[[Ronney:Yn Reeriaght Unnaneysit ayns ny 2010yn|-Croghaneyn]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 21d eash|2010]]
3j3lrh0my3raxxqgmf9sby1pbz5wmam
Ronney:Yn Reeriaght Unnaneysit ayns ny 2010yn
14
53899
387282
2026-08-03T03:09:41Z
MacTire02
219
ronney noa
387282
wikitext
text/x-wiki
{{Navseasoncats}}
{{Category main article}}
[[Ronney:2010yn rere çheer|Reeriaght Unnaneysit]]
[[Ronney:Yn Reeriaght Unnaneysit rere jeihaght|2010]]
[[Ronney:Yn Oarpey ayns ny 2010yn|Reeriaght Unnaneysit]]
[[Ronney:Yn Reeriaght Unnaneysit 'sy 21d eash|2010]]
ch0le2ab9q6323yi7543df19zew15oj
Ronney:2010yn rere çheer
14
53900
387283
2026-08-03T03:10:36Z
MacTire02
219
ronney noa
387283
wikitext
text/x-wiki
{{Commons category|2010s by country|2010yn rere çheer}}
[[Ronney:Jeihaghtyn y 21d eash rere çheer|2010]]
[[Ronney:Shennaghys co-emshiragh rere çheer| 2010]]
[[Ronney:2010yn|.Cheer]]
nfelvw0ksxis784rgb583hdbsb4mnck
387284
387283
2026-08-03T03:11:03Z
MacTire02
219
+clowan
387284
wikitext
text/x-wiki
{{category series navigation}}
{{Commons category|2010s by country|2010yn rere çheer}}
[[Ronney:Jeihaghtyn y 21d eash rere çheer|2010]]
[[Ronney:Shennaghys co-emshiragh rere çheer| 2010]]
[[Ronney:2010yn|.Cheer]]
8abx7sxlornd7h0f28cdkrq6ofk3n3t
Ronney:Yn Oarpey ayns ny 2010yn
14
53901
387286
2026-08-03T03:12:25Z
MacTire02
219
ronney noa
387286
wikitext
text/x-wiki
{{Commons category|Europe in the 2010s|Yn Oarpey ayns ny 2010yn}}
{{Navseasoncats}}
{{Category main article}}
{{CatAutoTOC}}
[[Ronney:2010yn rere mooar-rheynn|Oarpey]]
[[Ronney:Yn Oarpey rere jeihaght|2010]]
[[Ronney:Yn Oarpey 'sy 21d eash|2010]]
koovky8cbmuo2ih8lgez0es5q66yxg4
Ronney:2010yn rere mooar-rheynn
14
53902
387288
2026-08-03T03:13:27Z
MacTire02
219
ronney noa
387288
wikitext
text/x-wiki
{{category series navigation}}
{{Commons category|2010s by continent|2010yn rere mooar-rheynn}}
[[Ronney:2010yn| Mooar-rheynn]]
[[Ronney:Jeihaghtyn rere mooar-rheynn]]
[[Ronney:21d eash rere mooar-rheynn]]
[[Ronney:Shennaghys co-emshiragh rere mooar-rheynn]]
d0twl8ebl54wpfbqrzrv3lwxaox0eil
Ronney:Yn Oarpey 'sy vlein 2011
14
53903
387290
2026-08-03T03:17:44Z
MacTire02
219
ronney noa
387290
wikitext
text/x-wiki
{{category series navigation}}
{{Commons category|2011 in Europe}Yn Oarpey 'sy vlein 2011}}
[[Ronney:2011 rere mooar-rheynn|Oarpey]]
[[Ronney:Yn Oarpey 'sy 21d eash rere blein|11]]
[[Ronney:Yn Oarpey ayns ny 2010yn| 11]]
tsi6t7bolm0lw0r27u7kdoanu03su57
387291
387290
2026-08-03T03:18:28Z
MacTire02
219
piob
387291
wikitext
text/x-wiki
{{category series navigation}}
{{Commons category|2011 in Europe|Yn Oarpey 'sy vlein 2011}}
[[Ronney:2011 rere mooar-rheynn|Oarpey]]
[[Ronney:Yn Oarpey 'sy 21d eash rere blein|11]]
[[Ronney:Yn Oarpey ayns ny 2010yn| 11]]
hknf216fbi28sy6lzprxvx9o3978er2
Ronney:2011 rere mooar-rheynn
14
53904
387292
2026-08-03T03:20:43Z
MacTire02
219
ronney noa
387292
wikitext
text/x-wiki
{{category series navigation}}
{{Commons category|2011 by continent|2011 rere mooar-rheynn}}
[[2011| Mooar-rheynn]]
[[Ronney:2010yn rere mooar-rheynn| 2011]]
[[Ronney:Bleeantyn y 21d eash rere mooar-rheynn|11]]
07ff1h39dnc3lngxpozquly53rvpodr
387293
387292
2026-08-03T03:20:59Z
MacTire02
219
ronney noa
387293
wikitext
text/x-wiki
{{category series navigation}}
{{Commons category|2011 by continent|2011 rere mooar-rheynn}}
[[Ronney:2011| Mooar-rheynn]]
[[Ronney:2010yn rere mooar-rheynn| 2011]]
[[Ronney:Bleeantyn y 21d eash rere mooar-rheynn|11]]
75oemu2phtcgrxvtyrpomp1hs0uhfn8
Ronney:Croghaneyn y Reeriaght Unnaneysit ayns ny 2000yn
14
53905
387299
2026-08-03T11:53:42Z
MacTire02
219
ronney noa
387299
wikitext
text/x-wiki
{{Category series navigation}}
[[Ronney:Croghaneyn y Reeriaght Unnaneysit rere jeihaght|2000]]
[[Ronney:Yn Reeriaght Unnaneysit ayns ny 2000yn|-Croghaneyn]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 21d eash|2000]]
kxc0z1auyd695ofu6httem187xnwx34
Ronney:Croghaneyn y Reeriaght Unnaneysit ayns ny 1990yn
14
53906
387300
2026-08-03T11:55:32Z
MacTire02
219
ronney noa
387300
wikitext
text/x-wiki
{{Category series navigation}}
[[Ronney:Croghaneyn y Reeriaght Unnaneysit rere jeihaght|1990]]
[[Ronney:Yn Reeriaght Unnaneysit ayns ny 1990yn|-Croghaneyn]]
[[Ronney:Croghaneyn y Reeriaght Unnaneysit 'sy 20oo eash|1990]]
pg1jqgc473vys1klhbo4v24xnpb0yv6