Moduł:Ramka: Różnice pomiędzy wersjami
Usunięta treść Dodana treść
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 443:
local maksymalna_liczba_nazwy_danego_parametru=0;
for nazwa_parametru, wartosc_parametru in pairs(args)do
local czy_jedynka=false;
if(type(nazwa_parametru)=="string")then
local nazwa_podstawy_parametru,spacja,liczba=mw.ustring.match(nazwa_parametru,"^([%a%s]*%a)(%s?)(%d+)$");
Linia 449 ⟶ 450:
spacja="";
liczba=1;
czy_jedynka=true;
end;
local subtab=tabela[nazwa_podstawy_parametru];
if(subtab)then
local nie_spacja_parametru=parametry_modul.CzyTak(subtab[1]);
local czy_z_jedynka=parametry_modul.CzyTak(subtab[2]);
liczba=tonumber(liczba) or 0;
if
or
)then
if(((podstawa_parametru_wyszukiwana) and (nazwa_podstawy_parametru==podstawa_parametru_wyszukiwana))or(not podstawa_parametru_wyszukiwana))then
Linia 473 ⟶ 476:
if(type(wartosc_parametru)=="string")then
local maksymalna_liczba_nazwy_danego_parametru=LiczbaZmiennychOOgolniePodstawieParametru(wartosc_parametru);
maksimum=
and math.max(maksimum,maksymalna_liczba_nazwy_danego_parametru-(tonumber(tabela[wartosc_parametru][
or (tonumber(maksymalna_liczba_nazwy_danego_parametru) or 0);
end;
Linia 525 ⟶ 528:
if(zacznij_na_poczatku==0)then return "(początek jest ustawiony na zero)";end;
for name, tab_par in pairs(tabela)do
if(tab_par[
if(tab_par[
end;
Linia 535 ⟶ 538:
local wytnij=parametry_modul.CzyTak(frame.args["wytnij"]);
local _i=parametry_modul.CzyTak(frame.args["znacznik"])and frame.args["znacznik"] or "_";
local
local value=tabela[nazwa_parametru];
if(value)then
return not parametry_modul.CzyTak(value[1]),parametry_modul.CzyTak(value[2]);
end;
return true,false;
end;
if(not czy_rozne)then
Linia 553 ⟶ 556:
for zmienne_parametrowe,_ in pairs(tabela_wszystkich_parametrow)do
if(zmienne_parametrowe)then
local
local element2=pf.args[zmienne_parametrowe..((
local czy2=(licznik==1)and ((element2 and(not wytnij)) or((wytnij)and (parametry_modul.CzyTak(element2))));
local
czy=czy or (((element
local tabelka_szablonow={
["{{".._i.."}}"]=licznik,
["{{".._i.._i.."}}"]=((not czy2)and((licznik>1)and licznik or ((not czy_z_jedynka) and "" or 1)) or 1),
};
lancuch=mw.ustring.gsub(lancuch,"{{".._i.."+}}",tabelka_szablonow);
Linia 600 ⟶ 603:
local czy_niepuste=false;
local wytnij_ujemne=false;
local function Analiza_zmiennej_parametrowej(zmienne_parametrowe,licznik,
local wartosc,klucz;
if(zmienne_parametrowe)then
Linia 607 ⟶ 610:
if(liczb2<1)then wytnij_ujemne=true;end;
if(liczb2>0)then
local
local czy2=(liczb2==1)and element;
czy_niepuste=parametry_modul.CzyTak(czy2);
local wartosc_elementu=
and element
or (czy2 and element or pf.args[element..((liczb2>1)and ((czy_ze_spacja)and " " or "")..liczb2 or "")]);
czy_niepuste=czy_niepuste or parametry_modul.CzyTak(wartosc_elementu);
czy=czy or wartosc_elementu or czy2;
wartosc="{{{"..zmienne_parametrowe..((not czy_z_jedynka) and ((not czy2)and((liczb2>1)and (((
or ((
klucz="{{{%s*"..zmienne_parametrowe..((
end;
end;
local subtab=tabela[zmienne_parametrowe];
local czy_w_tabeli=subtab and subtab[
local liczba_przesuniecia=(czy_w_tabeli)and czy_w_tabeli or 0;
Niewspomniane_w_rozne(zmienne_parametrowe,liczba_przesuniecia);
Linia 636 ⟶ 642:
if(lokalizacja)then
zmienne_parametrowe=mw.text.trim(zmienne_parametrowe);
local klucz,wartosc=Analiza_zmiennej_parametrowej(zmienne_parametrowe,licznik,czy_ze_spacja,czy_z_jedynka);
if(wytnij_ujemne)then break;end;
lancuch_zaanalizowany=Tekst_do_analizy(lancuch_zaanalizowany,klucz,wartosc);
|