Moduł:StronicowyParser/obiekty
Zobacz podstrony tego modułu.
|
local p={};
local m={};
p.wypowiedzi={
{"Twierdzenie", nil,nil,"Twierdzenia",2,"twierdzeniami","twierdzeń",},
{"Hipoteza",nil,nil,"Hipotezy", 2,"hipotezami","hipotez",},
{"Lemat", nil,nil,"Lematu",2,"lematami","lematów",},
{"Kryterium", nil,nil,"Kryterium",2,"kryteriami","kryteriów",},
{"Dowód", nil,nil,"Dowodu",2,"dowodami","dowodów",},
{"Postulat", nil,nil,"Postulatu",2,"postulatami","postulatów",},
{"Postulaty", nil,nil,"Postulatów",2,"grupami postulatów","grup postulatów",},
{"Określenie", nil,nil,"Określenia",2,"definicjami","definicji",},
{"Zadanie", nil,nil,"Zadania",2,"zadaniami","zadań",},
{"Praktyka",nil,nil,"Praktyki",2,"ćwiczeniami","ćwiczeń",},
{"Procedura",nil,nil,"Procedury",2,"procedurami","procedur",},
{"Schemat",nil,nil,"Schematu",2,"schematami","schematów",},
};
p.obiekty={"Obiekt",nil,nil,"Obiektu",2,"nienazwanymi obiektami","nienazwanych obiektów",};
p.normalne={
{"Wzór",{"Wzór2","CentrujWzór","CentrujWzór2","MathMLWzór","MathMLWzór2","CentrujMathMLWzór","CentrujMathMLWzór2",},nil,"Wzoru",2,"wzorami","wzorów",},
{"Rysunek",nil,nil,"Rysunku",2,"rysunkami","rysunków",},
{"Patrz",nil,nil,"Patrz",1,"patrzeniem","patrzenia",},
{"ZobaczTeż",nil,nil,"ZobaczTeż",1,"zobaczeniem też","zobaczenia też",},
};
p.napisy_wprowadzenia_tekstu={
{"Śródtytuł",nil,{"LinkŚródtytułTutaj",},"Śródtytułu",1,"nagłówkami","nagłówków",},
};
p.nazwa_szablonu_wprowadzenia_tekstu="Śródtytuł";
m.LinkiSzablonyNapisuWprowadzeniaTekstu=function()
local s={};
for _,wartosc in ipairs(p.napisy_wprowadzenia_tekstu)do
s[wartosc[1]]={};
local t=s[wartosc[1]];
local i=1;
t[i]="Link"..wartosc[1];
function DalszeLinkiWprowadzeniaTekstu(linki_naglowka,t)
if(type(linki_naglowka)=="table")then
for _,wartosc in ipairs(linki_naglowka)do
i=i+1;
t[i]=wartosc;
end;
else
i=i+1;
t[i]=linki_naglowka;
end;
end;
DalszeLinkiWprowadzeniaTekstu(wartosc[3],t);
end;
return s;
end;
m.NienumerowaneSzablonyNapisuWprowadzeniaTekstu=function()
local s={};
for _,wartosc in ipairs(p.napisy_wprowadzenia_tekstu)do
s[wartosc[1]]=true;
end;
return s;
end;
p.linki_szablony_wprowadzenia_tekstu=m.LinkiSzablonyNapisuWprowadzeniaTekstu();
p.nienumerowane_z_uchwytami_szablony_wprowadzenia_tekstu=m.NienumerowaneSzablonyNapisuWprowadzeniaTekstu();
p.uklad_autonawigacji="Układ autonawigacji";
p.bez_uchwytow_spis_rzeczy_strony={
["TOC"]=true,
["TOCRamka"]=true,
};
p.szablony_z_lokalnym_spisem_rzeczy_strony={
["TOC limit"]=true,
["Spis treści"]=true,
["TOCright"]=true,
["Spis treści zwinięty"]=true,
};
p.szablony_kontenerowe={
["Sekcja referencyjna"]=true,
----------------------------------
["ListaNagłówkówKsiążki"]=true,
["LiniaArtykułuKsiążki"]=true,
----------------------------------
["PomiędzyNagłówek"]=true,
["LosowyNagłówek"]=true,
["PierwszyNagłówek"]=true,
["OstatniNagłówek"]=true,
["LiczbaNagłówkówSpisu"]=true,
----------------------------------
["AktualnaKsiążka"]=true,
["NastępnyArtykuł"]=true,
["PoprzedniArtykuł"]=true,
["NazwaAktualnyArtykuł"]=true,
["LinkAktualnaKsiążka"]=true,
["LinkNastępnyArtykuł"]=true,
["LinkPoprzedniArtykuł"]=true,
----------------------------------
["LinkNastępnySubArtykuł"]=true,
["LinkPoprzedniSubArtykuł"]=true,
----------------------------------
["PierwszyArtykuł"]=true,
["OstatniArtykuł"]=true,
["PomiędzyArtykuł"]=true,
["LosowyArtykuł"]=true,
["PobierzNazwęArtykułu"]=true,
["PobierzNumerArtykułu"]=true,
["NazwaLinkuArtykułu"]=true,
--------------------------------
["PobierzNazwęNagłówka"]=true,
["PobierzNumerNagłówka"]=true,
---------------------------------
["LiczbaArtykułówKsiążki"]=true,
["PoziomNazwyArtykułu"]=true,
---------------------------------
["SubNazwaNadArtykułu"]=true,
["NazwaNadArtykułu"]=true,
["LinkNazwaNadArtykułu"]=true,
["LinkSubNazwaNadArtykułu"]=true,
-----------------------------------
["Autonawigacja"]=true,
};
p.szablony_stronicowe_niekontenerowe={
["ArtykułSubst"]=true,
};
p.szablony_stronicowe_kontenerowe_formatowania_wzorowego={
["Formuła"]=1;
};
----szablony stronicowego parsera
function m.SzablonyStronicowegoParsera()
local t={};
t.szablony_kontenerowe={};
local s=t.szablony_kontenerowe;
t.szablony_wprowadzenia_tekstu={};
local r=t.szablony_wprowadzenia_tekstu;
local function SzablonyUchwytoweNapisuWprowadzeniaTekstu(naglowki,r)
for _,szablony_naglowka in ipairs(naglowki) do
r[szablony_naglowka[1]]=true;
if(szablony_naglowka[2])then
if(type(szablony_naglowka[2])=="table")then
for _,wartosc in ipairs(szablony_naglowka[2])do
r[wartosc]=true;
end;
else
r[szablony_naglowka[2]]=true;
end;
end;
end;
end;
SzablonyUchwytoweNapisuWprowadzeniaTekstu(p.napisy_wprowadzenia_tekstu,r);
local function TabNumer(n,obiekty_szablon,s)
if(obiekty_szablon[n])then
if(type(obiekty_szablon[n])=="table")then
for _,wartosc in ipairs(obiekty_szablon[n])do
s[wartosc]=true;
end;
else
s[obiekty_szablon[n]]=true;
end;
end;
end;
local function RozpatrywanaTablica(tab_obiekty,s)
for _,obiekty_szablon in ipairs(tab_obiekty)do
s[obiekty_szablon[1]]=true;
s["Link"..obiekty_szablon[1]]=true;
TabNumer(2,obiekty_szablon,s);
TabNumer(3,obiekty_szablon,s);
end;
end;
RozpatrywanaTablica(p.normalne,s);
RozpatrywanaTablica(p.wypowiedzi,s);
RozpatrywanaTablica(p.napisy_wprowadzenia_tekstu,s);
TabNumer(2,p.obiekty,s);
TabNumer(3,p.obiekty,s);
local function IndeksowaneNaTak(tab_obiekty,s)
for indeks,_ in pairs(tab_obiekty)do
s[indeks]=true;
end;
end;
IndeksowaneNaTak(p.bez_uchwytow_spis_rzeczy_strony,s);
IndeksowaneNaTak(p.szablony_kontenerowe,s);
return t;
end;
p.szablony_stronicowego_parsera=m.SzablonyStronicowegoParsera();
----koniec szablony pudełka
----Tablica obiektów
function m.TablicaObiektowychForm()
local s={};local r={};
for _,element_w_tablicy_obiekty in pairs(p.normalne)do s[#s+1]=element_w_tablicy_obiekty;end;
for _,element_w_tablicy_obiekty in pairs(p.wypowiedzi)do s[#s+1]=element_w_tablicy_obiekty;end;
for _,element_w_tablicy_obiekty in pairs(p.napisy_wprowadzenia_tekstu)do s[#s+1]=element_w_tablicy_obiekty;end;
for _,element_w_tablicy_obiekty in pairs(p.normalne)do r[#s+1]=element_w_tablicy_obiekty;end;
for _,element_w_tablicy_obiekty in pairs(p.wypowiedzi)do r[#s+1]=element_w_tablicy_obiekty;end;
p.tablica_mozliwych_obiektow_bez_obiektu_nienazwanego=s;
p.tablica_mozliwych_numerowanych_obiektow_bez_obiektu_nienazwanego=r;
s[#s+1]=p.obiekty;
return s;
end;
----
m.ElementyObiektoweNumerowaneINienumerowaneZUchwytami=function()
function Obiekty(s,obiekty)
for _,tab_obiektow in ipairs(obiekty)do
s[tab_obiektow[1]]={tab_obiektow[1],tab_obiektow[5],};
local tab_szablony=tab_obiektow[2];
if(tab_szablony)then
if(type(tab_szablony)=="table")then
for _,element in ipairs(tab_szablony)do
s[element]={tab_obiektow[1],tab_obiektow[5],};
end;
else
s[tab_szablony]={tab_obiektow[1],tab_obiektow[5],};
end;
end;
end;
end;
local s={};local r={};
Obiekty(s,p.wypowiedzi);
Obiekty(s,p.normalne);
Obiekty(r,p.napisy_wprowadzenia_tekstu);
return {numerowane_obiekty=s,nienumerowane_obiekty_napisu_wprowadzenia_tekstu=r,};
end;
p.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane=m.ElementyObiektoweNumerowaneINienumerowaneZUchwytami();
m.ElementyReferencjiObiektowychNumerowanychZUchwytami=function()
function Obiekty(s,linkobiekty)
for _,tab_obiektow in ipairs(linkobiekty)do
s["Link"..tab_obiektow[1]]=tab_obiektow[1];
local tab_szablony=tab_obiektow[3];
if(tab_szablony)then
if(type(tab_szablony)=="table")then
for _,element in ipairs(tab_szablony)do
s[element]=tab_obiektow[1];
end;
else
s[tab_szablony]=tab_obiektow[1];
end;
end;
end;
end;
local s={};local r={};
Obiekty(s,p.wypowiedzi);
Obiekty(s,p.normalne);
Obiekty(r,p.napisy_wprowadzenia_tekstu)
return {numerowane_obiekty=s,nienumerowane_obiekty_napisu_wprowadzenia_tekstu=r,};
end;
p.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane=m.ElementyReferencjiObiektowychNumerowanychZUchwytami();
m.FormatElementowyObiektowy=function()
local s={};
function Obiekty(s,obiekty)
for _,tab_obiektow in ipairs(obiekty)do
s[tab_obiektow[1]]=true;
end;
end;
Obiekty(s,p.wypowiedzi);
Obiekty(s,p.normalne);
return s;
end;
p.format_elementowy_obiektowy=m.FormatElementowyObiektowy();
m.FormatElementowyReferencjiObiektowych=function()
local s={};
function Obiekty(s,obiekty)
for _,tab_obiektow in ipairs(obiekty)do
local element=mw.getContentLanguage():lcfirst(tab_obiektow[1]);
s[element]=true;
end;
end;
Obiekty(s,p.wypowiedzi);
Obiekty(s,p.normalne);
return s;
end;
p.format_elementowy_referencji_obiektowy=m.FormatElementowyReferencjiObiektowych();
----
----
p.tablica_obiektowych_form=m.TablicaObiektowychForm();
p.szablony_stron_zbiorczych={
["KsiążkaSubst"]=true,
["StronaSubst"]=true,
};
p.inne_szablony_stron_zbiorczych={
["Sekcja referencyjna"]=true,
}
m.StronyZbiorcze=function()
local s={};
local function Ziorcze(tab)
for name,_ in pairs(tab)do
s[name]=true;
end;
end;
Ziorcze(p.szablony_stron_zbiorczych);
Ziorcze(p.inne_szablony_stron_zbiorczych);
return s;
end;
p.strona_zbiorcza=m.StronyZbiorcze();
p.strona_start_inne={
["StandardowaStronaStart"]=true,
["PodstawowaStronaStart"]=true,
["ProstaStronaStart"]=true,
};
p.strona_start={
["StronaStart"]=true,
};
p.strona_start_ze_spisem_rzeczy_strony={
["UnikatowaStronaStart"]=true,
["UnikalnaStronaStart"]=true,
["SkomplikowanaStronaStart"]=true,
};
p.strona_start_analiza_zaawansowana_spis_rzeczy_strony={
["SkomplikowanaStronaStart"]=true,
};
m.SzablonyFormartowaniaTekstu=function()
local s={};
local function DodatDoTablicy(tab)
for name,_ in pairs(tab)do
s[name]=true;
local name_koniec,_=mw.ustring.gsub(name,"Start$","Koniec");
s[name_koniec]=true;
end;
end;
DodatDoTablicy(p.strona_start);
DodatDoTablicy(p.strona_start_ze_spisem_rzeczy_strony);
DodatDoTablicy(p.strona_start_analiza_zaawansowana_spis_rzeczy_strony);
DodatDoTablicy(p.strona_start_inne);
return s;
end;
p.szablony_stronicowe_formatowania_tekstu=m.SzablonyFormartowaniaTekstu();
p.tablica_nazw_ramek_lua={
"StronicowyParser",
};
----Koniec tablica obiektów
p.tablica_nazw_napisu_wprowadzenia_tekstu_pomijanych_w_rozwazaniach_na_stronach_otwarcia_woluminu={
["licencja"]=true,
["inne"]=true,
["bibliografia"]=true,
["zobacz też"]=true,
["linki zewnętrzne"]=true,
--[[["dedykacja"]=true,]]
};
p.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu={
["spis treści"]=true,
["spis rzeczy"]=true,
};
--[[p.tablica_nazw_wprowadzenia_tekstu_dodatkowych={
["bibliografia"]=true,
["literatura"]=true,
};]]
p.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_spis_tresci={
[1]={"^[%s_]*'*[%s_]*[Ss][Pp][Ii][Ss][%s_]+[Tt][Rr][Ee][ŚśSs][Cc][Ii][%s_]*'*[%s_]*:?[%s_]*'*[%s_]*$","[ _]*'*[ _]*[Ss][Pp][Ii][Ss][ _]+[Tt][Rr][Ee][ŚśSs][Cc][Ii][ _]*'*[ _]*:?[ _]*'*[ _]*",},
[2]={"^[%s_]*'*[%s_]*[Ss][Pp][Ii][Ss][%s_]+[Rr][Zz][Ee][Cc][Zz][Yy][%s_]*'*[%s_]*:?[%s_]*'*[%s_]*$","[ _]*'*[ _]*[Ss][Pp][Ii][Ss][ _]+[Rr][Zz][Ee][Cc][Zz][Yy][ _]*'*[ _]*:?[ _]*'*[ _]*",},
};
p.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe={
[1]={"^[%s_]*'*[%s_]*[Ll][Ii][Tt][Ee][Rr][Aa][Tt][Uu][Rr][Aa][%s_]*'*[%s_]*:?[%s_]*'*[%s_]*$","[ _]*'*[ _]*[Ll][Ii][Tt][Ee][Rr][Aa][Tt][Uu][Rr][Aa][ _]*'*[ _]*:?[ _]*'*[ _]*",false,},
[2]={"^[%s_]*'*[%s_]*[Bb][Ii][Bb][Ll][Ii][Oo][Gg][Rr][Aa][Ff][Ii][Aa][%s_]*'*[%s_]*:?[%s_]*'*[%s_]*$","[ _]*'*[ _]*[Bb][Ii][Bb][Ll][Ii][Oo][Gg][Rr][Aa][Ff][Ii][Aa][ _]*'*[ _]*:?[ _]*'*[ _]*",true,},
};
p.artykularne_niespisowe={
[1]="^[Oo][Kk][ŁłLl][Aa][Dd][Kk][Aa]$",
[2]="^[Ww][Ss][Tt][ĘęEe][Pp]$",
};
p.szablony_dozwolone_z_elementami_spisu_rzeczy_stron_woluminu={
["Kolumny"]=2,
};
p.szablony_dozwolone_w_napisach_do_wprowadzenia_tekstu={
["MDL:RozszerzonyLink"]=1,
["Kompletność"]="",
["Kompletność krótka"]="",
["Kompletność junior"]="",
["Książka"]="",
};
p.szablony_z_dodatkiem_obiektowym={
["ISBN"]="ISBN $(1)";
};
p.szablony_rozwijane_przez_javascript_w_napisach_wprowadzenia_tekstu={
["Cytuj"]=true,
["Cytuj stronę"]=true,
["Cytuj pismo"]=true,
["Cytuj odcinek"]=true,
["Cytuj książkę"]=true,
["Cytuj grę komputerową"]=true,
};
p.szablony_dozwolone_w_nazwach_linkowych={
["Korekta"] =2,
};
p.szablony_rozwijane_przez_javascript_nazwowe_linkowe={
};
p.szablony_do_usuwania_z_tekstu={
--- szablony książkowe umieszczane na stronie głównej podręcznika
["Kolekcja"]=true,
["TODO"]=true,
["Wersja do druku"]=true,
--- szablony typowo linkowe
["Dane tekstu"]=true,
--- szablony linkowania do innych projektow
["MediaWiki"]=true,
["Wikipedia"]=true,
["Wikipedia kat"]=true,
["Wikipedia2"]=true,
["Commons"]=true,
["Commons ilustr kat"]=true,
["Commonsall"]=true,
["Commonscat"]=true,
["Wikiatlas"]=true,
["Wikicytaty"]=true,
["Wikicytaty przysłowia"]=true,
["Inkubator"]=true,
["Meta"]=true,
["Wikinews"]=true,
["Wikinewscat"]=true,
["Wikinewsy"]=true,
["Portal Wikinews"]=true,
["Wikisłownik"]=true,
["Wikisłownik-cat"]=true,
["Wikimedia"]=true,
["Multiwmpl"]=true,
["Wikipodróże"]=true,
["Wikispecies"]=true,
["Multisource"]=true,
["Wikiźródła"]=true,
["Wikiźródła autor"]=true,
["Wikiźródła kat"]=true,
["Wikiźródła kuch kat"]=true,
["Wikiźródła krótki"]=true,
["Wikisource-lang"]=true,
};
p.linki_szablony_elementy_spisu_rzeczy={
["SpisTreści"]=true,
["Sekcja referencyjna"]=true,
["Link wewnętrzny"]=true,
["LinkOgólne"]=true,
--[[["LinkGłówna"]=true,
["LinkWikijunior"]=true,
["LinkWikijunior2"]=true,
["LinkProjekt"]=true,
["LinkProjekt2"]=true,
["LinkUżytkownik"]=true,
["LinkUżytkownik2"]=true,]]
};
p.kody_szablony_linkowe_przestrzenne={
["Główna"]={"",},
["Kategoria"]={"Category",},
["Plik"]={"File",},
["Projekt"]={"Project",},
["Szablon"]={"Template",},
["Użytkownik"]={"User",},
["Pomoc"]={"Help",},
["Moduł"]={"Module",},
["Komunikat"]={"MediaWiki",},
["Specjalna"]={"Special",},
["Wikiprojekt"]={"Wikiproject","w",},
["Portal"]={"Portal","w",},
["Extension"]={"Extension","mw",},
};
p.kody_szablony_linkowe_projektowe={
["Pedia"]="w",
["Źródła"]="s",
["Cytaty"]="q",
["News"]="n",
["Słownik"]="wikt",
["Podróże"]="voy",
["Wersytet"]="betawikiversity",
["Species"]="wikispecies",
["Commons"]="commons",
["Dane"]="d",
["MediaWiki"]="mw",
["MetaWiki"]="m",
};
p.kody_szablony_linkowe_dialektu={
["En"]="en",
};
p.inne_linki_szablony_elementy_spisu_rzeczy={
["SpisPozycja"]={true,numer_link="tyt",},
["SpisZw"]={false,numer=1,link=2,},
};
p.szablony_w_nie_w_tej_samej_linii={
["SpisPozycja"]=true,
["SpisZw"]=true,
["SpisTreści"]=true,
};
p.szablony_kompletowania_stron_woluminu={
["Kompletność"]=true,
["Kompletność krótka"]=true,
["Kompletność junior"]=true,
["Książka"]=true,
};
p.szablony_wprowadzenia_napisu_spisu_rzeczy={
["Ce"]=1,
["Centruj"]=1,
["Center"]=1,
};
p.szablony_dokumentacji={
["Dokumentacja"]=true,
};
p.szablony_wykorzystywane_przez_strony_zbiorcze={
["Sekcja referencyjna"]=true,
};
p.szablony_licencji={
["Licencja"]=true,
};
p.szablony_ozdobne_stron_woluminu={
["MDL:RozszerzonyLink"]=true,
};
p.szablony_bez_generowania_napisowego={
["Status"]=true,
};
p.szablony_nieodpowiednie_napisu_wprowadzenia_tekstu_centrowanego={
["Rozdział"]=true,
["Podrozdział"]=true,
["MapaObrazu"]=true,
};
p.strony_main_page_projektu={
["Wikijunior:Strona główna"]=true,
["Wikibooks:Strona główna"]=true,
["Strona główna"]=true,
["Main Page"]=true,
}
p.szablony_nie_typowo_linkowe={
["Plik"]=true,
["Kategoria"]=true,
["Kategorie"]=true,
["Wolumin"]=true,
};
p.szablony_przypisowe={
["Przypisy"]=true,
["Uwagi"]=true,
["Przypisy-lista"]=true,
};
p.napisy_wprowadzenia_tekstu_przypisowych={
["Przypisy"]=true,
["Uwagi"]=true,
["Bibliografia"]=true,
["Licencja"]=true,
};
p.magiczne_derektywy={
["TOC"]=true,
["NOTOC"]=true,
}
p.znaczniki_szablonowe={
["Znacznik"]=1,
["Div"]=1,
["Code"]=1,
["Tt"]=1,
["P"]=1,
["Sub"]=1,
["Sup"]=1,
["Span"]=1,
["Bdo"]=1,
["Small"]=1,
["Big"]=1,
["Strong"]=1,
};
p.szablony_indeksowania={
["Kotwica"] =true,
["Indeksuj"]=true,
};
return p;