Wikipiideɛ
dgawiki
https://dga.wikipedia.org/wiki/A_Gamp%C9%9Bl%C9%9B_zu
MediaWiki 1.47.0-wmf.7
first-letter
Duoro bimbu zie
Be o yoŋ
Yeli
Toma daana
Toma daana yeli
Wikipedia
Wikipedia yeli
Duoro kɔre
Duoro kɔre yeli
MediaWiki
MediaWiki yeli
Tɛmpileti
Tɛmpileti yeli
Sombo
Sombo yeli
Gbuli
Gbuli yeli
TimedText
TimedText talk
Module
Module talk
Event
Event talk
Congolese rʋmba
0
1989
61848
58875
2026-06-23T14:35:31Z
Jacques Ballieu
1785
61848
wikitext
text/x-wiki
{{Databox|item=Q3453150}}
'''Congolese rumba''', yuori kaŋa la '''African rumba''', e la [[seɛre yieluŋ]] bɔgre naŋ yire a [[Congo Democratic Republic]] (naŋ da e [[Zaire]]) ane a [[Congo Republic]] (naŋ da e [[French Congo]]). Ne o lanleebu, kɔkɔre gaaloo ane yelbi-yelii, Congolese rumba nyɛ la donɛɛ zaa ŋmaa ŋmene kyigi emmo a e Africa music heritage kyɛlee. Disembare 2021 poɔ, ba da de o la poɔ a [[UNESCO]] [[intangible cultural heritage]] yoe pɛll poɔ.<ref name=":0">https://books.google.com/books?id=7VmcEAAAQBAJ</ref><ref>https://www.aljazeera.com/news/2021/12/15/congolese-rumba-added-unesco-heritage-list</ref><ref>https://en.unesco.org/news/43-elements-inscribed-unescos-intangible-cultural-heritage-lists</ref> O naŋ daara yire a soga-20th yuomo kɔɔre vuoŋ a Kinshasa tembeɛrɛ poɔ ane Brazzaville, a nempeɛle nuuri beebu wagere saŋa, Congolese rumba yi la yiele ŋmɛ tɛɛtɛɛ kyilluu sɛ lantaa, a de Kongolese ''maringa'' seɛre yieluŋ [[Cuban son]].<ref name=":4">https://books.google.com/books?id=N65pbr2hC4wC</ref><ref name=":1">https://books.google.com/books?id=fRycCwAAQBAJ&dq=rumba+from+yuka+and+Kongo+people&pg=PT151</ref><ref>https://www.economist.com/culture/2022/01/22/beneath-the-rhythm-congolese-rumba-is-a-link-to-the-past</ref> Congolese rumba tuuruŋ maŋ taa la guitar kɔkɔgaale, kɔkɔgaale lanleebu, toolere yelbie voone duobo sagebo ostinato eŋɛ bee duori tere yelŋmaa, ane seɛre toori.<ref>https://www.scmp.com/lifestyle/arts-culture/article/3159884/congolese-rumba-why-dance-recognised-unesco-special-and-what</ref><ref name=":5">https://hal.science/hal-03540376v3/document</ref> A bɔgre ŋa gbɛre na baŋ tu la gaa la a 1930s, saŋa na African yielyielbo, a gaŋaazaa bana naŋ yi a [[Congo Basin]], laŋ de guitar, [[pilintoore]], ane [[ikembe]] na yieli yiele saaŋkonnoŋ voriŋ naŋ laŋ ne Cuban son.<ref>https://books.google.com/books?id=9ETPEAAAQBAJ</ref><ref>https://books.google.com/books?id=0XYrEAAAQBAJ</ref><ref>https://books.google.com/books?id=vBpmDAAAQBAJ&dq=Congolese+rumba+folk+music&pg=PT153</ref><ref name=":2">https://www.southworld.net/dr-congo-dancing-to-the-rumba-rhythm/</ref><ref>https://web.archive.org/web/20240422022503/https://www.kcrw.com/music/shows/tom-schnabels-rhythm-planet/congolese-rumba</ref> A ŋaaŋ ko la [[soukous]] zɛgebo, bɔgre o yelsoore ama lanleebu toolere, kɔkɔ-kpeɛŋaa guitar kɔkɔre gaaloo bammo ane kɔkɔ-zuluŋ kpoŋ ane kɔkɔgaale yaga lanleebu tutaaloŋ vuo naŋ wulo o.<ref>https://books.google.com/books?id=A0XNvklcqbwC</ref>
A gɔɔre ŋa nyɛ la yaarebo yuori zɛgebo Africa poɔ, a ta paalonne aŋa Tanzania, Kenya, Uganda, Rwanda, Zimbabwe, Madagascar, Zambia, Ivory Coast, Gambia, Nigeria, [[Ghana]], South Sudan, Senegal, Burundi, Malawi, ane Namibia. Ane meŋ, o nyɛ la tuubo [[Europe]] poɔ, a gaŋa zaa France, [[Belgium]], Germany, ane a UK poɔ, ane a US meŋ, a yi a Congolese yielyielbo yɔɔbo zuiŋ, ba naŋ yɔ yieli tige yaga zie paaloŋ yoboŋ. Yielyielbo teseŋ ŋa [[Henri Bowane]], [[Wendo Kolosoy]], [[Franco Luambo Makiadi]], [[Le Grand Kallé]], [[Nico Kasanda]], [[Tabu Ley Rochereau]], [[Sam Mangwana]], [[Papa Noel Nedule]], [[Vicky Longomba]], ane [[Papa Wemba]] e la yɛlɛ yaga a bɔgre ŋa, zɛgrɛ o torebogiri ane derɛ ziyuo yelpaala yiele dabie ennɛ o.<ref>https://books.google.com/books?id=XEeTAgAAQBAJ</ref><ref>https://books.google.com/books?id=XEeTAgAAQBAJ</ref><ref name=":0" />
== Yelkorɔ ==
=== Yizie ===
Wulteroo ko a yelzu yiibo zie "rumba" la, ka o yi la a [[Kikongo]] yelbiri ''nkumba'', tɛge naŋ e "belly button" (nyuo), naŋ terɛ a yideme seɛre zannoo a [[Kingdom of Congo]] koroo gbaŋgbaliŋ, naŋ paale a zenɛ saŋa na [[Democratic Republic of a Congo]] lomboe mine, [[Republic of a Congo]], ane [[Angola]].<ref>https://books.google.com/books?id=JOlGAQAAMAAJ&q=rumba%20comes%20from%20nkumba</ref><ref>https://books.google.com/books?id=kbc7AQAAIAAJ&q=rumba%20comes%20from%20nkumba</ref><ref>https://books.google.com/books?id=91CnDwAAQBAJ</ref> O kaama lanleebu pare naŋ tage yi [[Bantu saaŋkonnoŋ]], yotegeroŋ a [[Palo Kongo]] ŋmene, naŋ tuuli leɛ te gaa a Kongo noba Spanish zenɛmɛ naŋ da de gaane Cuba ka gyeremɛ kyebe a 16th yuomo kɔɔre poɔ.<ref name=":1" /><ref>https://books.google.com/books?id=FaTfuuIlmqcC</ref><ref>https://books.google.com/books?id=A3ZLvBuyDHEC</ref><ref name=":3">https://books.google.com/books?id=zGC_ZNOrKDwC</ref>
[[Miguel Ángel Barnet Lanza's treatise]], ''Congo Cults of Bantu yiibu zie eŋɛ Cuba'' poɔ manne ka Africans gbaŋgbaare yaga zie ba naŋ nyɔge wane [[Cuba]] da daŋ e la [[Bantu booree]], ane a zaa ka a puoriŋ, a [[Yoruba]] naŋ yi [[Nigeria]] da la pore yaga.<ref>https://journals.sagepub.com/doi/abs/10.1177/039219219704517912?journalCode=dioa</ref> A yiele lesiri, seɛre dɔlɔ ane seeloŋ yelerre da sɔgle biŋɛɛ la ŋmaara ne nandaari noba a irigyiŋ zaa poɔ naŋ taa nimize semmo noɔre Africans gbaŋgbaare yelsoore.<ref name=":2" /> Yiele tontomboma aŋa a [[gaŋgaa]], [[makuta]], [[catá]], [[yambu]], [[wulee]], [[güiro]], ane [[cajón de rumba]] la boma ba naŋ da maŋ de kuri bee ŋmɛ ne yieluŋ naŋ taa boɔloo ane sagebo ne saaŋkonnoŋ seeloŋ ane a kpeemɛ.<ref>https://books.google.com/books?id=lJkkAQAAIAAJ&q=rumba%20enslaved%20kongo%20people</ref> <ref name=":1" />Nentegerɛ aŋa [[Arsenio Rodríguez]] laŋ la saaŋkoŋ [[Bakongo]] voonoo ne [[Cuban son]].<ref name=":3" />
=== Late 1920s–1950s ===
[[File:Un groupe de rumba congolais à Léopoldville.jpg|thumb|Un groupe de rumba congolais à Léopoldville]]
A yi Phyllis Martin's ''Leisure ane Society naŋ be Colonial Brazzaville poɔ'', a noɔreyeni seɛre yiele yuori naŋ yire a [[Belgian Congo]] koroo ane [[French Congo]], pampana naŋ poɔ a [[Democratic Republic of the Congo]] ane [[Republic of the Congo]], seŋ anaŋ tutaa lɛ, da e la ''maringa''.<ref name=":4" /> ''Maringa'' da e la Bakongo seɛre naŋ yinne West African highlife ane yelkorɔ zannoo a [[Kingdom of Loango]] koroo koŋkoboŋ, a kɔlage ziiri naŋ be ana saŋa na Republic of Congo poɔ, Southern [[Gabon]], ane [[Cabinda]].<ref name=":5" /> A seɛre taa la gane fẽẽ ba naŋ maŋ maale ne gaŋgaa ba naŋ boɔloo patenge ko lanleebu sɔroo, pelentoɔ naŋ tona ŋa lomboe-ata-loŋkoro, ane ekoodẽɛ̃ ba naŋ boɔlɔ ''likembe'', ne mi-voone guoli ayɔpoi te tɔ awae.<ref name=":4" /> A maringa seɛreba gbɛ-binni tɛɛtɛɛ poɔ la seɛ nagebo lanleebu naŋ maŋ zuli a endaa tegeroŋ yi gbɛre ŋa wa gaa ne ŋa, naŋ teɛra a [[Afro-Cuban rumba seɛre]], a puoriŋ naŋ leɛ kyaare seɛ-korɔ ane yiele bɔgre.<ref name=":4" /> Laŋ noɔreyeni seɛre yuori yɔ la a Congo irigyiŋ zaa 1930 poɔ.<ref name=":4" /> Yiele ane yipɔge zanna karegyuu Kazadi wa Mukuna [[Kent State University]] poɔ manne ka irikɔɔdiŋ ziiri yaga deme ana wagere naŋ da maŋ mɔ la na leɛ manne a yelzu ''maringa'' a derɛ o lantaa ne a "rumba" paala kyɛ naŋ binne o yoe meŋa na.<ref name=":10">https://www.musicinafrica.net/magazine/brief-history-popular-music-drc</ref> 1934 poɔ, Jean Réal, Faranse nimipɛle daarɛta naŋ yi [[Martinique]], da kuri la a yelzu "Congo Rumba" o naŋ da nyɛ noɔreyeni yielyielbo ne ana yuori na Brazzaville poɔ.<ref>https://www.jstor.org/stable/30249807
wa Mukuna, Kazadi (1992). "The Genesis of Urban Music in Zaïre". ''African Music''. '''7''' (2): 72–84. ISSN 0065-4019. JSTOR 30249807</ref><ref name=":4" /> Clément Ossinondé, Congolese yielzanna zannoo gɔɔroŋ naŋ are [[Congolese yiele]] poɔ, yeli ka a Congolese yielyielbo zaa naŋ be a Congo Rumba, Gabriel Kakou ane Georges Mozebo da e la nenzuri boŋŋmeɛrɛba Congolese rumba yuori duobo bee zɛgebo poɔ ane lokal yieli yielyielbo naŋ puro yiri nyooroo bee wulluu eŋɛ.<ref name=":6">https://web.archive.org/web/20231028222619/https://www.dac-presse.com/voyage-musical-laller-et-retour-de-la-rumba/</ref><ref name=":8">https://www.librairiecharlemagne.com/livre/6787987-histoire-de-la-musique-congolaise-52-ans-de-la--clement-ossinonde-ed-ices</ref><ref>https://www.adiac-congo.com/content/musique-clement-ossinonde-en-sejour-brazzaville-129054</ref>
==== Ziyuo Congolese rumba leɛbo ====
1937 naŋ wa tara, ka Réal leɛmaale o yelnare binni a nyoore bee wuli lokal yielyielbo ne ziyuo boŋŋmɛboma, naŋ yuo so-soŋ naŋ ba poɔrɔ ko Brazzaville yielŋmeɛrɛbɛ noba, naŋ poɔ Alphonse Samba, Michel Kouka, Georges Nganga, Côme Batoukama (guitars), Vital Kinzonzi (accordion), Emmanuel Dadet (saxophone, guitar, ane amine), ane Albert Loboko ([[banjo]], piano, guitar).<ref name=":6" /><ref>https://web.archive.org/web/20231028222612/https://www.dac-presse.com/albert-loboko-inspirateur-et-precurseur-des-notions-de-la-rumba-en-1932-congo-rumba/</ref> Brass bands anaare da maalaɛ la a puoriŋ Brazzaville poɔ, naŋ e a Fanfare Militaire, a Fanfare de la Milice, a Fanfare Catholique, ane a Fanfare Munisipale.<ref name=":7">https://web.archive.org/web/20240221023207/http://zenga-mambu.com/2019/09/07/les-deux-premiers-grands-orchestres-de-cuivres-de-brazzaville-et-de-kinshasa-en-1940/</ref> Dadet ane Antoine Kasongo la leɛ a Congolese yielŋmeɛrɛbɛ fɔrɔ naŋ nyɔge a Congolese noba saaŋkoŋ yiele leɛre lɛɛŋ wa tɔ zenɛ, a derɛ yelkaama bompaala ennɛ ba yiele poɔ.<ref name=":7" /> Dadet leɛ la a yielyiele na kaŋa naŋ baa a yiri poɔ a taa saxophone, clarinet ane guitar bammo fẽẽ zaa lantaa. [[Jazz]] soloists naŋ ko o nimivɛle eŋyuo, o maale la yiele gɔɔroŋ naŋ taa tontoŋ bontɛɛtɛɛ, naŋ taa kyenloo ne "free [[polyphony]]".<ref name=":7" />O seɛre band, "Melo-Congo," nyɛ la zɛgeroŋ yaga a nansaal-peɛle gambanneba poɔ, naŋ yire-erɛ yel-tɛɛtɛɛ naŋ yi dasaŋa seɛre; [[waltzes]] ane [[foxtrot]] te tɔ ana saŋa na ane pampana [[rumba]], [[biguines]], ane [[tangos]].<ref name=":4" /> O wane la lokal yielyielbo zɛgeroŋ duobo nimizeɛ yaga aŋa Pierre Mara, Georges Ondaye, Jean-Marie Okoko, Philippe Ngaba, Pierre Kanza, Casimir Bounda, Jean Dongou, Augustin Thony, André Tsimba, Pierre Loemba, Barète Mody, Pascal Kakou, Félix Maleka, ane Botokoua. A band nyɛ la eebo sonzaa lɛ, naŋ nyɛ eebo [[Poto-Poto]] poɔ a seɛre bar PICKUP poɔ, ane seɛre devuori zie aŋa Chez Faignond, Macumba, Beauté Brazza, Chez Ngambali, Mon Pays, ane Léopoldville.<ref name=":7" /><ref name=":4" /><ref name=":8" />
Ɔɔgore 1941 poɔ, Paul Kamba da mɛ la a Victoria Brazza noɔreyeni yielyielbo Poto-Poto poɔ, naŋ da poɔ Henri Pali Baudoin, Jacques Elenga Eboma, Jean Oddet Ekwaka, François Likundu, Moïse Dinga, Philippe Moukouami, Paul Monguele, François Lokwa, Paul Wonga, Joseph Bakalé, ane Auguste Boukaka.<ref name=":9">https://hal.science/hal-03540376v3/document</ref> A noɔreyeni yielyielbo lanleebu lombori de la a ''maringa'' lanleebu ane saaŋkoŋ yielyieli boma, naŋ poɔ a kɔkɔzuluŋ gaŋgaa, a ''patengé'', tolenlenne (reminiscent of [[maracas]] affixed to hunting dogs), [[tolenleŋkparre]] naŋ e ''ekonga'', a ''likembe'', ane ziyuo yieli boma aseŋ accordion, guitar, [[mandolin]], banjo, ane [[rackett]]. A ziyuo voonoo sɛɛte boma ane a maringa saaŋkonnoŋ boŋŋmɛ boma voonoo kpɛtaaloŋ daa yie la a e mannoo yelsoore ko a "ziyuo Congolese rumba".<ref name=":9" />[[File:Bar de rumba congolaise à Léopoldville de 1955 à 1965.jpg|thumb|Bar de rumba congolaise à Léopoldville de 1955 à 1965]]
[[File:Des jeunes dansant dans un club de rumba congolaise.jpg|thumb|Des jeunes dansant dans un club de rumba congolaise]] A 1940s-50s soga, Cuban son yiele lambo, aseŋ [[Sexteto]] [[Habanero]], [[Trio Matamoros]], ane Los Guaracheros de Oriente, da ŋmɛ la [[Radio Congo Belge]] eŋɛ Léopoldville poɔ, a nyɛrɛ duobo zɛgeroŋ a paaloŋ poɔ a yuomo kɔɔre naŋ tu vuoŋ.<ref>''The Encyclopedia of Africa v. 1''. 2010 p. 407.</ref><ref>https://archive.org/details/latintingeimpact0000robe</ref> ''Maringa'' seɛre yiele—ane a zaa ka a ba taa baaloŋ ne Cuban rumba—da leɛ la "Congolese rumba", a e Sexteto Habanero ane Trio Matamoros bonlonnaa irekɔde gbɛɛ yaga ba naŋ da ma turi de ka o e "rumba".<ref name=":10" /> Yieli ŋmeɛreba tɛɛtɛɛ ane kpaaroone daa yie la a Congolese yiele zie, ane Paul Kamba, [[Zacharie Elenga]], ane [[Antoine Wendo Kolosoy]] naŋ nyɛ emmo wuli ka banna la fɔrɔ.<ref name=":8" /><ref name=":4" /><ref name=":6" /><ref>https://web.archive.org/web/20090101091525/http://aliaagency.com/artists/artist.php?id=10</ref>
Elenga leɛre la a Congolese rumba lanleebu ne guitar solos de eŋ a yiele meɛbo ane mɛ yiele dannoo naŋ taa [[lanleebu guitar]], [[lead guitar]], [[bass kpara]], saxophone, ane gaŋgaŋmeɛre.<ref name=":11">https://hal.science/hal-03540376v3/document</ref> Kyɛ ka Kasongo's Odeon-Kinois orchestra, bee Harmonie Kinoise, wane ''sebene'', naŋ e pulluu noɔre mannoo kyɛlkyɛ, ne kpaamo a lanleebu guitar eŋɛ. Kasongo meŋ maale bee ŋmɛ la yiele yaga ko Olympia Editions.<ref name=":7" /><ref>https://www.congopage.com/le-sebene-dans-la-musique-congolaise-moderne</ref>
1948 poɔ, Antoine Wendo Kolosoy's irikɔɔdiŋ koɔroo ŋmɛ la "Marie-Louise", o sɛge tɔ ne guitar ŋmeɛrɛ [[Henri Bowane]] ka Greek Nico Jeronimidis, [[Ngoma Editions]] maale, a nyɛ eebo yaga sonzaa lɛ, a koɔre gaŋ miliyoŋ ayi kopiri.<ref name=":11" /> A ŋaa mɛ la Léopoldville ka o e Congolese rumba zikpoŋ "yiele wederoŋ", a irikɔɔdiŋ maaale zie naŋ teɛ ane irikɔɔdiŋ studios faramine naŋ kaara ane irikɔɔde maale lombori Greek boŋkoɔreba naŋ be.<ref name=":11" />
[[File:Franco Luambo au Congo belge.jpg|thumb|Franco Luambo au Congo belge]]
1950s piiluu vuoŋ, lokal yielyielbo da de la bamenne laŋ ne Congolese yiele irikɔɔde zibeɛrɛ naŋ e nansaale peɛle naŋ wa ziŋ be boma, aseŋ Ngoma, Cognolia, [[Opika]], [[Loningisa]], ane CEFA, a piili maala gɔɔre ire naŋ yinne Congolese rumba.<ref name=":6" /><ref name=":8" /> A gɔɔre ire ŋa, gbɛɛ yaga yelsoore naŋ maŋ e "slower tempo" ane voone tɛɛtɛɛ, boŋŋmɛ tɛɛtɛɛ sogaŋ, yiele naŋ da paale aŋa Zacharie Elenga, Antoine Wendo Kolosoy, ane Antoine Moundanda's "Paul Kamba Atiki Biso" (1950) ane Antoine Moundanda's "Mabele Ya Paulo" (1953), Ngoma Editions naŋ irikɔɔde.<ref name=":6" /><ref name=":8" /><ref>https://hal.science/hal-03540376v3/document</ref> A irikɔɔde magere ŋa meŋ ko la a Belgian Congo gbaŋgbale soŋ ka ba ŋmɛ yaaroo do ane yiri baabo boŋŋmɛ tɛɛtɛɛ deebo ane bands, aseŋ [[African Jazz]], [[OK Jazz]], Conga Jazz, Negro Band, ane Rumbanella Band.<ref name=":6" /><ref name=":8" /> Ane a zaa ka a band yoe gbɛɛ yaga maŋ poɔ la a yelbiri "jazz", Martin yeli ka "African ane Latin American gbɛre la ka yiele kaama nyɔgebo nimizeɛ yi". Ba da de la a yuori ŋa bonso bipɔle bilii da taa la dabẽɛ̃ ne a American sogyere, a gaŋa zaa African Americans, naŋ da be militiri kamp Léopoldville poɔ a Second World War wagere. Gambanneba aseŋ Isaac A. Kamola naŋ be Trinity College ane Shiera S. el-Malik naŋ be DePaul University da bo ka a Congolese "jazz" ama
== Sommo Yizie ==
[[Category:Dagaare]]
[[Category: gampɛlɛ zaa]]
evvorb0krgj4p41ifsousurv9zxzo66
Module:Params
828
4820
61852
45235
2026-06-23T20:05:17Z
Grufo
1773
Upstream updates
61852
Scribunto
text/plain
require[[strict]]
--- ---
--- LOCAL ENVIRONMENT ---
--- ________________________________ ---
--- ---
--[[ Abstract utilities ]]--
----------------------------
-- Helper function for `string.gsub()` (for managing zero-padded numbers)
local function zero_padded (str)
return ('%03d%s'):format(#str, str)
end
-- Helper function for `table.sort()` (for natural sorting)
local function natural_sort (var1, var2)
return var1:gsub('%d+', zero_padded) < var2:gsub('%d+', zero_padded)
end
-- Parse a parameter name string and return it as a string or a number
local function get_parameter_name (par_str)
local ret = par_str:match'^%s*(.-)%s*$'
if ret ~= '0' and ret:find'^%-?[1-9]%d*$' == nil then return ret end
return tonumber(ret)
end
-- Return a copy or a reference to a table
local function copy_or_ref_table (src, refonly)
if refonly then return src end
local newtab = {}
for key, val in pairs(src) do newtab[key] = val end
return newtab
end
-- Remove some numeric elements from a table, shifting everything to the left
local function remove_numeric_keys (tbl, idx, len)
local cache, tmp = {}, idx + len - 1
for key, val in pairs(tbl) do
if type(key) == 'number' and key >= idx then
if key > tmp then cache[key - len] = val end
tbl[key] = nil
end
end
for key, val in pairs(cache) do tbl[key] = val end
end
-- Make a reduced copy of a table (shifting in both directions if necessary)
local function copy_table_reduced (tbl, idx, len)
local ret, tmp = {}, idx + len - 1
if idx > 0 then
for key, val in pairs(tbl) do
if type(key) ~= 'number' or key < idx then
ret[key] = val
elseif key > tmp then ret[key - len] = val end
end
elseif tmp > 0 then
local nshift = 1 - idx
for key, val in pairs(tbl) do
if type(key) ~= 'number' then ret[key] = val
elseif key > tmp then ret[key - tmp] = val
elseif key < idx then ret[key + nshift] = val end
end
else
for key, val in pairs(tbl) do
if type(key) ~= 'number' or key > tmp then
ret[key] = val
elseif key < idx then ret[key + len] = val end
end
end
return ret
end
-- Make an expanded copy of a table (shifting in both directions if necessary)
local function copy_table_expanded (tbl, idx, len)
local ret, tmp = {}, idx + len - 1
if idx > 0 then
for key, val in pairs(tbl) do
if type(key) ~= 'number' or key < idx then
ret[key] = val
else ret[key + len] = val end
end
elseif tmp > 0 then
local nshift = idx - 1
for key, val in pairs(tbl) do
if type(key) ~= 'number' then ret[key] = val
elseif key > 0 then ret[key + tmp] = val
elseif key < 1 then ret[key + nshift] = val end
end
else
for key, val in pairs(tbl) do
if type(key) ~= 'number' or key > tmp then
ret[key] = val
else ret[key - len] = val end
end
end
return ret
end
-- Move a key from a table to another, but only if under a different name and
-- always parsing numeric strings as numbers
local function steal_if_renamed (val, src, skey, dest, dkey)
local realkey = get_parameter_name(dkey)
if skey ~= realkey then
dest[realkey] = val
src[skey] = nil
end
end
-- Given a table, create two new tables containing the sorted list of keys
local function get_key_list_sorted (tbl, sort_fn)
local nums, words, nn, nw = {}, {}, 0, 0
for key, val in pairs(tbl) do
if type(key) == 'number' then
nn = nn + 1
nums[nn] = key
else
nw = nw + 1
words[nw] = key
end
end
table.sort(nums)
table.sort(words, sort_fn)
return nums, words, nn, nw
end
--[[ Public strings ]]--
------------------------
-- Special match keywords (functions and modifiers MUST avoid these names)
local mkeywords = {
['or'] = 0,
pattern = 1,
plain = 2,
strict = 3
}
-- Sort functions (functions and modifiers MUST avoid these names)
local sortfunctions = {
alphabetically = false,
naturally = natural_sort
}
-- Callback styles for the `mapping_*` and `renaming_*` class of modifiers
-- (functions and modifiers MUST avoid these names)
--[[
Meanings of the columns:
col[1] = Loop type (0-3)
col[2] = Number of module arguments that the style requires (1-3)
col[3] = Minimum number of sequential parameters passed to the callback
col[4] = Name of the callback parameter where to place each parameter name
col[5] = Name of the callback parameter where to place each parameter value
col[6] = Argument in the modifier's invocation that will override `col[4]`
col[7] = Argument in the modifier's invocation that will override `col[5]`
A value of `-1` indicates that no meaningful value is stored (i.e. `nil`)
]]--
local mapping_styles = {
names_and_values = { 3, 2, 2, 1, 2, -1, -1 },
values_and_names = { 3, 2, 2, 2, 1, -1, -1 },
values_only = { 1, 2, 1, -1, 1, -1, -1 },
names_only = { 2, 2, 1, 1, -1, -1, -1 },
names_and_values_as = { 3, 4, 0, -1, -1, 2, 3 },
names_only_as = { 2, 3, 0, -1, -1, 2, -1 },
values_only_as = { 1, 3, 0, -1, -1, -1, 2 },
blindly = { 0, 2, 0, -1, -1, -1, -1 }
}
-- Memory slots (functions and modifiers MUST avoid these names)
local memoryslots = {
h = 'header',
f = 'footer',
i = 'itersep',
l = 'lastsep',
n = 'ifngiven',
p = 'pairsep',
s = 'oxfordsep'
}
-- Possible trimming modes for the `parsing` modifier
local trim_parse_opts = {
trim_none = { false, false },
trim_positional = { false, true },
trim_named = { true, false },
trim_all = { true, true }
}
-- Possible string modes for the iteration separator in the `parsing` and
-- `reinterpreting` modifiers
local isep_parse_opts = {
splitter_pattern = false,
splitter_string = true
}
-- Possible string modes for the key-value separator in the `parsing` and
-- `reinterpreting` modifiers
local psep_parse_opts = {
setter_pattern = false,
setter_string = true
}
-- Possible position references for the `splicing` modifier
local position_references = {
add_nothing = 0,
add_smallest_number = 1,
add_last_of_sequence = 2,
add_largest_number = 3
}
-- Functions and modifiers MUST avoid these names too: `let`
--[[ Module's private environment ]]--
--------------------------------------
-- Hard-coded name of the module (to avoid going through `frame:getTitle()`)
local modulename = 'Module:Params'
-- The functions listed here declare that they don't need the `frame.args`
-- metatable to be copied into a regular table; if they are modifiers they also
-- guarantee that they will make their own (modified) copy available
local refpipe = {
call_for_each_group = true,
--coins = true,
count = true,
evaluating = true,
for_each = true,
list = true,
list_values = true,
list_maybe_with_names = true,
value_of = true
}
-- The functions listed here declare that they don't need the
-- `frame:getParent().args` metatable to be copied into a regular table; if
-- they are modifiers they also guarantee that they will make their own
-- (modified) copy available
local refparams = {
call_for_each_group = true,
combining = true,
combining_by_calling = true,
combining_values = true,
concat_and_call = true,
concat_and_invoke = true,
concat_and_magic = true,
count = true,
grouping_by_calling = true,
mixing_names_and_values = true,
renaming_by_mixing = true,
renaming_to_sequence = true,
renaming_to_uppercase = true,
renaming_to_lowercase = true,
--renaming_to_values = true,
shifting = true,
splicing = true,
--swapping_names_and_values = true,
value_of = true,
with_name_matching = true
}
-- Maximum number of numeric parameters that can be filled, if missing (we
-- chose an arbitrary number for this constant; you can discuss about its
-- optimal value at Module talk:Params)
local maxfill = 1024
-- The private table of functions
local library = {}
-- Functions and modifiers that can only be invoked in first position
local static_iface = {}
-- Create a new context
local function context_new (child_frame)
local ctx = {}
ctx.frame = child_frame:getParent()
ctx.opipe = child_frame.args
ctx.oparams = ctx.frame.args
ctx.firstposonly = static_iface
ctx.iterfunc = pairs
ctx.sorttype = 0
ctx.n_parents = 0
ctx.n_children = 0
ctx.n_available = maxfill
return ctx
end
-- Move to the next action within the user-given list
local function context_iterate (ctx, n_forward)
local nextfn
if ctx.pipe[n_forward] ~= nil then
nextfn = ctx.pipe[n_forward]:match'^%s*(.*%S)'
end
if nextfn == nil then error(modulename ..
': You must specify a function to call', 0) end
if library[nextfn] == nil then
if ctx.firstposonly[nextfn] == nil then error(modulename ..
': The function ‘' .. nextfn .. '’ does not exist', 0)
else error(modulename .. ': The ‘' .. nextfn ..
'’ directive can only appear in first position', 0)
end
end
remove_numeric_keys(ctx.pipe, 1, n_forward)
return library[nextfn]
end
-- Main loop
local function main_loop (ctx, start_with)
local fn = start_with
repeat fn = fn(ctx) until not fn
if ctx.n_parents > 0 then error(modulename ..
': One or more ‘merging_substack’ directives are missing', 0) end
if ctx.n_children > 0 then error(modulename ..
', For some of the snapshots either the ‘flushing’ directive is missing or a group has not been properly closed with ‘merging_substack’', 0) end
end
-- Load a `setting`-like directive string into the `dest` table
local function set_strings (dest, opts, start_from)
local cmd
if opts[start_from] == nil then return start_from - 1 end
cmd = opts[start_from]:gsub('%s+', ''):gsub('/+', '/')
:match'^/*(.*[^/])'
if cmd == nil then return start_from end
local amap, sep, argc = {}, string.byte('/'), start_from + 1
local vname
local chr
for idx = 1, #cmd do
chr = cmd:byte(idx)
if chr == sep then
for key, val in ipairs(amap) do
dest[val] = opts[argc]
amap[key] = nil
end
argc = argc + 1
else
vname = memoryslots[string.char(chr)]
if vname == nil then error(modulename ..
', ‘setting’: Unknown slot ‘' ..
string.char(chr) .. '’', 0) end
table.insert(amap, vname)
end
end
for key, val in ipairs(amap) do dest[val] = opts[argc] end
return argc
end
-- Add a new stack of parameters to `ctx.children`
local function push_cloned_stack (ctx, tbl)
local newparams = {}
local currsnap = ctx.n_children + 1
if ctx.children == nil then ctx.children = { newparams }
else ctx.children[currsnap] = newparams end
for key, val in pairs(tbl) do newparams[key] = val end
ctx.n_children = currsnap
end
-- Parse a raw argument containing a `sortfunctions` directive, or
-- `'without_sorting'`, or `nil`
local function load_sort_opt (raw_arg)
if raw_arg == nil then return nil, 1, false end
local tmp = raw_arg:match'^%s*(.-)%s*$'
if tmp == 'without_sorting' then return nil, 2, false end
tmp = sortfunctions[tmp]
if tmp == nil then return nil, 1, false end
return tmp or nil, 2, true
end
-- Parse optional user arguments of type `...|[let]|[...][number of additional
-- parameters]|[parameter 1]|[parameter 2]|[...]`
local function load_child_opts (src, start_from, append_after)
local tbl, pin = {}, start_from
local names
if src[pin] ~= nil and src[pin]:match'^%s*let%s*$' and
src[pin + 1] ~= nil and src[pin + 2] ~= nil
then
names = {}
repeat
names[get_parameter_name(src[pin + 1])] = src[pin + 2]
pin = pin + 3
until src[pin] == nil or not src[pin]:match'^%s*let%s*$' or
src[pin + 1] == nil or src[pin + 2] == nil
end
local tmp = tonumber(src[pin])
if tmp ~= nil and math.floor(tmp) == tmp then
if tmp < 0 then tmp = -1 end
local shf = append_after - pin
for idx = pin + 1, pin + tmp do tbl[idx + shf] = src[idx] end
pin = pin + tmp + 1
end
if names ~= nil then
for key, val in pairs(names) do tbl[key] = val end
end
return tbl, pin
end
-- Load the optional arguments of some of the `mapping_*` and `renaming_*`
-- class of modifiers
local function load_callback_opts (src, n_skip, default_style)
local style
local shf
local tmp = src[n_skip + 1]
if tmp ~= nil then style = mapping_styles[tmp:match'^%s*(.-)%s*$'] end
if style == nil then style, shf = default_style, n_skip - 1
else shf = n_skip end
local n_exist, karg, varg = style[3], style[4], style[5]
tmp = style[6]
if tmp > -1 then
karg = src[tmp + shf]:match'^%s*(.-)%s*$'
if karg == '0' or karg:find'^%-?[1-9]%d*$' ~= nil then
karg = tonumber(karg)
n_exist = math.max(n_exist, karg)
end
end
tmp = style[7]
if tmp > -1 then
varg = src[tmp + shf]:match'^%s*(.-)%s*$'
if varg == '0' or varg:find'^%-?[1-9]%d*$' ~= nil then
varg = tonumber(varg)
n_exist = math.max(n_exist, varg)
end
end
local dest, nargs = load_child_opts(src, style[2] + shf, n_exist)
tmp = style[1]
if (tmp == 3 or tmp == 2) and dest[karg] ~= nil then
tmp = tmp - 2 end
if (tmp == 3 or tmp == 1) and dest[varg] ~= nil then
tmp = tmp - 1 end
return dest, nargs, tmp, karg, varg
end
-- Parse the arguments of some of the `mapping_*` and `renaming_*` class of
-- modifiers
local function load_replace_args (opts, whoami)
if opts[1] == nil then error(modulename ..
', ‘' .. whoami .. '’: No pattern string was given', 0) end
if opts[2] == nil then error(modulename ..
', ‘' .. whoami .. '’: No replacement string was given', 0) end
local ptn, repl, nmax, argc = opts[1], opts[2], tonumber(opts[3]), 3
if nmax ~= nil or (opts[3] or ''):match'^%s*$' ~= nil then argc = 4 end
local flg = opts[argc]
if flg ~= nil then flg = mkeywords[flg:match'^%s*(.-)%s*$'] end
if flg == 0 then flg = nil elseif flg ~= nil then argc = argc + 1 end
return ptn, repl, nmax, flg, argc, (nmax ~= nil and nmax < 1) or
(flg == 3 and ptn == repl)
end
-- Parse the arguments of the `with_*_matching` class of modifiers
local function load_pattern_args (opts, whoami)
local ptns, state, nptns, cnt = {}, 0, 0, 1
local keyw
for _, val in ipairs(opts) do
if state == 0 then
nptns, state = nptns + 1, -1
ptns[nptns] = { val, false, false }
else
keyw = val:match'^%s*(.*%S)'
if keyw == nil or mkeywords[keyw] == nil or (
state > 0 and mkeywords[keyw] > 0
) then break
else
state = mkeywords[keyw]
if state > 1 then ptns[nptns][2] = true end
if state == 3 then ptns[nptns][3] = true end
end
end
cnt = cnt + 1
end
if state == 0 then error(modulename .. ', ‘' .. whoami ..
'’: No pattern was given', 0) end
return ptns, nptns, cnt
end
-- Load the optional arguments of the `parsing` and `reinterpreting` modifiers
local function load_parse_opts (opts, start_from, isp, psp)
local tmp
local optslots, noptslots, argc = { true, true, true }, 3, start_from
local trimn, trimu, iplain, pplain = true, false, true, true
repeat
noptslots, tmp = noptslots - 1, opts[argc]
if tmp == nil then break end
tmp = tmp:match'^%s*(.-)%s*$'
if optslots[1] ~= nil and trim_parse_opts[tmp] ~= nil then
tmp = trim_parse_opts[tmp]
trimn, trimu = tmp[1], tmp[2]
optslots[1] = nil
elseif optslots[2] ~= nil and isep_parse_opts[tmp] ~= nil then
argc = argc + 1
iplain, isp = isep_parse_opts[tmp], opts[argc]
optslots[2] = nil
elseif optslots[3] ~= nil and psep_parse_opts[tmp] ~= nil then
argc = argc + 1
pplain, psp = psep_parse_opts[tmp], opts[argc]
optslots[3] = nil
else break end
argc = argc + 1
until noptslots < 1
return isp, iplain, psp, pplain, trimn, trimu, argc
end
-- Map parameters' values using a custom callback and a referenced table
local value_maps = {
[0] = function (tbl, margs, karg, varg, fn)
for key in pairs(tbl) do tbl[key] = fn() end
end,
[1] = function (tbl, margs, karg, varg, fn)
for key, val in pairs(tbl) do
margs[varg] = val
tbl[key] = fn()
end
end,
[2] = function (tbl, margs, karg, varg, fn)
for key in pairs(tbl) do
margs[karg] = key
tbl[key] = fn()
end
end,
[3] = function (tbl, margs, karg, varg, fn)
for key, val in pairs(tbl) do
margs[karg] = key
margs[varg] = val
tbl[key] = fn()
end
end
}
-- Private table for `map_names()`
local name_thieves = {
[0] = function (cache, tbl, rargs, karg, varg, fn)
for key, val in pairs(tbl) do
steal_if_renamed(val, tbl, key, cache, fn())
end
end,
[1] = function (cache, tbl, rargs, karg, varg, fn)
for key, val in pairs(tbl) do
rargs[varg] = val
steal_if_renamed(val, tbl, key, cache, fn())
end
end,
[2] = function (cache, tbl, rargs, karg, varg, fn)
for key, val in pairs(tbl) do
rargs[karg] = key
steal_if_renamed(val, tbl, key, cache, fn())
end
end,
[3] = function (cache, tbl, rargs, karg, varg, fn)
for key, val in pairs(tbl) do
rargs[karg] = key
rargs[varg] = val
steal_if_renamed(val, tbl, key, cache, fn())
end
end
}
-- Map parameters' names using a custom callback and a referenced table
local function map_names (tbl, rargs, karg, varg, looptype, fn)
local cache = {}
name_thieves[looptype](cache, tbl, rargs, karg, varg, fn)
for key, val in pairs(cache) do tbl[key] = val end
end
-- Return a new table that contains `src` regrouped according to the numeric
-- suffixes in its keys
local function make_groups (src)
-- NOTE: `src` might be the original metatable!
local prefix
local gid
local groups = {}
for key, val in pairs(src) do
-- `key` must only be a string or a number...
if type(key) == 'string' then
prefix, gid = key:match'^%s*(.-)%s*(%-?%d*)%s*$'
gid = tonumber(gid) or ''
else
prefix = ''
gid = key
end
if groups[gid] == nil then groups[gid] = {} end
if prefix == '0' or prefix:find'^%-?[1-9]%d*$' ~= nil then
prefix = tonumber(prefix)
if prefix < 1 then prefix = prefix - 1 end
end
groups[gid][prefix] = val
end
return groups
end
-- Split into parts a string containing the `$#` and `$@` placeholders and
-- return the information as a skeleton table, a canvas table and a length
local function parse_placeholder_string (target)
local skel = {}
local canvas = {}
local idx = 1
local s_pos = 1
local e_pos = string.find(target, '%$[@#]', 1, false)
while e_pos ~= nil do
canvas[idx] = target:sub(s_pos, e_pos - 1)
skel[idx + 1] = target:sub(e_pos, e_pos + 1) == '$@'
idx = idx + 2
s_pos = e_pos + 2
e_pos = string.find(target, '%$[@#]', s_pos, false)
end
if (s_pos > target:len()) then idx = idx - 1
else canvas[idx] = target:sub(s_pos) end
return skel, canvas, idx
end
-- Populate a table by parsing a parameter string
local function parse_parameter_string (tbl, str, isp, ipl, psp, ppl, trn, tru)
local key
local val
local spos1
local spos2
local pos1
local pos2
local pos3 = 0
local idx = 1
local lenplone = #str + 1
if isp == nil or isp == '' then
if psp == nil or psp == '' then
if tru then tbl[idx] = str:match'^%s*(.-)%s*$'
else tbl[idx] = str end
return idx
end
spos1, spos2 = str:find(psp, 1, ppl)
if spos1 == nil then
key = idx
if tru then val = str:match'^%s*(.-)%s*$'
else val = str end
idx = idx + 1
else
key = get_parameter_name(str:sub(1, spos1 - 1))
val = str:sub(spos2 + 1)
if trn then val = val:match'^%s*(.-)%s*$' end
end
tbl[key] = val
return idx
end
if psp == nil or psp == '' then
repeat
pos1 = pos3 + 1
pos2, pos3 = str:find(isp, pos1, ipl)
val = str:sub(pos1, (pos2 or lenplone) - 1)
if tru then val = val:match'^%s*(.-)%s*$' end
tbl[idx] = val
idx = idx + 1
until pos2 == nil
return idx
end
repeat
pos1 = pos3 + 1
pos2, pos3 = str:find(isp, pos1, ipl)
val = str:sub(pos1, (pos2 or lenplone) - 1)
spos1, spos2 = val:find(psp, 1, ppl)
if spos1 == nil then
key = idx
if tru then val = val:match'^%s*(.-)%s*$' end
idx = idx + 1
else
key = get_parameter_name(val:sub(1, spos1 - 1))
val = val:sub(spos2 + 1)
if trn then val = val:match'^%s*(.-)%s*$' end
end
tbl[key] = val
until pos2 == nil
return idx
end
-- Heavy lifting for `combining` and `combining_values`
local function combine_parameters (ctx, keyval_fn, whoami)
-- NOTE: `ctx.params` might be the original metatable! This function
-- MUST create a copy of it before returning
local opts = ctx.pipe
if ctx.pipe[1] == nil then error(modulename ..
', ‘' .. whoami .. '’: No parameter name was provided', 0) end
local tbl = ctx.params
local vars = {}
local sortfn, tmp, do_sort = load_sort_opt(opts[2])
local argc = set_strings(vars, opts, tmp + 1)
if argc < tmp then error(modulename ..
', ‘' .. whoami .. '’: No setting directive was given', 0) end
if next(tbl) == nil then
if vars.ifngiven ~= nil then
ctx.params = {
[get_parameter_name(ctx.pipe[1])] = vars.ifngiven
}
elseif tbl == ctx.oparams then ctx.params = {} end
return argc
end
local cache
local len
if do_sort then
local words
cache, words, len, tmp = get_key_list_sorted(tbl, sortfn)
for idx = 1, tmp do cache[len + idx] = words[idx] end
len = len + tmp
else
cache = {}
len = 0
for key in pairs(tbl) do
len = len + 1
cache[len] = key
end
end
local pmap, nss, kvs, pps = {}, 0, vars.pairsep or '', vars.itersep or ''
for idx = 1, len do
tmp = cache[idx]
pmap[nss + 1] = pps
pmap[nss + 2] = keyval_fn(tmp, tbl[tmp], kvs)
nss = nss + 2
end
tmp = vars.oxfordsep or vars.lastsep
if tmp ~= nil and nss > 4 then pmap[nss - 1] = tmp
elseif nss > 2 and vars.lastsep ~= nil then
pmap[nss - 1] = vars.lastsep
end
pmap[1] = vars.header or ''
if vars.footer ~= nil then pmap[nss + 1] = vars.footer end
ctx.params = { [get_parameter_name(ctx.pipe[1])] = table.concat(pmap) }
return argc
end
-- Concatenate the numeric keys from the table of parameters to the numeric
-- keys from the table of options; non-numeric keys from the table of options
-- will prevail over colliding non-numeric keys from the table of parameters
local function concat_params (ctx)
local retval, tbl, nmax = {}, ctx.params, table.maxn(ctx.pipe)
if ctx.subset == 1 then
-- We need only the sequence
for key, val in ipairs(tbl) do retval[key + nmax] = val end
else
if ctx.subset == -1 then
for key in ipairs(tbl) do tbl[key] = nil end
end
for key, val in pairs(tbl) do
if type(key) == 'number' and key > 0 then
retval[key + nmax] = val
else retval[key] = val end
end
end
for key, val in pairs(ctx.pipe) do retval[key] = val end
return retval
end
-- Flush the parameters by calling a custom function for each value (after this
-- function has been invoked `ctx.params` will be no longer usable)
local function flush_params (ctx, fn)
local tbl = ctx.params
if ctx.subset == 1 then
for key, val in ipairs(tbl) do fn(key, val) end
return
end
if ctx.subset == -1 then
for key, val in ipairs(tbl) do tbl[key] = nil end
end
if ctx.sorttype > 0 then
local nums, words, nn, nw = get_key_list_sorted(tbl, natural_sort)
if ctx.sorttype == 2 then
for idx = 1, nw do fn(words[idx], tbl[words[idx]]) end
for idx = 1, nn do fn(nums[idx], tbl[nums[idx]]) end
return
end
for idx = 1, nn do fn(nums[idx], tbl[nums[idx]]) end
for idx = 1, nw do fn(words[idx], tbl[words[idx]]) end
return
end
if ctx.subset ~= -1 then
for key, val in ipairs(tbl) do
fn(key, val)
tbl[key] = nil
end
end
for key, val in pairs(tbl) do fn(key, val) end
end
-- Flush the parameters by calling one of two custom functions for each value
-- (after this function has been invoked `ctx.params` will be no longer usable)
local function mixed_flush_params (ctx, fn_seq, fn_oth)
if ctx.subset == 1 then
for key, val in ipairs(ctx.params) do fn_seq(key, val) end
return
end
if ctx.subset == -1 then
flush_params(ctx, fn_oth)
return
end
local tbl = ctx.params
if ctx.sorttype > 0 then
local nums, words, nn, nw = get_key_list_sorted(tbl, natural_sort)
local sequence = {}
for key, val in ipairs(tbl) do sequence[key] = val end
if ctx.sorttype == 2 then
for idx = 1, nw do fn_oth(words[idx], tbl[words[idx]]) end
end
for idx = 1, nn do
if sequence[nums[idx]] then
fn_seq(nums[idx], sequence[nums[idx]])
else
fn_oth(nums[idx], tbl[nums[idx]])
end
end
if ctx.sorttype ~= 2 then
for idx = 1, nw do fn_oth(words[idx], tbl[words[idx]]) end
end
return
end
for key, val in ipairs(tbl) do
fn_seq(key, val)
tbl[key] = nil
end
for key, val in pairs(tbl) do fn_oth(key, val) end
end
-- Finalize and return a concatenated list
local function finalize_and_return_concatenated_list (ctx, lst, len, modsize)
if len > 0 then
local tmp = ctx.oxfordsep or ctx.lastsep
if tmp ~= nil and len > modsize * 2 then
lst[len - modsize + 1] = tmp
elseif len > modsize and ctx.lastsep ~= nil then
lst[len - modsize + 1] = ctx.lastsep
end
lst[1] = ctx.header or ''
if ctx.footer ~= nil then lst[len + 1] = ctx.footer end
ctx.text = table.concat(lst)
else ctx.text = ctx.ifngiven or '' end
end
--[[ Modifiers ]]--
-----------------------------
-- Syntax: #invoke:params|sequential|pipe to
library.sequential = function (ctx)
if ctx.subset == 1 then error(modulename ..
': The ‘sequential’ directive has been provided more than once', 0) end
if ctx.subset == -1 then error(modulename ..
': The two directives ‘non-sequential’ and ‘sequential’ are in contradiction with each other', 0) end
if ctx.sorttype > 0 then error(modulename ..
': The ‘all_sorted’ and ‘reassorted’ directives are redundant when followed by ‘sequential’', 0) end
ctx.iterfunc = ipairs
ctx.subset = 1
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|non-sequential|pipe to
library['non-sequential'] = function (ctx)
if ctx.subset == -1 then error(modulename ..
': The ‘non-sequential’ directive has been provided more than once', 0) end
if ctx.subset == 1 then error(modulename ..
': The two directives ‘sequential’ and ‘non-sequential’ are in contradiction with each other', 0) end
ctx.iterfunc = pairs
ctx.subset = -1
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|all_sorted|pipe to
library.all_sorted = function (ctx)
if ctx.sorttype == 1 then error(modulename ..
': The ‘all_sorted’ directive has been provided more than once', 0) end
if ctx.subset == 1 then error(modulename ..
': The ‘all_sorted’ directive is redundant after ‘sequential’', 0) end
if ctx.sorttype == 2 then error(modulename ..
': The two directives ‘reassorted’ and ‘sequential’ are in contradiction with each other', 0) end
ctx.sorttype = 1
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|reassorted|pipe to
library.reassorted = function (ctx)
if ctx.sorttype == 2 then error(modulename ..
': The ‘reassorted’ directive has been provided more than once', 0) end
if ctx.subset == 1 then error(modulename ..
': The ‘reassorted’ directive is redundant after ‘sequential’', 0) end
if ctx.sorttype == 1 then error(modulename ..
': The two directives ‘sequential’ and ‘reassorted’ are in contradiction with each other', 0) end
ctx.sorttype = 2
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|setting|directives|...|pipe to
library.setting = function (ctx)
local argc = set_strings(ctx, ctx.pipe, 1)
if argc < 2 then error(modulename ..
', ‘setting’: No directive was given', 0) end
return context_iterate(ctx, argc + 1)
end
-- Syntax: #invoke:params|scoring|new parameter name|pipe to
library.scoring = function (ctx)
if ctx.pipe[1] == nil then error(modulename ..
', ‘scoring’: No parameter name was provided', 0) end
local retval = 0
for _ in pairs(ctx.params) do retval = retval + 1 end
ctx.params[get_parameter_name(ctx.pipe[1])] = tostring(retval)
return context_iterate(ctx, 2)
end
-- Syntax: #invoke:params|squeezing|pipe to
library.squeezing = function (ctx)
local store, indices, tbl, newlen = {}, {}, ctx.params, 0
for key, val in pairs(tbl) do
if type(key) == 'number' then
newlen = newlen + 1
indices[newlen] = key
store[key] = val
tbl[key] = nil
end
end
table.sort(indices)
for idx = 1, newlen do tbl[idx] = store[indices[idx]] end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|filling_the_gaps|pipe to
library.filling_the_gaps = function (ctx)
local tbl, tmp, nmin, nmax, nnums = ctx.params, {}, 1, nil, -1
for key, val in pairs(tbl) do
if type(key) == 'number' then
if nmax == nil then
if key < nmin then nmin = key end
nmax = key
elseif key > nmax then nmax = key
elseif key < nmin then nmin = key end
nnums = nnums + 1
tmp[key] = val
end
end
if nmax ~= nil and nmax - nmin > nnums then
ctx.n_available = ctx.n_available + nmin + nnums - nmax
if ctx.n_available < 0 then error(modulename ..
', ‘filling_the_gaps’: It is possible to fill at most ' ..
tostring(maxfill) .. ' parameters', 0) end
for idx = nmin, nmax, 1 do tbl[idx] = '' end
for key, val in pairs(tmp) do tbl[key] = val end
end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|clearing|pipe to
library.clearing = function (ctx)
local tbl = ctx.params
local numerics = {}
for key, val in pairs(tbl) do
if type(key) == 'number' then
numerics[key] = val
tbl[key] = nil
end
end
for key, val in ipairs(numerics) do tbl[key] = val end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|cutting|left cut|right cut|pipe to
library.cutting = function (ctx)
local lcut = tonumber(ctx.pipe[1])
if lcut == nil or math.floor(lcut) ~= lcut then error(modulename ..
', ‘cutting’: Left cut must be an integer number', 0) end
local rcut = tonumber(ctx.pipe[2])
if rcut == nil or math.floor(rcut) ~= rcut then error(modulename ..
', ‘cutting’: Right cut must be an integer number', 0) end
local tbl = ctx.params
local len = #tbl
if lcut < 0 then lcut = len + lcut end
if rcut < 0 then rcut = len + rcut end
local tot = lcut + rcut
if tot > 0 then
local cache = {}
if tot >= len then
for key in ipairs(tbl) do tbl[key] = nil end
tot = len
else
for idx = len - rcut + 1, len, 1 do tbl[idx] = nil end
for idx = 1, lcut, 1 do tbl[idx] = nil end
end
for key, val in pairs(tbl) do
if type(key) == 'number' and key > 0 then
if key > len then cache[key - tot] = val
else cache[key - lcut] = val end
tbl[key] = nil
end
end
for key, val in pairs(cache) do tbl[key] = val end
end
return context_iterate(ctx, 3)
end
-- Syntax: #invoke:params|cropping|left crop|right crop|pipe to
library.cropping = function (ctx)
local lcut = tonumber(ctx.pipe[1])
if lcut == nil or math.floor(lcut) ~= lcut then error(modulename ..
', ‘cropping’: Left crop must be an integer number', 0) end
local rcut = tonumber(ctx.pipe[2])
if rcut == nil or math.floor(rcut) ~= rcut then error(modulename ..
', ‘cropping’: Right crop must be an integer number', 0) end
local tbl = ctx.params
local nmin
local nmax
for key in pairs(tbl) do
if type(key) == 'number' then
if nmin == nil then nmin, nmax = key, key
elseif key > nmax then nmax = key
elseif key < nmin then nmin = key end
end
end
if nmin ~= nil then
local len = nmax - nmin + 1
if lcut < 0 then lcut = len + lcut end
if rcut < 0 then rcut = len + rcut end
if lcut + rcut - len > -1 then
for key in pairs(tbl) do
if type(key) == 'number' then tbl[key] = nil end
end
elseif lcut + rcut > 0 then
for idx = nmax - rcut + 1, nmax do tbl[idx] = nil end
for idx = nmin, nmin + lcut - 1 do tbl[idx] = nil end
local lshift = nmin + lcut - 1
if lshift > 0 then
for idx = lshift + 1, nmax, 1 do
tbl[idx - lshift] = tbl[idx]
tbl[idx] = nil
end
end
end
end
return context_iterate(ctx, 3)
end
-- Syntax: #invoke:params|purging|start offset|length|pipe to
library.purging = function (ctx)
local idx = tonumber(ctx.pipe[1])
if idx == nil or math.floor(idx) ~= idx then error(modulename ..
', ‘purging’: Start offset must be an integer number', 0) end
local len = tonumber(ctx.pipe[2])
if len == nil or math.floor(len) ~= len then error(modulename ..
', ‘purging’: Length must be an integer number', 0) end
local tbl = ctx.params
if len < 1 then
len = len + table.maxn(tbl)
if idx > len then return context_iterate(ctx, 3) end
len = len - idx + 1
end
ctx.params = copy_table_reduced(tbl, idx, len)
return context_iterate(ctx, 3)
end
-- Syntax: #invoke:params|backpurging|start offset|length|pipe to
library.backpurging = function (ctx)
local last = tonumber(ctx.pipe[1])
if last == nil or math.floor(last) ~= last then error(modulename ..
', ‘backpurging’: Start offset must be an integer number', 0) end
local len = tonumber(ctx.pipe[2])
if len == nil or math.floor(len) ~= len then error(modulename ..
', ‘backpurging’: Length must be an integer number', 0) end
local idx
local tbl = ctx.params
if len > 0 then
idx = last - len + 1
else
for key in pairs(tbl) do
if type(key) == 'number' and (idx == nil or
key < idx) then idx = key end
end
if idx == nil then return context_iterate(ctx, 3) end
idx = idx - len
if last < idx then return context_iterate(ctx, 3) end
len = last - idx + 1
end
ctx.params = copy_table_reduced(ctx.params, idx, len)
return context_iterate(ctx, 3)
end
-- Syntax: #invoke:params|shifting|addend|pipe to
library.shifting = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local nshift = tonumber(ctx.pipe[1])
if nshift == nil or nshift == 0 or math.floor(nshift) ~= nshift then
error(modulename .. ', ‘shifting’: A non-zero integer number must be provided', 0) end
local tbl = {}
for key, val in pairs(ctx.params) do
if type(key) == 'number' then tbl[key + nshift] = val
else tbl[key] = val end
end
ctx.params = tbl
return context_iterate(ctx, 2)
end
-- Syntax: #invoke:params|reversing_numeric_names|pipe to
library.reversing_numeric_names = function (ctx)
local tbl, numerics, nmax = ctx.params, {}, 0
for key, val in pairs(tbl) do
if type(key) == 'number' then
numerics[key] = val
tbl[key] = nil
if key > nmax then nmax = key end
end
end
for key, val in pairs(numerics) do tbl[nmax - key + 1] = val end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|pivoting_numeric_names|pipe to
--[[
library.pivoting_numeric_names = function (ctx)
local tbl = ctx.params
local shift = #tbl + 1
if shift < 2 then return library.reversing_numeric_names(ctx) end
local numerics = {}
for key, val in pairs(tbl) do
if type(key) == 'number' then
numerics[key] = val
tbl[key] = nil
end
end
for key, val in pairs(numerics) do tbl[shift - key] = val end
return context_iterate(ctx, 1)
end
]]--
-- Syntax: #invoke:params|mirroring_numeric_names|pipe to
--[[
library.mirroring_numeric_names = function (ctx)
local tbl, numerics = ctx.params, {}
local nmax
local nmin
for key, val in pairs(tbl) do
if type(key) == 'number' then
numerics[key] = val
tbl[key] = nil
if nmax == nil then nmin, nmax = key, key
elseif key > nmax then nmax = key
elseif key < nmin then nmin = key end
end
end
for key, val in pairs(numerics) do tbl[nmax + nmin - key] = val end
return context_iterate(ctx, 1)
end
]]--
-- Syntax: #invoke:params|swapping_numeric_names|pipe to
--[[
library.swapping_numeric_names = function (ctx)
local tbl, cache, nsize = ctx.params, {}, 0
local tmp
for key in pairs(tbl) do
if type(key) == 'number' then
nsize = nsize + 1
cache[nsize] = key
end
end
table.sort(cache)
for idx = math.floor(nsize / 2), 1, -1 do
tmp = tbl[cache[idx] ]
tbl[cache[idx] ] = tbl[cache[nsize - idx + 1] ]
tbl[cache[nsize - idx + 1] ] = tmp
end
return context_iterate(ctx, 1)
end
]]--
-- Syntax: #invoke:params|sorting_sequential_values|[criterion]|pipe to
library.sorting_sequential_values = function (ctx)
local sortfn
if ctx.pipe[1] ~= nil then
sortfn = sortfunctions[ctx.pipe[1]:match'^%s*(.-)%s*$']
end
if sortfn then table.sort(ctx.params, sortfn)
else table.sort(ctx.params) end -- i.e. either `false` or `nil`
if sortfn == nil then return context_iterate(ctx, 1) end
return context_iterate(ctx, 2)
end
-- Syntax: #invoke:params|splicing|[add to position]|position|increment|
-- [number of elements to write]|...|pipe to
library.splicing = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local opts, tbl = ctx.pipe, ctx.params
local tmp1 = opts[1]
local tmp2
local argc
local pos
local refp
if tmp1 ~= nil then
tmp2 = tonumber(tmp1)
if tmp2 == nil or math.floor(tmp2) ~= tmp2 then
pos, argc, tmp2 = tonumber(opts[2]), 4,
tmp1:match'^%s*(.*%S)'
if tmp2 ~= nil then
refp = position_references[tmp2]
if refp == nil then error(modulename ..
', ‘splicing’: ‘' .. tostring(tmp2) ..
'’ is not a valid first argument', 0) end
else refp = 0 end
else pos, argc, refp = tmp2, 3, 0 end
else pos, argc, refp = tonumber(opts[2]), 4, 0 end
if pos == nil or math.floor(pos) ~= pos then error(modulename ..
', ‘splicing’: The position must be an integer number', 0) end
local len = tonumber(opts[argc - 1])
if len == nil or math.floor(len) ~= len then error(modulename ..
', ‘splicing’: The increment must be an integer number', 0) end
if refp == 2 then
for _ in ipairs(tbl) do pos = pos + 1 end
refp = 0
end
tmp1, tmp2 = nil, nil
if refp ~= 0 or len ~= 0 then
for key, val in pairs(tbl) do
if type(key) == 'number' then
if tmp1 == nil then tmp1, tmp2 = key, key
elseif key < tmp1 then tmp1 = key
elseif key > tmp2 then tmp2 = key end
end
end
end
if tmp2 == nil then len = 0
elseif refp == 3 then pos = pos + tmp2
elseif refp == 1 then pos = pos + tmp1 end
if len > 0 and pos + len > tmp1 and pos <= tmp2 then
tbl = copy_table_expanded(tbl, pos, len)
elseif len < 0 and pos - len > tmp1 and pos <= tmp2 then
tbl = copy_table_reduced(tbl, pos, -len)
else tbl = copy_or_ref_table(tbl, tbl ~= ctx.oparams) end
ctx.params = tbl
tmp1 = tonumber(opts[argc])
if len == 0 and (tmp1 == nil or tmp1 < 1) then error(modulename ..
', ‘splicing’: When the increment is zero the number of elements to add cannot be zero', 0) end
if tmp1 == nil or tmp1 < 0 or math.floor(tmp1) ~= tmp1 then
return context_iterate(ctx, argc)
end
tmp2 = argc - pos + 1
for key = pos, pos + tmp1 - 1 do tbl[key] = opts[key + tmp2] end
return context_iterate(ctx, argc + tmp1 + 1)
end
-- Syntax: #invoke:params|imposing|name|value|pipe to
library.imposing = function (ctx)
if ctx.pipe[1] == nil then error(modulename ..
', ‘imposing’: Missing parameter name to impose', 0) end
ctx.params[get_parameter_name(ctx.pipe[1])] = ctx.pipe[2]
return context_iterate(ctx, 3)
end
-- Syntax: #invoke:params|providing|name|value|pipe to
library.providing = function (ctx)
if ctx.pipe[1] == nil then error(modulename ..
', ‘providing’: Missing parameter name to provide', 0) end
local key = get_parameter_name(ctx.pipe[1])
if ctx.params[key] == nil then ctx.params[key] = ctx.pipe[2] end
return context_iterate(ctx, 3)
end
-- Syntax: #invoke:params|discarding|name|[how many]|pipe to
library.discarding = function (ctx)
if ctx.pipe[1] == nil then error(modulename ..
', ‘discarding’: Missing parameter name to discard', 0) end
local len = tonumber(ctx.pipe[2])
if len == nil then
ctx.params[get_parameter_name(ctx.pipe[1])] = nil
return context_iterate(ctx, 2)
end
local key = tonumber(ctx.pipe[1])
if key == nil or math.floor(key) ~= key then error(modulename ..
', ‘discarding’: A range was provided, but the initial parameter name is not an integer number', 0) end
if len < 1 or math.floor(len) ~= len then error(modulename ..
', ‘discarding’: A range can only be an integer number greater than zero', 0) end
for idx = key, key + len - 1 do ctx.params[idx] = nil end
return context_iterate(ctx, 3)
end
-- Syntax: #invoke:params|excluding_non-numeric_names|pipe to
library['excluding_non-numeric_names'] = function (ctx)
local tmp = ctx.params
for key, val in pairs(tmp) do
if type(key) ~= 'number' then tmp[key] = nil end
end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|excluding_numeric_names|pipe to
library.excluding_numeric_names = function (ctx)
local tmp = ctx.params
for key, val in pairs(tmp) do
if type(key) == 'number' then tmp[key] = nil end
end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|with_name_matching|target 1|[plain flag 1]|[or]
-- |[target 2]|[plain flag 2]|[or]|[...]|[target N]|[plain flag
-- N]|pipe to
library.with_name_matching = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local targets, nptns, argc = load_pattern_args(ctx.pipe,
'with_name_matching')
local tmp
local ptn
local tbl = ctx.params
local newparams = {}
for idx = 1, nptns do
ptn = targets[idx]
if ptn[3] then
tmp = ptn[1]
if tmp == '0' or tmp:find'^%-?[1-9]%d*$' ~= nil then
tmp = tonumber(tmp)
end
newparams[tmp] = tbl[tmp]
else
for key, val in pairs(tbl) do
if tostring(key):find(ptn[1], 1, ptn[2]) then
newparams[key] = val
end
end
end
end
ctx.params = newparams
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|with_name_not_matching|target 1|[plain flag 1]
-- |[and]|[target 2]|[plain flag 2]|[and]|[...]|[target N]|[plain
-- flag N]|pipe to
library.with_name_not_matching = function (ctx)
local targets, nptns, argc = load_pattern_args(ctx.pipe,
'with_name_not_matching')
local tbl = ctx.params
if nptns == 1 and targets[1][3] then
local tmp = targets[1][1]
if tmp == '0' or tmp:find'^%-?[1-9]%d*$' ~= nil then
tbl[tonumber(tmp)] = nil
else tbl[tmp] = nil end
return context_iterate(ctx, argc)
end
local yesmatch
local ptn
for key in pairs(tbl) do
yesmatch = true
for idx = 1, nptns do
ptn = targets[idx]
if ptn[3] then
if tostring(key) ~= ptn[1] then
yesmatch = false
break
end
elseif not tostring(key):find(ptn[1], 1, ptn[2]) then
yesmatch = false
break
end
end
if yesmatch then tbl[key] = nil end
end
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|with_value_matching|target 1|[plain flag 1]|[or]
-- |[target 2]|[plain flag 2]|[or]|[...]|[target N]|[plain flag
-- N]|pipe to
library.with_value_matching = function (ctx)
local tbl = ctx.params
local targets, nptns, argc = load_pattern_args(ctx.pipe,
'with_value_matching')
local nomatch
local ptn
for key, val in pairs(tbl) do
nomatch = true
for idx = 1, nptns do
ptn = targets[idx]
if ptn[3] then
if val == ptn[1] then
nomatch = false
break
end
elseif val:find(ptn[1], 1, ptn[2]) then
nomatch = false
break
end
end
if nomatch then tbl[key] = nil end
end
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|with_value_not_matching|target 1|[plain flag 1]
-- |[and]|[target 2]|[plain flag 2]|[and]|[...]|[target N]|[plain
-- flag N]|pipe to
library.with_value_not_matching = function (ctx)
local tbl = ctx.params
local targets, nptns, argc = load_pattern_args(ctx.pipe,
'with_value_not_matching')
local yesmatch
local ptn
for key, val in pairs(tbl) do
yesmatch = true
for idx = 1, nptns do
ptn = targets[idx]
if ptn[3] then
if val ~= ptn[1] then
yesmatch = false
break
end
elseif not val:find(ptn[1], 1, ptn[2]) then
yesmatch = false
break
end
end
if yesmatch then tbl[key] = nil end
end
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|trimming_values|pipe to
library.trimming_values = function (ctx)
local tbl = ctx.params
for key, val in pairs(tbl) do tbl[key] = val:match'^%s*(.-)%s*$' end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|mapping_to_lowercase|pipe to
library.mapping_to_lowercase = function (ctx)
local tbl = ctx.params
for key, val in pairs(tbl) do tbl[key] = val:lower() end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|mapping_to_uppercase|pipe to
library.mapping_to_uppercase = function (ctx)
local tbl = ctx.params
for key, val in pairs(tbl) do tbl[key] = val:upper() end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|mapping_by_calling|template name|[call
-- style]|[let]|[...][number of additional parameters]|[parameter
-- 1]|[parameter 2]|[...]|[parameter N]|pipe to
library.mapping_by_calling = function (ctx)
local opts = ctx.pipe
local tname
if opts[1] ~= nil then tname = opts[1]:match'^%s*(.*%S)' end
if tname == nil then error(modulename ..
', ‘mapping_by_calling’: No template name was provided', 0) end
local margs, argc, looptype, karg, varg = load_callback_opts(opts, 1,
mapping_styles.values_only)
local model = { title = tname, args = margs }
value_maps[looptype](ctx.params, margs, karg, varg, function ()
return ctx.frame:expandTemplate(model)
end)
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|mapping_by_invoking|module name|function
-- name|[call style]|[let]|[...]|[number of additional
-- arguments]|[argument 1]|[argument 2]|[...]|[argument N]|pipe to
library.mapping_by_invoking = function (ctx)
local opts = ctx.pipe
local mname
local fname
if opts[1] ~= nil then mname = opts[1]:match'^%s*(.*%S)' end
if mname == nil then error(modulename ..
', ‘mapping_by_invoking’: No module name was provided', 0) end
if opts[2] ~= nil then fname = opts[2]:match'^%s*(.*%S)' end
if fname == nil then error(modulename ..
', ‘mapping_by_invoking’: No function name was provided', 0) end
local margs, argc, looptype, karg, varg = load_callback_opts(opts, 2,
mapping_styles.values_only)
local model = { title = 'Module:' .. mname, args = margs }
local mfunc = require(model.title)[fname]
if mfunc == nil then error(modulename ..
', ‘mapping_by_invoking’: The function ‘' .. fname ..
'’ does not exist', 0) end
value_maps[looptype](ctx.params, margs, karg, varg, function ()
return tostring(mfunc(ctx.frame:newChild(model)))
end)
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|mapping_by_magic|parser function|[call
-- style]|[let]|[...][number of additional arguments]|[argument
-- 1]|[argument 2]|[...]|[argument N]|pipe to
library.mapping_by_magic = function (ctx)
local opts = ctx.pipe
local magic
if opts[1] ~= nil then magic = opts[1]:match'^%s*(.*%S)' end
if magic == nil then error(modulename ..
', ‘mapping_by_magic’: No parser function was provided', 0) end
local margs, argc, looptype, karg, varg = load_callback_opts(opts, 1,
mapping_styles.values_only)
value_maps[looptype](ctx.params, margs, karg, varg, function ()
return ctx.frame:callParserFunction(magic, margs)
end)
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|mapping_by_replacing|target|replace|[count]|[plain
-- flag]|pipe to
library.mapping_by_replacing = function (ctx)
local ptn, repl, nmax, flg, argc, die =
load_replace_args(ctx.pipe, 'mapping_by_replacing')
if die then return context_iterate(ctx, argc) end
local tbl = ctx.params
if flg == 3 then
for key, val in pairs(tbl) do
if val == ptn then tbl[key] = repl end
end
else
if flg == 2 then
-- Copied from Module:String's `str._escapePattern()`
ptn = ptn:gsub('[%(%)%.%%%+%-%*%?%[%^%$%]]', '%%%0')
end
for key, val in pairs(tbl) do
tbl[key] = val:gsub(ptn, repl, nmax)
end
end
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|mapping_by_mixing|mixing string|pipe to
library.mapping_by_mixing = function (ctx)
if ctx.pipe[1] == nil then error(modulename ..
', ‘mapping_by_mixing’: No mixing string was provided', 0) end
local mix = ctx.pipe[1]
local tbl = ctx.params
if mix == '$#' then
for key in pairs(tbl) do tbl[key] = tostring(key) end
return context_iterate(ctx, 2)
end
local skel, cnv, n_parts = parse_placeholder_string(mix)
for key, val in pairs(tbl) do
for idx = 2, n_parts, 2 do
if skel[idx] then cnv[idx] = val else cnv[idx] = tostring(key) end
end
tbl[key] = table.concat(cnv)
end
return context_iterate(ctx, 2)
end
-- Syntax: #invoke:params|mapping_to_names|pipe to
--[[
library.mapping_to_names = function (ctx)
local tbl = ctx.params
for key in pairs(tbl) do tbl[key] = tostring(key) end
return context_iterate(ctx, 1)
end
]]--
-- Syntax: #invoke:params|renaming_to_lowercase|pipe to
library.renaming_to_lowercase = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local cache = {}
for key, val in pairs(ctx.params) do
if type(key) == 'string' then cache[key:lower()] = val else
cache[key] = val end
end
ctx.params = cache
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|renaming_to_uppercase|pipe to
library.renaming_to_uppercase = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local cache = {}
for key, val in pairs(ctx.params) do
if type(key) == 'string' then cache[key:upper()] = val else
cache[key] = val end
end
ctx.params = cache
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|renaming_to_sequence|[sort order]|pipe to
library.renaming_to_sequence = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local tbl = ctx.params
local sortfn, argc, do_sort = load_sort_opt(ctx.pipe[1])
local cache
local len
if do_sort then
local words
local wl
cache, words, len, wl = get_key_list_sorted(tbl, sortfn)
for idx = 1, len do cache[idx] = tbl[cache[idx]] end
for idx = 1, wl do cache[len + idx] = tbl[words[idx]] end
else
cache = {}
len = 0
for _, val in pairs(tbl) do
len = len + 1
cache[len] = val
end
end
ctx.params = cache
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|renaming_by_calling|template name|[call
-- style]|[let]|[...][number of additional parameters]|[parameter
-- 1]|[parameter 2]|[...]|[parameter N]|pipe to
library.renaming_by_calling = function (ctx)
local opts = ctx.pipe
local tname
if opts[1] ~= nil then tname = opts[1]:match'^%s*(.*%S)' end
if tname == nil then error(modulename ..
', ‘renaming_by_calling’: No template name was provided', 0) end
local rargs, argc, looptype, karg, varg = load_callback_opts(opts, 1,
mapping_styles.names_only)
local model = { title = tname, args = rargs }
map_names(ctx.params, rargs, karg, varg, looptype, function ()
return ctx.frame:expandTemplate(model)
end)
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|renaming_by_invoking|module name|function
-- name|[call style]|[let]|[...]|[number of additional
-- arguments]|[argument 1]|[argument 2]|[...]|[argument N]|pipe to
library.renaming_by_invoking = function (ctx)
local opts = ctx.pipe
local mname
local fname
if opts[1] ~= nil then mname = opts[1]:match'^%s*(.*%S)' end
if mname == nil then error(modulename ..
', ‘renaming_by_invoking’: No module name was provided', 0) end
if opts[2] ~= nil then fname = opts[2]:match'^%s*(.*%S)' end
if fname == nil then error(modulename ..
', ‘renaming_by_invoking’: No function name was provided', 0) end
local rargs, argc, looptype, karg, varg = load_callback_opts(opts, 2,
mapping_styles.names_only)
local model = { title = 'Module:' .. mname, args = rargs }
local mfunc = require(model.title)[fname]
if mfunc == nil then error(modulename ..
', ‘renaming_by_invoking’: The function ‘' .. fname ..
'’ does not exist', 0) end
map_names(ctx.params, rargs, karg, varg, looptype, function ()
return tostring(mfunc(ctx.frame:newChild(model)))
end)
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|renaming_by_magic|parser function|[call
-- style]|[let]|[...][number of additional arguments]|[argument
-- 1]|[argument 2]|[...]|[argument N]|pipe to
library.renaming_by_magic = function (ctx)
local opts = ctx.pipe
local magic
if opts[1] ~= nil then magic = opts[1]:match'^%s*(.*%S)' end
if magic == nil then error(modulename ..
', ‘renaming_by_magic’: No parser function was provided', 0) end
local rargs, argc, looptype, karg, varg = load_callback_opts(opts, 1,
mapping_styles.names_only)
map_names(ctx.params, rargs, karg, varg, looptype, function ()
return ctx.frame:callParserFunction(magic, rargs)
end)
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|renaming_by_replacing|target|replace|[count]|[plain
-- flag]|pipe to
library.renaming_by_replacing = function (ctx)
local ptn, repl, nmax, flg, argc, die =
load_replace_args(ctx.pipe, 'renaming_by_replacing')
if die then return context_iterate(ctx, argc) end
local tbl = ctx.params
if flg == 3 then
ptn = get_parameter_name(ptn)
local val = tbl[ptn]
if val ~= nil then
tbl[ptn] = nil
tbl[get_parameter_name(repl)] = val
end
else
if flg == 2 then
-- Copied from Module:String's `str._escapePattern()`
ptn = ptn:gsub('[%(%)%.%%%+%-%*%?%[%^%$%]]', '%%%0')
end
local cache = {}
for key, val in pairs(tbl) do
steal_if_renamed(val, tbl, key, cache,
tostring(key):gsub(ptn, repl, nmax))
end
for key, val in pairs(cache) do tbl[key] = val end
end
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|renaming_by_mixing|mixing string|pipe to
library.renaming_by_mixing = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
if ctx.pipe[1] == nil then error(modulename ..
', ‘renaming_by_mixing’: No mixing string was provided', 0) end
local mix = ctx.pipe[1]:match'^%s*(.-)%s*$'
local cache = {}
if mix == '$@' then
for _, val in pairs(ctx.params) do
cache[get_parameter_name(val)] = val
end
else
local skel, canvas, n_parts = parse_placeholder_string(mix)
for key, val in pairs(ctx.params) do
for idx = 2, n_parts, 2 do
if skel[idx] then canvas[idx] = val
else canvas[idx] = tostring(key) end
end
cache[get_parameter_name(table.concat(canvas))] = val
end
end
ctx.params = cache
return context_iterate(ctx, 2)
end
-- Syntax: #invoke:params|renaming_to_values|pipe to
--[[
library.renaming_to_values = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local cache = {}
for _, val in pairs(ctx.params) do cache[val] = val end
ctx.params = cache
return context_iterate(ctx, 1)
end
]]--
-- Syntax: #invoke:params|grouping_by_calling|template
-- name|[let]|[...]|[number of additional arguments]|[argument
-- 1]|[argument 2]|[...]|[argument N]|pipe to
library.grouping_by_calling = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local opts = ctx.pipe
local tmp
if opts[1] ~= nil then tmp = opts[1]:match'^%s*(.*%S)' end
if tmp == nil then error(modulename ..
', ‘grouping_by_calling’: No template name was provided', 0) end
local model = { title = tmp }
local argc
tmp, argc = load_child_opts(opts, 2, 0)
local gargs = {}
for key, val in pairs(tmp) do
if type(key) == 'number' and key < 1 then gargs[key - 1] = val
else gargs[key] = val end
end
local groups = make_groups(ctx.params)
for gid, group in pairs(groups) do
for key, val in pairs(gargs) do group[key] = val end
group[0] = gid
model.args = group
groups[gid] = ctx.frame:expandTemplate(model)
end
ctx.params = groups
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|parsing|string to parse|[trim flag]|[iteration
-- delimiter setter]|[...]|[key-value delimiter setter]|[...]|pipe to
library.parsing = function (ctx)
local opts = ctx.pipe
if opts[1] == nil then error(modulename ..
', ‘parsing’: No string to parse was provided', 0) end
local isep, iplain, psep, pplain, trimnamed, trimunnamed, argc =
load_parse_opts(opts, 2, '|', '=')
parse_parameter_string(ctx.params, opts[1], isep, iplain, psep, pplain,
trimnamed, trimunnamed)
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|reinterpreting|parameter to reinterpret|[trim
-- flag]|[iteration delimiter setter]|[...]|[key-value delimiter
-- setter]|[...]|pipe to
library.reinterpreting = function (ctx)
local opts = ctx.pipe
if opts[1] == nil then error(modulename ..
', ‘reinterpreting’: No parameter to reinterpret was provided', 0) end
local isep, iplain, psep, pplain, trimnamed, trimunnamed, argc =
load_parse_opts(opts, 2, '|', '=')
local tbl, tmp = ctx.params, get_parameter_name(opts[1])
local str = tbl[tmp]
if str ~= nil then
tbl[tmp] = nil
parse_parameter_string(tbl, str, isep, iplain, psep, pplain,
trimnamed, trimunnamed)
end
return context_iterate(ctx, argc)
end
-- Syntax: #invoke:params|evaluating|string to parse|[trim flag]|[iteration
-- delimiter setter]|[...]|[key-value delimiter setter]|[...]|pipe to
library.evaluating = function (ctx)
-- NOTE: `ctx.pipe` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local opts = ctx.pipe
if opts[1] == nil then error(modulename ..
', ‘evaluating’: No string to parse was provided', 0) end
local isep, iplain, psep, pplain, trimnamed, trimunnamed, argc =
load_parse_opts(opts, 2, '!', ':')
if opts[1]:match'^%s*(.*%S)' == nil then
ctx.pipe = copy_or_ref_table(opts, opts ~= ctx.opipe)
return context_iterate(ctx, argc)
end
local new_opts, cache = {}, {}
local shift = parse_parameter_string(cache, opts[1], isep, iplain,
psep, pplain, trimnamed, trimunnamed) - argc
for key, val in pairs(opts) do
if type(key) ~= 'number' or key < 1 then new_opts[key] = val
elseif key >= argc then new_opts[key + shift] = val end
end
for key, val in pairs(cache) do new_opts[key] = val end
ctx.pipe = new_opts
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|mixing_names_and_values|mixing string|pipe to
library.mixing_names_and_values = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
if ctx.pipe[1] == nil then error(modulename ..
', ‘mixing_names_and_values’: No mixing string was provided for parameter names', 0) end
if ctx.pipe[2] == nil then error(modulename ..
', ‘mixing_names_and_values’: No mixing string was provided for parameter values', 0) end
local cache = {}
local mix_k, mix_v = ctx.pipe[1]:match'^%s*(.-)%s*$', ctx.pipe[2]
local tmp
if mix_k == '$@' and mix_v == '$@' then
for _, val in pairs(ctx.params) do
cache[get_parameter_name(val)] = val
end
elseif mix_k == '$@' and mix_v == '$#' then
for key, val in pairs(ctx.params) do
cache[get_parameter_name(val)] = tostring(key)
end
elseif mix_k == '$#' and mix_v == '$#' then
for key in pairs(ctx.params) do cache[key] = tostring(key) end
else
local skel_k, cnv_k, n_parts_k = parse_placeholder_string(mix_k)
local skel_v, cnv_v, n_parts_v = parse_placeholder_string(mix_v)
for key, val in pairs(ctx.params) do
tmp = tostring(key)
for idx = 2, n_parts_k, 2 do
if skel_k[idx] then cnv_k[idx] = val else cnv_k[idx] = tmp end
end
for idx = 2, n_parts_v, 2 do
if skel_v[idx] then cnv_v[idx] = val else cnv_v[idx] = tmp end
end
cache[get_parameter_name(table.concat(cnv_k))] =
table.concat(cnv_v)
end
end
ctx.params = cache
return context_iterate(ctx, 3)
end
-- Syntax: #invoke:params|swapping_names_and_values|pipe to
--[[
library.swapping_names_and_values = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local cache = {}
for key, val in pairs(ctx.params) do cache[val] = key end
ctx.params = cache
return context_iterate(ctx, 1)
end
]]--
-- Syntax: #invoke:params|combining|new parameter name|[sort order]|setting
-- directives|...|pipe to
library.combining = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
return context_iterate(ctx, combine_parameters(
ctx,
function (key, val, kvs) return key .. kvs .. val end,
'combining'
) + 1)
end
-- Syntax: #invoke:params|combining_values|new parameter name|[sort
-- order]|setting directives|...|pipe to
library.combining_values = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
return context_iterate(ctx, combine_parameters(
ctx,
function (key, val, kvs) return val end,
'combining_values'
) + 1)
end
-- Syntax: #invoke:params|combining_by_calling|template name|new parameter
-- name|pipe to
library.combining_by_calling = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local tname = ctx.pipe[1]
if tname ~= nil then tname = tname:match'^%s*(.*%S)'
else error(modulename ..
', ‘combining_by_calling’: No template name was provided', 0) end
if ctx.pipe[2] == nil then error(modulename ..
', ‘combining_by_calling’: No parameter name was provided', 0) end
ctx.params = {
[get_parameter_name(ctx.pipe[2])] = ctx.frame:expandTemplate{
title = tname,
args = ctx.params
}
}
return context_iterate(ctx, 3)
end
-- Syntax: #invoke:params|combining_by_invoking|module name|function name|new
-- parameter name|pipe to
library.combining_by_invoking = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local mname = ctx.pipe[1]
if mname ~= nil then mname = mname:match'^%s*(.*%S)'
else error(modulename ..
', ‘combining_by_invoking’: No module name was provided', 0) end
local fname = ctx.pipe[2]
if fname ~= nil then fname = fname:match'^%s*(.*%S)'
else error(modulename ..
', ‘combining_by_invoking’: No function name was provided', 0) end
if ctx.pipe[3] == nil then error(modulename ..
', ‘combining_by_invoking’: No parameter name was provided', 0) end
local model = { title = 'Module:' .. mname, args = ctx.params }
local mfunc = require(model.title)[fname]
if mfunc == nil then error(modulename ..
', ‘mapping_by_invoking’: The function ‘' .. fname ..
'’ does not exist', 0) end
ctx.params = {
[get_parameter_name(ctx.pipe[3])] =
tostring(mfunc(ctx.frame:newChild(model)))
}
return context_iterate(ctx, 4)
end
-- Syntax: #invoke:params|combining_by_magic|parser function|new parameter
-- name|pipe to
library.combining_by_magic = function (ctx)
-- NOTE: `ctx.params` might be the original metatable! As a modifier,
-- this function MUST create a copy of it before returning
local magic = ctx.pipe[1]
if magic ~= nil then magic = magic:match'^%s*(.*%S)'
else error(modulename ..
', ‘combining_by_magic’: No parser function was provided', 0) end
if ctx.pipe[2] == nil then error(modulename ..
', ‘combining_by_magic’: No parameter name was provided', 0) end
ctx.params = {
[get_parameter_name(ctx.pipe[2])] =
ctx.frame:callParserFunction(magic, ctx.params)
}
return context_iterate(ctx, 3)
end
-- Syntax: #invoke:params|snapshotting|pipe to
library.snapshotting = function (ctx)
push_cloned_stack(ctx, ctx.params)
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|remembering|pipe to
library.remembering = function (ctx)
push_cloned_stack(ctx, ctx.oparams)
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|entering_substack|[new]|pipe to
library.entering_substack = function (ctx)
local tbl = ctx.params
local ncurrparent = ctx.n_parents + 1
if ctx.parents == nil then ctx.parents = { tbl }
else ctx.parents[ncurrparent] = tbl end
ctx.n_parents = ncurrparent
if ctx.pipe[1] ~= nil and ctx.pipe[1]:match'^%s*new%s*$' then
ctx.params = {}
return context_iterate(ctx, 2)
end
local currsnap = ctx.n_children
if currsnap > 0 then
ctx.params = ctx.children[currsnap]
ctx.children[currsnap] = nil
ctx.n_children = currsnap - 1
else
local newparams = {}
for key, val in pairs(tbl) do newparams[key] = val end
ctx.params = newparams
end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|pulling|parameter name|pipe to
library.pulling = function (ctx)
local opts = ctx.pipe
if opts[1] == nil then error(modulename ..
', ‘pulling’: No parameter to pull was provided', 0) end
local parent
local tmp = ctx.n_parents
if tmp < 1 then parent = ctx.oparams else parent = ctx.parents[tmp] end
tmp = get_parameter_name(opts[1])
if parent[tmp] ~= nil then ctx.params[tmp] = parent[tmp] end
return context_iterate(ctx, 2)
end
-- Syntax: #invoke:params|detaching_substack|pipe to
library.detaching_substack = function (ctx)
local ncurrparent = ctx.n_parents
if ncurrparent < 1 then error(modulename ..
', ‘detaching_substack’: No substack has been created', 0) end
local parent = ctx.parents[ncurrparent]
for key in pairs(ctx.params) do parent[key] = nil end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|dropping_substack|pipe to
library.dropping_substack = function (ctx)
local ncurrparent = ctx.n_parents
if ncurrparent < 1 then error(modulename ..
', ‘dropping_substack’: No substack has been created', 0) end
ctx.params = ctx.parents[ncurrparent]
ctx.parents[ncurrparent] = nil
ctx.n_parents = ncurrparent - 1
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|leaving_substack|pipe to
library.leaving_substack = function (ctx)
local ncurrparent = ctx.n_parents
if ncurrparent < 1 then error(modulename ..
', ‘leaving_substack’: No substack has been created', 0) end
local currsnap = ctx.n_children + 1
if ctx.children == nil then ctx.children = { ctx.params }
else ctx.children[currsnap] = ctx.params end
ctx.params = ctx.parents[ncurrparent]
ctx.parents[ncurrparent] = nil
ctx.n_parents = ncurrparent - 1
ctx.n_children = currsnap
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|merging_substack|pipe to
library.merging_substack = function (ctx)
local ncurrparent = ctx.n_parents
if ncurrparent < 1 then error(modulename ..
', ‘merging_substack’: No substack has been created', 0) end
local parent = ctx.parents[ncurrparent]
local child = ctx.params
ctx.params = parent
ctx.parents[ncurrparent] = nil
ctx.n_parents = ncurrparent - 1
for key, val in pairs(child) do parent[key] = val end
return context_iterate(ctx, 1)
end
-- Syntax: #invoke:params|flushing|pipe to
library.flushing = function (ctx)
if ctx.n_children < 1 then error(modulename ..
', ‘flushing’: There are no substacks to flush', 0) end
local parent = ctx.params
local currsnap = ctx.n_children
for key, val in pairs(ctx.children[currsnap]) do parent[key] = val end
ctx.children[currsnap] = nil
ctx.n_children = currsnap - 1
return context_iterate(ctx, 1)
end
--[[ Functions ]]--
-----------------------------
-- Syntax: #invoke:params|count
library.count = function (ctx)
-- NOTE: `ctx.pipe` and `ctx.params` might be the original metatables!
local retval = 0
for _ in ctx.iterfunc(ctx.params) do retval = retval + 1 end
if ctx.subset == -1 then retval = retval - #ctx.params end
ctx.text = retval
return false
end
-- Syntax: #invoke:args|concat_and_call|template name|[prepend 1]|[prepend 2]
-- |[...]|[item n]|[named item 1=value 1]|[...]|[named item n=value
-- n]|[...]
library.concat_and_call = function (ctx)
-- NOTE: `ctx.params` might be the original metatable!
local opts = ctx.pipe
local tname
if opts[1] ~= nil then tname = opts[1]:match'^%s*(.*%S)' end
if tname == nil then error(modulename ..
', ‘concat_and_call’: No template name was provided', 0) end
remove_numeric_keys(opts, 1, 1)
ctx.text = ctx.frame:expandTemplate{
title = tname,
args = concat_params(ctx)
}
return false
end
-- Syntax: #invoke:args|concat_and_invoke|module name|function name|[prepend
-- 1]|[prepend 2]|[...]|[item n]|[named item 1=value 1]|[...]|[named
-- item n=value n]|[...]
library.concat_and_invoke = function (ctx)
-- NOTE: `ctx.params` might be the original metatable!
local opts = ctx.pipe
local mname
local fname
if opts[1] ~= nil then mname = opts[1]:match'^%s*(.*%S)' end
if mname == nil then error(modulename ..
', ‘concat_and_invoke’: No module name was provided', 0) end
if opts[2] ~= nil then fname = opts[2]:match'^%s*(.*%S)' end
if fname == nil then error(modulename ..
', ‘concat_and_invoke’: No function name was provided', 0) end
remove_numeric_keys(opts, 1, 2)
local mfunc = require('Module:' .. mname)[fname]
if mfunc == nil then error(modulename ..
', ‘concat_and_invoke’: The function ‘' .. fname ..
'’ does not exist', 0) end
ctx.text = mfunc(ctx.frame:newChild{
title = 'Module:' .. mname,
args = concat_params(ctx)
})
return false
end
-- Syntax: #invoke:args|concat_and_magic|parser function|[prepend 1]|[prepend
-- 2]|[...]|[item n]|[named item 1=value 1]|[...]|[named item n=
-- value n]|[...]
library.concat_and_magic = function (ctx)
-- NOTE: `ctx.params` might be the original metatable!
local opts = ctx.pipe
local magic
if opts[1] ~= nil then magic = opts[1]:match'^%s*(.*%S)' end
if magic == nil then error(modulename ..
', ‘concat_and_magic’: No parser function was provided', 0) end
remove_numeric_keys(opts, 1, 1)
ctx.text = ctx.frame:callParserFunction(magic, concat_params(ctx))
return false
end
-- Syntax: #invoke:params|value_of|parameter name
library.value_of = function (ctx)
-- NOTE: `ctx.pipe` and `ctx.params` might be the original metatables!
local opts = ctx.pipe
if opts[1] == nil then error(modulename ..
', ‘value_of’: No parameter name was provided', 0) end
local val
local key = opts[1]:match'^%s*(.-)%s*$'
if key == '0' or key:find'^%-?[1-9]%d*$' ~= nil then
key = tonumber(key)
val = ctx.params[key]
-- No worries: #ctx.params is unused when the modifier is in
-- first position (and therefore `ctx.params` is a metatable)
if val ~= nil and (
ctx.subset ~= -1 or key > #ctx.params or key < 1
) and (
ctx.subset ~= 1 or (key <= #ctx.params and key > 0)
) then
ctx.text = (ctx.header or '') .. val .. (ctx.footer or '')
else ctx.text = ctx.ifngiven or '' end
else
val = ctx.params[key]
if ctx.subset ~= 1 and val ~= nil then
ctx.text = (ctx.header or '') .. val .. (ctx.footer or '')
else ctx.text = ctx.ifngiven or '' end
end
return false
end
-- Syntax: #invoke:params|list
library.list = function (ctx)
-- NOTE: `ctx.pipe` might be the original metatable!
local ret, nss, kvs, pps = {}, 0, ctx.pairsep or '', ctx.itersep or ''
flush_params(
ctx,
function (key, val)
ret[nss + 1] = pps
ret[nss + 2] = key
ret[nss + 3] = kvs
ret[nss + 4] = val
nss = nss + 4
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 4)
return false
end
-- Syntax: #invoke:params|list_values
library.list_values = function (ctx)
-- NOTE: `ctx.pipe` might be the original metatable!
-- NOTE: `library.coins()` and `library.unique_coins()` rely on us
local ret, nss, pps = {}, 0, ctx.itersep or ''
flush_params(
ctx,
function (key, val)
ret[nss + 1] = pps
ret[nss + 2] = val
nss = nss + 2
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 2)
return false
end
-- Syntax: #invoke:params|list_maybe_with_names
library.list_maybe_with_names = function (ctx)
-- NOTE: `ctx.pipe` might be the original metatable!
local ret, nss, kvs, pps = {}, 0, ctx.pairsep or '', ctx.itersep or ''
mixed_flush_params(
ctx,
function (key, val)
ret[nss + 1] = pps
ret[nss + 2] = ''
ret[nss + 3] = ''
ret[nss + 4] = val
nss = nss + 4
end,
function (key, val)
ret[nss + 1] = pps
ret[nss + 2] = key
ret[nss + 3] = kvs
ret[nss + 4] = val
nss = nss + 4
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 4)
return false
end
-- Syntax: #invoke:params|coins|[first coin = value 1]|[second coin = value
-- 2]|[...]|[last coin = value N]
--[[
library.coins = function (ctx)
-- NOTE: `ctx.pipe` might be the original metatable!
local opts, tbl = ctx.pipe, ctx.params
for key, val in pairs(tbl) do tbl[key] = opts[get_parameter_name(val)] end
return library.list_values(ctx)
end
]]--
-- Syntax: #invoke:params|unique_coins|[first coin = value 1]|[second coin =
-- value 2]|[...]|[last coin = value N]
library.unique_coins = function (ctx)
local opts, tbl = ctx.pipe, ctx.params
local tmp
for key, val in pairs(tbl) do
tmp = get_parameter_name(val)
tbl[key] = opts[tmp]
opts[tmp] = nil
end
return library.list_values(ctx)
end
-- Syntax: #invoke:params|for_each|wikitext
library.for_each = function (ctx)
-- NOTE: `ctx.pipe` might be the original metatable!
local ret, nss, pps, txt = {}, 0, ctx.itersep or '', ctx.pipe[1] or ''
local skel, cnv, n_parts = parse_placeholder_string(txt)
flush_params(
ctx,
function (key, val)
for idx = 2, n_parts, 2 do
if skel[idx] then cnv[idx] = val
else cnv[idx] = tostring(key) end
end
ret[nss + 1] = pps
ret[nss + 2] = table.concat(cnv)
nss = nss + 2
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 2)
return false
end
-- Syntax: #invoke:params|call_for_each|template name|[append 1]|[append 2]
-- |[...]|[append n]|[named param 1=value 1]|[...]|[named param
-- n=value n]|[...]
library.call_for_each = function (ctx)
local opts = ctx.pipe
local tname
if opts[1] ~= nil then tname = opts[1]:match'^%s*(.*%S)' end
if tname == nil then error(modulename ..
', ‘call_for_each’: No template name was provided', 0) end
local model = { title = tname, args = opts }
local ret, nss, ccs = {}, 0, ctx.itersep or ''
table.insert(opts, 1, true)
flush_params(
ctx,
function (key, val)
opts[1] = key
opts[2] = val
ret[nss + 1] = ccs
ret[nss + 2] = ctx.frame:expandTemplate(model)
nss = nss + 2
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 2)
return false
end
-- Syntax: #invoke:params|invoke_for_each|module name|module function|[append
-- 1]|[append 2]|[...]|[append n]|[named param 1=value 1]|[...]
-- |[named param n=value n]|[...]
library.invoke_for_each = function (ctx)
local opts = ctx.pipe
local mname
local fname
if opts[1] ~= nil then mname = opts[1]:match'^%s*(.*%S)' end
if mname == nil then error(modulename ..
', ‘invoke_for_each’: No module name was provided', 0) end
if opts[2] ~= nil then fname = opts[2]:match'^%s*(.*%S)' end
if fname == nil then error(modulename ..
', ‘invoke_for_each’: No function name was provided', 0) end
local model = { title = 'Module:' .. mname, args = opts }
local mfunc = require(model.title)[fname]
local ret, nss, ccs = {}, 0, ctx.itersep or ''
flush_params(
ctx,
function (key, val)
opts[1] = key
opts[2] = val
ret[nss + 1] = ccs
ret[nss + 2] = mfunc(ctx.frame:newChild(model))
nss = nss + 2
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 2)
return false
end
-- Syntax: #invoke:params|magic_for_each|parser function|[append 1]|[append 2]
-- |[...]|[append n]|[named param 1=value 1]|[...]|[named param
-- n=value n]|[...]
library.magic_for_each = function (ctx)
local opts = ctx.pipe
local magic
if opts[1] ~= nil then magic = opts[1]:match'^%s*(.*%S)' end
if magic == nil then error(modulename ..
', ‘magic_for_each’: No parser function was provided', 0) end
local ret, nss, ccs = {}, 0, ctx.itersep or ''
table.insert(opts, 1, true)
flush_params(
ctx,
function (key, val)
opts[1] = key
opts[2] = val
ret[nss + 1] = ccs
ret[nss + 2] = ctx.frame:callParserFunction(magic, opts)
nss = nss + 2
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 2)
return false
end
-- Syntax: #invoke:params|call_for_each_value|template name|[append 1]|[append
-- 2]|[...]|[append n]|[named param 1=value 1]|[...]|[named param
-- n=value n]|[...]
library.call_for_each_value = function (ctx)
local opts = ctx.pipe
local tname
if opts[1] ~= nil then tname = opts[1]:match'^%s*(.*%S)' end
if tname == nil then error(modulename ..
', ‘call_for_each_value’: No template name was provided', 0) end
local model = { title = tname, args = opts }
local ret, nss, ccs = {}, 0, ctx.itersep or ''
flush_params(
ctx,
function (key, val)
opts[1] = val
ret[nss + 1] = ccs
ret[nss + 2] = ctx.frame:expandTemplate(model)
nss = nss + 2
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 2)
return false
end
-- Syntax: #invoke:params|invoke_for_each_value|module name|[append 1]|[append
-- 2]|[...]|[append n]|[named param 1=value 1]|[...]|[named param
-- n=value n]|[...]
library.invoke_for_each_value = function (ctx)
local opts = ctx.pipe
local mname
local fname
if opts[1] ~= nil then mname = opts[1]:match'^%s*(.*%S)' end
if mname == nil then error(modulename ..
', ‘invoke_for_each_value’: No module name was provided', 0) end
if opts[2] ~= nil then fname = opts[2]:match'^%s*(.*%S)' end
if fname == nil then error(modulename ..
', ‘invoke_for_each_value’: No function name was provided', 0) end
local model = { title = 'Module:' .. mname, args = opts }
local mfunc = require(model.title)[fname]
local ret, nss, ccs = {}, 0, ctx.itersep or ''
remove_numeric_keys(opts, 1, 1)
flush_params(
ctx,
function (key, val)
opts[1] = val
ret[nss + 1] = ccs
ret[nss + 2] = mfunc(ctx.frame:newChild(model))
nss = nss + 2
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 2)
return false
end
-- Syntax: #invoke:params|magic_for_each_value|parser function|[append 1]
-- |[append 2]|[...]|[append n]|[named param 1=value 1]|[...]|[named
-- param n=value n]|[...]
library.magic_for_each_value = function (ctx)
local opts = ctx.pipe
local magic
if opts[1] ~= nil then magic = opts[1]:match'^%s*(.*%S)' end
if magic == nil then error(modulename ..
', ‘magic_for_each_value’: No parser function was provided', 0) end
local ret, nss, ccs = {}, 0, ctx.itersep or ''
flush_params(
ctx,
function (key, val)
opts[1] = val
ret[nss + 1] = ccs
ret[nss + 2] = ctx.frame:callParserFunction(magic, opts)
nss = nss + 2
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 2)
return false
end
-- Syntax: #invoke:params|call_for_each_group|template name|[append 1]|[append
-- 2]|[...]|[append n]|[named param 1=value 1]|[...]|[named param
-- n=value n]|[...]
library.call_for_each_group = function (ctx)
-- NOTE: `ctx.pipe` and `ctx.params` might be the original metatables!
local tmp
if ctx.pipe[1] ~= nil then tmp = ctx.pipe[1]:match'^%s*(.*%S)' end
if tmp == nil then error(modulename ..
', ‘call_for_each_group’: No template name was provided', 0) end
local model = { title = tmp }
local opts, ret, nss, ccs = {}, {}, 0, ctx.itersep or ''
for key, val in pairs(ctx.pipe) do
if type(key) == 'number' then opts[key - 1] = val
else opts[key] = val end
end
ctx.pipe = opts
ctx.params = make_groups(ctx.params)
flush_params(
ctx,
function (gid, group)
for key, val in pairs(opts) do group[key] = val end
group[0] = gid
model.args = group
ret[nss + 1] = ccs
ret[nss + 2] = ctx.frame:expandTemplate(model)
nss = nss + 2
end
)
finalize_and_return_concatenated_list(ctx, ret, nss, 2)
return false
end
--- ---
--- PUBLIC ENVIRONMENT ---
--- ________________________________ ---
--- ---
--[[ First-position-only modifiers ]]--
---------------------------------------
-- Syntax: #invoke:params|new|pipe to
static_iface.new = function (child_frame)
local ctx = context_new(child_frame)
ctx.pipe = copy_or_ref_table(ctx.opipe, false)
ctx.params = {}
main_loop(ctx, context_iterate(ctx, 1))
return ctx.text
end
--[[ First-position-only functions ]]--
---------------------------------------
-- Syntax: #invoke:params|self
static_iface.self = function (frame)
return frame:getParent():getTitle()
end
--[[ Public metatable of functions ]]--
---------------------------------------
return setmetatable({}, {
__index = function (_, query)
local fname = query:match'^%s*(.*%S)'
if fname == nil then error(modulename ..
': You must specify a function to call', 0) end
local func = static_iface[fname]
if func ~= nil then return func end
func = library[fname]
if func == nil then error(modulename ..
': The function ‘' .. fname .. '’ does not exist', 0) end
return function (child_frame)
local ctx = context_new(child_frame)
ctx.pipe = copy_or_ref_table(ctx.opipe, refpipe[fname])
ctx.params = copy_or_ref_table(ctx.oparams, refparams[fname])
main_loop(ctx, func)
return ctx.text
end
end
})
fdgmy2j5zj2k25i8s1rqr5wi8hre2zs
Eve Bazaiba
0
5327
61864
61624
2026-06-24T09:59:40Z
InternetArchiveBot
38
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61864
wikitext
text/x-wiki
{{Databox|item=Q3577297}}
'''Ève Bazaiba Masudi''' (née '''Ève Bazaiba''') (dɔgebo la 12 August 1965) e la Congolese lawyer, politician, ane human rights activist. Meŋ na paale a May 2019, o da toŋɛɛ Secretary General ko a Movement ko a Liberation naŋ be a Congo (MLC) political party. <ref name=":0">https://web.archive.org/web/20201002115916/https://www.digitalcongo.net/article-en/5cdc1dd2ae00cc0004adfe15/</ref>O e la a Deputy Prime Minister ane Minister ko a Environment yi a 2021.<ref>https://actualite.cd/2021/04/12/rdc-eve-bazaiba-vice-premier-ministre-en-charge-de-lenvironnement-et-developpement</ref>
== Pampana Nyɔvooroŋ ane ganzanne ==
Ève Bazaiba dɔgebo zie la 12 August 1965 a Stanleyville (zenɛ bebiri naŋ e Kisangani), naŋ be a Democratic Republic naŋ e Congo<ref>https://en.m.wikipedia.org/wiki/%C3%88ve_Bazaiba#CITEREFMazanza_Kindulu2015</ref>. O zanɛɛ Latin ane Philosophy a Bosangani High School (Lycée Bosangani), naŋ be Kinshasa kyɛ baŋ gaa Cardinal Malula University, meŋ naŋ be Kinshasa, a baara neŋ Bachelor of International Relations degree.<ref name=":1">https://web.archive.org/web/20070706050622/http://www.congokulture.net/fem-eva-bazaiba.html#selection-1299.41-1299.148</ref> A 2010 Bazaiba da nyɛ la law degree yineŋ a Protestant University naŋ be Congo.
== Toma ==
A 1988, Bazaiba da e la activist ko a Union kyaare Democracy ane Social Progress (UDPS) political party, naŋ taa yiibu a Étienne Tshisekedi. Ba da nyɔge o la gbɛɛ gyamaa a regime of Mobutu Sese Seko, imprisoned a pɔge o gbɛre anaare a regime of Laurent-Desire Kabila kyɛ meŋ da sued yi a government of Joseph Kabila kyaare corruption naŋ be a mining industry. A 2002, o da paale la a Sun City talks naŋ da piili a transitional government naŋ da de wederoŋ a 2006 vootu a Third Republic. A o party, naŋ e UDPS boycotted the elections, o da sɔre la Étienne Tshisekedi ane. party leadership ka ba nyɛ a waiver to contest. <ref>https://archive.today/20130701223924/http://www.liberation.fr/monde/010156080-en-rdc-avec-candidate-256-en-campagne-a-kinshasa</ref>A 2007, ba da vootu iri o la, a Senate a da e memba ko a Movement ko a Liberation naŋ be Congo MLC) political party, ka ( wederɛ da e Kinshasa Provincial Assembly.<ref>https://web.archive.org/web/20080705175435/http://www.digitalcongo.net/article/40400</ref> O naŋ da toŋ five-year term, o da e la president (chairperson) ko a socio-cultural commission naŋ be National Assembly kyaare a Democratic Republic of Congo. O e la advocate ko a human rights na kyaare women ane vulnerable groups.<ref name=":2">https://www.revue-internationale.com/2013/03/francophonie-portraits-de-deux-femmes-engagees/</ref> A 2011–2016 legislative session o da maale la bill naŋ kyaare special protections ko disabled persons. O naŋ la leɛ re-introduced a bill a 2019. <ref>https://web.archive.org/web/20250327190537/http://www.latempete.info/39508-2/</ref>A 2019, o da tona la Secretary General ko a MLC.<ref>https://www.crisisgroup.org/africa/central-africa/democratic-republic-congo/b140-dr-congo-bemba-earthquake</ref><ref name=":0" />
== Yiri Yele ==
Baizaba taa la serɛ neŋ biiri.<ref name=":1" />
== Tonnɔɛ Mine ==
Eva Baizaba la a president ko a League of Congolese Women kyaare a vootu (LIFCE).<ref name=":2" />
==Meŋ kaa kyɛ==
* [[Félix Tshisekedi]]
* [[Jean-Pierre Bemba]]
* [[Acacia Bandubola Mbongo]]
== Toma mine yizie ==
{{refbegin}}
* {{cite book| last = Mazanza Kindulu| first = Joseph-Roger| title = Les femmes dans l'espace décisionnel congolais| publisher = Editions L'Harmattan| date = 2015| language = French| url = https://books.google.com/books?id=GH9OCgAAQBAJ| isbn = 9782336388915}}
{{refend}}
== Sommo Yizie ==
t998c11gn7qjt3s00elrgp94h9e1yft
Ethiopian International Film Festival
0
7152
61863
61658
2026-06-24T09:54:38Z
InternetArchiveBot
38
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61863
wikitext
text/x-wiki
A '''Ethiopian International Film Festival''' ('''EIFF''') e la yuoni zaa Ethiopian sini tigiri naŋ maŋ di a November a Addis Ababa poɔ. A tigiri da piili la a yuoni 2005 poɔ ka Linkage Arts Resource Center (LARC) da maale ka o wuli kyɛ zɛge a Ethiopian ane African sini.<ref>https://books.google.com/books?id=i_BMEAAAQBAJ&dq=ethiopian+international+film+festival&pg=PA116</ref> <ref>https://addisfortune.net/columns/the-89th-academy-awards/</ref>
== Dakoroŋ ane piiluu ==
A 2004, a noba naŋ da maale Uganda's Amakula Internationa sini tigiri yɛleteɛ la a Yirgashewa Teshome ka ba de a tigiri ŋa gaa ne ba ziiri naŋ poɔ a Ethiopian a tendaazaa sini tigiri. A 2005, a tigiri dɛndeɛnsoba da di la Imperial Hotɛle poɔ ane sini ba naŋ maale ba teŋɛ yoŋ poɔ ka ba ŋmɛ a kyakya. A noba naŋ da nyɛ zunuo la ''Hermela'' (ሔርሜላ) (2005) ka Yonas Birhane Mewa , ''Kibrenek'', ane (''Gudifecha/Adoption) (''ጉዲፈቻ) a 2002 naŋ e nɔntaa laare sini ka Tatek Tadesse maale. Noba bayi naŋ da nyɛ a zunuo ba da boɔle ba la ka ka areko a Ethiopia a Amakula tigiri, ka ba koba LARC a dɛndɛnsoba kpeɛbo tɔna ko a tendaazaa sini tigiri. A ŋaa da vɛŋ la ka ba baŋ lɛ ba naŋ na baara a Ethiopian International Film Festival (EIFF).<ref>https://soas-repository.worktribe.com/output/366567/toolkit-ethiopia-and-amharic-cinema</ref><ref>https://brill.com/view/journals/mata/41/1/article-p453_27.xml</ref><ref name=":0">https://api.semanticscholar.org/CorpusID:186252129</ref>
Ba naŋ wa tara a tigiri diibu anaare soba a yuoni 2009 poɔ, EIFF da.maane la o yaaroo naŋ seŋ lɛ, ka ba wuli sini 64 naŋ tenne 23 a bebie anii na poɔ kyɛ waane kyɔɔtaare 14 ziiri ka ba da maale a Ethiopian siniaale soŋ: noba naŋ lantaa maale sini soŋ, sɛgebo soŋ sini, sini ŋmaa soŋ, donni sini soŋ, neɛ naŋ maale soŋ, tiivi poɔ saabo soŋ, efuoni ŋmaara soŋ, dɔɔ naŋ deɛ soŋ, pɔge naŋ deɛ soŋ, dɔɔ naŋ soŋ deɛ soŋ, pɔge naŋ soŋ deɛ soŋ, nimie peɛmɛ soŋ, bonsuuri soŋ nyɔvore yɛlɛ yeleree kyɔɔtaare ane kaareba yelboɔraa kyɔɔtaare.<ref>https://web.archive.org/web/20251230070524/https://ethiopianfilminitiative.org/news/34-rotator/177-the-4th-ethiopian-international-film-festival-eiff</ref>
A 7th Ethiopian International sini tigiri da di la Addis Ababa a yi 26 November te ta 2 December 2012. A yelzu ko a tigiri da la "Many Dreams, One Vision" ba kuri la a yelzu ŋa ka o kyaare ne a yuomo 50 ko a African Union yikpoŋ a Addis Ababa. Ba naŋ da wa yeli a ka noba wa poɔ a a tigiri ŋa a FM waalensi ane sommeŋɛ duoro gama poɔ, sini naŋ yi Africa, Europe, Asia, North ane South America da wa la a wa poɔ a tigiri ŋa poɔ. A tigiri AMA Art Moves Africa, Hubert3 Balls Fund, Cinema Mondial Tour & Jan Vrijmann<ref name=":0" /> la da soŋ ne libie. A kyɔɔtaare ta tere ta la awai ka ana la: maale soŋ, noba naŋ lantaa maale sini soŋ, sini sɛge soŋ,enfuoni ŋmaara soŋ, pɔge naŋ deɛ soŋ, dɔɔ naŋ deɛ soŋ, pɔge naŋ soŋ deɛ soŋ, dɔɔ naŋ soŋ deɛ soŋ ane kaareba yelboɔraa kyɔɔtaare.<ref name=":0" />
A o 10th EIFF tigiri da taa sini 100, sini ŋmaara, sellɛ,yelyaga sɛgebo donni sini pampana sini a ko a tendaazaa.<ref>https://web.archive.org/web/20230705210553/https://ethiopianfilminitiative.org/index.php?option=com_content&view=article&id=470:the-ethiopian-international-film-festival&catid=68&Itemid=113</ref>
A 2024, ''Doka'' ''ka'' Kidist Yilma maale da la a neɛ naŋ nyɛ zunuo kpoŋ a tigiri poɔ. O da de la a kyɔɔtaare naŋ e a noba lantaa maale sini soŋ, tiivi zu sini soŋ, ( Kidist Yilma ane Beza Hailu) ane sini maale ennɛ soŋ.
A 2025, tigiri da maale la o yuomo 20 o naŋ di.<ref>https://tvbrics.com/en/news/20th-ethiopian-international-film-festival-concludes-in-addis-ababa/</ref><ref>https://ethiopianreporter.com/148188/</ref>
== Sommo yizie ==
3sg658r8npn8j3vrfnqitovbe4d9o1x
Delphic Games of the modern era
0
7154
61861
61667
2026-06-24T09:02:10Z
InternetArchiveBot
38
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61861
wikitext
text/x-wiki
{{Databox|item=Q1184697}}
'''Delphic Games of the modern era''' da paalɛɛ a presentations, exhibitions, competitions ane tonnɔɛ mine naŋ be a six different fields of [[art]].<ref>{{Cite web|url=http://www.delphic-games.com/downloads/flyeruk.pdf|title=The Delphic Games of the modern era|access-date=2010-09-22|archive-url=https://web.archive.org/web/20110709012218/http://www.delphic-games.com/downloads/flyeruk.pdf|archive-date=2011-07-09|url-status=dead}}</ref> Ba da nyɛɛ daanoo yi Delphic Games ko ancient Greece.
== Historical reference ==
[[Duoro_kɔre:Mousai_Helikon_Staatliche_Antikensammlungen_Schoen80_n1.jpg|left|thumb|218x218px|A [[Muse]] with [[Kithara]] on Mount [[Mount Helicon]], [[Achilles Painter]] (at 440-430 BC), State collections of antiquities [[Munich]], [[Germany]]]]
[[Duoro_kɔre:Delphi_charioteer_front_DSC06255.JPG|thumb|295x295px|Statue of a charioteer (at 478-474 BC), Archaeological Museum [[Delphi]], [[Greece]]]]
Boŋyeni yi a Panhellenic Games anaare da la a Pythian Games na be a Delphi. A maŋ taa eebo yuomo anaare zaa, o taa la athletics, theatre, music, poetry, ane painting ka ba daane a Apollo ŋmemɛ, a bondemannewullaa ko Oracle.<ref>[http://www.britannica.com/EBchecked/topic/485272/Pythian-Games Pythian Games], ''[[Encyclopædia Britannica]]''</ref> A yuoni ko a 394 A.D., Theodosius I, a emperor ko a Byzantine Empire da pɔgɛɛ a Panhellenic Games ka a paale a pagan events.
Yi a 1912 te tɔ a 1948, kyaare a tonnoɔre ko Pierre de Coubertin, art competitions kyaare a Summer Olympics da taa la eebo ko teŋgyamaa. Medals da eɛ kyɔɔtaa ka ba da de ko a toma kyaare a sport.<ref>''Richard Stanton.'' The forgotten Olympic art competitions — The story of the Olympic art competitions of the 20th century. Trafford Publishing, 2001. {{ISBN|1-55212-606-4}}</ref>
Yel-erre mine da bebe kyaare leɛkaabo ko a Pythian Games a archeological site a Delphi, na e a tonnoɔre yi a Greek poet Angelos Sikelianos<ref>{{Cite web|url=http://www.salamina-online.com/aggelos_sikelianos.htm|title=Aggelos Sikelianos|access-date=2010-04-06|archive-url=https://web.archive.org/web/20100216161053/http://www.salamina-online.com/aggelos_sikelianos.htm|archive-date=2010-02-16|url-status=dead}}</ref> ko a o pɔge Eva Palmer. A 1927, a dɛndɛŋ Delphic Tigiri da taa la diibu a Greece, k'a leɛkaabo da ba toɔ taa eebo.
Beri ama poɔ ba maŋ taa la Delphi Tigiri, naŋ gaa tɔgele a Panhellenic counterparts. Ba taa la religious rituals ane tonɔɛ mine teseŋ poetry competition, religious offerings, sports ane course feasting.<ref>[http://www.greeka.com/sterea/delphi/delphi-festivals.htm Information about the Festivals of Delphi Greece]</ref>
[[Duoro_kɔre:DF-1927_copy.jpg|thumb|233x233px|Poster of the Delphic Festival, 1927]]
A 20th century yuoni sogaŋ, eebo kaŋa da la bebe la kyaare a Delphic Games leɛkaabo. Yi a 1990s, wederebe yi Argentina, Austria, China, Cyprus, Ecuador, France, Germany, Greece, Kazakhstan, Libya, Lithuania, Mexico, Nigeria, Philippines, Poland, Russia, Slovakia, ane a United States da laŋɛɛ taa maale a First International Delphic Games, naŋ da e a 2000 a Moscow, Russia (ba naŋ da na e a lɛ, a yelzu da taa la peɛroo yi Tbilisi, Georgia, be la a dɛndɛŋ Junior Delphic Games da taa eebo.)
== Sommo Yizie ==
{{reflist|30em}}
== Ziiri mine liŋkiri ==
* [http://www.delphic-games.com/ The official site of the IDC Berlin (Council)]
* [https://web.archive.org/web/20110709011840/http://www.delphic-games.com/english/03games/chronology.htm Chronology of the Delphic Games (according to IDC Berlin)]
* [https://web.archive.org/web/20120114112708/http://delphic-media.com/link__www_artsight_de_.html Delphic-Media] {{Webarchive|url=https://web.archive.org/web/20120114112708/http://delphic-media.com/link__www_artsight_de_.html|date=2012-01-14}}
* [http://www.idcworld.org The official site of the IDC Moscow (Committee)]
* [http://delphic.ru/menu/gmap.asp?0402 Chronology of Delphic Games (according to NDC Russia)]
1n8cl9afazq2oat744rf1vr95c5e8ku
Dhaka International Film Festival
0
7174
61854
61731
2026-06-23T22:31:42Z
InternetArchiveBot
38
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61854
wikitext
text/x-wiki
'''Dhaka International Film Festival''' (Bengali: ঢাকা আন্তর্জাতিক চলচ্চিত্র উৎসব) e la yuoni ayi zaa tigiri naŋ maŋ di a Dhaka, Bangladesh piɔ. O da piili la a yuoni 1992, a tigiri pilluu o da maŋ di la yuoni zaa kyɛ leɛ wa diri yuomo ayi poɔ a 1995 poɔ.
DIFF e la a sini tigiri kpoŋ kaŋa a Bangladesh poɔ , ka ba boɔrɔ ka ba poɔ tendaazaa sini a ko ba naŋ naŋ maale ba yiri sini kyɛ vɛŋ ka a baara ne ba yipɔge a Bangladesh. A tigiri Ahmed Muztaba Zamal da piili a Rainbow sini Society, naŋ taa a 2022, naŋ tuo maale a tigiri yuomo 20 a vɛŋ ka tendaazaa nyɛ ba. <ref>https://web.archive.org/web/20130808073944/http://www.banglanews24.com/English/detailsnews.php?nssl=7826f1c837ea29fd421a394177b821e6</ref><ref>http://wsimag.com/culture/617-dhaka-international-film-festival</ref><ref>https://web.archive.org/web/20140714185950/http://archive.thedailystar.net/newDesign/news-details.php?nid=206654</ref><ref>https://web.archive.org/web/20140714162546/http://archive.thedailystar.net/newDesign/news-details.php?nid=18536</ref>
== Awards ceremonies ==
A ama naŋ tu e la a Dhaka International sini kyɔɔtaare naŋ di a yi a 1992.
{| class="wikitable sortable"
!Edition
!Dates
!Best Film
!Best Director
!Notes
!Sources
|-
|1st
|1992
|
|
|
|
|-
|2nd
|1993
|
|
|
|
|-
|3rd
|1994
|
|
|
|
|-
|4th
|1995
|
|
|
|
|-
|5th
|1997
|
|
|
|
|-
|6th
|January 20–28, 2000
|''A Scam in Verse''
|no award
|
|
|-
|7th
|January 20–28, 2002
|''Future Diary: The Movie''
|no award
|screened 100 films of 19 countries
|
|-
|8th
|January 15–23, 2004
|''Sulang Kirilli''
(''The Wind Bird'')
|Anwar Jamal for ''Swaraaj''
(''The Little Republic'')
|screened 100 films from 25 countries
|
|-
|9th
|January 17–25, 2006
|''Café Transit''
|Sekhar Das for ''Krantikaal''
|screened 150 films of 30 countries
|
|-
|10th
|January 10–18, 2008
|''Kargaran Mashgoul-e Karand'' (''Men at Work'')
|no award
|screened 31 films
|
|-
|11th
|January 14–22, 2010
|''The Other Bank''
|Mostofa Sarwar Farooki for ''Third Person Singular Number''
|
|
|-
|12th
|January 12–20, 2012
|no award
|Sinan Çetin for ''Paper''
|screened 200 films from 55 countries
|
|-
|13th
|January 10–18, 2014
|no award
|Parviz Shahbazi for ''Trapped''
|screened 150 films from 50 countries including the first film entirely in Chakma language, ''Mor Thengari''
|
|-
|14th
|January 15–23, 2016
|''A Few Cubic Meters of Love''
|Tom Waller for
''The Last Executioner''
|screened 184 films from 60 countries
|
|-
|15th
|January 12–20, 2017
|''Daughter''
|Parviz Shahbazi for ''Malaria''
|screened 188 films from 67 countries
|
|-
|16th
|January 11–21, 2018
|''Zer''
|Onur Saylak for ''Daha''
|screened 216 films from 64 countries
|
|-
|17th
|January 10–18, 2019
|''Darak yry''
|Pooya Badkoobeh for ''Dressage''
|screened 218 films from 72 countries
|
|-
|20th
|January 15-23, 2022
|''Pebbles''
|Sujit Bidari for ''Butterfly on the Windowpane''
|screened 225 films from 70 countries
|
|-
|21st
|January 14-22, 2023
|''Bi-Madar''
|Ali Ghavitan for ''Zendegi va Zendegi''
|screened 252 films from 71 countries
|
|-
|22nd
|January 20-28, 2024
|''The Cord of Life''
|Jagath Manuwarna for ''Rahas Kiyana Kandu''
|screened 252 films from 71 countries
|
|-
|23rd
|January 11-19, 2025
|''Yakshanba''
|Haofeng Xu and Junfeng Xu for ''Men Qian Bao Di (100 Yards)''
|screened 220 films from 75 countries
|
|}
== Meŋ la nyɛ ==
* Dhaka Festival
* Cinemaking International Film Festival
* Kolkata International Film Festival
* Hyderabad Bengali Film Festival
* National Film Awards (Bangladesh)
* Meril Prothom Alo Awards
* Babisas Award
* Ifad Film Club Award
== Sommo yizie ==
#
0bne3uoqhgr1eacpt7gqkqfa8ih2ytq
International Delphic Council
0
7176
61857
61747
2026-06-23T23:59:48Z
InternetArchiveBot
38
Rescuing 4 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61857
wikitext
text/x-wiki
{{Databox|item=Q1570976}}
[[Duoro_kɔre:Delphi_temple_of_Apollo_dsc06283.jpg|thumb|200x200px|[[Delphi]], the ruins of the [[Apollo]] Temple, in whose honor the [[Pythian Games]] were held]]
'''International Delphic Council''' (IDC) e la a bone na ba yire libie, charitable, non aligned, non-sectarian & non-someŋɛ toma (NGO), a tonzikpoŋ na be a Berlin, Germany. O da piilee a e League neŋ 20 Nations a 1994 a Berlin ka ba leɛ kaa a '''Delphic Games a Modern Era''',<ref>{{Cite web|url=http://www.delphic.org/english/04idc/idc.htm|title=The International Delphic Council (IDC)|access-date=2010-05-21|archive-url=https://web.archive.org/web/20110724215851/http://www.delphic.org/english/04idc/idc.htm|archive-date=2011-07-24|url-status=dead}}</ref> kyɛ a naŋ wuli ka kpaaroŋ kaŋa meŋ naŋ bebe, [[International Delphic Committee]], tonzikpoŋ zie na be Russia, da taa la piiluu ko a Russia NDC a da taa pommu yi a international Delphic Council a 2000 yuoni a da tona a CIS irigyin poɔ.
== Tutaaloŋ Kyaare A International Delphic Games ==
[[Duoro_kɔre:Dancers_moskow_2000.jpg|thumb|200x200px|The first Delphic Games were held in 2000 in [[Moscow]], [[Russia]] with the motto: 'New Millennium". Shan Chong and Wang Lie ([[China]]). An award for artistic achievement in contemporary dance]]
[[Duoro_kɔre:Orchestra_duesseldorf_2003.jpg|left|thumb|200x200px|The second Junior Delphic Games was held in 2003 in [[Düsseldorf]], [[Germany]]. State Youth Symphony Orchestra from [[Belarus]].]]
[[Duoro_kɔre:Competition_baguio_2007.png|left|thumb|152x152px|The third Junior Delphic Games was held in 2007 in [[Baguio]], [[Philippines]] with the motto: 'building bridges with arts & cultures for our children's future'. Acoustic art competition, percussion]]
[[Duoro_kɔre:Parade_jeju_2009.gif|thumb|152x152px|The third Delphic Games 2009 was held in 2009 in [[Jeju island]], [[South Korea]] with the motto: 'in tune with nature'. Parade at the streets]]
A IDC, da laŋɛɛ adult ane junior Delphic Games yuomo anaare zaa - yuomo ayi tɔɔreŋ a kaŋa zaa poɔŋ teŋyuo mine poɔ.
Tenne na naŋ taa teɛre da ŋmɛ la kyakya k'a a deɛne taa eebo a ba teŋɛ kyɛ a da taa la kaabo yi a International Amphictyony teseŋ lɛnɛɛ a IDC sobieŋ na senne a Delphic Games eebo.
A Delphic Games po-eŋɛɛ '''Six Delphic Art Categories''', ka a be a sagedeebo ko a international institutions - a Kansil ko Europe, [[UNESCO]] ane ASEAN tenne.<ref>[http://delphic.de/uploads/media/unesco_letter_1997_01.pdf UNESCO letter 1997] {{webarchive|url=https://web.archive.org/web/20110718225618/http://delphic.de/uploads/media/unesco_letter_1997_01.pdf|date=2011-07-18}}</ref><ref>[http://delphic.de/uploads/media/council_of_europe_letter_01.pdf Council of Europe letter 1997] {{webarchive|url=https://web.archive.org/web/20110718225635/http://delphic.de/uploads/media/council_of_europe_letter_01.pdf|date=2011-07-18}}</ref><ref>[http://delphic.de/uploads/media/parlament_of_Georgia_letter.pdf Parliament of Georgia letter 1997] {{webarchive|url=https://web.archive.org/web/20110718225706/http://delphic.de/uploads/media/parlament_of_Georgia_letter.pdf|date=2011-07-18}}</ref><ref>[http://delphic.de/uploads/media/council_of_europe_2000_letter_01.pdf Council of Europe letter 2000] {{webarchive|url=https://web.archive.org/web/20110718225402/http://delphic.de/uploads/media/council_of_europe_2000_letter_01.pdf|date=2011-07-18}}</ref><ref>[http://delphic.de/uploads/media/council_of_europe_2003_01.pdf Council of Europe letter 2003] {{webarchive|url=https://web.archive.org/web/20110718225715/http://delphic.de/uploads/media/council_of_europe_2003_01.pdf|date=2011-07-18}}</ref><ref>[http://delphic.de/uploads/media/unesco_letter_2005_01.pdf UNESCO letter 2005] {{webarchive|url=https://web.archive.org/web/20110718225747/http://delphic.de/uploads/media/unesco_letter_2005_01.pdf|date=2011-07-18}}</ref><ref>[http://delphic.de/uploads/media/president_republic_of_philippines_01.pdf President Republic of Philippines 2007] {{webarchive|url=https://web.archive.org/web/20110718225814/http://delphic.de/uploads/media/president_republic_of_philippines_01.pdf|date=2011-07-18}}</ref>
Yi 1997 wagere zaa international Delphic Games ayɔpoi la da taa eebo a - ata ko nembɛrɛ ka anaare meŋ ko a baapaaba.
{| class="wikitable"
!Year
!Event
!Location
!Theme
|-
|1997
|the first Junior Delphic Games
|[[Tbilisi]] / [[Georgia (country)|Georgia]]
|A Day of Dreams
|-
|2000
|the first Delphic Games
|[[Moscow]] / [[Russia]]
|The New Millennium
|-
|2003
|the second Junior Delphic Games
|[[Düsseldorf]] / [[Germany]]
|Creativity & Peace
|-
|2005
|the second Delphic Games
|[[Kuching]] / [[Malaysia]]
|Revitalising Endangered Traditions
|-
|2007
|the third Junior Delphic Games
|[[Baguio]] / [[Philippines]]
|Bridging Arts & Culture for our Children's Future
|-
|2009
|the third Delphic Games
|[[Jeju-si]] / [[South Korea]]
|In Tune with Nature
|-
|2011
|the fourth Junior Delphic Games
|[[Johannesburg]] / [[South Africa]]
|Provoke, Innovate, Inspire
|}
=== Events ===
A 14 March 2010 a International Delphic Council da maale la a dɛndɛŋ Delphic Games Festival a Grand Finale Show poɔ a ITB Berlin, A tendaa gbuli zaa exhibition na be a tourism. Ba da taa la Feast ko Delphic Games k'a yelnyɔgeraa da la: «''Arts ane Culture - an experience for all senses''».<ref>[https://web.archive.org/web/20160303195234/http://www.ortodance.ru/files/Delphic%20Games%20Celebration%20at%20ITB%20Berlin.pdf The IDC at the ITB Berlin. The Feast of Delphic Games - March 14th 2010] {{webarchive|url=https://web.archive.org/web/20120303163936/http://www.ortodance.ru/files/Delphic%20Games%20Celebration%20at%20ITB%20Berlin.pdf|date=2012-03-03}}</ref> A kpaaroŋ ŋa da taa la yitaaloŋ neŋ a UNESCO yelnyɔgeraa na: «2010 - Tendaa zaa yuoni kyaare a leɛkaabo ko saakonnoŋ».<ref>{{Cite web|url=http://www.peeep.us/0475af94|title=Document UNESCO-2010, INTERGOVERNMENTAL ORGANIZATIONS (IGO), page 19 - International Delphic Council|access-date=2010-04-21|archive-url=https://web.archive.org/web/20120306000735/http://www.peeep.us/0475af94|archive-date=2012-03-06|url-status=dead}}</ref>
Saama ane exhibitors da taa la vuo ka ba di a Delphic Games tigiri ŋa a Grand Finale Show ko ITB Berlin a 2010.<ref>''Oliver Heilwagen''. [https://web.archive.org/web/20120306000742/http://www.peeep.us/e30b5bc0 Delphi goes Dancefloor] {{Webarchive|url=https://web.archive.org/web/20120306000742/http://www.peeep.us/e30b5bc0|date=2012-03-06}} 22.03.2010</ref>
{| class="greytable"
|+'''Diibu ko a Delphic Games –''' '''Grand Finale ko a ITB Berlin 2010'''
| rowspan="2" align="center" width="35%" |[[Duoro_kɔre:Itb2010_kazakhstan_musicians.jpg|center|thumb|200x200px|Music ethnic group «Beles». Traditional melodies ([[Kazakhstan]])]]
| width="2%" |
| rowspan="2" align="center" width="29%" |[[Duoro_kɔre:Itb2010_german_pipeband.jpg|center|thumb|200x200px|Ensemble «Rhine Power Pipe Band» ([[Germany]]). Scottish music]]
| width="2%" |
| align="center" |[[Duoro_kɔre:Itb2010_korean_dancers.jpg|center|thumb|200x200px|Music group «Sound of Korea». Folk songs and dances ([[South Korea]])]]
|-
|
|}
Yele meŋ la paa a Delphic Games Festival diibu ko a ITB Berlin a 2011, tendaa zaa kyakya kyaare a yelsɛgebinnii ŋmaara mine zuiŋ - a Delphic Art Movie Award 2011 da taa la eebo. A ŋaa da taa la eebo yi a International Delphic Council.<ref>{{Cite web|url=http://www.newsmax.de/aufruf-zum-wettbewerb-um-den-delphic-art-movie-award-2011-dama-2011-news43415.html|title=Delphic Art Movie Award 2011|access-date=2010-10-31|archive-url=https://web.archive.org/web/20110719065702/http://www.newsmax.de/aufruf-zum-wettbewerb-um-den-delphic-art-movie-award-2011-dama-2011-news43415.html|archive-date=2011-07-19|url-status=dead}}</ref><ref>{{Cite web|title=Aufruf zum Wettbewerb um den DELPHIC ART MOVIE AWARD 2011 (DAMA 2011) - openPR|url=https://www.openpr.de/news/450780/Aufruf-zum-Wettbewerb-um-den-DELPHIC-ART-MOVIE-AWARD-2011-DAMA-2011.html|access-date=2020-12-29|website=www.openpr.de|date=23 July 2010|language=de}}</ref><ref>[https://web.archive.org/web/20110726094959/http://social.un.org/absolutewc/?e=566&c=0 Hosted by the International Delphic Council] {{webarchive|url=https://web.archive.org/web/20110726094959/http://social.un.org/absolutewc/?e=566&c=0|date=2011-07-26}}</ref>
== Format ko a Delphic Games na be a Modern Era ==
=== Delphic Arts ane saakonnoŋ kategɔɔre ===
A International Delphic Council (IDC) ane a hosting Nation's National Delphic Council (NDC) da pɔgɛɛ taa a iri a kyɔɔtaɛ yi a Delphic arts categories ayoɔbo poɔ ko a Delphic Games deɛne kaŋa zaa. Sub-categories ane Genres paa da taa la paabo neŋ a teŋɛ kaŋa zaa ane o kyakya ŋmereba tomaŋ.
* '''Musical Arts & Sounds''' (i.e. Singing, instrumental, electronic sounds ...)
* '''Performing Arts & Acrobatics'''(i.e. Dance, theater, circus ...)
* '''Language Arts & Rhetoric''' (i.e. Literature, lectures, moderation ...)
* '''Visual Arts & Crafts''' (i.e. Painting/graphics, sculpture/installation, photography/film, architecture, design, fashion, handicraft ...)
* '''Social Arts & Communications''' (i.e. Communication, internet, media, pedagogic, didactic ...)
* '''Ecological Arts & Architecture'''(i.e. Landscape and city planning, preservation and conservation of nature, buildings, memorials and monuments ...)
=== Expert Jury ===
A kyakya ŋmereba da wulee a ba toma kyaare a saakonnoŋ bee pampana ŋa deɛne kaama a na vɛŋ a ennyagere kaŋa bebe a deɛnoo poɔ. Independent artistic ane technical experts kyaare a deɛne ane bammo da taa la iribu a Games organising Committee poɔ a tendaa zaa poɔ ka ba soŋ toŋ a toma kyaare a kyɔɔtaa diribe.
=== Delphic Games kyɔɔtaɛ ===
A yelkpoŋ zaa na e a tɔnɔ a Games poɔ la a artistic competitions, presentations ane exhibitions. Exceptional artists da taa la kyɔɔtaɛ sonne a International Delphic Games teseŋ:
* '''Delphic Medals Award'''- gold, silver ane bronze kyaare a comparable Delphic art categories.
* '''Delphic Lyre Award''' - exceptional artistic yoŋ yoŋ tomaŋ kyaare a arts
* '''Delphic Laurel Award''' - Toŋkopŋ toma yoŋ ane tontonneba bana toma na ba taa manne taa.
* '''Delphic Certificate''' - ko tontonneba bana na taa nimizeeloŋ neŋ a toma.
== IDC ane NDC Russia ==
Russia da la a piiluu kaŋa ko a International Delphic Movement a 1994, neŋ a 19 Nation sere mine.<ref>''L. Wartazarowa.''. [https://web.archive.org/web/20120307025241/http://www.greek.ru/news/news_detail.php?ID=677 Delphic Movement - bet on the youth] {{Webarchive|url=https://web.archive.org/web/20120307025241/http://www.greek.ru/news/news_detail.php?ID=677|date=2012-03-07}} // Greek.ru. — 21 мая 2003</ref> A 2003 puoriŋ, Russian websites gyamaa zie ane a central mass media da yeli ka Russia yoŋ la da taa a leɛ-kaabo kyaare a Delphic yelzu a 2000.<ref>''Oleg Dzüba.''. Oblivion and the revival of traditions. // «Парламентская газета» — 24 апреля 2008</ref> Neŋ a National Delphic Council iri baroo a International Delphic Council poɔŋ gba, a Russian noba ba naŋ da toŋ a International Delphic Games a 2007 ane 2009.<ref>''Маrina Chernyavskaya''. [http://www.art-education.ru/AE-magazine/archive/nomer-2-2008/chernavskaya/chernayskaya_03_05_2008.htm Delphic Games of the modern era] {{Webarchive|url=https://web.archive.org/web/20131021075657/http://www.art-education.ru/AE-magazine/archive/nomer-2-2008/chernavskaya/chernayskaya_03_05_2008.htm|date=2013-10-21}} //«Педагогика искусства» Москва, № 2 2008</ref><ref>''Маrina Chernyavskaya''. [http://www.art-education.ru/AE-magazine/archive/nomer-4-2009/chernyavskaya_30_11_2009.pdf Delphic Games - yesterday, today and tomorrow] {{Webarchive|url=https://web.archive.org/web/20110904094722/http://www.art-education.ru/AE-magazine/archive/nomer-4-2009/chernyavskaya_30_11_2009.pdf|date=2011-09-04}} //«Педагогика искусства» Москва, № 4 2009</ref> Ba da wuli k'a Delphic calendars da peɛre a kyɛpkyɛllebɛ bama.<ref name="delphic.de">''Delphic calendar 2009''. [http://delphic.de/uploads/media/calendar_2009_03.pdf Delphic Greetings from Baguio City to Jeju] {{webarchive|url=https://web.archive.org/web/20110718225008/http://delphic.de/uploads/media/calendar_2009_03.pdf|date=2011-07-18}}</ref>
<ref name="ReferenceA">''Delphic calendar 2010''. [http://delphic.de/fileadmin/user_upload/Kalender/delphic_calendar_2010.pdf Delphic Games in Jeju. Impressions in drawings] {{webarchive|url=https://web.archive.org/web/20110718224731/http://delphic.de/fileadmin/user_upload/Kalender/delphic_calendar_2010.pdf|date=2011-07-18}}</ref>
== Sinii sere ==
* [https://www.youtube.com/watch?v=g_0mUCWwkcw&feature=player_embedded Die Delphischen Spiele 1994 - 2007]
* [https://www.youtube.com/watch?v=nKAFmZCXMN0&feature=player_embedded Die ersten Delphischen Jugendspiele 1997, Tiflis / Georgien]
* [https://www.youtube.com/watch?v=yjLdE1T1VlY&feature=player_embedded Die ersten Delphischen Spiele 2000, Moskau / Russland]
* [https://www.youtube.com/watch?v=UKA8yYSQW1c&feature=player_embedded Die zweiten Delphischen Jugendspiele 2003, Düsseldorf / Deutschland]
* [https://www.youtube.com/watch?v=jDj7fEToZYo&feature=player_embedded Die zweiten Delphischen Spiele 2005, Kuching / Malaysia]
* [https://www.youtube.com/watch?v=OaN_nwPHIGw&feature=player_embedded Die dritten Delphischen Jugendspiele 2007, Baguio City / Philippinen]
* [https://www.youtube.com/watch?v=lkKAUEpFDA4 Die dritten Delphischen Spiele 2009, Jeju-si / Süd Korea]
== Sommo Yizie ==
{{reflist|33em}}https://www.indelphic.org/
== Ziiri mine liŋkiri ==
{{Commons category|International Delphic Council}}
* [http://www.delphics.org International Delphic Council]
bb1y0o1tzzt65h8ycydtb2wkz6ogyz5
Ökofeszt
0
7180
61860
61756
2026-06-24T05:22:35Z
InternetArchiveBot
38
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61860
wikitext
text/x-wiki
{{Databox|item=Q8078926}}
A '''Ökofeszt''' bee '''Ecofest''' da e la tigiri naŋ be a eco friendly ideas na be a Hungary. A dɛndɛŋ Ökofeszt da taa la diibu a Védegylet ane Zöld Fiatalok ane a da taa diibu a15 ane 16 April 2005 a Budapest.<ref>{{cite web|url=http://zofi.hu/%C3%B6kofeszt|title=Ökofeszt Zöld Fiatalok|publisher=zofi.hu|date=5 April 2005|accessdate=30 June 2012}}</ref><ref>{{cite web|url=http://est.hu/cikk/32052|title=Ökofeszt|publisher=est.hu|date=1 April 2005|accessdate=30 June 2012}}</ref>
A yelnyɔgeraa ko a ''Politics Can Be Different'' na da taa piiluu a eponymous politikal paati 2009. Politics Can Be Different a da di a kogo neŋ a National Assembly a 2010 palamɛte kyakya .<ref>{{cite web|url=http://english.lehetmas.hu/|title=Ökofeszt|publisher=lehetmas.hu|date=30 June 2012|accessdate=30 June 2012}}</ref> A tigiri yelnyɔgeraa la environmental protection, sustainable development ane zɔɔre kyaare nannyigiluu ko Hungarian political elite. A public face ko a paati la [[András Schiffer]], naŋ da yeli yɛlɛ ko a Ökofeszt a 2005 a meŋ da e mɛmba ko s Hungarian Civil Liberties Union.
== Kɔmmo ==
{| class="wikitable"
!Year
!City
!Performer
|-
|2005<ref>{{cite web|url=http://zofi.hu/%C3%B6kofeszt|title=Ökofeszt Zöld Fiatalok|publisher=zofi.hu|date=5 April 2005|accessdate=30 June 2012}}</ref>
|Budapest
|
* [[András Schiffer]] (ex-[[Member of Parliament|MP]] of Politics Can Be Different)
* [[László Majtényi]] (lawyer)
* [[István Elek]] (writer)
* [[Péter Rauschenberger]] (philosopher)
* [[András Lányi (writer)|András Lányi]] (writer)
|}
== Deɛne ==
{| class="wikitable"
!Year
!City
!Performer
|-
|2005<ref>{{cite web|url=http://zofi.hu/%C3%B6kofeszt|title=Ökofeszt Zöld Fiatalok|publisher=zofi.hu|date=5 April 2005|accessdate=30 June 2012}}</ref>
|Budapest
|
* Kaukázus
* [[Besh o droM|Besh o drom]]
* Fakutya táncház
* [[Dawnstar (band)|Dawnstar]]
* Tanu Tuva
* Egy Kis Erzsi Zene
|}
== Sommo YIzie ==
{{Reflist|30em}}
== Ziiri mine liŋkiri ==
* [https://web.archive.org/web/20150123015159/http://zofi.hu/%C3%B6kofeszt Ökofeszt Official Site]
gco2mhtjcji03pbtcrcqjsyjhdcsrkq
World Festival of Clowns in Yekaterinburg
0
7183
61849
61764
2026-06-23T14:37:04Z
Jacques Ballieu
1785
/* About */
61849
wikitext
text/x-wiki
{{Databox|item=Q20203401}}
'''A World Festival of Clowns na be a Yekaterinburg''' e la tendaa zaa yuoni zaa clownery, na maŋ taa eebo a Yekaterinburg, Russia, yi 2008 wagere zaa. A organizers ko a tigiri ŋa la a People's artist ko Russia Anatoly Marchevsky ane People's artist ko Russia Alexander Kalmykov.<ref>Ланкина. Ю. Всемирный фестиваль клоунов. 2009. - С.3. - 38 стр</ref>
== About ==
A tigiri yelnyɔgeraa la:<ref>Clowns from all over the world at the [[Yekaterinburg Circus]] Festival - http://rbth.com/news/2013/11/14/clowns_from_all_over_the_world_at_the_yekaterinburg_circus_festival_31711.html)</ref>
* Saakonnoŋ arekoobo: noba naŋ be a tendaa zaa maŋ laŋɛɛ taa a tigiri ŋa: Germany, France, Italy, Spain, the US, China, Ukraine, Peru, Belarus, a Netherlands, Russia, Hungary, Denmark, Switzerland, Brazil, [[Belgium]], Israel, Canada, etc.
* Tendaa zaa yeltare arekoobo kyaare saakonnoŋ ane deɛne yeltare;
* A clown, mime, writer leɛ teɛre taa ane clown character "sad clown saane maaloo", People's Artist ko Armenian SSR - Leonid Yenghibarov.
== Organising committee ==
A World Festival ko Clowns maŋ taa la kyɔɔroŋ yi Honoured Artist ko Russia Boris Vazhenin, People's artist ko Russia Anatoly Marchevsky ane People's artist ko Russia Alexander Kalmykov.
== Periodicity ==
A World Festival ko Clowns e la yuoni zaa bone na maŋ taa diibu yi 2008 wagere zaa.
{| class="wikitable"
!Festival name
!Year
!Days
!Participants
|-
|The 1st World Festival of Clowns in Yekaterinburg
|2008
|April, 5-9
|[[David Larible]], David Shiner, Monty Clowns, Olivier Takwin and Olivier Deshavu, Sergey Prosvirnin and Sergey Yeroshenkov, Clown ˈBoˈ - Boris Oskotsky, Clowns Mick and Muck, Ruslan Marchevsky, acrobats ˈBrave Firefightersˈ etc.
|-
|The 2nd World Festival of Clowns in Yekaterinburg
|2009
|November, 19-22
|Peter Shub, Housh-ma-Housh, Scott & Muriel, Los Rivelinos, Nikolai Yashukov, Nikolay Yermakov, Alexandra & Gavriil Sedovs, Adrey Dementyev-Kornilov etc.
|-
|The 3rd World Festival of Clowns in Yekaterinburg, in memory of Leonid Yenghibarov
|2010
|November, 25-28
|Comic group Starbugs, Comic acrobats duo Los Manducas, Galina & Sonny Hayes, Clown May - People's artist of Russia Yevgeniy Maykhrovsky, Armen Asiryants, Clown Kharry - Igor Yashnikov, Anna Oprea - Human Slinky, Theatre Circus Ale Hop etc.
|-
|The 4th World Festival of Clowns in Yekaterinburg in memory of Yury Nikulin
|2011
|November, 25-28
|Rob Torres, Zementovs, BonBon & Tina, Willer Nikolodi, Ildar Muhametzhanov & Ruslan Marchevsky, Davis Vassalo, Mayorovs etc.
|-
|The 5th World Festival of Clowns in Yekaterinburg
|2012
|November, 22-25
|Housh-ma-Housh, Clown Henry (Brazil), Clown Barto, Le Rossyanns, Mik & Mak, Willer Nikolodi, Sergey+Sergey Prosvirnins, Daniel (Isrsael) etc.<ref>{{cite web|title=A gathering of clowns in Yekaterinburg, Russia|url=http://asiajourney.net/article/gathering-clowns-yekaterinburg-russia|publisher=Asian Journey|accessdate=9 September 2015|date=August 17, 2012}}</ref>
|-
|The 6th World Festival of Clowns in Yekaterinburg
|2013
|November, 14-17
|[[Bello Nock]], Clown Francesco, [[Paul Morocco]] & Ole, Rob Lok, Lieutenanant Schmidt's Grandchildren, Los Revelinos, Jolly Roger
|-
|The 7th World Festival of Clowns in Yekaterinburg
|2014
|November, 27-30
|Andre Astor & Oscar, Cesar Aedo, [[David Larible]], Equivokee, Furmanov brothers, Kai, Rivelinos
|-
|The 8th World Festival of Clowns in Yekaterinburg
|2015
|November, 26-29
|Davis Vassalo, Valentin Urse, Rulo, Popeyto, Willer Nicolodi, Daniel Zafrani, Boris Nikishkin, Pavel Boyarinov
|-
|The 9th World Festival of Clowns in Yekaterinburg
|2016
|November, 24-27
|Vik & Fabrini, Henry, Rob Torres, BonBon & Tina, Duet ˈLess Russianˈ, Juma, Boris Oskotsky, Trio ˈWithout Socksˈ, Boris Nikishkin
|-
|The 10th World Festival of Clowns in Yekaterinburg
|2017
|November, 23-26
|[[Bello Nock]], Bella & Alex Sher, Housh-ma-Housh, Rivellino, Bartok, Alexey Bobylev, Mick & Mack, Clown Kharry - Igor Yashnikov
|}
== Enfuomo ==
<gallery class="center">
Duoro_kɔre:David_Larible_in_Stuttgart_2013-2.jpg|[[David Larible]] (Italy)
Duoro_kɔre:David_Shiner_(Clown).jpg|David Shiner (the USA)
Duoro_kɔre:Vik_&_Fabrini_2018_03_(40925998632).jpg|Vik & Fabrini (Brazil)
Duoro_kɔre:Bello_Nock.jpg|[[Bello Nock]] (the USA)
Duoro_kɔre:Rob_Torres_-_1.jpg|Rob Torres (the USA)
Duoro_kɔre:TRUPPE_MAYOROV_Cirkusartisten_aus_Russland_Ukraine_Weissrussland.jpg|Mayorovs (Belarus, Russia, Ukraine)
Duoro_kɔre:LES_ROSSYANN_Weisscloun_und_dummer_August.JPG|Duet ˈLess Russianˈ (France)
Duoro_kɔre:Clowns_Weltkugel_schwebt.JPG|Francesco (France)
</gallery>
== Sommo yizie ==
{{Reflist}}
iah02uuns8xh3l871bfpdudl8g8tm12
Ottawa Festivals
0
7184
61858
61766
2026-06-24T02:29:53Z
InternetArchiveBot
38
Rescuing 2 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61858
wikitext
text/x-wiki
{{Databox|item=Q7109171}}
'''Ottawa Festivals''', kpaaroŋ kaŋa na taa lammo ko [[Ottawa]], [[Ontario]] Canada, a naŋ sonna tigiri sere na be a Afirika. A da piili a 1996, a kpaaroŋ ŋa da taa la 53 tigiri sere na wulo sakonnoŋ lesiri tɛɛtɛɛ, arts, ane deɛne yeltare a paaloŋ poɔ.
== A tigiri deme ==
* Winterlude
* Ottawa Irish Festival
* Maple Sugar Festival
* Ottawa International Writers Festival - Spring Edition
* Victoria Day Festival
* Canadian Tulip Festival
* Ottawa International Children's Festival
* Ottawa Marathon
* Carnival of Cultures
* Canada Dance Festival
* Magnetic North Theatre Festival
* Italian Week
* Westfest
* Festival Franco Ontarien
* Ottawa Fringe Festival
* Ottawa Dragon Boat Festival
* Summer Solstice Aboriginal Arts Festival
* TD Canada Trust Ottawa International Jazz Festival
* Canada Day Arts Festival
* Unisong Canadian Choir Festival
* Canada Day
* Ottawa Bluesfest
* Sound and Light Show on Parliament Hill/Son et lumière
* HOPE Volleyball Summerfest
* The Great India Festival (formerly, Festival of India)<ref>{{cite web|url=http://www.tgifOttawa.ca|title=TGIF Ottawa – The Great India Festival Ottawa}}</ref>
* Ottawa Turkish Festival
* Orchestras in the Park
* Ottawa International Chamber Music Festival
* Ottawa Lumière Festival
* Navan Fair
* Ottawa Greekfest
* Ottawa Folk Festival
* SuperEx
* Ottawa Reggae Festival
* [[Capital Pride (Ottawa)|Capital Pride]]
* Capital Vélo Fest
* Richmond Fair
* Carp Fair
* Metcalfe Fair
* Fall Rhapsody
* Ontario Council of Folk Festivals Conference
* Ottawa International Animation Festival
* Ottawa International Writers Festival - Fall Edition
* Lebanorama
* Ottawa Storytelling Festival
* Canadian Folk Music Awards
* 3i Summit: Imagine - Interact - Inspire
* Christmas Lights Across Canada
* Festival X
* Music and Beyond
* South Asian Festival
* Summer Fling – A Theatrical Affair!
* Latin Sparks Festival
== Sommo Yizie ==
{{Reflist}}2. https://web.archive.org/web/20181211230607/http://www.ottawafestivals.ca/ottawa-411/
3. https://web.archive.org/web/20190914065902/http://www.ottawafestivals.ca/ottawa-411/other-things-to-do/
1deg26wbuycnzb8glnv3d5gvva8lgw7
Ariadna's Thread
0
7200
61853
61792
2026-06-23T21:04:02Z
InternetArchiveBot
38
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61853
wikitext
text/x-wiki
A '''Ariadna's Thread''' (Russian: Нить Ариадны) e la international tigiri gɔɔloŋ a ko noba naŋ daa yanyaare baaloŋ naŋ maŋ di a Moscow, Russia poɔ a yi a yioni 2010<ref>https://duma.mos.ru/ru/37/news/novosti/nit-ariadnyi-ukazyivaet-put-k-vostrebovannosti</ref><ref>https://tass.ru/obschestvo/1561114</ref><ref>https://kino.rambler.ru/other/40481407-festival-nit-ariadny-poluchil-prezidentskiy-grant-v-razmere-14-2-mln-rub/</ref><ref>https://vm.ru/culture/566436-festival-nit-ariadny-poluchil-prezidentskij-grant</ref>. A tigiri meŋ maŋ poɔ la scientific ane eebo yelyaga zannoo. A ziiri ba naŋ maŋ di a tigiri ŋa la : Yermolova Theater, sini yiri, Central yiri ko Scientists ko Russian Academy of Sciences, State Museum ko gɔɔloŋ A. Pushkin, Department of personal collections and the Museyon Center for Aesthetic Education of Children and Youth, Moscow Academic Art Lyceum ko a Russian gɔɔloŋ sakuuri, Scientific ane ebbo zie ko a bibiiri yanyaare ane baapaaleba yanyaare, ane deɛne zie ka A. Dzhigarkhanyan kaabo wagere na, kyuu deɛne.<ref>https://rg.ru/2014/11/12/festival-site.html</ref>
== Yeleree ==
Noba maŋ maŋ poɔ a yɛlɛ ama poɔ, ba maŋ iri ba la ziiri ayɔpo: deɛne, yipɔge, enfuoni ŋmaabo,sini, gɔɔloŋ ane duori terebo.<ref>https://www.mos.ru/news/item/47717073/</ref><ref>https://web.archive.org/web/20200220003504/http://www.klubpsihiatrov.ru/ru/festival5/about</ref>
== Sommo yizie ==
eo08gw0rwnsqj626rgbsmwt4tf207lf
Dhaka Lit Fest
0
7201
61855
61794
2026-06-23T22:33:26Z
InternetArchiveBot
38
Rescuing 3 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61855
wikitext
text/x-wiki
'''Dhaka Lit Fest''' ( ba.naŋ baŋ ne o meŋ ka '''Dhaka Literary Festival''' bee '''DLF''') e la yuoni zaa yipɔge tigiri naŋ maŋ di a Dhaka, Bangladesh poɔ. A yi a yuoni 2012, o maŋ di la yuoni zaa a November poɔ a Bangla Academy teŋɛ poɔ ka o maŋ di bebie ata, ane naasaale kɔkɔre.
== Dakoroŋ ==
Dhaka Lit Fest da piili la a Hay tigiri Dhaka ane sommo yi a British Council Dhaka zie a yuoni 2011 poɔ.
A yuoni 2015, o naŋ taa maale ennebe bata, Sadaf Saaz, Ahsan Akbar ane Kazi Anis Ahmed, leɛ maale la a tigiri yuori ka "Dhaka Lit Fest" ka ba na leɛ teɛre ba sagebo ka ba na zɛge la Dhaka, ane Bangladeshi yelbaŋyizie ane a yipɔge ko a tendaazaa.<ref name=":0">https://web.archive.org/web/20180526112649/http://www.dhakalitfest.com/story.html</ref><ref name=":1">http://www.thedailystar.net/star-weekend/spotlight/dhaka-lit-fest-the-gathering-literary-minds-178393</ref>
A yi a July 2016 Dhaka naŋ da nyɛ zɔɔre tigiri tenne 19 la da ba la sage ka lanne ba di a tigiri.<ref name=":2">http://www.thedailystar.net/star-weekend/spotlight/dhaka-lit-fest-the-gathering-literary-minds-178393</ref> Ane a lɛ zaa a noba naŋ di la tigiri naŋ wulu ka Bangladesh na baŋ naŋ di a international yipɔge tigiri a nimipɛle zie nig<ref name=":3">https://kenanmalik.com/2019/11/02/the-importance-of-a-lit-fest-in-dhaka/</ref>ɛ.Casey Quackenbush da sɛge "Bangladesh, ka be la ka meŋɛ faabo ka duori terebe la ka nimie da boɔrɔ ne zɔɔre, a Dhaka yelbanyizie tigiri paa leɛ waa la.meŋɛ faabo zɔɔzɔɔ bone.<ref>https://www.dhakatribune.com/magazine/arts-letters/2016/09/05/dhaka-lit-fest-2016/</ref> A yuoni na, a yelzu sɛgerɛ da la V. S. Naipaul.<ref>https://www.thedailystar.net/literature/dhaka-lit-fest-2016-vs-naipaul-raises-the-curtains-1316218</ref>
A yuoni 2017, Dhaka Lit Fest da iri la ka ba maale a kyɔɔtaare a DSC kyɔɔtaare ko a South Asian yelbanyizie<ref>https://timesofindia.indiatimes.com/business/india-business/2017-dsc-prize-winner-to-be-announced-at-dhaka-lit-fest/articleshow/59201732.cms</ref>. A neɛ naŋ nyɛ a zunuo da la Anuk Arudpragasam ko o selloo ŋa o naŋ sɛge;"The Story of a Brief Marriage.<ref>https://web.archive.org/web/20171215000913/http://dscprize.com/2017/11/18/anuk-arudpragasam-wins-dsc-prize-south-asian-literature-2017/</ref>
== Organizers ==
A tigiri Bangladeshi naŋ sɛge Sadaf Saaz, Tahmima Anam, Ahsan Akbar ane Kazi Anis Ahmed la maale o ka o e Hay tigiri Dhaka.<ref name=":1" /> A yuoni 2015, noba naŋ da maale a tigiri ŋa la Sadaf Saaz (kyɛ meŋ la sini maala), Ahsan Akbar ane Kazi Anis Ahmed.<ref name=":0" />
== Saama ==
Saama naŋ yi tenne kyɛ wa a tigiri ŋa la V. S. Naipul, Amitav Ghosh, Abdulrazak Gurnah, Adunis, Shashi Tharoor, William Dalrymple (historian), Tilda Swinton, Marcel Theroux, Lionel Shriver, Shirshendu Mukhopadhyay, Mohammed Hanif, Nandita Das, Monica Ali, HM Naqvi, Tishani Doshi, Swapnamoy Chakraborty, James Meek (sɛgerɛ ), Jude Kelly, ane Jon Snow (duori terɛ), ane ba mine kaŋa.
Bangladeshi sããtegerɛ mine la: Asaduzzaman Noor, Syed Manzoorul Islam, Imdadul Haq Milan, Kaiser Haq, Selina Hossain, Aly Zaker, Shaheen Akhtar, Nishat Majumdar, Raja Devasish Roy, ane Muktasree Chakmaamong, ane ba mine kaŋa.
== Tuuri deebo ==
DLF ba poge o la a yiri ane a tendaazaa ane o naŋ sage di yipɔge leɛroo, faabo yi meŋɛ yelyaga yelibo poɔ ane ba naŋ maŋ laŋ a Bengali ane a tendaazaa yipɔge<ref name=":2" /><ref>https://theprint.in/opinion/shashi-tharoor-new-bangladesh-holds-on-to-tagores-memory-even-if-its-a-century-old-visit/319593/</ref><ref>https://www.thedailystar.net/shout/what-dhaka-lit-fest-2015-offered-176326</ref><ref>https://www.thedailystar.net/star-weekend/spotlight/dhaka-lit-fest-the-gathering-literary-minds-178393</ref><ref name=":3" />. A noba na naŋ maŋ soŋ ne a libie ba poge ba la yaga ane ba naŋ maŋ vɛŋ ka DLF e weɛlɛ ko neɛzaa ka o baŋ wa.<ref>https://www.newstatesman.com/2016/11/i-m-bangladesh-i-needed-put-few-thousand-miles-between-myself-and-hovel</ref>
Noba mine meŋ naŋ maŋ kaara yeli ka DLF maaleba e la Anglophile bourgeois naŋ e a Western Bangladesh poɔ yaare la a duor ka a vɛŋ ka a tigiri yuori baara ane sɛgebo naasaale kɔkɔre poɔ kyɛ baara ba meŋɛ faabo a Dhaka poɔ<ref>https://web.archive.org/web/20180125141651/http://shampratikdeshkal.com/back-page/2016/11/24/4066</ref><ref>https://arts.bdnews24.com/?p=15695</ref><ref>https://web.archive.org/web/20180526183013/http://www.bdsfbd.com/%E0%A6%A2%E0%A6%BE%E0%A6%95%E0%A6%BE-%E0%A6%B2%E0%A6%BF%E0%A6%9F-%E0%A6%AB%E0%A7%87%E0%A6%B8%E0%A7%8D%E0%A6%9F/</ref><ref>https://opinion.bdnews24.com/bangla/archives/54577</ref><ref>https://web.archive.org/web/20180125141651/http://shampratikdeshkal.com/back-page/2016/11/24/4066</ref>. A noɔre ŋa kyɛrebo poɔ a noba naŋ maŋ maale a tigiri ŋa wuli la tɔna naŋ be Bengali-kɔkɔre yelebo poɔ ( ane yiri Bangladeshi kɔkɔrɛɛ<ref>https://en.prothomalo.com/lifestyle/news/204657/Dhaka-Lit-Fest-2019-ends-in-November-drizzle</ref> ) noba naŋ maŋ manne yɛlɛ, yeli ka a waabo naŋ faa e weɛlɛ ane a Bangladeshi yelbanyizie tigiri maaloo ane gbangbali poɔ yiibo zuiŋ<ref>https://web.archive.org/web/20191115000203/https://www.dhakalitfest.com/story</ref>. A noba yelibo ŋa saama naŋ maŋ wa a tigiri zie sagɛɛ la ka duori terebe meŋ sage.<ref>https://www.theguardian.com/commentisfree/2019/nov/10/literary-festivals-not-luxury-bauble-for-middle-classes</ref><ref>https://web.archive.org/web/20190324182052/http://www.daily-sun.com/arcprint/details/185702/Dhaka-Lit-Fest-and-Literary-Concerns/2016-11-21</ref><ref>https://theluxembourgreview.org/2016/04/07/dhaka-literature-festival-2015-an-overview/</ref><ref>http://www.thedailystar.net/star-weekend/spotlight/dhaka-lit-fest-the-gathering-literary-minds-178393</ref><ref>https://www.daily-sun.com/printversion/details/269630/Dhaka-Lit-Fest-to-widen-horizon-of-Bangla-literature</ref><ref>https://www.bssnews.net/?p=118735</ref><ref>http://thedailynewnation.com/news/234887/forums-like-dhaka-lit-fest-give-space-for-people-to-meet-interact.html</ref><ref>https://www.independent.co.uk/arts-entertainment/books/features/dhaka-lit-fest-bangladesh-monica-ali-will-self-a9158641.html</ref>
== Sommo yizie ==
d9b508c1dmwtkfcrtm9nqkiv4hpgqv8
Eeron Bagany
0
7202
61856
61795
2026-06-23T22:49:41Z
InternetArchiveBot
38
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61856
wikitext
text/x-wiki
'''Eeron Bagany''', '''Iron Bagan''',<ref>https://web.archive.org/web/20230201141041/http://vestnikkavkaza.net/news/Ministry-of-Culture-of-the-Republic-The-Iron-Bagan-international-festival-of-the-Ossetian-beer-is-t.html</ref> bee '''Iron Bagany'''<ref>http://cominf.org/en/node/1166524661</ref> e la Ossetian dãã tigiri naŋ maŋ di a yuoni zaa a Northern ane Southern Ossetia poɔ. <ref name=":0">https://www.rbth.com/russian_kitchen/2016/12/07/how-to-make-ossetian-beer_654347</ref>A tigiri maŋ di la bebiyeni ka o na baŋ e Oktoberfest kaŋa.<ref name=":0" /><ref>https://www.rbth.com/russian_kitchen/2016/12/07/how-to-make-ossetian-beer_654347</ref>
== History of Ossetian brewing culture and Ossetian beer ==
Ossetian dãã dɔgebonaŋ baŋ tuuli te ta la a mannoo naŋ wuli ka ba da nyɛ la Nart sagas, naŋ taa sini naŋ wulo lɛ ba naŋ e nyɛ a dãã. <ref name=":0" />A yi a sini na poɔ, warchief nyɛ la nuulee a wɛgaŋ poɔ ka dire hops mine ka o yie daadaa lɛ<ref name=":0" />. A naa de la a hopes kuli ne a te yeli ko o pɔge, matriarch Shatana, bone na naŋ e. O da de la a hopes poɔ ne kyizoŋ,,a paa eŋ kõɔ a dɔge ne a Ossetian dãã dɛndɛnsoba.<ref name=":0" />
beer is "significantly less intoxicating", has no foam, ranges from color dark brown to black, and is brewed without technology. It is traditionally brewed by the "oldest woman in the family".
== Yelerre a tigiri poɔ ==
A tigiri saga,dãã ba naŋ maŋ duŋ a dakoroŋ na a nembɛrɛ maŋ nyɛ a la kaanyɛ a iri a neɛ na naŋ duŋ soŋ.<ref name=":0" />
== Sommo yizie ==
st0qti98hzocccero0llxyg1kstaff0
France
0
7204
61846
61811
2026-06-23T14:24:55Z
Jacques Ballieu
1785
61846
wikitext
text/x-wiki
'''France''' yɛ ɔman a ɛwɔ [[Europa]].
[[File:Flag of France (2024–present).svg|thumb]]
[[File:EU-France.svg|thumb]]
[[File:Tour eiffel at sunrise from the trocadero.jpg|thumb]]
[[Gbuli:Europa]]
s0twk0uv5w0t89yb5mel4n8m7gnlmrs
Schleswig-Holstein Gourmet Festival
0
7206
61859
61816
2026-06-24T03:21:35Z
InternetArchiveBot
38
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
61859
wikitext
text/x-wiki
'''A SchleswigSchleswig-Holstein Gourmet Festival''' ('''SHGF''') la la tigiri naŋ piili a yuoni 1987 poɔ ka Gastliches Wikingland e. V. (English: ''Hospitable Viking Land Association)'' ''maŋ laŋ a noba a maale. A'' SHGF, naŋ be a Schleswig-Holstein, naŋ piili September kyuu yuoni poɔ kyɛ baare a March kyuu a ane kaŋa poɔ.<ref>https://books.google.com/books?id=y_gFAgpmu7gC&dq=%22Schleswig-Holstein+Gourmet+Festival%22+-Wikipedia+online%5D&pg=PA23</ref>
== A tigiri ==
A tigiri saama 3000 la maŋ wa, a yi lɛ tontonoba naŋ maŋ wa lɛ meŋ la a tigiri. A tigiri zaa maŋ di la tonton zie kaŋa zaa gbɛɛ yaga hotɛle poɔ bee bondirii diibu zie, ka saana naŋ e bondimaala la maŋ maale a zimaane bondirii ka a hotɛle bondimaaleba maŋ soŋ. A saana bondimaala ŋa maŋ leɛrɛ la yuoni zaa. A yelnimizie ko a tigiri la ka ba pukyaare irigyin ane wagere baabo ne a Schleswig-Holstein bondirii poɔbo.<ref>http://www.faz.net/aktuell/reise/kulinarische-reisen-wo-gourmets-ihre-gaumen-kitzeln-br-112451.html</ref><ref>https://web.archive.org/web/20140826120612/http://www.schleswig-holstein.de/ArchivSH/PI/STK/2003/Gourmet_Festival_StK_260903.html</ref>
== Dakoroŋ ==
A noba naŋ maŋ laŋ a yɛlɛ ŋa taa, Gastliches Wikingland e.V., da piili la a yuoni 1987 poɔ a yi bondi maale zie ŋa Hans Hansen-Mörck (1933–1994) ane hotɛle mine 11 ane bondimaale zie kaŋa a Schleswig-Flensburg distiriki naŋ pɔŋ saama bondiri a Schleswig-Holstein Musik tigiri , ka ba taa a kyɛluu ka ba na da maale a gourmet tigiri a zie na bebiri kaŋa. A Schleswig-Holstein Gourmet tigiri dɛndɛnsoba da di la Historischen Krug a tuuree poɔ. A tigiri saga,Hansen-Mörck maŋ yi ne bondirii maaloo gane <ref>https://en.wikipedia.org/wiki/Schleswig-Holstein_Gourmet_Festival#cite_ref-4</ref>saseɛ poɔ. A Gastliches Wikingland yidandɔɔ da be la Hansen-Mörck, Franz-Dieter Weiß, Heta Behmer, a yi a yuoni 1991 Klaus-Peter Willhöft.<ref>http://www.shz.de/lokales/wedel-schulauer-tageblatt/kulinarisches-spitzenevent-im-schulauer-faehrhaus-id5762951.html</ref>
A yuoni 2020 poɔ, tontonziiri 16 naŋ yi a teŋɛ ziezaa da poɔ la a kyakya ŋa poɔ a lanne a neɛ naŋ piili a Ringhotel Waldschlösschen ko Schleswig a yi a 2020, hotɛle Wassersleben naŋ yi Harrislee<ref>https://www.gourmetfestival.de/festival/historie/</ref>. A yuoni 1987 poɔ, a Michelin Guide kyɔɔtaare da pare ayɔpoi ba naŋ ko tontonziiri a Schleswig-Holstein anii Michelin hotɛle a naŋ lantaa. A yuoni 2020, a Michelin Guide a Schleswig-Holstein poɔ da ko bonimaale zie ata kyɔɔtaare ŋmarebie ayi ane mine awai meŋ ne ŋmarebiyenaa.<ref>https://www.gourmetfestival.de/geschichte.html</ref>
A yuoni 2000 poɔ, a “Tour de Gourmet Jeunesse” da wulee la ka o meŋ poɔ la a Schleswig-Holstein Gourmet tigir. A langboli na ba naŋ da pukyaare da e la noba naŋ ta yuomo18 te da 35. A zie na ba naŋ tu kyɛ yeli yɛlɛ ko noba a bondimaale ziiri a taa a kyilluu ka baabo naŋ maŋ wa la yuoni zaa kyɛ vɛŋ ka ba nyɛ tontonziiri ata poɔ.<ref>https://www.gourmetfestival.de/tourdegourmet.html</ref> A tigiri diibu 29 soba, a "Tour de Gourmet Solitaire" da poɔɛ la. O da e la yelpaalaa ka ba kpukyaare ne gyamaa noba naŋ ba be kultaa poɔ a nyɛ yuomo 40. A kyɛ meŋ, ba nyɛ la tontonziiri ata yuoni zaa. A piili deɛne maŋ e la tɛɛtɛɛ fee ne a tigiri yeleree meŋɛ.Internationally bondimaale nembɛrɛ maŋ toŋ la toma ne ba mine bondimaale nembɛrɛ ka ba maale a bondiparɛɛ anuu tigiri.<ref>https://www.gourmetfestival.de/auftaktgala.html</ref>
== Bondimaale nembɛrɛ saama ==
A tigiri 34th SHGF a 2020 ane 2021 poɔ, saama18 bondimaale nembɛrɛ naŋ yi Germany, Denmark, France ane Switzerland na be la a tigiri naŋ e tontonziiri 16 tigiri zie. A bondimaale nenkpoŋ saana yuoni zaa a yi o naŋ piile ane nempaaleba.
A bondimaale nembɛrɛ naŋ poɔ a Schleswig-Holstein Gourmet tigjri ŋa la :
* Jacqueline Amirfallah
* Henri Bach<ref name=":0">http://www.manager-magazin.de/lifestyle/genuss/a-438430.html</ref>
* Wolfgang Becker<ref name=":1">https://www.gourmetfestival.de/</ref>
* Boris Benecke
* Ingo Bockler
* Jean-Claude Bourgueil<ref name=":0" />
* Denis Feix
* Rolf Fliegauf
* Sebastian Frank (Koch)
* Tommy Fries
* Maria Groß
* Nils Henkel
* Sarah Henke
* Kenneth Toft-Hansen
* Dirk Hoberg<ref name=":1" />
* Jens Jakob<ref name=":1" />
* Thomas Kammeier
* Michael Kempf<ref name=":1" />
* Johannes King
* Kolja Kleeberg<ref name=":1" />
* Manuel Liepert
* Christian Lohse<ref name=":1" />
* Thomas Martin<ref name=":1" />
* Anna Matscher
* Peter Madsen
* Thomas Merkle
* René Mammen
* Marco Müller<ref name=":1" />
* Nelson Müller
* Hendrik Otto
* Cornelia Poletto<ref name=":0" />
* Michael Röhm<ref name=":1" />
* Stefan Rottner
* Christoph Rüffer<ref name=":1" />
* Jörg Sackmann<ref name=":1" />
* Peter Scharff (Koch)
* Thorsten Schmidt
* Achim Schwekendiek
* Ronny Siewert
* Patrick Spies
* Diethard Urbansky<ref name=":1" />
* Joachim Wissler<ref name=":0" />
* Harald Wohlfahrt from the ''Schwarzwaldstube'' restaurant at ''Hotel Traube'' in Baiersbronn-Tonbach, guest chef in the ''Orangerie'' in the ''Maritim Seehotel'' on Timmendorfer Strand since 1990
* Tristan Brandt
* Philipp Heid
* Tony Hohlfeld
* David Görne
* Rainer Gassner
* Philipp Stein
* Sonja Frühsammer
* Jens Rittmeyer
* Ralf Jakumeit
* Michael Hoffmann
* Titti Qvarnström
* Julia Komp
* Daniel Gottschlich
* Benedikt Faust
* Kirill Kinfelt
== Tuuri deebo ==
German duori terɛ n-tv yeli ka a 2021 ka a Gourmet tigiri a northernmost federal teŋɛ da leɛre la ka o pɛnnoo vuo ko a gourmets". A yuoni 2005 poɔ, Die Zeit yeli ka ka o wane la sasemaaroŋ ko a German cuisine," ka n-tv manne ka o e la tgiroŋ a yi Schleswig-Holstein cuisine eŋ yɛlɛ naŋ kyaare.
== External links ==
* Schleswig-Holstein Gourmet Festival on the Website of Gastliches Wikingland e. V.
== References ==
ki1pvgtbye4gjrmvnlpiy9wilap3alj
Belgium
0
7207
61843
2026-06-23T14:12:50Z
Jacques Ballieu
1785
Created page with "'''Belgium''' yela country ka [[Europe]] niŋ. A be la Western Europe poŋ, ka kpɛrɛ [[Netherlands]], [[Germany]], [[Luxembourg]] nɛ [[France]]. [[Brussels]] ka Belgium tɛŋa-kɔɔrɛ la."
61843
wikitext
text/x-wiki
'''Belgium''' yela country ka [[Europe]] niŋ.
A be la Western Europe poŋ, ka kpɛrɛ [[Netherlands]], [[Germany]], [[Luxembourg]] nɛ [[France]]. [[Brussels]] ka Belgium tɛŋa-kɔɔrɛ la.
t4cuuwim78qzn45iwffpnbit43yqdn6
61844
61843
2026-06-23T14:20:45Z
Jacques Ballieu
1785
61844
wikitext
text/x-wiki
{{Databox
| item = Q31
}}
'''Belgium''' yela country ka [[Europe]] niŋ.
A be la Western Europe poŋ, ka kpɛrɛ [[Netherlands]], [[Germany]], [[Luxembourg]] nɛ [[France]]. [[Brussels]] ka Belgium tɛŋa-kɔɔrɛ la.
r59npkfexref3z9w4bwyy0zddkhvoob
61845
61844
2026-06-23T14:23:04Z
Jacques Ballieu
1785
61845
wikitext
text/x-wiki
{{Databox
| item = Q31
}}
'''Belgium''' yela country ka [[Europe]] niŋ.
A be la Western Europe poŋ, ka kpɛrɛ [[Netherlands]], [[Germany]], [[Luxembourg]] nɛ [[France]]. [[Brussels]] ka Belgium tɛŋa-kɔɔrɛ la.
[[Gbuli:Europe]]
83tu1seu2j7aap8wo3fgw8og273l850
Baltai
0
7208
61847
2026-06-23T14:33:32Z
Edith Tangkur
310
Creat article
61847
wikitext
text/x-wiki
'''Baltai''' (Mordvin: ''Балта́й'') e la saakonnoo tigiri ka Mordvin noba maŋ di, gbɛɛ yaga a Tatarstan poɔ. A tigiri yuori leɛre ka ''Feast of Honey'' a Tatar kɔkɔre poɔ, naŋ yi a yelbiri ŋa poɔ ''bal'' ka o muni la siiri, ane ''tuy'' ka o meŋ muni la diibo. Baltai maŋ di la a Yɔdaare ka a Whitsunday wa di baare, naŋ maŋ piili a mowing wagere. A tigiri maŋ taa saakonnoo yeleree tɛɛtɛɛ,lanne piroo pegebo, naŋ taa waaloŋ ne ŋmene baroo ane ba yipɔge.
A Baltai tigiri maŋ e la saakonnoo tigiri a ko a Mordvin noba, ka ba leɛ teɛrɛ ba yiibo zie, yipɔge ane lisiri. A tigiri yel-tuoraa ŋa ka a mine na a piroo pegebo ane a seɛgɔlloo, maŋ wuli a Mordvin noba naŋ yi taa ne ŋmene boniri ane ba yipɔge.
Ko naaloŋ a Saratov Oblast, Russia, nyɛ Baltay.
== Meŋ la nyɛ ==
* Sabantuy
* Çük
== Yizie ==
* (in Russian) Национальный праздник | Новости администрации за июль 2002 года | Балаково в сети
*
7hzmfynfdvu0o8mj8s01uyvcuwe1mmb
AngloMockBa
0
7209
61850
2026-06-23T14:38:27Z
Edith Tangkur
310
Creat article
61850
wikitext
text/x-wiki
'''AngloMockBa''' e la international/British-Russian gɔɔloŋ, bonsuuri, sini duoro yeŋ, ane yipɔge tigiri naŋ maŋ di a Moscow a yi 1–3 May. O e la a Jewel ko Russia tigiri ayi soba
== External links ==
* AngloMockBa Liberatum Website
* AngloMockBa Red Square PR Website
* AngloMockBa Official Blog
1gz8phdw6qu46umv073i7hqihmg647r
Great Kurultáj
0
7210
61851
2026-06-23T19:52:12Z
Edith Tangkur
310
Creat article
61851
wikitext
text/x-wiki
'''A GreatGreat Kurultáj''', bee '''Kurultáj''', e la saakonnoo tigiri ko a Central Asian donnre tigiri, naŋ maŋ August daagboli dɛndɛnsoba a Bugac, Hungary poɔ. A tigiri yelboɔraa ka tage a nommo naŋ be a Eurasian donne wiri yipɔge ane yipɔge naŋ be a Hungarians ane ba yipɔge taaba, eastern Turkic noba ane Uralic noba. A Kurultáj dɛndɛnsoba da di la a Torgay irigyin a ko Kazakhstan a yuoni 2007 poɔ. Kurultáj e la tigiri ko wiri noba naŋ taa bambo ane noɔ naŋ bebe a wiri zɔɔbo poɔ. Kurultáj kaŋa zaa maŋ taa la wiri kawaare, wiri zɔɔ gantaa, saakonnoo wiri noba maŋ wa are la a peɛlɛ a wulee. A Kurultáj tigiri dɛndɛnsoba da di la a Hungary a yuoni 2008 poɔ.<ref>http://e-history.kz/media/upload/1846/2014/07/01/f88b174f8a3314c68ce6d01a974d6eb0.pdf</ref>
Hungary e la European yoŋ teŋɛ naŋ biŋ a ba yipɔge kokpar deɛne, a kɔɔdɛne deɛne. <ref>https://www.deviantart.com/llmatako/art/KURULTAJ-464343863</ref>
== Background ==
A Kurultáj yiibu zie da yi a donne noba ko a neɛtaa, gaŋ a zaa naaloŋ parɛɛ ka ba wa lantaa ka iri neɛ naŋ na leɛre a Khan zu. A yelbiri "kurultáj" ane o yitaaloŋ a Turkic kɔkɔrɛɛ poɔ leɛroo la "meeting of the tribes". A maŋ e la ane a yiiloŋ a gaŋ a zaa ba naŋ naŋ taa donne ba yipɔge poɔ. Hungarian donne yiiloŋ meŋ maŋ taa la lammo ŋa, a lammo ŋa yuori maŋ pore la a Byzantine ane Arab sɛgere poɔ. A lammo ama zie, yelinimiziiri mine da yɛlee la a gaŋ a zaa a nembɛrɛ maŋ laŋ la taa a manne yɛlɛ sɔgyare yɛlɛ. <ref>http://kurultaj.hu/english/</ref>
=== Turanist ideology ===
A Great Kurultáj e la Turanist tenne demɛ tigiri naŋ maŋ waane lammo a yi a Hungarian ane Turkic noba, a yi a Altaic kɔkɔre yideme na ba naŋ zagerebare. A Great Kurultáj ba da yeli la ba yɛlɛ ka ba leɛ kaa a ba yipɔge yɛlɛ ka lɛ soŋ ka Hungarian yipɔge baara.<ref>https://harpers.org/archive/2019/08/the-call-of-the-drums-hungarian-far-right/</ref><ref>https://www.codastory.com/rewriting-history/kurultaj-turanism-hungary/</ref><ref>https://www.gnxp.com/WordPress/2019/07/19/hungarian-nationalism-and-the-ghosts-of-turan/</ref>
Tenne naŋ poɔ:
# Asia (6): Kazakhstan, Uzbekistan, Kyrgyzstan, Turkmenistan, South Korea, Mongolia
# Europe (7): Azerbaijan, Turkey, Hungary, Estonia, Finland, Bulgaria, Greece
=== Turkic nations and states (22) ===
* Azerbaijan
* Balkar
* Bashkortostan
* Chuvashia
* Crimean Tatars
* Cypriot Turks
* Gagauzia
* Karachay
* Karakalpakstan
* Kazakhstan
* Kyrgyzstan
* Kumykia
* Madjars
* Nogai
* Sakha
* Tatarstan
* Turkey
* Tuva
* Turkmenistan
* Uyghurs
* Turkomans
* Uzbekistan
=== Uralic nations and states (11) ===
* Csangos
* Estonia
* Finland
* Hungary (Host)
* Karelians
* Khanty-Mansi
* Mari El
* Nenets
* Sápmi
* Szekely
* Komi
=== Mongolic nations and states (3) ===
* Buryatia
* Kalmykia
* Mongolia
=== Northeast Caucasian states (3) ===
* Avar
* Chechnya
* Dagestan
=== Northwest Caucasian states (2) ===
* Adygea
* Kabardin
=== Indo-European nations and states (3) ===
* Bulgaria
* Greece
* Hazara
=== Tungusic states (2) ===
* Evenki
* Manchus
=== Others (1) ===
* South Korea<ref>https://kurultaj.hu/2017/09/a-kurultaj-bemutatkozott-az-eurazsiai-altaj-fesztivalon-del-koreaban/</ref>
== Events ==
* 2008: Unknown
* 2013: 9 to 11 August<ref>https://www.kyivpost.com/multimedia/photo/the-kurultaj-festival-takes-place-in-hungary-328266.html</ref>
* 2014: da di la T Bugac a Southern Great Plain irigyin a Hungary poɔ<ref>http://dailynewshungary.com/kurultaj-nomadic-culture-and-tribal-traditions-photo-gallery/</ref>
* 2015: ka Hungarian Turan Foundation da maale ane a Turkish Cooperation sombo ane Coordination Agency (TİKA) a ko a yuori ka Ancestors Day. Noba naŋ are a gɔbenenti gbɛbogriŋ Hungary ane Turkey da poɔ tigiri poɔ. <ref>https://www.dailysabah.com/history/2015/08/18/turkey-hungary-jointly-commemorate-atilla-the-hun</ref>
* 2016: da di la 12 te ta 14 August Bugac poɔ<ref>http://kurultaj.hu/2016/01/a-2016-evi-kurultaj-idopontja-augusztus-12-13-14/</ref>
* 2018: Unknown
* 2020: Cancelled<sup>[''citation needed'']</sup>
* 2022: Culture + music + sports (horse + archery + Guresh)<ref>https://kurultaj.hu/english/?fbclid=IwAR0muFyFqH3ItSSv4faipcWLBH3-NXUCgXYzzztXRefOaAaTTVQY6zbuTWI</ref>
* Medalists:<ref>http://kurultaj.hu/2022/09/kurultaj-2022-hagyomanyorzo-sportversenyek-eredmenyei/?fbclid=IwAR1zx9RjtvIhkZM57o8YyXU4Mjc4Tp_0DpCFmEdM_214b7XDINqTXXJP1ig</ref>
== Meŋ la nyɛ ==
* Altaic language
* Bugac
* Huns
* Jirga
* Pan-Turanism
* Pan Turkism
* World Turks Qurultai
* List of festivals in Asia
* List of festivals in Europe
== Sommo yizie ==
men9jpft85dh6dtfksbsivtr9mpd365
Gion Matsuri
0
7211
61862
2026-06-24T09:40:25Z
Edith Tangkur
310
Creat article
61862
wikitext
text/x-wiki
A '''Gion''' '''tigiri''' (祇園祭, ''Gion Matsuri'') e la a tigiri kpoŋ kaŋa ka noba baŋ o yɛlɛ a Japan poɔ, naŋ maŋ di yuoni zaa a July kyuu poɔ a Kyoto poɔ<ref name=":0">https://doi.org/10.1111%2Fj.1548-1425.2009.01135.x</ref>. Tigiri yaga maŋ di la central Kyoto ane a Yasaka Shrine, a tigiri gɔɔrɔ kɔtonne naŋ be a Kyoto's Gion ditirtiki poɔ, la ko o a yuori. O saga na o e la Shinto tigiri, ka o yelboɔraa da ka o maale kyɛ pɛge boma naŋ taa baaloŋ<ref>https://en.wikipedia.org/wiki/Gion_Matsuri#cite_ref-2</ref>. Yɛlɛ yaga maŋ e la a tigiri saga, kyɛ noba baŋ me o la a yi a ''Yamaboko Junkō'' (山鉾巡行) ayi yi be sori zu seɛre naŋ maŋ e a July 17 ane 24.<ref>https://doi.org/10.2307%2F594168</ref>
A tensogɔ ata na zaa maŋ taa la o sori zu yi seɛbo ka ba maŋ boɔle a ka ''yoiyoiyoiyama'' (宵々々山), ''yoiyoiyama'' (宵々山), ane ''yoiyama'' (宵山). A y''oiyama'' tensogɔ, Kyoto's tenne soe maŋ bare la ko sori zu figeloo, ka a dakoroŋ yie na mine naŋ peɛle a sori maŋ yuo la ba dendoɛ ka noba tuuru, ka wulo heirloom e la ba yipɔge ka ba boɔlɔ Folding Screen tigiri (屏風祭り, ''Byōbu Matsuri''). A la waana.meŋ a sori maŋ pa la ne tensogɔ bondikɔɔre ka a mine la ''yakitori'' (barbecued chicken on skewers), ''taiyaki'', ''takoyaki'' (fried octopus balls), ''okonomiyaki'', Japanese yipɔge bonuure, ane bondinuure mine kaŋa.
== Schedule of events ==
* July 2: ''Kujitorishiki'', a lottery to determine the order of floats in the parade, conducted at the municipal assembly hall
* July 7: Shrine visit by ''chigo'' children of ''Ayagasaboko''
* July 10: Lantern parade to welcome ''mikoshi'' (御輿, 'portable shrines')
* July 10: ''Mikoshi arai'', cleansing of ''mikoshi'' with sacred water from the Kamo River
* July 10–13: Building of floats
* July 13 (a.m.): Shrine visit by ''chigo'' children of ''Naginataboko''
* July 13 (p.m.): Shrine visit by ''chigo'' children of Kuse Shrine
* July 14: ''Yoiyoiyoiyama''
* July 15: ''Yoiyoiyama''
* July 16: ''Yoiyama''
* July 16: ''Yoimiya shinshin hono shinji'', art performances
* July 17: Parade of ''yamaboko'' floats
* July 17: Parade of ''mikoshi'' from Yasaka Shrine
* July 18–20: Building of floats
* July 21: ''Yoiyoiyoiyama''
* July 22: ''Yoiyoiyama''
* July 23: ''Yoiyama''
* July 24: Parade of ''yamaboko'' float
* July 24: Parade of ''hanagasa'' (花傘, 'flower parasols')
* July 24: Parade of ''mikoshi'' to Yasaka Shrine
* July 28: ''Mikoshi arai'', cleansing of ''mikoshi'' with sacred water from the Kamo River
* July 31: Closing service at Eki Shrine
=== Hoko sori zu seɛbo ===
* Weight: about 12 tons<ref name=":0" />
* Height: about 27 meters (89 ft)<ref name=":0" />
* Wheel diameter: about 1.9 m (6 ft 3 in)
* Attendants: about 30–40 naŋ ma tagera, gbɛɛyaga dɔba bayi la maŋ mɔnɔ
=== Yama sori zu seɛbo ===
* Weight: 1,200–1,600 kg (2,600–3,500 lb)
* Height: about 6 m (20 ft)
* Attendants: 14–24 noba na tage, bee tuo
== Meŋ la nyɛ ==
* Gion cult
* Japanese festivals
== Notes ==
39kb7hxz9q6ktfx46uh7vydqjccnynz
Sed Festival
0
7212
61865
2026-06-24T10:21:18Z
Eric Gangman
92
Bompaala maaloo
61865
wikitext
text/x-wiki
Sed Tigiri (hb-ed, a leɛroo boɔlaa la /sɛd/, ona la ka banaŋ baŋ ka o e Heb Sed bee Feast of the Tail (zoore)) e la a Egyptian deme paaloŋ poɔ tigiri kaŋa a Pharaoh daŋ da la e a Wederɛ. A yuori ŋa de yi la a Egyptian deme ŋmene naŋ di wolf, a ŋmene na kaŋa yuori la Wepwawet bee Sed. A yuori onaŋ ba e bone neɛzaa naŋ baŋ la a Feast of the Tail, a yuori ŋa de yi la doŋa zoore eŋɛ, bonso a zoore e na bone naŋ mare o puori, a saŋa na, Egyptian saadayel poɔ, a zoore ŋa e la bone naŋ leŋ eŋ a pharaoh gane eŋɛ. A zoore bile ŋa la maŋ bebe a paale tigiri diibu daare ka a doŋa gane toɔ e boŋgbuli.
A Egyptian deme na baŋ maale la bɔgere a leɛre a ko a Pharaoh ka ona ba wa la toɔnɔ a paaloŋ kaara soŋ a yi onaŋ bale bee a ba la laara a yi onaŋ beɛrɛ baaloŋ. A baŋ kɔɔre, kyɛ ka ba di Sed tigiri a yi onaŋ di naa a zeŋ a kogi zu yuomo lezare pie, a paa yi be, yuomo ata de gɛrɛ o anaare soba poɔ, ba maŋ di la a tigiri ŋa. A tigiri ŋa diibu yelnyɔgeraa zaa la ka ba leɛ kaa a paaloŋ yelnyɔgeraa ane bone na ba naŋ sage di. Sed tigiri ŋa taa la yɛlɛ gyamaa aseŋ, bɔgre maaloo aseŋ puoru paala naŋ kpeɛrɛ a teŋɛ poɔ, aŋa a djed naŋ wa piili, a saɔrum bee bovine, phallic bondemannaa naŋ wulo faŋa, dɔɔ ba dɔgebo a pharaoh naa diibu na wagere. A tigiri ŋa diibu meŋ maŋ wullo la lɛ a pharaoh naŋ di naaloŋ a ɔpa ane Egypt puliŋ zaa. Pharaoh e la neɛ naŋ tuuru saaŋkoŋ yɛlɛ kaa a tara soŋ kyɛ o ba kɔɔre ta yuomo lezare ne pie a na pollɔ nɔɛ, see ka o wa di a tigiri ŋa ta taabo kaŋa.
A ne a ŋaa zaa kyɛ Sed tigiri taa la danseɛ a ta ŋa kɔɔ a yi o piilu saŋa a wa tɔ ŋaa a Egypt poɔ. A sed tigiri ŋa e a tigiri kaŋa a Egypt paaloŋ poɔ naŋ yelsɛgebinne gyamaa naŋ tori a kyaare lɛ a tigiri ŋa yeltuuri naŋ tu, a yi Amenhotep III gbɛɛ yaga onaŋ maŋ wa yi a fIfth Dynasty King Neuserra a Abu Ghurab, naŋ be a Akhenaten meŋ naŋ be a Karnak paaloŋ ane meŋ ona la a soga poɔ iribu a yi Dynasty naaloŋ ayi soba na a yi a noba lezare na poɔ a Osorkon naŋ be a Bubastis.
A tigiri piilu a yi a dakoreŋ na
Danseɛ bebe kperaa lɛ a kyaare lɛ a Pharaoh piilu a kyaare ne a Dynastiɔ piilu meŋ wagere na poɔ ane a Old Kingdom poɔ a kyaare ne Heb Sed, tigri diibu, a yi Dynasty Pharaoh Den ane ata Dynasty pharaoh Djoser. A Pyramid naŋ be a Djoser, a poɔ , a be meŋ taa la turibogi ayi, kusibe la be a Heb Sed merɛ sɛŋ, ona la be a pyramid soga poɔ. O meŋ da la wuli la a Heb Sed ziiri dendoɔre lambori kaŋa naŋ be a pyramid. A kusibe turibogiri ayi ama zaa taa la tontoɔre , ka ana la ka a maŋ wulu la Djoser naŋ be a Egypt sazu ane a sapare,a kuuni binzie la maŋ wuli ka ba baŋ toɔ kyoge tigiri diibu ka banaŋ wa toɔ tu a yeltuuri zaa iri bare a o kuu puoriŋ.
Sed tigiri ŋa e la a tigiri koraa kaŋa naŋ daŋ bebe a taa danseɛ a kyaare ne a Dynasty pharaoh Papi I Meryre ayoɔbo soba naŋ be a South Saqqara Stone Annal yelsɛge binne poɔ, a yelsɛge binne ama ta la yuomo lezaa ayi, aneazaa ka a saaŋ la. A yi be, yoe mine bebe ka ba maŋ de di ko a Papi I’s Sed tigiri ŋa saŋa.
A ŋaa wa baare ba maŋ de la boma te tu a yeltuuri anaŋ zaa naŋ senne ka a e danseɛ ko a Sed tigri a yi Dynasty ayoɔbo puoriŋ.
Middle Kingdom (A Soga poɔ Naayiri)
A soga poɔ naayiri, wagere, na, a pharaoh faŋa na onaŋ da taa da leɛ la bone banaŋ te soore kaa sɛre kyɛ wa mɛ a biŋ a naayiri kore na poɔ.
Amenemhat I, a yi a danseɛ anaŋ onaŋ wuli, a yi o birikyiri onaŋ de maale ne o bone sa wuli la o meŋa bie Senusret I. A yi lɛ onaŋ manne a yeltuuri ka tutaa na, a
9ut6071tz1thto4knuf09fz99tofdsp