Wikipedia
gvwiki
https://gv.wikipedia.org/wiki/Ard-ghuillag
MediaWiki 1.46.0-wmf.24
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
Wikipedia:Ynnyd y phobble
4
1478
378264
377447
2026-04-26T00:57:53Z
MediaWiki message delivery
8133
/* Request for comment (global AI policy) */ new section
378264
wikitext
text/x-wiki
{{Tashtlann-Ynnyd y phobble}}
== Wikidata event 17th January looking for speakers of indigenous UK languages ==
Apologies for the English language post. Before Christmas I posted about this event [https://meta.wikimedia.org/wiki/Event:Revitalizing_UK_History_2 Revitalising UK history (Series 2)] however due to a tech issue it has had to be rescheduled for '''Saturday 17th January 2026'''
We'd love to be able to add multilingual labels to UK figures in a range of languages, including Manx if possible so if there is anyone here with an interest in learning more about Wikidata or adding multilingual labels, you'd be very welcome.
More information and registration can be found at https://meta.wikimedia.org/wiki/Event:Revitalizing_UK_History_2 [[Ymmydeyr:Gemma Coleman (WMUK)|Gemma Coleman (WMUK)]] ([[Resooney ymmydeyr:Gemma Coleman (WMUK)|resoonaght]]) 15:09, 7 Jerrey Geuree 2026 (UTC)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 19:45, 16 Jerrey Geuree 2026 (UTC)
<!-- Message sent by User:ZI Jony@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== Feminism and Folklore 2026 starts soon ==
<div style="border:8px maroon ridge;padding:6px;">
[[File:Feminism and Folklore 2026 logo.svg|centre|550px|frameless]]
::<div lang="en" dir="ltr" class="mw-content-ltr">
<div style="text-align: center; width: 100%;">''{{int:please-translate}}''</div>
;Invitation to Organize Feminism and Folklore 2026
Dear Wiki Community,
We are pleased to invite Wikimedia communities, affiliates, and independent contributors to organize the '''[[:m:Feminism and Folklore 2026|Feminism and Folklore 2026]]''' writing competition on your local Wikipedia.
The international campaign will run from '''1 February to 31 March 2026''' and aims to improve coverage of feminism, women’s histories, gender-related topics, and folk culture across Wikipedia projects.
;About the Campaign
'''Feminism and Folklore''' is a global writing initiative that complements the '''[[:c:Commons:Wiki Loves Folklore 2026|Wiki Loves Folklore]]''' photography competition. While Wiki Loves Folklore focuses on visual documentation, this writing campaign addresses the '''gender gap on Wikipedia''' by improving encyclopedic content related to folk culture and marginalized voices.
;What Can Participants Write About?
Communities can contribute by creating, expanding, or translating articles related to:
* Folk festivals, rituals, and celebrations
* Folk dances, music, and traditional performances
* Women and queer figures in folklore
* Women in mythology and oral traditions
* Women warriors, witches, and witch-hunting narratives
* Fairy tales, folk stories, and legends
* Folk games, sports, and cultural practices
Participants may work from curated article lists or generate new article suggestions using campaign tools.
;How to Sign Up as an Organizer
Organizers are requested to complete the following steps to register their community:
# Create a local project page on your wiki [[:m:Feminism and Folklore/Sample|(see sample)]]
# Set up the campaign using the '''CampWiz''' tool
# Prepare a local article list and clearly mention:
#* Campaign timeline
#* Local and international prizes
# Request a site notice from local administrators [[:mr:Template:SN-FNF|(see sample)]]
# Add your local project page and CampWiz link to the '''[[:m:Feminism and Folklore 2026/Project Page|Meta project page]]'''
;Campaign Tools
The Wiki Loves Folklore Tech Team has introduced tools to support organizers and participants:
* '''Article List Generator by Topic''' – Helps identify articles available on English Wikipedia but missing in your local language Wikipedia. The tool allows customized filters and provides downloadable article lists in CSV and wikitable formats.
* '''CampWiz''' – Enables communities to manage writing campaigns effectively, including jury-based evaluation. This will be the third year CampWiz is officially used for Feminism and Folklore.
Both tools are now available for use in the campaign. '''[https://tools.wikilovesfolklore.org/ Click here to access the tools]'''
;Learn More & Get Support
For detailed information about rules, timelines, and prizes, please visit the
'''[[:m:Feminism and Folklore 2026|Feminism and Folklore 2026 project page]]'''.
If you have any questions or need assistance, feel free to reach out via:
* '''[[:m:Talk:Feminism and Folklore 2026/Project Page|Meta talk page]]'''
* Email us using details on the contact page.
;Join Us
We look forward to your collaboration and coordination in making Feminism and Folklore 2026 a meaningful and impactful campaign for closing gender gaps and enriching folk culture content on Wikipedia.
Thank you and best wishes,
'''[[:m:Feminism and Folklore 2026|Feminism and Folklore 2026 International Team]]'''
----
''Stay connected:''
[[File:B&W Facebook icon.png|link=https://www.facebook.com/feminismandfolklore/|30x30px]]
[[File:B&W Twitter icon.png|link=https://twitter.com/wikifolklore|30x30px]]
</div></div>
== Invitation to Host Wiki Loves Folklore 2026 in Your Country ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<div style="text-align: center; width: 100%;">''{{int:please-translate}}''</div>
[[File:Wiki Loves Folklore Logo.svg|right|150px|frameless]]
Hello everyone,
We are delighted to invite Wikimedia affiliates, user groups, and community organizations worldwide to participate in '''Wiki Loves Folklore 2026''', an international initiative dedicated to documenting and celebrating folk culture across the globe.
;About Wiki Loves Folklore
'''Wiki Loves Folklore''' is an annual international photography competition hosted on Wikimedia Commons. The campaign runs from '''1 February to 31 March 2026''' and encourages photographers, cultural enthusiasts, and community members to contribute photographs that highlight:
* Folk traditions and rituals
* Cultural festivals and celebrations
* Traditional attire and crafts
* Performing arts, music, and dance
* Everyday practices rooted in folk heritage
Through this campaign, we aim to preserve and promote diverse folk cultures and make them freely accessible to the world.
[[:c:Commons:Wiki_Loves_Folklore_2026|Project page on Wikimedia Commons]]
; Host a Local Edition
As we celebrate the '''eight edition''' of Wiki Loves Folklore, we warmly invite communities to organize a local edition in their country or region. Hosting a local campaign is a great opportunity to:
* Increase visibility of your region’s folk culture
* Engage new contributors in your community
* Enrich Wikimedia Commons with high-quality cultural content
'''[[:c:Commons:Wiki_Loves_Folklore_2026/Organize|Sign up to organize]]:'''
If your team prefers to organize the competition in ''either February or March only'', please feel free to let us know.
If you are unable to organize, we encourage you to share this opportunity with other interested groups or organizations in your region.
;Get in Touch
If you have any questions, need support, or would like to explore collaboration opportunities, please feel free to contact us via:
* The project Talk pages
* Email: '''support@wikilovesfolklore.org'''
We are also happy to connect via an online meeting if your team would like to discuss planning or coordination in more detail.
Warm regards,
'''The Wiki Loves Folklore International Team'''
</div>
[[Ymmydeyr:MediaWiki message delivery|MediaWiki message delivery]] ([[Resooney ymmydeyr:MediaWiki message delivery|resoonaght]]) 13:21, 18 Jerrey Geuree 2026 (UTC)
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery/Wikipedia&oldid=29228188 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
21:01, 19 Jerrey Geuree 2026 (UTC)
<!-- Message sent by User:Keegan (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== <span lang="en" dir="ltr">Migration to Parsoid</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
<em>[[m:Special:MyLanguage/Wikimedia Foundation/Product and Technology/Parsoid Read Views/Read View Announcement|Read this in another language]]</em>
Hello everyone! I am glad to inform you that as the next step in the [[mw:Special:MyLanguage/Parsoid/Parser Unification|Parser Unification]] project, Parsoid will soon be turned on as the default article renderer on your wiki. We are gradually increasing the number of wikis using Parsoid, with the intention of making it the default wikitext parser for MediaWiki's next long-term support release. This will make our wikis more reliable and consistent for editors, readers, and tools to use, as well as making the development of future wikitext features easier.
If this disrupts your workflow, don’t worry! You can still opt out through a user preference or turn Parsoid off on the current page using the Tools submenu, as described in the [[mw:Special:MyLanguage/Help:Extension:ParserMigration|Extension:ParserMigration]] documentation.
There is [[mw:Special:MyLanguage/Parsoid/Parser Unification/Confidence Framework|more information about our roll-out strategy]] available, including the testing done before we turn on Parsoid for a new wiki.
To report bugs and issues, please look at our [[mw:Special:MyLanguage/Parsoid/Parser Unification/Known Issues|known issues]] documentation and if you found a new bug please create a phab ticket and tag the [[phab:project/view/5846|Content Transform Team in Phabricator]].
<section end="announcement-content" />
</div>
<bdi lang="en" dir="ltr">[[mw:User:ABreault (WMF)|Content Transform Team]]</bdi> 00:42, 18 Toshiaght Arree 2026 (UTC)
<!-- Message sent by User:ABreault (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Wikimedia_Foundation/Product_and_Technology/Parsoid_Read_Views/2026-02-16_Wikipedias&oldid=30094589 -->
== Wiki Loves Folklore 2026 - how to take part ==
Apologies for the English message. If there are keen photographers here, I just wanted to let you know about [https://commons.wikimedia.org/wiki/Commons:Wiki_Loves_Folklore_2026_in_England Wiki Loves Folklore]. Wiki Loves Folklore is a photographic competition that celebrates our intangible cultural heritage. So if you have photos of a festival, a dance, a traditional food or anything else relating to the Isle of Man's cultural heritage, you can upload them through the link above for submission to the competition and for Wikipedians to use in future articles!
All 4 nations of the UK are taking part so if you have pics from [https://commons.wikimedia.org/wiki/Commons:Wiki_Loves_Folklore_2026_in_Wales Wales], [https://commons.wikimedia.org/wiki/Commons:Wiki_Loves_Folklore_2026_in_Scotland Scotland] or [https://commons.wikimedia.org/wiki/Wiki_Loves_Folklore_2026_in_Ireland Northern Ireland] (organised by Wikimedia Community Ireland), we'd love those too! You can upload them through the relevant nation pages (follow the links from the name above)
[[Ymmydeyr:Gemma Coleman (WMUK)|Gemma Coleman (WMUK)]] ([[Resooney ymmydeyr:Gemma Coleman (WMUK)|resoonaght]]) 09:13, 25 Toshiaght Arree 2026 (UTC)
== Join the sixth Ukraine’s Cultural Diplomacy Month on Wikipedia! ==
<div lang="en" dir="ltr">
[[File:Ukraine’s Cultural Diplomacy Month on Wikipedia 2026.png|right|250px|thumb|link=https://meta.wikimedia.org/wiki/Ukraine%27s_Cultural_Diplomacy_Month_2026|Join our campaign!]]
{{int:please-translate}}
Dear Wikipedians!
[[:m:Special:MyLanguage/Wikimedia Ukraine|Wikimedia Ukraine]], in cooperation with the [[:en:Ministry of Foreign Affairs of Ukraine|MFA of Ukraine]] and [[:en:Ukrainian Institute|Ukrainian Institute]], has launched the sixth edition of writing challenge "'''[[:m:Special:MyLanguage/Ukraine's Cultural Diplomacy Month 2026|Ukraine's Cultural Diplomacy Month]]'''", which lasts from '''1st April''' until '''30th April 2026'''.
The initiative aims to promote knowledge about Ukrainian culture abroad by creating and improving Wikipedia articles in multiple languages. This year marks the sixth edition of the campaign, which will focus on contemporary culture, making today’s artistic voices and practices more visible to international audiences.
🧩'''How to participate?'''
Choose an article from the suggested list → Write an article in your language, or improve an existing one according to the rules → Add your contribution to the contest page and calculate your points → Win prizes and receive a certificate of participation → Become a promoter of truthful knowledge about Ukraine.
🧩'''[[m:Special:MyLanguage/Ukraine's Cultural Diplomacy Month 2026|Check our main page for more information]]'''.
'''If you are interested in coordinating long-term community engagement for the campaign and becoming a local ambassador, we would love to hear from you! Please let us know your interest.'''
If not, then we encourage you to translate the [[m:Special:MyLanguage/Ukraine's Cultural Diplomacy Month 2026|landing page of the contest]] and [https://meta.wikimedia.org/wiki/Special:MessageGroupStats?group=Centralnotice-tgroup-UCDM2026banner&messages=&language=en&x=D banner] into your own language.
Also, we set up a [[:m:CentralNotice/Request/Ukraine's Cultural Diplomacy Month 2026|banner]] to notify users of the possibility to participate in this challenge!
[[:m:User:OlesiaLukaniuk (WMUA)|OlesiaLukaniuk (WMUA)]] ([[:m:User talk:OlesiaLukaniuk (WMUA)|talk]]) 04:35, 1 April 2026 (UTC)
</div>
<!-- Message sent by User:OlesiaLukaniuk (WMUA)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:OlesiaLukaniuk_(WMUA)/list_of_wikis&oldid=28552112 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Ymmydeyr:MediaWiki message delivery|MediaWiki message delivery]] ([[Resooney ymmydeyr:MediaWiki message delivery|resoonaght]]) 17:11, 3 Averil 2026 (UTC)
<!-- Message sent by User:ZI Jony@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Ymmydeyr:MediaWiki message delivery|MediaWiki message delivery]] ([[Resooney ymmydeyr:MediaWiki message delivery|resoonaght]]) 00:57, 26 Averil 2026 (UTC)
</bdi>
<!-- Message sent by User:Codename Noreste@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
6r1okp7c0njyr7mz068p3b33xdoos6t
Reagheydys Chonaant yn Atlantagh Hwoaie
0
4193
378252
351014
2026-04-26T00:35:19Z
MacTire02
219
ronney elley
378252
wikitext
text/x-wiki
{{Kishtey fys sheshaght
|ennym =Reagheydys Chonaant yn Atlantagh Hwoaie<br /><small>North Atlantic Treaty Organisation<br />Organisation du traité de l'Atlantique nord</small>
|jalloo =Flag of NATO.svg
|fo-heidyl =Brattagh yn RCAH
|caslys-çheerey =North_Atlantic_Treaty_Organization_(orthographic_projection)_in_NATO_blue.svg
|kione-cherroo =[[Yn Vrussyl]]
|olteynys ={{Rolley yn-filley|titlestyle = background:transparent;text-align:left;font-weight:normal;
|title = [[Çheeraghyn-oltey Reagheydys Chonaant yn Atlantagh Hwoaie|32 steat]]
|{{brattagh|Albania|Yn Albaan}}
|{{brattagh|Canada|Yn Chanadey{{!}}Y Chanadey}}
|{{brattagh|the Czech Republic|Yn Çheck{{!}}Y Çheck}}
|{{nowrap|{{brattagh|the Netherlands|Yn Çheer Injil{{!}}Y Çheer Injil}}}}
|{{brattagh|Croatia|Yn Chroit{{!}}Y Chroit}}
|{{brattagh|Slovakia|Yn Clovack{{!}}Y Clovack}}
|{{brattagh|Slovenia|Yn Clovean{{!}}Y Clovean}}
|{{brattagh|Denmark|Yn Danvarg{{!}}Y Danvarg}}
|{{brattagh|Iceland|Yn Eeslynn}}
|{{brattagh|Estonia|Yn Estaan}}
|{{brattagh|Finland|Finnlynn}}
|{{brattagh|Germany|Yn Ghermaan{{!}}Y Ghermaan}}
|{{brattagh|Greece|Yn Ghreag{{!}}Y Ghreag}}
|{{brattagh|Italy|Yn Iddaal}}
|{{brattagh|Latvia|Yn Latvey{{!}}Y Latvey}}
|{{brattagh|Lithuania|Yn Litaan{{!}}Y Litaan}}
|{{brattagh|Luxembourg|Lucsemburg}}
|{{brattagh|Montenegro|Montenegro}}
|{{brattagh|Norway|Norlynn}}
|{{brattagh|Poland|Yn Pholynn{{!}}Y Pholynn}}
|{{brattagh|Portugal|Yn Phortiugal{{!}}Y Phortiugal}}
|{{brattagh|France|Yn Rank{{!}}Y Rank}}
|{{nowrap|{{brattagh|the United Kingdom|Reeriaght Unnaneysit}}}}
|{{brattagh|Romania|Yn Romaan{{!}}Y Romaan}}
|{{brattagh|Spain|Yn Spaainey{{!}}Y Spaainey}}
|{{nowrap|{{brattagh|the United States|Ny Steatyn Unnaneysit}}}}
|{{brattagh|Sweden|Yn Toolynn{{!}}Y Toolynn}}
|{{brattagh|Turkey|Yn Turkee{{!}}Y Turkee}}
|{{brattagh|Hungary|Yn Ungaar}}
|{{nowrap|{{brattagh|North Macedonia|Yn Vassadoan Hwoaie{{!}}Y Vassadoan Hwoaie}}}}
|{{brattagh|Belgium|Yn Velg{{!}}Y Velg}}
|{{brattagh|Bulgaria|Yn Vulgeyr{{!}}Y Vulgeyr}}
}}
|çhengey =[[Baarle]], [[Frangish]]
|ard-screeudeyr=[[Mark Rutte]]
|bunneeaght =4 Averil 1949
|ynnyd-eggey =[http://www.nato.int www.nato.int]
}}
Ta '''Reagheydys Chonaant yn Atlantagh Hwoaie''' ny '''RCAH''' ({{lan-en|North Atlantic Treaty Organisation - NATO}}, {{lang-fr|Organisation du traité de l'Atlantique nord - OTAN}}) ny reagheydys caggee eddyr-ashoonagh. Va'n reagheydys currit er bun er 4 Averil 1949 erreish da foscreeu [[Conaant yn Atlantagh Hwoaie|Chonaant yn Atlantagh Hwoaie]]. Ta kione-cherroo yn reagheydys soit 'sy [[Yn Vrussyl|Vrussyl]], [[yn Velg|y Velg]].
{{gurneil eaghtyrys}}
{{DEFAULTSORT:Nato}}
[[Ronney:Reagheydys Chonaant yn Atlantagh Hwoaie| ]]
[[Ronney:Bunneeaghtyn ayns ny Steatyn Unnaneysit 'sy vlein 1949]]
[[Ronney:Shennaghys caggee 'sy vlein 1949]]
[[Ronney:Reagheydyssyn noi-chummynagh]]
[[Ronney:Cochaarjyssyn as strateysh chaggee yn Chaggey Feayr]]
[[Ronney:Reagheydyssyn y Chaggey Feayr]]
[[Ronney:Conaantyn y Chaggey Feayr]]
[[Ronney:Mooinjerys joarree yn Unnaneys Soveidjagh]]
[[Ronney:Reagheydyssyn caggee eddyrashoonagh]]
[[Ronney:Cochaarjyssyn caggee lesh yn Albaan]]
[[Ronney:Cochaarjyssyn caggee lesh y Chanadey]]
[[Ronney:Cochaarjyssyn caggee lesh y Çheck]]
[[Ronney:Cochaarjyssyn caggee lesh y Çheer Injil]]
[[Ronney:Cochaarjyssyn caggee lesh y Chroit]]
[[Ronney:Cochaarjyssyn caggee lesh y Danvarg]]
[[Ronney:Cochaarjyssyn caggee lesh yn Estaan]]
[[Ronney:Cochaarjyssyn caggee lesh Finnlynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Ghermaan]]
[[Ronney:Cochaarjyssyn caggee lesh y Ghreag]]
[[Ronney:Cochaarjyssyn caggee lesh yn Iddaal]]
[[Ronney:Cochaarjyssyn caggee lesh y Latvey]]
[[Ronney:Cochaarjyssyn caggee lesh y Litaan]]
[[Ronney:Cochaarjyssyn caggee lesh Lucsemburg]]
[[Ronney:Cochaarjyssyn caggee lesh Norlynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Pholynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Phortiugal]]
[[Ronney:Cochaarjyssyn caggee lesh y Rank]]
[[Ronney:Cochaarjyssyn caggee lesh y Reeriaght Unnaneysit]]
[[Ronney:Cochaarjyssyn caggee lesh y Romaan]]
[[Ronney:Cochaarjyssyn caggee lesh y Spaainey]]
[[Ronney:Cochaarjyssyn caggee lesh ny Steatyn Unnaneysit]]
[[Ronney:Cochaarjyssyn caggee lesh y Toolynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Turkee]]
[[Ronney:Cochaarjyssyn caggee lesh yn Ungaar]]
[[Ronney:Cochaarjyssyn caggee lesh y Vassadoan Hwoaie]]
[[Ronney:Cochaarjyssyn caggee lesh y Velg]]
[[Ronney:Cochaarjyssyn caggee lesh y Vulgeyr]]
[[Ronney:Unnidyn as possanyn caggee bunnit 'sy vlein 1949]]
[[Ronney:Reagheydyssyn bunnit 'sy Vrussyl]]
[[Ronney:Sur-reagheydyssyn]]
fol8lfy5yw43tqmfntl28n8ndycj4ef
378253
378252
2026-04-26T00:35:53Z
MacTire02
219
catsort
378253
wikitext
text/x-wiki
{{Kishtey fys sheshaght
|ennym =Reagheydys Chonaant yn Atlantagh Hwoaie<br /><small>North Atlantic Treaty Organisation<br />Organisation du traité de l'Atlantique nord</small>
|jalloo =Flag of NATO.svg
|fo-heidyl =Brattagh yn RCAH
|caslys-çheerey =North_Atlantic_Treaty_Organization_(orthographic_projection)_in_NATO_blue.svg
|kione-cherroo =[[Yn Vrussyl]]
|olteynys ={{Rolley yn-filley|titlestyle = background:transparent;text-align:left;font-weight:normal;
|title = [[Çheeraghyn-oltey Reagheydys Chonaant yn Atlantagh Hwoaie|32 steat]]
|{{brattagh|Albania|Yn Albaan}}
|{{brattagh|Canada|Yn Chanadey{{!}}Y Chanadey}}
|{{brattagh|the Czech Republic|Yn Çheck{{!}}Y Çheck}}
|{{nowrap|{{brattagh|the Netherlands|Yn Çheer Injil{{!}}Y Çheer Injil}}}}
|{{brattagh|Croatia|Yn Chroit{{!}}Y Chroit}}
|{{brattagh|Slovakia|Yn Clovack{{!}}Y Clovack}}
|{{brattagh|Slovenia|Yn Clovean{{!}}Y Clovean}}
|{{brattagh|Denmark|Yn Danvarg{{!}}Y Danvarg}}
|{{brattagh|Iceland|Yn Eeslynn}}
|{{brattagh|Estonia|Yn Estaan}}
|{{brattagh|Finland|Finnlynn}}
|{{brattagh|Germany|Yn Ghermaan{{!}}Y Ghermaan}}
|{{brattagh|Greece|Yn Ghreag{{!}}Y Ghreag}}
|{{brattagh|Italy|Yn Iddaal}}
|{{brattagh|Latvia|Yn Latvey{{!}}Y Latvey}}
|{{brattagh|Lithuania|Yn Litaan{{!}}Y Litaan}}
|{{brattagh|Luxembourg|Lucsemburg}}
|{{brattagh|Montenegro|Montenegro}}
|{{brattagh|Norway|Norlynn}}
|{{brattagh|Poland|Yn Pholynn{{!}}Y Pholynn}}
|{{brattagh|Portugal|Yn Phortiugal{{!}}Y Phortiugal}}
|{{brattagh|France|Yn Rank{{!}}Y Rank}}
|{{nowrap|{{brattagh|the United Kingdom|Reeriaght Unnaneysit}}}}
|{{brattagh|Romania|Yn Romaan{{!}}Y Romaan}}
|{{brattagh|Spain|Yn Spaainey{{!}}Y Spaainey}}
|{{nowrap|{{brattagh|the United States|Ny Steatyn Unnaneysit}}}}
|{{brattagh|Sweden|Yn Toolynn{{!}}Y Toolynn}}
|{{brattagh|Turkey|Yn Turkee{{!}}Y Turkee}}
|{{brattagh|Hungary|Yn Ungaar}}
|{{nowrap|{{brattagh|North Macedonia|Yn Vassadoan Hwoaie{{!}}Y Vassadoan Hwoaie}}}}
|{{brattagh|Belgium|Yn Velg{{!}}Y Velg}}
|{{brattagh|Bulgaria|Yn Vulgeyr{{!}}Y Vulgeyr}}
}}
|çhengey =[[Baarle]], [[Frangish]]
|ard-screeudeyr=[[Mark Rutte]]
|bunneeaght =4 Averil 1949
|ynnyd-eggey =[http://www.nato.int www.nato.int]
}}
Ta '''Reagheydys Chonaant yn Atlantagh Hwoaie''' ny '''RCAH''' ({{lan-en|North Atlantic Treaty Organisation - NATO}}, {{lang-fr|Organisation du traité de l'Atlantique nord - OTAN}}) ny reagheydys caggee eddyr-ashoonagh. Va'n reagheydys currit er bun er 4 Averil 1949 erreish da foscreeu [[Conaant yn Atlantagh Hwoaie|Chonaant yn Atlantagh Hwoaie]]. Ta kione-cherroo yn reagheydys soit 'sy [[Yn Vrussyl|Vrussyl]], [[yn Velg|y Velg]].
{{gurneil eaghtyrys}}
[[Ronney:Reagheydys Chonaant yn Atlantagh Hwoaie| ]]
[[Ronney:Bunneeaghtyn ayns ny Steatyn Unnaneysit 'sy vlein 1949]]
[[Ronney:Shennaghys caggee 'sy vlein 1949]]
[[Ronney:Reagheydyssyn noi-chummynagh]]
[[Ronney:Cochaarjyssyn as strateysh chaggee yn Chaggey Feayr]]
[[Ronney:Reagheydyssyn y Chaggey Feayr]]
[[Ronney:Conaantyn y Chaggey Feayr]]
[[Ronney:Mooinjerys joarree yn Unnaneys Soveidjagh]]
[[Ronney:Reagheydyssyn caggee eddyrashoonagh]]
[[Ronney:Cochaarjyssyn caggee lesh yn Albaan]]
[[Ronney:Cochaarjyssyn caggee lesh y Chanadey]]
[[Ronney:Cochaarjyssyn caggee lesh y Çheck]]
[[Ronney:Cochaarjyssyn caggee lesh y Çheer Injil]]
[[Ronney:Cochaarjyssyn caggee lesh y Chroit]]
[[Ronney:Cochaarjyssyn caggee lesh y Danvarg]]
[[Ronney:Cochaarjyssyn caggee lesh yn Estaan]]
[[Ronney:Cochaarjyssyn caggee lesh Finnlynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Ghermaan]]
[[Ronney:Cochaarjyssyn caggee lesh y Ghreag]]
[[Ronney:Cochaarjyssyn caggee lesh yn Iddaal]]
[[Ronney:Cochaarjyssyn caggee lesh y Latvey]]
[[Ronney:Cochaarjyssyn caggee lesh y Litaan]]
[[Ronney:Cochaarjyssyn caggee lesh Lucsemburg]]
[[Ronney:Cochaarjyssyn caggee lesh Norlynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Pholynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Phortiugal]]
[[Ronney:Cochaarjyssyn caggee lesh y Rank]]
[[Ronney:Cochaarjyssyn caggee lesh y Reeriaght Unnaneysit]]
[[Ronney:Cochaarjyssyn caggee lesh y Romaan]]
[[Ronney:Cochaarjyssyn caggee lesh y Spaainey]]
[[Ronney:Cochaarjyssyn caggee lesh ny Steatyn Unnaneysit]]
[[Ronney:Cochaarjyssyn caggee lesh y Toolynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Turkee]]
[[Ronney:Cochaarjyssyn caggee lesh yn Ungaar]]
[[Ronney:Cochaarjyssyn caggee lesh y Vassadoan Hwoaie]]
[[Ronney:Cochaarjyssyn caggee lesh y Velg]]
[[Ronney:Cochaarjyssyn caggee lesh y Vulgeyr]]
[[Ronney:Unnidyn as possanyn caggee bunnit 'sy vlein 1949]]
[[Ronney:Reagheydyssyn bunnit 'sy Vrussyl]]
[[Ronney:Sur-reagheydyssyn]]
93f7gz8xj6fb5s0jk0fx2e9uhj0ukvg
Ronney:Reagheydys Chonaant yn Atlantagh Hwoaie
14
7175
378250
354489
2026-04-26T00:34:51Z
MacTire02
219
ronney elley
378250
wikitext
text/x-wiki
{{Commons category|North Atlantic Treaty Organization|Reagheydys Chonaant yn Atlantagh Hwoaie}}
{{Catmore|Reagheydys Chonaant yn Atlantagh Hwoaie}}
[[Ronney:Cochaarjyssyn caggee yn 20oo eash]]
[[Ronney:Cochaarjyssyn caggee yn 21d eash]]
[[Ronney:Shennaghys caggee 'sy vlein 1949]]
[[Ronney:Reagheydyssyn noi-chummynagh]]
[[Ronney:Reagheydyssyn y Chaggey Feayr]]
[[Ronney:Conaantyn y Chaggey Feayr]]
[[Ronney:Mooinjerys joarree yn Unnaneys Soveidjagh]]
[[Ronney:Reagheydyssyn caggee eddyrashoonagh]]
[[Ronney:Reagheydyssyn eddyrashoonagh bunnit 'sy Velg]]
[[Ronney:Reagheydyssyn eddyr-reiltyssagh bunnit rere conaant]]
[[Ronney:Cochaarjyssyn caggee lesh yn Albaan]]
[[Ronney:Cochaarjyssyn caggee lesh y Chanadey]]
[[Ronney:Cochaarjyssyn caggee lesh y Çheer Injil]]
[[Ronney:Cochaarjyssyn caggee lesh y Chroit]]
[[Ronney:Cochaarjyssyn caggee lesh y Clovack]]
[[Ronney:Cochaarjyssyn caggee lesh y Clovean]]
[[Ronney:Cochaarjyssyn caggee lesh y Danvarg]]
[[Ronney:Cochaarjyssyn caggee lesh yn Eeslynn]]
[[Ronney:Cochaarjyssyn caggee lesh yn Estaan]]
[[Ronney:Cochaarjyssyn caggee lesh Finnlynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Ghermaan]]
[[Ronney:Cochaarjyssyn caggee lesh y Ghreag]]
[[Ronney:Cochaarjyssyn caggee lesh yn Iddaal]]
[[Ronney:Cochaarjyssyn caggee lesh y Latvey]]
[[Ronney:Cochaarjyssyn caggee lesh y Litaan]]
[[Ronney:Cochaarjyssyn caggee lesh Lucsemburg]]
[[Ronney:Cochaarjyssyn caggee lesh Montenegro]]
[[Ronney:Cochaarjyssyn caggee lesh Norlynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Phobblaght Çheck]]
[[Ronney:Cochaarjyssyn caggee lesh y Pholynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Phortiugal]]
[[Ronney:Cochaarjyssyn caggee lesh y Rank]]
[[Ronney:Cochaarjyssyn caggee lesh y Reeriaght Unnaneysit]]
[[Ronney:Cochaarjyssyn caggee lesh y Romaan]]
[[Ronney:Cochaarjyssyn caggee lesh y Spaainey]]
[[Ronney:Cochaarjyssyn caggee lesh ny Steatyn Unnaneysit]]
[[Ronney:Cochaarjyssyn caggee lesh y Toolynn]]
[[Ronney:Cochaarjyssyn caggee lesh y Turkee]]
[[Ronney:Cochaarjyssyn caggee lesh yn Ungaar]]
[[Ronney:Cochaarjyssyn caggee lesh y Vassadoan Hwoaie]]
[[Ronney:Cochaarjyssyn caggee lesh y Velg]]
[[Ronney:Cochaarjyssyn caggee lesh y Vulgeyr]]
[[Ronney:Yn Oarpey noa-emshiragh yeianagh]]
[[Ronney:Reagheydyssyn bunnit 'sy Vrussyl]]
[[Ronney:Sur-reagheydyssyn]]
[[Ronney:Mooinjerys tessen-Atlantagh]]
[[Ronney:Forsaghyn armit 'syn Oarpey]]
stjvj2km59qw2ckw2x5wl97s98r9i83
John Muir
0
11292
378283
365544
2026-04-26T03:29:40Z
InternetArchiveBot
16702
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
378283
wikitext
text/x-wiki
{{ymmydynelley|yn najooree Albinagh-Americaanagh|fir elley as yn ennym cheddin oc|John Muir (reddaghey)}}
{{WD Kishtey Fys Dooinney
| jalloo = Muir portrait 1872.jpg
| fo-heidyl = John Muir 'sy vlein 1872
| boayl_ruggyr = [[Dùn Barra]], [[Lodainn Hiar]], Nalbin
| boayl_baaish = [[Los Angeles]], [[California]], SUA
| ennit = Cur er bun y [[Sierra Club]]
}}
Va '''John Muir''' (21 Averil 1838 – 24 Mee ny Nollick 1914) ny najooree, screeudeyr, as greinneyder son freayltys eaynee ny [[Steatyn Unnaneysit America|Steatyn Unnaneysit]]. Screeu eh lettyryn, artyn as lioaryn er e chontoyrtyssyn 'syn 'aasagh, ayns [[Sierra Nevada (SUA)|Sierra Nevada]] er lheh, as adsyn er nyn lhiah ec millioonyn dy 'leih. Va laue echey ayns bun y [[Sierra Club]], as eshyn mastey sheshaghtyn freayltys smoo scanshoil ny Steatyn Unnaneysit jiu. Va cummaght mooar ec ny screeu eh er y [[gleashaght 'reayltys|ghleashaght 'reayltys]] jeianagh.
==Aegid==
Rug John Muir ayns [[Dùn Barra]], [[Lodainn Hiar]], [[Nalbin]]. She Daniel Muir as Ann Gilrye e ayr as e voir. Va shiaght paitçhyn elley oc: Margaret, Sarah, David, Daniel, Ann as Mary (lannoonyn), as Joanna (ruggit ayns America). Screeu eh 'sy hene-veashnys echey er ny keirdyn v'echey ayns eash y ghuilley, goaill stiagh caggey (aayannoo caggee vooar ass shennaghys ny h-Albey, ny caggey er y voayl cloie) as shirrey idd ean.<ref name = "Muirboyhood">{{enmyslioar
| sjerree = Muir
| kied = John
| ennym = The Story of My Boyhood and Youth
| soilsheyder = Houghton Mifflin Co.
| date = 1916
| duillag = 25, 37
|kiangley = http://books.google.com/books?id=FDsOAAAAYAAJ&pg=PA25
}}</ref>
[[Coadan:JohnMuirFountianLakeFarm.jpg|thumb|left|Entreilys da [[Fountain Lake Farm]] faggys da [[Portage, Wisconsin]]]]
Ayns 1849, darree lught-thie Vuir da ny Steatyn Unnaneysit, as hug ad bun er [[gowaltys]] faggys da [[Portage, Wisconsin]]. She [[Fountain Lake Farm]] v'ayn, as eshyn ny [[National Historic Landmark|Boayl Shennaghyssagh Ashoonagh]] nish.<ref>{{enmyseddyrvoggyl
| kiangley = http://tps.cr.nps.gov/nhl/detail.cfm?ResourceId=2095&ResourceType=Site
| ennym = Fountain Lake Farm (Wisconsin Farm Home of John Muir)
| obbyr = National Historic Landmarks Program
| datefeddyn = 2009-01-04
}}</ref> Dooyrt [[Stephen Fox (screeudeyr)|Stephen Fox]] nagh row credjue ny claightey [[yn Agglish Albinagh]] jeeragh dy liooar er lesh ayr Vuir, as shen y fa darree ad as hie ad stiagh ayns cohionnal y [[Gleashaght Aachroo|Ghleashaght Aachroo]] Champbellagh. Rere y choontys echey, lesh 11 vlein d'eash, foddee Muir aaloayrt y lane [[Conaant Noa]] as y chooid smoo jeh'n [[Shenn Chonaant|Çhenn Chonaant]] "er çhengey as ec pian foalley".<ref>{{enmyslioar
| sjerree = Fox
| kied = Stephen R.
| soilsheyder = Univ of Wisconsin Press
| date = 1985
| duillag = 30
| isbn = 9780299106348
| ennym = The American conservation movement : John Muir and his legacy
}}</ref> Agh rish eash ghooinney, cha row cair-chredjue cur er ve fud y cheilley. Ayns screeuyn da e charrey veen Emily Pelton, er 23 Mee Vayrnt 1865, screeu eh, "Cha ren mee eab erbee dy ‘aagail magh credjue ny cliaghtaghyn ard-veenid; hie ad ersooyl er nyn goontey hene... gyn faagail nyn yei ennaghtyn yuail erbee." Ayns screeuyn elley, dooyrt eh er Crooder rere'n eie cadjin: "nhee cho laue-jeant as babban cloie erbee ayns thie-cloie lheng".<ref>{{enmyslioar
| screeudeyr = Wolfe, Linnie Marsh
| ennym = Son of the Wilderness: The Life of John Muir
| soilsheyder = Alfred A. Knopf
| blein = 1945
| çhengey = Baarle
}}</ref> Ny yei shen, she dooinney crauee dy liooar v'ayn, as screeu eh: "Ta shin ooilley stroo jeh un 'arrane: Annym. Ta cagh ny vess yn un ghraih. Cha nel Jaa çheet rish, as stroo magh, jeh scaanyn keyley as mysh çhibbraghyn towlit ayns shoh as ayns shen ayns reih vuill, agh t'Eh thooilley ayns strooghyn mooar gyn scarrey, gyn traie, gyn cagliagh harrish credjueyn as cummaghyn as dagh sorçh dy chultoor as sleih as baagh, lhienney as farranaghey y clane."<ref>Screeuyn da [[w:Catharine Merrill|Miss Catharine Merrill]], jeh New Sentinel Hotel, Yosemite Valley (9 Mean Sourey 1872); Ayns ''Life and Letters of John Muir'', Badè'</ref>
Ec 22 vlein d'eash, hie Muir stiagh ayns [[Ollooscoill Wisconsin-Madison]] er yn argid b’lesh hene. Dynsee eh e chied lessoon lus-oayllee fo billey locust doo ard faggys da North Hall. Hayrn studeyr elley blaa jeh'n villey, as ren eh ymmyd jeh son dy hoilshaghey magh dy row y locust ard mastey kynney pishyragh, as mooinjer y pishyr trudlagh. Daeed blein jeih ny s'anmey, screeu Muir er y laa ayns eh hene-veashnys: "Hug y lessoon braew shoh eunys orrym as hug eh orrym roie da ny keylljyn as lheeannee lesh ard-jeeanid."<ref>{{enmyslioar
| sjerree = Muir
| kied = John
| ennym = The Story of My Boyhood and Youth
| soilsheyder = Houghton Mifflin Co.
| date = 1916|page = 225
| kiangley = http://books.google.com/books?id=FDsOAAAAYAAJ&pg=PA225}}</ref> Ren Muir briwnys quaagh mastey ny brastylyn, as cha daink eh rieau ass kied cheim ny studeyryn er y choontey shen. Ta ny recortyssyn cur stayd "fer neuchinjagh" er, agh ga nagh ghow eh keim erbee, dynsee eh creg-oaylleeaght as lus-oaylleeaght dy liooar dy chur baght er rouail e vea s'anmey.<ref name = "Miller36">{{enmyslioar
| sjerree = Miller
| kied = Rod
| ennym = John Muir: Magnificent Tramp
| soilsheyder = Macmillan
| date = 2005|page = 36
| isbn = 9780765310712
| kiangley = http://books.google.com/books?id=TmUudRnNmOIC&pg=PA36}}</ref>
Ayns 1864, daag eh yn ollooscoill as hie eh dys [[yn Chanadey]], raad cheau eh arrey, sourey as fouyr lesh wandrail ayns ny keylljyn as curree er çheu [[Logh Huron]] as çhaglym lossreeyn. Lesh yn argid echey goan dy liooar as geurey çheet er, hie eh da Ontario, as dobbyr eh marish e vraar Daniel ayns mwyllin saauederagh, derrey sourey 1865. Ta [[Roderick Nash]] er ngra dy row Muir jannoo troailtys ‘syn Chanadey myr troailtys ‘syn ‘aasagh son dy haghney sidooraght, agh rere screeuyn Linnie Marsh Wolfe, ren Muir briwnys, mannagh ragh eh er reih ‘sy [[yllagh gys shirveish caggee|gherrym caggee]] (as cha jagh), beagh eh wandrail rish tammylt ayns faasee yn Chanadey.<ref>{{enmyslioar
| sjerree = Nash
| kied = Roderick
| ennym = The Rights of Nature
| soilsheyder = Univ of Wisconsin Press
| date = 1989
| duillag = 38–39
| isbn = 9780299118440
| kiangley = http://books.google.com/books?id=f9tJZz6jDUIC&pg=PA38
}}</ref><ref>{{enmyslioar
| sjerree = Marsh Wolfe
| kied = Linnie
| ennym = Son of the Wilderness: The Life of John Muir
| soilsheyder = Univ of Wisconsin Press
| date = 2003
| page = 90
| isbn = 9780299186340
| kiangley = http://books.google.com/books?id=oSh7MPGvBbsC&pg=PA90
}}</ref>
Dobbyr eh ‘sy wyllin derrey Mee Vayrnt 1866, as eisht hie eh erash da ny Steatyn Unnaneysit dy obbraghey myr [[jeshaghteyr]] ayns [[Indianapolis]]. Ayns Mee Vayrnt 1867, darree drogh-haghyrt bollagh e vea. Ren slieeuan geyre thiolley e hooill yesh, as v’eh doal dy shallidagh. As eshyn smooinaghtyn dy row eh doal dy beayn, as soo y tooill sheeley dys e laue, dooyrt eh ny s’anmey: “Beign er varroo raad hass mee, dy arryltagh.” Lurg da kiare shiaghteeyn ayns shamyr dorraghey, slanee y tooill son y chooid smoo, as hie eh er cosheeaght veg. Ec çheet erash, v’eh soit er lhiantyn rish e yeearree e hene, as ronsaghey as studeyrys er lossreeyn y yannoo.<ref>{{enmyslioar
| sjerree = Marsh Wolfe
| kied = Linnie
| ennym = Son of the Wilderness: The Life of John Muir
| soilsheyder = Univ of Wisconsin Press
| date = 2003
| duillag = 97–105
| isbn = 9780299186340
| kiangley = http://books.google.com/books?id=oSh7MPGvBbsC&pg=PA97
}}</ref>
Ayns Mee Houney 1867, hooill Muir mysh 1000 meeilley roish [[Indiana]] dys [[Florida]] (screeu eh coontys jeh ‘sy lioar ''A Thousand-Mile Walk to the Gulf''). Cha row coorse erbee reiht echey, agh dy gholl “rish y raad s’fadanee, s’duillagee as sloo er ny ghaaghey dod mee feddyn.”. Rish roshtyn Florida, v’eh fosyn lhuingys er baatey y ghoaill dys America Yiass, as wandrail ny smoo ayns shen. Agh huitt eh fo malaarey er [[Slyst yn Eearvooiar]], as myr shen daag eh ny shalee v’echey bentyn rish America Jiass. Ayns ynnyd jeh shen, hiauill eh dys [[York Noa]] as ghow eh lhuingys dys California.<ref name = "Miller36">{{enmyslioar
| sjerree = Miller
| kied = Rod
| ennym = John Muir: Magnificent Tramp
| soilsheyder = Macmillan
| date = 2005
| duillag = 40–41
| isbn = 9780765310712
| kiangley = http://books.google.com/books?id=TmUudRnNmOIC&pg=PA40
}}</ref>
==California==
Lurg da roshtyn ayns [[San Francisco, California|San Francisco]] ayns Mee Vayrnt 1868, daag Muir er y chooyl dys boayl nagh row eh agh lhaih myechione: Yosemite. Lesh y chied shilley er [[Glion Yosemite]], hug ee druiaght er, as screeu eh: “Cha nel çhiamble erbee jeant lesh laueyn cosoylaghey rish Yosemite... Smoo jeh ooilley sur-hiamblyn Najoor.”.<ref>{{Cite web |title=Archive copy |url=http://www.pbs.org/nationalparks/people/historical/muir/ |access-date=2009-10-12 |archive-date=2009-10-07 |archive-url=https://web.archive.org/web/20091007031433/http://www.pbs.org/nationalparks/people/historical/muir/ |url-status=dead }}</ref> Lurg keayrt hoght laghyn, haink eh erash dys cruink veggey y Sierra Nevada as dobbyr eh myr fer assaig, bochilley as brisheyder cabbil. Ayns Mee ny Boaldys 1869, hug ransheyr enmyssit Pat Delaney obbyr souree da Muir, freayll arrey er kirree as bochilley Ghelaney. Ghow eh rish dy jeean, as cheau eh y tourey myrane lesh ny kirree ayns slyst Yosemite. Ghrapp eh [[Cathedral Peak (California)|Cathedral Peak]] as [[Mount Dana]], as hooill eh shenn raad ny [[Sleih dooghyssagh America|h-Injinee]] sheese [[Bloody Canyon]] dys [[Mono Lake]].
Va'n traa soccar echey currit da oaylleeaght, [[creg-oaylleeaght]] er lheh, as haink eh dy ve shickyr dy nee awinyn rioee v'er nyannoo y ghlion as yn ard mygeayrt eck. Va'n eie shen shassoo noi yn eie cadjin v'ayn, liorish [[Josiah Whitney]] (kione y [[California Geological Survey]]), as shen gra dy nee craa-hallooin ard-vooar v'er groo y ghlion. Lesh skeaylley eieyn Vuir, ren Whitney eab anghoo er y chur lesh gra dy nee ancheirdagh as meehustagh v'ayn. Agh er lesh ard-chreg-oayllee y laa, [[Louis Agassiz]], va eieyn Vuir feeu, as dooyrt eh dy nee "y chied dooinney ta mee er ngeddyn as toiggalys dy liooar echey er obbyr awin rioee."
<ref name="glacial-action">{{enmyslioar
| ennym = John Muir : his life and letters and other writings
| duillag = 322
| cabdil = Trees and Travel
| aaraa = ...The reply to this letter was written by Mrs. Agassiz, in which she told me that, when Agassiz read my letter, he said excitedly "Here is the first man I have ever found who has any adequate conception of glacial action."... (Screeuyn da Robert Underwood Johnson; Martinez, 3 Mee Vayrnt, 1895)
| çhengey = Baarle
| screeudeyr = Terry Gifford (re.)
| isbn = 9780898864632
| soilsheyder = The Mountaineers Books
}}</ref> Ayns 1871, hoor Muir awin rioee bio fo [[Merced Peak]], as hug shen cooney da ny eieyn v'eh cur roish. 'sy vlein cheddin, haink feniagh Vuir, [[Ralph Waldo Emerson]], dys Yosemite as haink eh lesh shilley er Muir. Va shenn olloo Vuir ec Ollooscoill Wisconsin, [[Ezra Carr]], as y ven echey dy ghreinnaghey ny h-eieyn echey y chur magh. Haink ad lhieu Muir dys quaiyl fir ennymoil, goaill stiagh [[Louis Agassiz]], [[John Tyndall]], [[John Torrey]], [[Clinton Hart Merriam]], as [[Joseph LeConte]].
[[Coadan:John Muir NHS.jpg|250px|thumb|right|[[John Muir National Historic Site|Thie ny Muiryn]] ayns [[Martinez, California]].]]
Haghyr [[Craa-hallooin Lone Pine 1872|craa-hallooin mooar]] faggys da [[Lone Pine, California]] ayns [[Glion Owens]] ayns Mee Vayrnt, 1872, as v'eh ry-ennaghtyn ayns Glion Yosemite. Ghooisht eh Muir leah 'sy voghrey as roie eh magh y bwaane echey, "boggey as aggle er", as eh fockley magh "craa-hallooin oasle!" Fir elley 'sy ghlion, as adsyn credjal eieyn Whitney foast, va aggle orroo dy beagh y craa-hallooin cowraghey duinaghey craghoil y ghlion. Cha row lheid yn aggle er Muir, as ren eh towshan ass laue jeh carnaneyn creoilagh noa jeant ec skyrraghyn thallooin liorish y chraa-hallooin.<ref name="earthquake">{{enmyslioar
| ennym = Our National Parks
| screeudeyr = John Muir
| blein = 1901
| soilsheyder = Houghton, Mifflin & Co.
| boayl = Cambridge (SUA)
| duillag = 262
| kiangley = http://www.sierraclub.org/john_muir_exhibit/writings/the_earthquake.html
| çhengey = Baarle
}}</ref>
Chammah's yn obbyr creg-oaylleeagh, ren Muir studeyrys er lossreeyn yn ard Yosemite. Ayns 1873 as 1874, ren eh obbyr 'sy vagher er boayn sheear y Sierra, bentyn rish scaalhean as eggoaylleeaght keylljyn [[Sequoia Vooar]]. Ayns 1880, phoos Muir as Louisa Wanda Strentzel. Va ransh mooar lesh yn ayr as moir eck, ayns [[Martinez, California]], as rish y jeig bleeantyn ny yei, hug eh eh hene da reirey y ransh. V'eh speeideilagh dy liooar. Rish y traa shoh, rug ny h-inneenyn oc, Wanda as Helen.
Ec e vaase, daag eh ny yei cooid seihlt SU$250,000. Ta'n thie as rheynn jeh'n ransh y [[John Muir National Historic Site|Boayl Shennaghyssagh Ashoonagh John Muir]] jiu.<ref>{{enmyseddyrvoggyl
| kiangley = http://www.nps.gov/history/museum/exhibits/jomu/home.html
| ennym = John Muir National Historic Site
| datefeddyn = 2009-10-10
| çhengey = Baarle
}}</ref>
==Troailtys 'sy heear-hwoaie ==
Rish shiaght bleeantyn reirey y ransh, haink drogh-laynt er. Lesh brod e ven, hie eh erash da ny cruink dy aagheddyn e hene. Ghrapp eh [[Mount Rainier]] as screeu eh ''Ascent of Mount Rainier'' myechione. Hie eh marish possan dys [[Wrangel Island]] er y [[USS Corwin (1876)|USS Corwin]], as daggyr ad yn ellan son ny Steatyn Unnaneysit ayns 1881.<ref>{{enmyseddyrvoggyl
| kiangley = http://www.yosemite.ca.us/john_muir_writings/the_cruise_of_the_corwin/introduction.html
| ennym = The Cruise of the Corwin
| screeudeyr = John Muir
| soilsheyder = Houghton Mifflin Company
| boayl = Boston and New York
| blein = 1917
| datefeddyn = 2008-09-05}}</ref> Screeu eh er y chooish 'sy lioar ''The Cruise of the Corwin''.
==Obbraghyn freayltys ==
Hug Muir laue mooar ayns freayltys. V'eh fakin Yosemite as y Sierra as roie-thallooyn nagh lhisagh goll er sooilley.<ref>{{enmysearishlioar
| screeudeyr = John Muir
| ennym = Features of the Proposed Yosemite National Park
| kiangley = http://www.yosemite.ca.us/john_muir_writings/features_of_the_proposed_yosemite_national_park/
| earishlioar = The Century Magazine
| earroo = 5
| mee = Mean Fouyir
| blein = 1890
| datefeddyn = 2007-04-08
| ym-lioar = XL
}}</ref> Er lesh dy nee sthock, kirree er lheh, va baggyrt smoo da'n ard, as hug eh "kellee-rennee chrubbagh" orroo. Ayns Mean Souree 1889, champ co-reagheyder yn earishlioar ''[[Century (earishlioar)|Century]]'', [[Robert Underwood Johnson]], marish Muir ayns [[Tuolumne Meadows]] as honnick eh feanish bunneydagh jeh'n jeeyl va shioltane dy chirree er nyaoo da'n vanjagh. Choard eh dy hoilshaghey magh art erbee screeuys Muir er dooney magh sthock jeh'n Sierra. Choard eh myrgeddin dy yannoo ymmyd jeh'n chummaght echey son dy chur stiagh billey ayns [[Congress]] son dy yannoo pairk ashoonagh jeh Yosemite, rere cummey [[Yellowstone National Park]]. Er 30 Mean Fouyir 1890, slattyssee Congress ny SU slattys, rere treealtys Vuir ayns daa art ayns ''Century'' son y chooid smoo: ''The Treasure of the Yosemite'' as ''Features of the Proposed National Park'', er nyn soilshaghey magh ayns 1890. Agh b'treih lesh clashtyn dy daag y slattys Glion Yosemite fo stiurey y steat.
==Sierra Club==
{{ardart|Sierra Club}}
Leah ayns 1892, haink yn Olloo Henry Senger, ny [[fockle-oaylleeaght|'ockle-oayllee]] ec [[Ollooscoill Chalifornia, Berkeley]] da quaiyl Vuir as eh fo possan alphagh y chroo son sleih slieauagh. Hug magh Senger as Warren Olney cuirraghyn "ry-hoi croo 'Sierra Club'. Bee John Muir yn eaghtyrane." Er 28 Mee ny Boaldyn, 1892, chumm ad çhaglym bunnee y [[Sierra Club]] son dy screeu banglaneyn cochorpaghey. Shiaghtin ny yei shen, denmys ad Muir myr eaghtyrane, Olney myr fo-eaghtyrane, as boayrd ny stiureyderyn ghow stiagh [[David Starr Jordan]], as eshyn eaghtyrane [[Ollooscoill Stanford]]. Hannee Muir ny eaghtyrane derrey hooar eh baase, 22 vlein ny s'anmey.<ref>{{enmyslioar
| sjerree = Fox
| kied = Stephen R.
| ennym = The American Conservation Movement: John Muir and His Legacy
| soilsheyder = Univ of Wisconsin Press
| date = 1985
| duillag = 107–108
| isbn = 9780299106348
| kiangley = http://books.google.com/books?id=kV1_k5vSuOMC&pg=PA107
}}</ref><ref name = "Colby">{{enmyseddyrvoggyl
| kiangley = http://www.owensvalleyhistory.com/stories1/story_of_sierra_club.pdf
| ennym = The Story of the Sierra Club
| sjerree = Colby
| kied = William
| date = December, 1967|work = Sierra Club Bulletin
| soilsheyder = Sierra Club|accessdate = 2009-02-26
}}</ref>
Ghow y Sierra Club toshiaght çhelleeragh dy hassoo noi shaleeyn [[Yosemite National Park]] y liehaghey, as chumm ad çhaglymyn ynsee as oayllee. Ec fer jeu, ayns fouyr 1895, resoon ad er cur er bun 'buill cheylley er lheh'; harragh y lheid y ve [[Keylljyn Ashoonagh (SUA)|Keylljyn Ashoonagh]] ny s'anmey. Va laue mooar ec y Tierra Club 'sy troddan rahoil Pairk Ashoonagh Yosemite dy astreeaghey ass stiurey y steat dys stiurey conastagh, ayns 1906. Ghow ad orroo hene y chaggey [[Glion Hetch Hetchy]] y hauail, ga dy row shiartanse dy olteyryn scanshoil ayns San Francisco noi shen. Fy yerrey, ren ad teiy as chowree eh dy row mooar-chooid y phossan son shassoo noi [[Doour Hetch Hetchy]]. <ref name = "Colby"/>
==Tashtey noi freayltys ==
Ayns Jerrey Souree 1896, haink Muir dy cho-obbraghey marish [[Gifford Pinchot]], ny 'er scanshoil 'sy ghleashaght 'reayltys. She kied ard-chione [[United States Forest Service|Shirveish Keylley ny Steatyn Unnaneysit]] v'ayn, as eh ny loayrtagh son ymmyd yn-ymmyrkey chooid najooragh son vondeish ny sleih. Fy-yerrey, va meechoardailys eddyr y ghaa, as shen taishbyney daa varel er ymmyd chooid najooragh ny çheerey. Va Pinchot fakin freayltys myr saase cooid najooragh yn ashoon y reirey son ymmyd traghtee yn-ymmyrkey foddey. Myr keylljeyder keirdee, er lesh: "she eirinys eh obbyr keylley", gyn stroie yn-veaghey foddey ny keylljyn.<ref name = "Meyer">{{enmysearishlioar
| sjerree = Meyer
| kied = John M.
| date = Winter, 1997
| ennym = Gifford Pinchot, John Muir, and the Boundaries of Politics in American Thought
| earishlioar = Polity
| soilsheyder = Palgrave MacMillan
| ym-lioar = 30|earroo = 2
| duillag = 267–284
| kiangley = http://www.jstor.org/stable/3235219
| datefeddyn = 2008-12-14
|doi = 10.2307/3235219
}}</ref> Er lesh Muir, va feeu najoor ny troyn anmey as tarcheimneeoil. Ayns art er ny Pairkyn Ashoonagh, hug eh orroo "buill son fea, breeaghys, as padjeryn." V'eh cliaghtey greinnaghey ard-valjee dy 'akin najoor son beaghey ny h-anmey. Va'n daa 'er shassoo noi doo-heyrey chooid najooragh, goaill stiagh [[lane-lhieggey]] keylljyn. Va eer Muir goaill rish dy row feme ain er aamaid as ny keylljyn er-e-hon, agh va barel feer ny smoo lhome-ymmydoil ec Pinochet er reirey faasee..<ref name = "Meyer"/>
Vrish y caarjys eddyr oc anmagh 'sy tourey 1897, liorish Pinchot cur magh art ayns pabyr-naight [[Seattle]] son fassaghey kirree ayns thalloo freaylt keylley. Hass Muir eddin ry eddin rish Pinchot as daggyr eh soilsheydys jeh. Lesh Pinchot g'aa-raa y barel, dinsh Muir da: "Cha mel nee son bentyn rhyt reesht." Daase y meechoardailys shoh as rheynn eh y ghleashaght 'reayltys ayns daa phossan: freaylleyderyn, fo Muir, as possan Phinochet ghow toshiaght "tashteyderyn" y chur orroo hene. Resoon ad ayns earishlioaryn, myr sampleyr, ''Outlook'', ''Harper's Weekly'', ''Atlantic Monthly'', ''World's Work'', as ''Century''. Va'n daa varel ry-akin reesht lesh briwnys ny Steatyn Unnaneysit er cur doour er [[Glion Hetch Hetchy]] ny dyn. Va Pinchot son dooar urree y chur: "ymmyd s'ardjey oddagh oo jannoo j'ee". Er y laue elley, dooyrt Muir: "Doour er Hetch Hetchy y chur! Cho mie doee ushtey y yannoo jeh kialteenyn as ard-çhiambleyn ny sleih, son nagh row çhiamble s'nooey er ny chasherickey rieau ec creeghyn deiney.""<ref name = "Meyer"/>
[[Coadan:Muir and Roosevelt restored.jpg|thumb|Roosevelt as Muir]]
Ayns 1903, hie yn Eaghtyrane [[Theodore Roosevelt]] marish Muir er turrys dys Yosemite. Loayrt Muir da'n eaghtyrane er meestiurey steat y ghlion, as doo-seyrey rank jeh cooid y ghlion. Eer roish daue roshtyn y phairk, v'eh er shickyraghey Roosevelt dy beagh yn aght share y phairk y choadey ish y chur fo stiurey conastagh. Erreish da goll stiagh 'sy phairk as fakin aalid y ghlion, hirr eh er Muir eshyn y hoilshaghey da y "feer" Yosemite. Hie ad ersooyl, nyn lomarcan agh son coagragh as fer ymmyrkee, as champ ad 'sy çheer feie. Loayr ad anmagh 'syn oie, as ren ad cadley mooie fo'n speyr. Huitt sniaghtey oor orroo 'sy voghrey. Ayns 1905, hug [[Congress]] [[Mariposa Grove]] as Glion Yosemite fo stiurey conastagh.<ref>{{enmyseddyrvoggyl
| ennym = Encylopaedia Britannica
| kiangley = http://www.britannica.com/EBchecked/topic/543339/Sierra-Club#ref=ref849675
| cabdil = Sierra Club
| datefeddyn = 2009-10-12
| çhengey = Baarle
}}</ref>
Hooar ben Vuir, Louise, baase er 6 Mee Luanistyn 1905.
==Hetch Hetchy==
Daase mian doour y chur er yn [[Awin Tuolumne]], son dy yannoo tasht ushtey son [[San Francisco, California|San Francisco]]. Va Muir slane noi y doour, as er lesh dy row Hetch Hetchy ny s'aaley na eer Glion Yosemite. Chagg Muir as y Sierra Club noi rish feed blein, goaill stiagh screeu dys Roosevelt hene. Fy-yerrey, hug eiyrtyssagh Roosevelt, [[Woodrow Wilson]] kied da'n slattys er 19 Mee ny Nollick, 1913. She juail mooar da Muir v'ayn, as y caggey sjerree mooar echey.
==Baase==
Hooar John Muir baase jeh niumoan ec thie-lheeys California ([[California Hospital Medical Center]] jiu) er 24 Mee ny Nollick, 1914.<ref>{{enmyseddyrvoggyl
| ennym = Obituary: John Muir
| kiangley = http://ccdl.libraries.claremont.edu/cdm4/item_viewer.php?CISOROOT=/lsc&CISOPTR=3432&DMSCALE=50.00000&DMWIDTH=600&DMHEIGHT=600&DMX=0&DMY=840&DMMODE=viewer&DMTEXT=&REC=16&DMTHUMB=1&DMROTATE=0
}}</ref><ref>{{enmyseddyrvoggyl
| ennym = Obituary: John Muir
| kiangley = http://www.nytimes.com/learning/general/onthisday/bday/0421.html
| screeudeyr = On this Day
| datefeddyn = 2007-04-23
}}</ref>
==Eiyrtys as aundyryn==
Ta enmyn ny buill fo er son Muir:
*Muir Knoll, Ollooscoill Wisconsin–Madison;
*[[Mount Muir]];
*[[Awin Rioee Muir]], Alaska;
*Tree Raadyn John Muir (ayns [[John Muir Trail|California]], [[John Muir Trail (Tennessee)|Tennessee]], as Wisconsin);
*[[John Muir Wilderness|Faasagh John Muir]];
*[[Muir Woods National Monument]] faggys da [[San Francisco]];
*[[John Muir High School]];
*John Muir Middle School (Los Angeles, California and Wausau, Wisconsin);
*John Muir Elementary School (Madison, Wisconsin);
*[[John Muir Elementary School]] (Parma, Ohio);
*[[John Muir College]] (colleish yn [[Ollooscoill Chalifornia, San Diego]]);
*[[John Muir Country Park]], ayns Dùn Barra
* [[John Muir Way]] ayns Lodainn Hiar;
*[[John Muir Health|John Muir Medical Center]] ayns Concord as Walnut Creek, California;
*y [[roltageagh]] (128523) John Muir;
*Muir's Peak ec Mount Shasta, California (ny keayrtyn, "Black Butte");
*Mount Muir (yrjey 4688') ayns Angeles National Forest, California, faggys da Pasadena<ref>{{enmyseddyrvoggyl
| ennym = Peak List of the Lower Peaks Section of the Angeles Chapter of the Sierra Club
| kiangley = http://angeles.sierraclub.org/lpc
| screeudeyr = Sierra Club
}}</ref>
*[[Camp Muir]] ayns Mount Rainier National Park;
*School of Life Sciences ec [[Ollooscoill Heriot-Watt]] ayns [[Doon Edin]], [[Nalbin]];
*John Muir Park (Green Bay, Wisconsin).
Ta caslys jeh John Muir ry-akin er [[kerroo-dollar steat]] Chalifornia 2005. Ta aaraa echey er y [[Indianapolis Prize]] Lilly Medal son frealtys. Er 6 Mee ny Nollick 2006, ren [[Arnold Schwarzenegger]] gynshellooaghey John Muir stiagh 'sy [[California Hall of Fame]] ec [[The California Museum for History, Women, and the Arts]].
{{-}}
==Jeeagh er reesht==
* [[Boayl ruggyree Yohn Muir]]
* [[Rolley buill ayns Lodainn Hiar]]
* [[John Muir Trust]]
* [[John Muir Way]]
==Imraaghyn==
{{rolleyimraaghyn}}
=== Ard-vinn===
*[http://www.archive.org/search.php?query=John%20Muir%20AND%20mediatype%3Atexts Obbraghyn Yohn Muir] ec [[Internet Archive]]. Lhiegganyn caslys bunneydagh ayns leayrtys-choipyn.
*Caslyssyn-soilshey, earishlioaryn, as caslyssyn jeh ny John Muir Papers ec the [http://library.pacific.edu/ha/digital/index.asp Çhaglymyn Bun-earrooagh Ollooscoill ny Sheealtagh].
=== Binn elley ===
* {{enmyslioar | sjerree = Austin | kied = Richard C. | ennym = Baptized into wilderness: A Christian perspective on John Muir | soilsheyder = [[Creekside Press]]| blein = 1991}}
*{{enmyslioar | sjerree = Cronon | kied = William, ed. | blein = 1997 | ennym = John Muir: Nature Writings: The Story of My Boyhood and Youth; My kied Summer in the Sierra; The Mountains of California; Stickeen; Essays | soilsheyder = [[Library of America]] | isbn = 978-1-88301124-6}}
* {{enmyslioar | sjerree = Ehrlich | kied = Gretel | blein = 2000 | ennym = John Muir: Nature's Visionary | soilsheyder = [[National Geographic]] | isbn = 0-7922-7954-9}}
* {{enmyslioar | sjerree = Fox | kied = Stephen | blein = 1981 | ennym = The American Conservation Movement: John Muir And His Legacy | soilsheyder = Little, Brown and Company | isbn = 0-316-29110-2}}
* {{enmysearishlioar | screeudeyr = Meyer, John M. | blein = 1997 | mee = | ennym = Gifford Pinchot, John Muir, and the Boundaries of Politics in American Thought | earishlioar = [[Polity (disambiguation)|Polity]] | ym-lioar = 30 | earroo = 2 | duillag = 267–284 | id = ISSN 0032-3497| doi = 10.2307/3235219}}
* {{enmyslioar | sjerree = Miller | kied = Char | blein = 2001 | ennym = Gifford Pinchot and the Making of Modern Environmentalism | soilsheyder = Island Press | isbn = 1-55963-822-2}}
* {{enmysearishlioar | screeudeyr = O'Casey, Terrence | date = 24 September 2006 | ennym = John Muir: God's Preacher of Creation | earishlioar = Christian Standard | unused_data = |http://www.christianstandard.com/articledisplay.asp?id=414}}
* {{enmysearishlioar | screeudeyr = Smith, Michael B. | blein = 1998 | mee = Mean Souree | ennym = The Value of a Tree: Public Debates of John Muir and Gifford Pinchot | earishlioar = The Historian | ym-lioar = 60 | earroo = 4 | duillag = 757–778 | id = ISSN 0018-2370}} | doi = 10.1111/j.1540-6563.1998.tb01414.x}}
* {{enmyslioar | sjerree = Turner | kied = Fredrick | blein = 1985 | ennym = Rediscovering America, John Muir in His Time and Ours | soilsheyder = [[Viking Press]] | isbn = 0-87156-704-0}}
* {{enmyslioar | sjerree = Williams | kied = Dennis | blein = 2002 | ennym = God's Wilds: John Muir's Vision of Nature | soilsheyder = Texas A&M University Press
| isbn = 1-58544-143-0}}
* {{enmyslioar | sjerree = Wolfe | kied = Linnie Marsh | blein = 1945 | ennym = Son of the Wilderness: The Life of John Muir | soilsheyder = [[University of Wisconsin Press]] | isbn = 0-299-18634-2}} ( [[Pulitzer Prize]] son beashnys, 1946)
* {{enmysearishlioar| url = http://www.historycooperative.org/earishlioars/eh/10.1/worster.html| ennym = John Muir and the Modern Passion for hey Nature| kied = Donald| sjerree = Worster | earishlioar = Environmental History| ym-lioar = 10(1)| duillag = 8–19| mee = Jerrey Geuree | blein = 2005}}
* {{enmyslioar | sjerree = Worster | kied = Donald | blein = 2008 | ennym = A Passion for Nature: The Life of John Muir | soilsheyder = Oxford University Press | isbn = 978-0195166828}}
* {{enmyslioar | sjerree = Wuerthner | kied = George | blein = 1994 | ennym = Yosemite: A Visitor's Companion | soilsheyder = Stackpole Books | duillag = 25–37
| isbn = 0-8117-2598-7}}
=== Lioaryn elley===
* {{enmyslioar | sjerree = Sachs | kied = Aaron | blein = 2006 | ennym = The Humboldt Current: Nineteenth-Century Exploration and the Roots of American Environmentalism | soilsheyder = Viking Press | isbn = 0-670-03775-3}}
==Kianglaghyn magh==
{{Commonscat|John Muir}}
{{Wikiquote}}
{{Screeudeyr Wikisource}}
*[http://www.archive.org/search.php?query=mediatype%3A(texts)%20-contributor%3Agutenberg%20AND%20(subject%3A%22Muir%2C%20John%2C%201838-1914%22%20OR%20creator%3A%22Muir%2C%20John%2C%201838-1914%22%20OR%20creator%3A%22John%20Muir%22%20OR%20ennym%3A%22John%20Muir%22%20OR%20description%3A%22John%20Muir%22) Lioaryn er ny liorish John Muir] ec [[Internet Archive]]
*{{Screeudeyr Gutenberg|id = John_Muir
| ennym = John Muir}}
*[http://www.yosemite.ca.us/john_muir_writings/ John Muir Writings]. Slane lioaryn eddyrlhieen
*[http://www.wisconsinhistory.org/turningpoints/search.asp?id=1224 Screeuyn 1861-1914] eddyrlhieen ec [https://web.archive.org/web/20051028075712/http://www.wisconsinhistory.org/topics/wisconsin-name/ Wisconsin Historical Society]
*[http://library.pacific.edu/ha/muir/index.asp John Muir Papers]. Fys er Pabyryn John Muir as stoo bentyn rish ec [[Ollooscoill ny Sheealtagh (Steatyn Unnaneysit)|Ollooscoill ny Sheealtagh]].
*[http://www.sierraclub.org/john_muir_exhibit/ John Muir] ec y Tierra Club
*[http://www.johnmuir.org/ John Muir Global Network]
*[http://www.nps.gov/jomu/ John Muir National Historic Site] jeh [[National Park Service]]
*[https://web.archive.org/web/20060929071334/http://www.djma.org.uk/djma/ Friends of John Muir's Birthplace (John Muir Association Ghùn Barra, dy row)], Nalbin
*[http://www.jmbt.org.uk/ John Muir Birthplace Trust] Nalbin
*[https://web.archive.org/web/20130403181437/http://www.jmt.org/news.asp?s=2&cat=Award&nid=JMT-N10641 John Muir Trust] Nalbin
*[http://digital.statelib.lib.in.us/db/markers_display.asp?id=9 John Muir In Indianapolis Historical Marker]
*[http://www.johnmuir.org/canada/ Canadian Friends of John Muir (CFJM) website]
*[http://www.johnmuirproject.org/ John Muir Project] Protecting Federal Public Forest Lands
{{Gurneil eaghtyrys}}
{{DEFAULTSORT:Muir, John}}
[[Ronney:John Muir| ]]
[[Ronney:Ruggyryn 'sy vlein 1838]]
[[Ronney:Baaseyn 'sy vlein 1914]]
[[Ronney:Screeudeyryn firryn Albinagh]]
[[Ronney:Screeudeyryn firryn Americaanagh]]
[[Ronney:Sheerloayreyderyn ass California]]
[[Ronney:Sheerloayreyderyn firryn Americaanagh]]
[[Ronney:Screeudeyryn ass California]]
[[Ronney:Screeudeyryn lus-oaylleeaght Americaanagh]]
[[Ronney:Lus-oaylleeyn Americaanagh]]
[[Ronney:Freilleyderyn Americaanagh]]
[[Ronney:Screeudeyryn traaght firryn Americaanagh]]
[[Ronney:Ronseyderyn Americaanagh]]
[[Ronney:Creg-oaylleeyn Americaanagh]]
[[Ronney:Ynlaghteyryn Americaanagh]]
[[Ronney:Jeshaghteyryn firryn Americaanagh]]
[[Ronney:Drappeyderyn sleityn Americaanagh]]
[[Ronney:Najooree Americaanagh]]
[[Ronney:Screeudeyryn najoor Americaanagh]]
[[Ronney:Screeudeyryn neu-farskeealaght firryn Americaanagh]]
[[Ronney:Screeudeyryn çhymmyltaghtoil Americaanagh]]
[[Ronney:Jeshaghteyryn ass California]]
[[Ronney:Shalee Hetch Hetchy]]
[[Ronney:Troagyraghyn]]
[[Ronney:Shennaghys Sierra Nevada (ny Steatyn Unnaneysit)]]
[[Ronney:Feallee ass Martinez, California]]
[[Ronney:Feallee ass Dùn Barra]]
[[Ronney:Pairk Ashoonaght Yosemite]]
[[Ronney:Sheerloayreyderyn firryn Albinagh]]
[[Ronney:Screeudeyryn lus-oaylleeaght Albinagh]]
[[Ronney:Lus-oaylleeyn Albinagh]]
[[Ronney:Freilleyderyn Albinagh]]
[[Ronney:Arragheryn magh Albinagh dys ny Steatyn Unnaneysit]]
[[Ronney:Jeshaghteyryn firryn Albinagh]]
[[Ronney:Screeudeyryn traaght firryn Albinagh]]
[[Ronney:Ronseyderyn Albinagh]]
[[Ronney:Creg-oaylleeyn Albinagh]]
[[Ronney:Ynlaghteyryn Albinagh]]
[[Ronney:Drappeyderyn sleityn Albinagh]]
[[Ronney:Najooree Albinagh]]
[[Ronney:Screeudeyryn najoor Albinagh]]
[[Ronney:Eaghtyraneyn Sierra Club]]
6xmyr1nmqszepec8sbf2wcyxz9t2dhz
Ronney:Oaylleeaght rere blein
14
13681
378210
366688
2026-04-25T15:18:18Z
MacTire02
219
ronney elley
378210
wikitext
text/x-wiki
{{Commonscat|Science by year|Oaylleeaght rere blein}}
[[Ronney:Rollaghyn bentyn rish yn oaylleeaght]]
[[Ronney:Linnaghyn-traa bentyn rish oaylleeaght]]
[[Ronney:Bleeantyn rere bun-chooish|Oaylleeaght]]
[[Ronney:Ronnaghyn rere blein|Oaylleeaght]]
5cdqmtocm4htdcb098cxhque7z8d9v6
Ronney:Linnaghyn-traa bentyn rish oaylleeaght
14
13682
378204
364117
2026-04-25T15:15:53Z
MacTire02
219
MacTire02 moved page [[Ronney:Linnaghyn-traa oaylleeagh]] to [[Ronney:Linnaghyn-traa bentyn rish oaylleeaght]]: aght
364117
wikitext
text/x-wiki
[[Ronney:Shennaghys yn oaylleeaght]]
[[Ronney:Linnaghyn-traa rere bun-chooish|Oaylleeaght]]
brer800kxz0pmfhle5759ruxz744vb0
Ronney:Oaylleeaght 'sy 18oo eash
14
13683
378213
341412
2026-04-25T15:21:46Z
MacTire02
219
+clowan
378213
wikitext
text/x-wiki
{{Navseasoncats}}
[[Ronney:18oo eash]]
[[Ronney:Oaylleeaght rere eash|18]]
[[Ronney:Oaylleeaght 'sy 2h villey-bleeaney|18]]
gqnd92zh0fnxe6uwsn61fcg7t5achb1
378215
378213
2026-04-25T15:23:21Z
MacTire02
219
ronney elley
378215
wikitext
text/x-wiki
{{Navseasoncats}}
[[Ronney:18oo eash]]
[[Ronney:Oaylleeaght rere eash|18]]
[[Ronney:Oaylleeaght 'sy 2h villey bleeaney|18]]
6yjmsj1ag5j3kc7xo2592bsvav2oy85
Ronney:Claare spoar yn Unnaneys Soveidjagh
14
31036
378191
327899
2026-04-25T13:42:46Z
MacTire02
219
+ronnaghyn
378191
wikitext
text/x-wiki
{{Catmore}}
:''Jeeagh er neesht: [[:Ronney:Claare spoar y Roosh]].''
{{Commons cat|Space program of the Soviet Union|Claare spoar yn Unnaneys Soveidjagh}}
[[Ronney:Claareeyn spoar rere çheer|Unnaneys Soveidjagh]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Unnaneys Soveidjagh]]
[[Ronney:Etlagh spoar 'sy 20oo eash]]
[[Ronney:Claareeyn spoar yn Aishey|Unnaneys Soveidjagh]]
[[Ronney:Claareeyn spoar yn Oarpey|Unnaneys Soveidjagh]]
6oeq6125k9sx6cm3sk3salszma9zsvq
Module:Category series navigation
828
36546
378194
369330
2026-04-25T14:01:28Z
MacTire02
219
prowal
378194
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 year and range]]
'', --[28] placeholder for [[Category:Category series navigation year and decade]]
'', --[29] placeholder for [[Category:Category series navigation decade and century]]
'', --[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 -> 12th, etc.
--Used by nav_nordinal() & nav_wordinal().
function p.addord( i )
if tonumber(i) then
local s = tostring(i)
local tens = string.match(s, '1%d$')
if tens then return s..'oo' end
local ones = string.match(s, '%d$')
if ones == '1' then return s..'d'
elseif ones == '2' then return s..'h' end
return s..'oo'
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
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 = ' BC' --show BC for all BC decades whenever a "0s" is displayed on the nav
end
--determine target cat
local disp = d..'s'..BCdisp
local catlink = catlinkfollowr( frame, firstpart..' '..d..'s'..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') then minord = -math.abs(minord) end --allow BC qualifier (AD otherwise assumed)
if string.match(maximumord or '', 'BC') then maxord = -math.abs(maxord) end --allow BC qualifier (AD otherwise assumed)
local temporal = string.match(lastpart, 'century') or
string.match(lastpart, 'millennium')
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?)') --"1st-century BC" format
local lastpartNoBC = mw.ustring.gsub(lastpart, '%sBCE?', '') --easier than splitting lastpart up in 2; AD never used
local BCe = parentBC or ordBCElastparts[lastpartNoBC] or 'BC' --"BC" default
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 minord < 1 then minord = 1 end --nothing before "1st parliament", etc.
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 = p.addord(o)
local osign = o --use o for display & osign for logic
if BC ~= '' 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 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 BC == '' and minord <= osign and osign <= maxord then --e.g. >= "1st parliament"
local catlink = catlinkfollowr( frame, firstpart..' '..oth..tspace..lastpart, oth )
if catlink.rtarget then --a {{Category redirect}} was followed
trackcat(23, 'Category series navigation nordinal redirected')
end
table.insert(navlist, navcenter(i, catlink))
else --either out-of-range (hide), or non-temporal + BC = something might be wrong (2nd X parliament BC?); handle exceptions if/as they arise
table.insert(navlist, hidden)
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. "1760s 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+)')
local nordinal = mw.ustring.match(cpagename, '[:%s](%d+[dho][o])[-%s]') or
mw.ustring.match(cpagename, '[:%s](%d+[dho][o])$')
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 nordinal then return { ['vtype'] = 'nordinal', ['v'] = nordinal } end
if decade then return { ['vtype'] = 'decade', ['v'] = decade } 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..'0s '
decadecat = mw.text.trim( firstpart_dec..' '..decade..lastpart )
local exists = catexists(decadecat)
if exists then
navborder = false
trackcat(28, 'Category series navigation year and decade')
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. "0s", "2010s"; 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+)s'))
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
lc90rt2kbwfmvdptomtwh0f3ebxc47t
Ronney:Earish noa-emshiragh leah
14
37553
378278
352073
2026-04-26T02:12:01Z
MacTire02
219
ronney elley
378278
wikitext
text/x-wiki
{{Commons cat|Early modern period|yn earish noa-emshiragh leah}}
{{catmore}}
[[Ronney:Lhingyn shenndeeagh|+]]
[[Ronney:Earish noa-emshiragh|*]]
[[Ronney:2h villey bleeaney]]
[[Ronney:Cultoor yn Theihll Heear|1453]]
4uy3hxs0qa6hbk15ff0czdulqrpkv1c
Ronney:Earish noa-emshiragh
14
37554
378275
352071
2026-04-26T02:10:39Z
MacTire02
219
MacTire02 moved page [[Ronney:Shennaghys noa-emshiragh]] to [[Ronney:Earish noa-emshiragh]] without leaving a redirect: aght
352071
wikitext
text/x-wiki
{{commons category|Modern period|yn earish noa-emshiragh}}
{{Catmore|Shennaghys y theihll#Shennaghys noa-emshiragh}}
[[Ronney:Lhingyn shenndeeagh|+]]
[[Ronney:Noa-emshiraght]]
ki6je54917b6e8gdxs7ap4atn79x5sn
Ronney:Earish noa-emshiragh yeianagh
14
37555
378279
352072
2026-04-26T02:12:29Z
MacTire02
219
ronney elley
378279
wikitext
text/x-wiki
{{catmore|yn earish noa-emshiragh yeianagh}}
[[Ronney:Lhingyn shenndeeagh|+]]
[[Ronney:Earish noa-emshiragh|*]]
[[Ronney:2h villey bleeaney]]
[[Ronney:3oo milley bleeaney]]
qhzj1u1n72z1fqt9nxgvyh8lyynq4em
Ronney:Shennaghys co-emshiragh
14
37559
378280
349795
2026-04-26T02:12:40Z
MacTire02
219
ronney elley
378280
wikitext
text/x-wiki
{{Commonscat|Contemporary history|shennaghys co-emshiragh}}
{{Catmore|Shennaghys co-emshiragh}}
[[Ronney:Earish noa-emshiragh|.]]
[[Ronney:Magheryn shennaghys]]
[[Ronney:Earish noa-emshiragh yeianagh|:]]
rzt8dovwuaf1410u15r44byexcf068v
Ronney:Shennaghys noa-emshiragh rere çheer
14
37678
378277
350034
2026-04-26T02:11:41Z
MacTire02
219
ronney elley
378277
wikitext
text/x-wiki
[[Ronney:Earish noa-emshiragh| ]]
[[Ronney:Shennaghys rere çheer|+6]]
cx0yqm7ggh239p3y42ukozjmeb52dtm
Ronney:Shennaghys noa-emshiragh rere mooar-rheynn
14
38388
378276
351357
2026-04-26T02:11:00Z
MacTire02
219
ronney elley
378276
wikitext
text/x-wiki
{{see also|Ronney:Shennaghys noa-emshiragh rere çheer}}
'''[[Shennaghys noa-emshiragh]] rere [[mooar-rheynn]]''', t'eh shen shennaghys haghyrt car y [[19oo eash]] as y [[20oo eash]] derrey jerrey yn [[Yn Nah Chaggey Dowanagh|Nah Chaggey Dowanagh]].
[[Ronney:Earish noa-emshiragh| ]]
[[Ronney:Shennaghys rere mooar-rheynn|+6]]
j3kwdtw6r923mo88fl1kq0bq59mkx0e
Ronney:Reagheydyssyn eddyr-reiltyssagh
14
40039
378251
356434
2026-04-26T00:35:03Z
MacTire02
219
ronney elley
378251
wikitext
text/x-wiki
{{Commons category|Intergovernmental organizations|Reagheydyssyn eddyr-reiltyssagh}}
{{Catmore|Reagheydys eddyr-reiltyssagh}}
[[Ronney:Reagheydyssyn cour polasee dowanagh]]
[[Ronney:Reagheydyssyn eddyrashoonagh rere sorçh reagheydys]]
[[Ronney:Sur-reagheydyssyn]]
{{CategoryTOC}}
fxd8cwz5l5y4nrqjw3ne69fo71f22rx
Ronney:Tushtey najoor yn Oarpey rere croghane
14
42544
378224
363837
2026-04-25T15:44:00Z
MacTire02
219
lettyraghey
378224
wikitext
text/x-wiki
{{moir-ronney}}
{{Commons category|Nature of Europe|Croo dooghyssagh yn Oarpey}}
[[Coadan:Europe orthographic Caucasus Urals boundary (with borders).svg|left|125x125px]]
[[Coadan:WGSRPD Europe.svg|thumb|right|220x220px|Mooar-rheynn yn Oarpey rere y [[WGSRPD]]]]
{{category main article|Tushtey najoor yn Oarpey}}
{{Category explanation|artyn bentyn rish {{C|Tushtey najoor|tushtey najoor}} yn '''{{C|Yn Oarpey|Oarpey}}''' rere croghane}}
{{CatAutoTOC}}
[[Ronney:Tushtey najoor yn Oarpey| Croghane]]
[[Ronney:Tushtey najoor rere croghane|°Oarpey]]
[[Ronney:Çhymmyltaght yn Oarpey rere croghane| Tushtey najoor]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey rere croghane| Tushtey najoor]]
fg3to1478vxufcqw5bbl1d5f7g35tcd
Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey rere croghane
14
42545
378222
363838
2026-04-25T15:43:47Z
MacTire02
219
MacTire02 moved page [[Ronney:Sheanse as çhaghnoaylleeagh 'syn Oarpey rere croghane]] to [[Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey rere croghane]]: lettyraghey
363838
wikitext
text/x-wiki
{{moir-ronney}}
{{see also|Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey rere çheer}}
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey| Croghane]]
[[Ronney:Sheanse as çhaghnoaylleeaght rere croghane|°Oarpey]]
[[Ronney:Tarmaynyssyn yn Oarpey rere croghane| Sheanse]]
6i663fmx55kooj4rgwdrp7lj71hdugx
Ronney:Scaaillaghyn traa creg-oaylleeagh
14
42672
378209
364114
2026-04-25T15:17:52Z
MacTire02
219
++
378209
wikitext
text/x-wiki
{{Cat main|Scaailley traa creg-oaylleeagh}}
{{Commons cat|Geologic time scale|Scaailley traa creg-oaylleeagh}}
[[Ronney:Creg-chronoaylleeaght]]
[[Ronney:Roie-hennaghys]]
[[Ronney:Linnaghyn-traa bentyn rish creg-oaylleeaght]]
5a7t6t5pr4glcu4doijxq1eyqgwa830
Ronney:Linnaghyn-traa bentyn rish creg-oaylleeaght
14
42674
378206
364116
2026-04-25T15:16:48Z
MacTire02
219
ronnaghyn elley
378206
wikitext
text/x-wiki
{{Commons cat|Geology timelines|Linnaghyn-traa bentyn rish creg-oaylleeaght}}
[[Ronney:Linnaghyn-traa bentyn rish oaylleeaght|Creg-oaylleeaght]]
[[Ronney:Creg-oaylleeaght|+Linnaghyn-traa]]
[[Ronney:Shennaghys creg-oaylleeagh y Dowan|+]]
[[Ronney:Shennaghys y chreg-oaylleeaght|Linnaghyn-traa]]
ig8iuixp52e3zqaiqv8ny7obm54k72u
378207
378206
2026-04-25T15:17:03Z
MacTire02
219
MacTire02 moved page [[Ronney:Linnaghyn-traa creg-oaylleeagh]] to [[Ronney:Linnaghyn-traa bentyn rish creg-oaylleeaght]]: aght
378206
wikitext
text/x-wiki
{{Commons cat|Geology timelines|Linnaghyn-traa bentyn rish creg-oaylleeaght}}
[[Ronney:Linnaghyn-traa bentyn rish oaylleeaght|Creg-oaylleeaght]]
[[Ronney:Creg-oaylleeaght|+Linnaghyn-traa]]
[[Ronney:Shennaghys creg-oaylleeagh y Dowan|+]]
[[Ronney:Shennaghys y chreg-oaylleeaght|Linnaghyn-traa]]
ig8iuixp52e3zqaiqv8ny7obm54k72u
Ronney:Conastaghyn
14
45755
378249
370982
2026-04-26T00:34:01Z
MacTire02
219
ronney elley
378249
wikitext
text/x-wiki
{{Commons category|Federations|Conastaghyn}}
[[Ronney:Sorçhyn dy steatyn bunraghtoil]]
[[Ronney:Conastaghys]]
[[Ronney:Sur-reagheydyssyn]]
rl6yjh80fcacjynxkmud6m75j0oq641
Ronney:Sheerloayrtys er son yn oaylleeaght
14
49558
378181
2026-04-25T13:09:11Z
MacTire02
219
ronney noa
378181
wikitext
text/x-wiki
[[Ronney:Sheerloayrtys rere feysht|Oaylleeaght]]
[[Ronney:Politickaght yn oaylleeaght]]
[[Ronney:Oaylleeaght 'sy çheshaght]]
dn3mpugro4jcpzp3l1052h37mnin6xm
Ronney:Coloinaghey ry-heet
14
49559
378182
2026-04-25T13:11:14Z
MacTire02
219
ronney noa
378182
wikitext
text/x-wiki
[[Ronney:Coloinaghys|>]]
[[Ronney:Seihll ry-heet]]
[[Ronney:Clannaghey deiney]]
o1k79uqcyyndm9ddwqxvmjcbf2gaxc0
Ronney:Coloinaghey rere boayl
14
49560
378183
2026-04-25T13:12:42Z
MacTire02
219
ronney noa
378183
wikitext
text/x-wiki
[[Ronney:Ronnaghyn rere boayl]]
[[Ronney:Coloinaghys]]
r9sswwuskq1qew8f2j9g0e5p54ovn0t
Ronney:Claare spoar y Roosh
14
49561
378184
2026-04-25T13:20:28Z
MacTire02
219
ronney noa
378184
wikitext
text/x-wiki
:''Jeeagh er neesht: [[:Ronney:Claare spoar yn Unnaneys Soveidjagh]].''
{{Commons cat|Space program of Russia|Claare spoar y Roosh}}
[[Ronney:Claareeyn spoar rere çheer}Roosh]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'sy Roosh|Spoar]]
3fpziz5z9zwjqob9z0n4bz4a7hhks1e
378185
378184
2026-04-25T13:20:41Z
MacTire02
219
piob
378185
wikitext
text/x-wiki
:''Jeeagh er neesht: [[:Ronney:Claare spoar yn Unnaneys Soveidjagh]].''
{{Commons cat|Space program of Russia|Claare spoar y Roosh}}
[[Ronney:Claareeyn spoar rere çheer|Roosh]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'sy Roosh|Spoar]]
7iw5jqwnaq9jjq8spuoqvy9c5trrs18
378190
378185
2026-04-25T13:42:10Z
MacTire02
219
+ronnaghyn
378190
wikitext
text/x-wiki
:''Jeeagh er neesht: [[:Ronney:Claare spoar yn Unnaneys Soveidjagh]].''
{{Commons cat|Space program of Russia|Claare spoar y Roosh}}
[[Ronney:Claareeyn spoar rere çheer|Roosh]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'sy Roosh|Spoar]]
[[Ronney:Claareeyn spoar yn Aishey|Roosh]]
[[Ronney:Claareeyn spoar yn Oarpey|Roosh]]
7d1axta70051udoxycuzp3tyvyqhtw5
Ronney:Sheanse as çhaghnoaylleeaght 'sy Roosh
14
49562
378186
2026-04-25T13:23:15Z
MacTire02
219
ronney noa
378186
wikitext
text/x-wiki
{{cat main}}
{{Commons category|Science and technology in Russia|Sheanse as çhaghnoaylleeaght 'sy Roosh}}
[[Ronney:Tarmaynys y Roosh]]
[[Ronney:Sheanse as çhaghnoaylleeaght rere çheer|Roosh]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey rere çheer|Roosh]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Aishey rere çheer|Roosh]]
jkhxs356viv0hngvut5bgk1ffxoke9w
Ronney:Tarmaynys y Roosh
14
49563
378187
2026-04-25T13:25:02Z
MacTire02
219
ronney noa
378187
wikitext
text/x-wiki
{{Cat main}}
{{Commons cat|Economy of Russia|Tarmaynys y Roosh}}
{{DEFAULTSORT:Roosh}}
[[Ronney:Yn Roosh|Tarmaynys]]
[[Ronney:Tarmaynyssyn rere çheer]]
[[Ronney:Tarmaynyssyn yn Aishey rere çheer]]
[[Ronney:Tarmaynyssyn yn Oarpey rere çheer]]
t6l7x2gf0ihzh437fmt6jdtg4wromds
Ronney:Claare spoar y Çhapaan
14
49564
378188
2026-04-25T13:38:16Z
MacTire02
219
ronney noa
378188
wikitext
text/x-wiki
{{Commonscat|Space program of Japan|Claare spoar y Çhapaan}}
Obbraghyn spoar lesh [[JAXA]] as undinyssyn cochianglt.
[[Ronney:Sheanse as çhaghnoaylleeaght 'sy Çhapaan|Spoar]]
[[Ronney:Claareeyn spoar rere çheer|Chapaan]]
[[Ronney:Claareeyn spoar yn Aishey|Chapaan]]
1uwbhe7pzdgdikxvscugb4ch31fqzzn
Ronney:Claareeyn spoar yn Aishey
14
49565
378189
2026-04-25T13:39:10Z
MacTire02
219
ronney noa
378189
wikitext
text/x-wiki
[[Ronney:Claareeyn spoar|*Aishey]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Aishey|Spoar]]
l4t7fphbliog3pjn6abiy9of0yrbcwg
378192
378189
2026-04-25T13:43:41Z
MacTire02
219
++
378192
wikitext
text/x-wiki
{{Commons category|Space programs of Asia|Claareeyn spoar yn Aishey}}
[[Ronney:Claareeyn spoar|*Aishey]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Aishey|Spoar]]
[[Ronney:Arraghey 'syn Aishey|Spoar]]
j7hsvrrnygl7ntes3xzvk5guet4jqa8
Ronney:Claareeyn spoar yn Oarpey
14
49566
378193
2026-04-25T13:44:13Z
MacTire02
219
ronney noa
378193
wikitext
text/x-wiki
{{Commons category|Space programs of Europe|Claareeyn spoar yn Oarpey}}
[[Ronney:Claareeyn spoar|*Oarpey]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey|Spoar]]
[[Ronney:Arraghey 'syn Oarpey|Spoar]]
4v179699f16eocz3dv06cl24jmqwjok
Ronney:Etlagh spoar 'sy 20oo eash
14
49567
378195
2026-04-25T14:01:58Z
MacTire02
219
ronney noa
378195
wikitext
text/x-wiki
{{Navseasoncats}}
[[Ronney:Etlagh spoar rere eash|20]]
[[Ronney:Arraghey 'sy 20oo eash|Spoar]]
[[Ronney:Spoar mooar 'sy 20oo eash]]
qn12rykp4ipdpjmb71u8gadkbkwggik
Ronney:Etlagh spoar rere eash
14
49568
378196
2026-04-25T14:51:02Z
MacTire02
219
ronney noa
378196
wikitext
text/x-wiki
{{moir-ronney}}
{{category more|Linney-traa yn etlagh spoar}}
[[Ronney:Etlagh spoar| Eash]]
[[Ronney:Spoar mooar rere eash| Etlagh spoar]]
[[Ronney:Arraghey rere eash| Etlagh spoar]]
nb058xzx74u9pa1uueirtnpok8jcafn
Ronney:Arraghey rere eash
14
49569
378197
2026-04-25T14:53:26Z
MacTire02
219
ronney noa
378197
wikitext
text/x-wiki
{{Category see also|Arraghey rere blein|Arraghey rere jeihaght}}
[[Ronney:Arraghey rere traa|.eash]]
[[Ronney:Ronnaghyn rere eash]]
jfh6unxg3hjxigwel3e871s9gv9ujso
Ronney:Spoar mooar rere eash
14
49570
378198
2026-04-25T14:54:55Z
MacTire02
219
ronney noa
378198
wikitext
text/x-wiki
{{moir-ronney}}
[[Ronney:Spoar mooar|.Eash]]
[[Ronney:Oaylleeaght rere eash]]
ov9hgxj6s1atnyybd0nntgc3bt00jkl
Ronney:Arraghey 'sy 20oo eash
14
49571
378199
2026-04-25T14:56:49Z
MacTire02
219
ronney noa
378199
wikitext
text/x-wiki
{{Commons category|Transport yn the 20th century|Arraghey 'sy 20oo eash}}
{{Navseasoncats}}
[[Ronney:Arraghey rere eash|20]]
[[Ronney:20oo eash]]
[[Ronney:Arraghey 'sy 2h villey bleeaney|20]]
rc2uvv673vokpjv895fnm4aiub5v756
Ronney:Arraghey 'sy 2h villey bleeaney
14
49572
378200
2026-04-25T15:10:12Z
MacTire02
219
ronney noa
378200
wikitext
text/x-wiki
{{Navseasoncats}}
{{Commons category|2nd-millennium in transport|Arraghey 'sy 2h villey bleeaney}}
[[Ronney:2h villey bleeaney|Arraghey]]
[[Ronney:Linnaghyn-traa bentyn rish arraghey|*2h villey bleeaney]]
o5kspe01q9pafydh23rfgmfcn2uyb27
378201
378200
2026-04-25T15:12:03Z
MacTire02
219
ronney noa
378201
wikitext
text/x-wiki
{{Commons category|2nd-millennium in transport|Arraghey 'sy 2h villey bleeaney}}
[[Ronney:2h villey bleeaney|Arraghey]]
[[Ronney:Linnaghyn-traa bentyn rish arraghey|*2h villey bleeaney]]
3iaqg8e0ik4s32v3t0jkkqi74cjv31f
Ronney:Linnaghyn-traa bentyn rish arraghey
14
49573
378202
2026-04-25T15:13:35Z
MacTire02
219
ronney noa
378202
wikitext
text/x-wiki
[[Ronney:Linnaghyn-traa bentyn rish çhaghnoaylleeaght|Arraghey]]
[[Ronney:Shennaghys yn arraghey]]
[[Ronney:Linnaghyn-traa rere bun-chooish|Arraghey]]
t0chvdcstu8hxmczszk268wko0d68a7
Ronney:Linnaghyn-traa bentyn rish çhaghnoaylleeaght
14
49574
378203
2026-04-25T15:15:07Z
MacTire02
219
ronney noa
378203
wikitext
text/x-wiki
{{cat main|Rolley linnaghyn-traa#Çhaghnoaylleeaght|Shennaghys y çhaghnoaylleeaght#Rere sorçh}}
[[Ronney:Shennaghys y çhaghnoaylleeaght]]
[[Ronney:Linnaghyn-traa rere bun-chooish]]
72rrhriu58y9m7hofd3ashhlmbqq33y
Ronney:Linnaghyn-traa oaylleeagh
14
49575
378205
2026-04-25T15:15:53Z
MacTire02
219
MacTire02 moved page [[Ronney:Linnaghyn-traa oaylleeagh]] to [[Ronney:Linnaghyn-traa bentyn rish oaylleeaght]]: aght
378205
wikitext
text/x-wiki
#REDIRECT [[:Ronney:Linnaghyn-traa bentyn rish oaylleeaght]]
tf8213x74blqzzpy8kcvmwy01yq15n4
Ronney:Linnaghyn-traa creg-oaylleeagh
14
49576
378208
2026-04-25T15:17:03Z
MacTire02
219
MacTire02 moved page [[Ronney:Linnaghyn-traa creg-oaylleeagh]] to [[Ronney:Linnaghyn-traa bentyn rish creg-oaylleeaght]]: aght
378208
wikitext
text/x-wiki
#REDIRECT [[:Ronney:Linnaghyn-traa bentyn rish creg-oaylleeaght]]
bsrn2j7cmcxvcg78gsxu4rvzyynzdvb
Ronney:Spoar mooar 'sy 20oo eash
14
49577
378211
2026-04-25T15:19:48Z
MacTire02
219
ronney noa
378211
wikitext
text/x-wiki
{{navseasoncats}}
[[Ronney:Spoar mooar rere eash|20]]
[[Ronney:Oaylleeaght 'sy 20oo eash|Spoar]]
bqhaj2jna3r1lt5ba3xol6zcjjkloka
Ronney:Oaylleeaght 'sy 20oo eash
14
49578
378212
2026-04-25T15:21:08Z
MacTire02
219
ronney noa
378212
wikitext
text/x-wiki
{{Cat main}}
{{Navseasoncats}}
[[Ronney:20oo eash]]
[[Ronney:Oaylleeaght rere eash|20]]
[[Ronney:Oaylleeaght 'sy 2h villey bleeaney|20]]
ab4r7h6ux83u6bbbg34a8764t70khvi
Ronney:Oaylleeaght 'sy 2h villey bleeaney
14
49579
378214
2026-04-25T15:22:49Z
MacTire02
219
ronney noa
378214
wikitext
text/x-wiki
[[Ronney:2h villey bleeaney]]
[[Ronney:Oaylleeaght rere milley bleeaney|2]]
4jgffs6gyuyts9ntqbpum3bplvg7me5
Ronney:Oaylleeaght rere milley bleeaney
14
49580
378216
2026-04-25T15:24:21Z
MacTire02
219
ronney noa
378216
wikitext
text/x-wiki
{{moir-ronney}}
[[Ronney:Shennaghys yn oaylleeaght rere earish| Milley bleeaney]]
[[Ronney:Ronnaghyn rere milley bleeaney|Oaylleeaght]]
rrqh4hcc0vjcljn7viu2ib7m889uj69
Ronney:Sheanse as çhaghnoaylleeaght 'syn Unnaneys Soveidjagh
14
49581
378217
2026-04-25T15:27:38Z
MacTire02
219
ronney noa
378217
wikitext
text/x-wiki
{{Cat main}}
{{Commonscat|Science and technology in the Soviet Union|Sheanse as çhaghnoaylleeaght 'syn Unnaneys Soveidjagh}}
{{CatAutoTOC}}
[[Ronney:Yn Unnaneys Soveidjagh]]
[[Ronney:Sheanse as çhaghnoaylleeaght rere eear-heer|Unnaneys Soveidjagh]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Aishey rere çheer|-Unnaneys Soveidjagh]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey rere çheer|-Unnaneys Soveidjagh]]
[[Ronney:Shennaghys y çheanse as y çhaghnoaylleeaght 'sy Roosh| ]]
[[Ronney:Oaylleeaght 'sy 20oo eash]]
[[Ronney:Çhaghnoaylleeaght 'sy 20oo eash]]
rw0mteseo1znv5ut698lqjpktf63l7u
Ronney:Shennaghys y çheanse as y çhaghnoaylleeaght 'sy Roosh
14
49582
378218
2026-04-25T15:29:02Z
MacTire02
219
ronney noa
378218
wikitext
text/x-wiki
[[Ronney:Shennaghys y çheanse as y çhaghnoaylleeaght rere çheer|Roosh]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'sy Roosh]]
[[Ronney:Shennaghys y Roosh rere bun-chooish|Cheanse as chaghnoaylleeaght]]
nhzwfz7u0bh6rz74qaa1ajizbpanjaf
Ronney:Shennaghys y Roosh rere bun-chooish
14
49583
378219
2026-04-25T15:36:46Z
MacTire02
219
ronney noa
378219
wikitext
text/x-wiki
{{moir-ronney}}
[[Ronney:Shennaghys y Roosh| Bun-chooish]]
[[Ronney:Shennaghys rere çheer as bun-chooish|Roosh]]
[[Ronney:Shennaghys yn Aishey rere bun-chooish| Roosh]]
[[Ronney:Shennaghys yn Oarpey rere bun-chooish| Roosh]]
0iyg9uq0jxuprunltvd0t4jixzy1ad3
Ronney:Shennaghys y çheanse as y çhaghnoaylleeaght rere çheer
14
49584
378220
2026-04-25T15:38:18Z
MacTire02
219
ronney noa
378220
wikitext
text/x-wiki
[[Ronney:Shennaghys y çheanse as y çhaghnoaylleeaght rere ard| Cheer]]
[[Ronney:Shennaghys rere bun-chooish as çheer|Cheanse as chaghnoaylleeaght]]
[[Ronney:Sheanse as çhaghnoaylleeaght rere çheer| Shennaghys]]
to8h91mqwwqizcujhv6afwlcgc1i8bx
Ronney:Shennaghys y çheanse as y çhaghnoaylleeaght rere ard
14
49585
378221
2026-04-25T15:42:00Z
MacTire02
219
ronney noa
378221
wikitext
text/x-wiki
{{Commonscat|History of science and technology by region|Shennaghys y çheanse as y çhaghnoaylleeaght rere ard}}
[[Ronney:Shennaghys y çheanse as y çhaghnoaylleeaght| Ard]]
[[Ronney:Shennaghys rere ard| Cheanse as chaghnoaylleeaght]]
[[Ronney:Sheanse as çhaghnoaylleeaght rere boayl|Ard]]
m8rwejou2ws1u3kgla4nkelce4b8oix
Ronney:Sheanse as çhaghnoaylleeagh 'syn Oarpey rere croghane
14
49586
378223
2026-04-25T15:43:47Z
MacTire02
219
MacTire02 moved page [[Ronney:Sheanse as çhaghnoaylleeagh 'syn Oarpey rere croghane]] to [[Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey rere croghane]]: lettyraghey
378223
wikitext
text/x-wiki
#REDIRECT [[:Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey rere croghane]]
nx0rsx1l6gleur3gopx84sgy8ja7fbe
Ronney:Çhaghnoaylleeaght 'sy 20oo eash
14
49587
378225
2026-04-25T15:45:17Z
MacTire02
219
ronney noa
378225
wikitext
text/x-wiki
{{Navseasoncats}}
[[Ronney:20oo eash|Chaghnoaylleeaght]]
[[Ronney:Çhaghnoaylleeaght rere eash|20]]
4tcaooekljp3jjf42nmnkshba088eoy
Ronney:Çhaghnoaylleeaght rere eash
14
49588
378226
2026-04-25T15:47:08Z
MacTire02
219
ronney noa
378226
wikitext
text/x-wiki
{{Commonscat|Technology by century|Çhaghnoaylleeaght rere eash}}
{{moir-ronney}}
{{Category see also|Çhaghnoaylleeaght rere blein|Çhaghnoaylleeaght rere jeihaght}}
[[Ronney:Çhaghnoaylleeaght rere earish| 1]]
[[Ronney:Ronnaghyn rere eash|Chaghnoaylleeaght]]
[[Ronney:Oaylleeaght rere eash|Chaghnoaylleeaght]]
hkfn1bg1skshko0c6sqbsoga1i2li7m
Ronney:Sheanse as çhaghnoaylleeaght rere eear-heer
14
49589
378227
2026-04-25T15:48:50Z
MacTire02
219
ronney noa
378227
wikitext
text/x-wiki
[[Ronney:Sheanse as çhaghnoaylleeaght rere çheer|-Eear]]
[[Ronney:Tarmaynyssyn rere eear-heer| Sheanse as chaghnoaylleeaght]]
[[Ronney:Shennaghys y çheanse as y çhaghnoaylleeaght rere çheer|-]]
m90rqre6buqag4ff84wxz7e202vno7b
Ronney:Tarmaynyssyn rere eear-heer
14
49590
378228
2026-04-25T15:49:56Z
MacTire02
219
ronney noa
378228
wikitext
text/x-wiki
[[Ronney:Tarmaynyssyn rere çheer|*]]
[[Ronney:Shennaghys tarmaynagh rere çheer|-]]
[[Ronney:Ronnaghyn rere eear-heer]]
gj3onppr5evqsaluhbgwr06ttpsky4n
Ronney:Shennaghys tarmaynagh rere çheer
14
49591
378229
2026-04-25T15:51:23Z
MacTire02
219
ronney noa
378229
wikitext
text/x-wiki
{{moir-ronney}}
{{Commons cat|Economic history by country|Shennaghys tarmaynagh rere çheer}}
[[Ronney:Shennaghys tarmaynagh| Cheer]]
[[Ronney:Tarmaynyssyn rere çheer| Shennaghys]]
[[Ronney:Shennaghys rere bun-chooish as çheer|Tarmaynagh]]
{{CatAutoTOC}}
bvnppo38xzef8ksrv5a0qoezi19s5by
Ronney:Arraghey 'syn Aishey
14
49592
378230
2026-04-25T19:48:02Z
MacTire02
219
ronney noa
378230
wikitext
text/x-wiki
{{Commons cat|Transport in Asia|Arraghey 'syn Aishey}}
[[Ronney:Arraghey rere mooar-rheynn|Aishey]]
[[Ronney:Çhynskylyn shirveish 'syn Aishey]]
t5uxnwqhq7hvdupm96yx2dwobq2hjmb
Ronney:Stashoonyn spoar NASA
14
49593
378231
2026-04-25T19:49:13Z
MacTire02
219
ronney noa
378231
wikitext
text/x-wiki
[[Ronney:Siyn spoar NASA]]
[[Ronney:Stashoonyn spoar Americaanagh|NASA]]
9xmz676m4o18aa5x5av5mhsl65ndg96
Ronney:Stashoonyn spoar Americaanagh
14
49594
378232
2026-04-25T19:50:06Z
MacTire02
219
ronney noa
378232
wikitext
text/x-wiki
[[Ronney:Stashoonyn spoar|Americaanagh]]
[[Ronney:Siyn spoar Americaanagh|-Stashoonyn]]
ijazfylvyyjxny2bhb8zpaatguilzen
Ronney:Siyn spoar Americaanagh
14
49595
378233
2026-04-25T19:51:43Z
MacTire02
219
ronney noa
378233
wikitext
text/x-wiki
{{Commonscat|Spacecraft of the United States|Siyn spoar Americaanagh}}
[[Ronney:Siyn spoar rere çheer|Americaanahgh]]
[[Ronney:Claare spoar ny Steatyn Unnaneysit]]
e4u9wyjghxsfel6q799zu8fk1tsvy9u
Ronney:Siyn spoar rere çheer
14
49596
378234
2026-04-25T19:53:14Z
MacTire02
219
ronney noa
378234
wikitext
text/x-wiki
{{Commonscat|Spacecraft by country|Siyn spoar rere çheer}}
{{Moir-ronney}}
[[Ronney:Siyn spoar| Cheer]]
[[Ronney:Claareeyn spoar rere çheer|*]]
{{CatAutoTOC}}
skdpv296bupgcgxh5xc23bwjpjf0gte
Ronney:Claareeyn y Jantys Spoar Oarpagh
14
49597
378235
2026-04-25T19:56:06Z
MacTire02
219
ronney noa
378235
wikitext
text/x-wiki
[[Ronney:Yn Jantys Spoar Oarpagh]]
[[Ronney:Claareeyn spoar yn Oarpey|-Jantys Spoar Oarpagh]]
58mep20t60e1lyrhzypgeit1qt6kacm
Ronney:Yn Jantys Spoar Oarpagh
14
49598
378236
2026-04-25T20:07:13Z
MacTire02
219
++
378236
wikitext
text/x-wiki
{{Commons category|European Space Agency|Yn Jantys Spoar Oarpagh}}
{{Cat main}}
{{DEFAULTSORT:Jantys Spoar Oarpagh}}
[[Ronney:Çhooraght Oarpagh]]
[[Ronney:Claareeyn spoar yn Oarpey|*]]
[[Ronney:Reagheydyssyn oaylleeagh ooilley-Oarpagh]]
[[Ronney:Reagheydyssyn bunnit ayns Paarys]]
[[Ronney:Jantyssyn spoar|Oarpagh]]
[[Ronney:Polasee spoar yn Unnaneys Oarpagh]]
lzjbza8wnauf66npjszvnsg3j6e8ohy
Ronney:Çhooraght Oarpagh
14
49599
378237
2026-04-25T20:33:29Z
MacTire02
219
ronney noa
378237
wikitext
text/x-wiki
{{cat main}}
{{Category see also|Immeeaght veih'n Unnaneys Oarpagh}}
[[Ronney:Politickaght yn Oarpey|Chooraght]]
la3prkqzlhm1772jj4wrhensgn7vo0o
Ronney:Reagheydyssyn oaylleeagh ooilley-Oarpagh
14
49600
378238
2026-04-25T20:36:06Z
MacTire02
219
ronney noa
378238
wikitext
text/x-wiki
[[Ronney:Reagheydyssyn oaylleeagh eddyrashoonagh bunnit 'syn oarpey|Ooilley-Oarpagh]]
[[Ronney:Reagheydyssyn ooilley-Oarpagh|Oaylleeagh]]
5bb84rx7apf4middp3cp9vh8y4k0re2
378255
378238
2026-04-26T00:38:31Z
MacTire02
219
lettyraghey
378255
wikitext
text/x-wiki
[[Ronney:Reagheydyssyn oaylleeagh eddyrashoonagh bunnit 'syn Oarpey|Ooilley-Oarpagh]]
[[Ronney:Reagheydyssyn ooilley-Oarpagh|Oaylleeagh]]
it250mk7ihs8mah6xoujznr15b4xntt
Ronney:Reagheydyssyn ooilley-Oarpagh
14
49601
378239
2026-04-25T20:38:02Z
MacTire02
219
ronney noa
378239
wikitext
text/x-wiki
[[Ronney:Reagheydyssyn eddyrashoonagh bunnit 'syn Oarpey|*]]
[[Ronney:Ooilley-Oarpaghys]]
nasj1y0ktpiltry50fgnef33app94yg
Ronney:Ooilley-Oarpaghys
14
49602
378240
2026-04-25T20:44:52Z
MacTire02
219
ronney noa
378240
wikitext
text/x-wiki
[[Ronney:Çhooraght Oarpagh]]
[[Ronney:Mooar-rheynnaghys|Oarpaghys]]
[[Ronney:Gleashaghtyn politickagh 'syn Oarpey|*Ooilley-Oarpaghys]]
[[Ronney:Politickaght yn Unnaneys Oarpagh]]
[[Ronney:Ardjynaght (mooinjerys eddyrashoonagh)]]
[[Ronney:Cultoor y Theihll Heear]]
9uxse42yqzw4ko1jmcpkz6bzyoqltbe
Ronney:Ardjynaght (mooinjerys eddyrashoonagh)
14
49603
378241
2026-04-25T20:47:16Z
MacTire02
219
ronney noa
378241
wikitext
text/x-wiki
{{catmain}}
{{Commons category|Regionalism (international relations)|Ardjynaght (mooinjerys eddyrashoonagh)}}
[[Ronney:Mooinjerys eddyrashoonagh]]
[[Ronney:Ardjynaght (politickaght)| ]]
[[Ronney:Gleashaghtyn politickagh]]
2dna93ngbtszbh0voty7uz9d85n6p97
Ronney:Ardjynaght (politickaght)
14
49604
378242
2026-04-25T20:49:00Z
MacTire02
219
ronney noa
378242
wikitext
text/x-wiki
{{Commons cat|Regionalism|Ardjynaght}}
{{Cat main}}
{{contrast|Ynnydaghys (politickaght)}}
[[Ronney:Politickaght enney]]
[[Ronney:Eie-oaylleeaghtyn politickagh]]
[[Ronney:Ardjyn]]
se7j8il5pzkno4p2fmazrup619gr69o
Ronney:Mooar-rheynnaghys
14
49605
378243
2026-04-25T22:47:08Z
MacTire02
219
ronney noa
378243
wikitext
text/x-wiki
[[Ronney:Unnaneyssyn mooar-rheynnagh|*]]
[[Ronney:Ooilley-ashoonaghys]]
0nh0hff9p7qhdzguxbldkvq0r208nza
Ronney:Ooilley-ashoonaghys
14
49606
378244
2026-04-25T23:34:28Z
MacTire02
219
ronney noa
378244
wikitext
text/x-wiki
{{Commons category|Pan-nationalism|Ooilley-ashoonaghys}}
{{Cat main}}
[[Ronney:Gleashaghtyn ashooneyragh]]
[[Ronney:Politickaght enney]]
[[Ronney:Ashoonaghys]]
[[Ronney:Mooinjerys eddyrashoonagh]]
[[Ronney:Çheer-oaylleeaght chultooragh]]
29hgzcl8rg0iykuppc5sq7e6xzsidsm
Ronney:Gleashaghtyn ashooneyragh
14
49607
378245
2026-04-25T23:38:16Z
MacTire02
219
ronney noa
378245
wikitext
text/x-wiki
[[Ronney:Gleashaghtyn politickagh rere feysht|Ashooneyragh]]
[[Ronney:Ashoonaghys]]
nd9d4u1m8soe5nfo9tazyxx8jdvdm5w
Ronney:Unnaneyssyn mooar-rheynnagh
14
49608
378246
2026-04-25T23:40:19Z
MacTire02
219
ronney noa
378246
wikitext
text/x-wiki
{{Commonscat|Continental unions|Unnaneyssyn mooar-rheynnagh}}
{{Cat main|Unnaneys mooar-rheynnagh}}
[[Ronney:Unnaneyssyn sur-ashoonagh|*]]
[[Ronney:Mooar-rheynnyn|/]]
2z6j6kjhj866xgeql5oh83xo2cykk7t
Ronney:Unnaneyssyn sur-ashoonagh
14
49609
378247
2026-04-25T23:42:28Z
MacTire02
219
ronney noa
378247
wikitext
text/x-wiki
{{Commonscat|Supranational unions|Unnaneyssyn sur-ashoonagh}}
{{Cat main|Unnaneys sur-ashoonagh}}
[[Ronney:Unnidyn thallooinagh rere sorçh]]
[[Ronney:Reagheydyssyn eddyrashoonagh rere sorçh reagheydys|Surashoonagh]]
[[Ronney:Sur-reagheydyssyn]]
[[Ronney:Ardjynaght (mooinjerys eddyrashoonagh)]]
lvxpixk03845wuozb2dop2aw20t2t2p
Ronney:Sur-reagheydyssyn
14
49610
378248
2026-04-25T23:44:11Z
MacTire02
219
ronney noa
378248
wikitext
text/x-wiki
{{Cat main|Sur-reagheydys}}
{{Commonscat|supraorganizations|Sur-reagheydyssyn}}
[[Ronney:Reagheydyssyn rere olteynys]]
[[Ronney:Reagheydyssyn rere sorçh]]
pigwfjy8jylh8183zc3n7ypmtgu8qtq
Ronney:Reagheydyssyn eddyrashoonagh rere sorçh reagheydys
14
49611
378254
2026-04-26T00:37:07Z
MacTire02
219
ronney noa
378254
wikitext
text/x-wiki
[[Ronney:Reagheydyssyn eddyrashoonagh| Sorch]]
[[Ronney:Reagheydyssyn rere sorçh| Eddyrashoonagh]]
0q11huz0hes8iylfuax6dgwpcn39dhe
Ronney:Reagheydyssyn oaylleeagh eddyrashoonagh bunnit 'syn Oarpey
14
49612
378256
2026-04-26T00:39:38Z
MacTire02
219
ronney noa
378256
wikitext
text/x-wiki
{{Commonscat|International scientific organizations based in Europe|Reagheydyssyn oaylleeagh eddyrashoonagh bunnit 'syn oarpey}}
[[Ronney:Reagheydyssyn eddyrashoonagh bunnit 'syn Oarpey|Oaylleeagh]]
[[Ronney:Reagheydyssyn oaylleeagh eddyrashoonagh|Oarpey]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey]]
[[Ronney:Reagheydyssyn oaylleeagh bunnit 'syn Oarpey|Eddyrashoonagh]]
tr5ndybf9va3o15ze0yioah7xm7i8x3
Ronney:Reagheydyssyn oaylleeagh bunnit 'syn Oarpey
14
49613
378257
2026-04-26T00:41:27Z
MacTire02
219
ronney noa
378257
wikitext
text/x-wiki
{{Commonscat|Scientific organizations of Europe|Reagheydyssyn oaylleeagh yn Oarpey}}
[[Ronney:Reagheydyssyn oaylleeagh rere mooar-rheynn|Oarpey]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'syn Oarpey|Oaylleeagh]]
[[Ronney:Reagheydyssyn bunnit 'syn Oarpey rere bun-chooish|Oaylleeagh]]
li68bh0tptnycgyf2oowybo6woqgolw
Ronney:Reagheydyssyn oaylleeagh rere mooar-rheynn
14
49614
378258
2026-04-26T00:43:09Z
MacTire02
219
ronney noa
378258
wikitext
text/x-wiki
{{Commonscat|Scientific organizations by continent|Reagheydyssyn oaylleeagh rere mooar-rheynn}}
{{moir-ronney}}
[[Ronney:Reagheydyssyn oaylleeagh| Mooar-rheynn]]
[[Ronney:Sheanse as çhaghnoaylleeaght rere mooar-rheynn| Reagheydyssyn]]
[[Ronney:Reagheydyssyn rere bun-chooish as mooar-rheynn|Oaylleeagh]]
k6bgzs5l6pn4rowcne6352m55eoo3rl
Ronney:Reagheydyssyn oaylleeagh
14
49615
378259
2026-04-26T00:47:21Z
MacTire02
219
ronney noa
378259
wikitext
text/x-wiki
{{Commonscat|Scientific organizations|Reagheydyssyn oaylleeagh}}
{{cat main|Reagheydys oaylleeagh}}
{{category see also|Sheshaghtyn studeyryssyn sheanse as çhaghnoaylleeaght}}
[[Ronney:Oaylleeaght]]
[[Ronney:Reagheydyssyn rere bun-chooish|Oaylleeagh]]
gilzkyhk5xu6h0vr2ynk4nbwowpkmq7
Ronney:Polasee spoar yn Unnaneys Oarpagh
14
49616
378260
2026-04-26T00:49:19Z
MacTire02
219
ronney noa
378260
wikitext
text/x-wiki
[[Ronney:Polaseeyn yn Unnaneys Oarpagh|Spoar]]
[[Ronney:Polasee spoar|Unnaneys Oarpagh]]
46obue3n3ok7epdv09tcrh35g3h2c3r
Ronney:Claare spoar y Chanadey
14
49617
378261
2026-04-26T00:53:55Z
MacTire02
219
ronney noa
378261
wikitext
text/x-wiki
[[Ronney:Claareeyn spoar rere çheer|Chanadey]]
[[Ronney:Sheanse as çhaghnoaylleeaght 'sy Chanadey|Spoar]]
{{Cat main|Claare spoar y Chanadey}}
c2wrcw9zxjc5yb6dhi070l3et8bfsgs
Ronney:Co-ventyryn
14
49618
378262
2026-04-26T00:55:30Z
MacTire02
219
ronney noa
378262
wikitext
text/x-wiki
{{Cat main|Co-ventyr}}
{{commons category|Joint ventures|Co-ventyryn}}
{{CatAutoTOC}}
[[Ronney:Leigh ghellal]]
[[Ronney:Cochaarjyssyn strateyshagh]]
[[Ronney:Colughtyn rere sorçh]]
7eoqlgjff7vpr9sr317j0zgiiy14v7t
Ronney:Cochaarjyssyn strateyshagh
14
49619
378263
2026-04-26T00:57:40Z
MacTire02
219
ronney noa
378263
wikitext
text/x-wiki
{{cat main|Strategic alliance|Cochaarjys strateyshagh}}
{{Commonscat|Strategic alliances|Cochaarjyssyn strateyshagh}}
[[Ronney:Reireydys strateyshagh]]
exx4dt39zklywk1l3378e6lxd9kr44l
378265
378263
2026-04-26T00:57:55Z
MacTire02
219
++
378265
wikitext
text/x-wiki
{{cat main|Cochaarjys strateyshagh}}
{{Commonscat|Strategic alliances|Cochaarjyssyn strateyshagh}}
[[Ronney:Reireydys strateyshagh]]
cve6qx50hm0exz9xl5mpabu5b4bo98f
Ronney:Shiaulteyryn rollageagh Artemis
14
49620
378266
2026-04-26T00:59:29Z
MacTire02
219
ronney noa
378266
wikitext
text/x-wiki
[[Ronney:Shiaulteyryn rollageagh rere claare spoar|Artemis]]
[[Ronney:Claare Artemis]]
[[Ronney:Feallee kianglt rish taghyrtyn 'sy 21d eash]]
o6oabddusay9i5pe2a0ojwddwfbwllm
Ronney:Claare Artemis
14
49621
378267
2026-04-26T01:56:30Z
MacTire02
219
ronney noa
378267
wikitext
text/x-wiki
{{Commons category|Artemis program|Claare Artemis}}
{{Cat main}}
[[Ronney:Claareeyn etlagh spoar deiney|Artemis]]
[[Ronney:Claareeyn NASA|Artemis]]
[[Ronney:Ronsaghey magh yn Eayst|Artemis]]
t777mj7t5n9bwr4igicempnpo11uzal
Ronney:Feallee kianglt rish taghyrtyn 'sy 21d eash
14
49622
378268
2026-04-26T01:59:47Z
MacTire02
219
ronney noa
378268
wikitext
text/x-wiki
{{Navseasoncats}}
[[Ronney:Feallee yn 21d eash| Taghyrtyn]]
[[Ronney:Feallee rere taghyrt shenndeeagh|21d eash]]
{{CatAutoTOC}}
{{Moir-ronney}}
k6qfy749ykeu5b9w5j1530i515gahnk
378269
378268
2026-04-26T02:00:06Z
MacTire02
219
-navseasoncats
378269
wikitext
text/x-wiki
[[Ronney:Feallee yn 21d eash| Taghyrtyn]]
[[Ronney:Feallee rere taghyrt shenndeeagh|21d eash]]
{{CatAutoTOC}}
{{Moir-ronney}}
3isx6upigpm8xk2nosdaimr9g9hsq90
Ronney:Feallee rere taghyrt shenndeeagh
14
49623
378270
2026-04-26T02:01:32Z
MacTire02
219
ronney noa
378270
wikitext
text/x-wiki
[[Ronney:Shennaghys]]
[[Ronney:Feallee rere liehaghys| Taghyrt]]
[[Ronney:Feallee rere traa|Taghyrt]]
{{Moir-ronney}}
ptb5doh6y6ujqil0jkiagezhd1m9wmk
Ronney:Feallee yn 21d eash
14
49624
378271
2026-04-26T02:03:46Z
MacTire02
219
ronney noa
378271
wikitext
text/x-wiki
{{Commons category|People in the 21st century|Feallee 'sy 21d eash}}
{{CatAutoTOC}}
[[Ronney:21d eash]]
[[Ronney:Feallee noa-emshiragh|21d]]
[[Ronney:Feallee rere eash|21]]
[[Ronney:Feallee yn 3oo milley bleeaney|21]]
nw1vf0h9hhlnis9z9f6d82rykrfuuof
Ronney:Feallee yn 3oo milley bleeaney
14
49625
378272
2026-04-26T02:05:00Z
MacTire02
219
ronney noa
378272
wikitext
text/x-wiki
{{Navseasoncats}}
[[Ronney:3oo milley bleeaney]]
[[Ronney:Feallee rere milley bleeaney|3]]
4g9a6nmqpja6es4svm2u57dvhcgj6bt
Ronney:Feallee rere milley bleeaney
14
49626
378273
2026-04-26T02:07:25Z
MacTire02
219
ronney noa
378273
wikitext
text/x-wiki
{{Moir-ronney}}
[[Ronney:Feallee rere traa| Milley bleeaney]]
[[Ronney:Ronnaghyn rere milley bleeaney]]
4hdxmedo17qbfykz8prbsg305uy1qum
Ronney:Feallee rere eash
14
49627
378274
2026-04-26T02:08:42Z
MacTire02
219
ronney noa
378274
wikitext
text/x-wiki
{{moir-ronney}}
{{Commons category|People by century|Feallee rere eash}}
[[Ronney:Ronnaghyn rere eash]]
[[Ronney:Feallee rere traa| Eash]]
eathc5fb9skpz70ekn4hngu9eenzgec
Ronney:Feallee noa-emshiragh
14
49628
378281
2026-04-26T02:13:06Z
MacTire02
219
ronney noa
378281
wikitext
text/x-wiki
[[Ronney:Feallee rere earish|Noa-emshiragh]]
[[Ronney:Earish noa-emshiragh]]
ebjo0ck9gw3hfoglv5u5whn7xdhiwfk
Ronney:Feallee dettyl mygeayrt yn Eayst
14
49629
378282
2026-04-26T02:18:00Z
MacTire02
219
ronney noa
378282
wikitext
text/x-wiki
[[Ronney:Feallee hie dys yn Eayst|Dettyl]]
[[Ronney:Shagh-etlaghyn eaystagh|*]]
qc1cx0mpgksh24gehqit01xo3su3lcs