Wikibooks plwikibooks https://pl.wikibooks.org/wiki/Wikibooks:Strona_g%C5%82%C3%B3wna MediaWiki 1.48.0-wmf.3 first-letter Media Specjalna Dyskusja Wikipedysta Dyskusja wikipedysty Wikibooks Dyskusja Wikibooks Plik Dyskusja pliku MediaWiki Dyskusja MediaWiki Szablon Dyskusja szablonu Pomoc Dyskusja pomocy Kategoria Dyskusja kategorii Wikijunior Dyskusja Wikijuniora TimedText TimedText talk Moduł Dyskusja modułu Wydarzenie Dyskusja wydarzenia Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom I 4 64467 560606 560411 2026-11-04T12:06:30Z Persino 2851 560606 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.SpisRzeczySzablon}}{{Code|p.SpisRzeczySzablon}} == Funkcja zmieniająca numer parametru, któremu jest przyporządkowana jego nazwa parametru, szablonu na jego nazwę, a później jest to zamieniane na jego wartość względem parametrów szablonu. Funkcja posiada pamięć, aby nie znajdować tablicy, któremu jest przyporządkowana nazwa szablonu. Funkcja posiada wybór pomiędzy dwoma tablicami, tzn. pomiędzy {{Code|{{sr|#p.szablony_spisu_rzeczy_artykularnego_wprowadzenia_tekstu|p=StronicowyParser/obiekty}}}}: {{Tbl|uchwyt=p.szablony_spisu_rzeczy_artykularnego_wprowadzenia_tekstu|tekst= <syntaxhighlight lang="lua"> p.szablony_spisu_rzeczy_artykularnego_wprowadzenia_tekstu={ ["SpisTreści"]={{"artykuł",1,},{"książka",2,},{"nazwa",3,},{"dodatek",4,},{"poziom",},}, }; </syntaxhighlight>}} A tablicą drugą {{Code|{{sr|#p.szablony_linkowe_spisu_rzeczy|p=StronicowyParser/obiekty}}}}: {{Tbl|uchwyt=p.szablony_linkowe_spisu_rzeczy|tekst= <syntaxhighlight lang="lua"> p.szablony_linkowe_spisu_rzeczy={ ["Sekcja referencyjna"]={{"strona","s",1,},{"nazwa","n",2,},{"podstrona","p",3},{"ustęp","u",4},{"od małej","m"},{"od dużej","d",},{"nazwa przestrzeni nazw",},{"nazwa jednostki",},}, }; </syntaxhighlight>}} Skrótowa definicja funkcji: <syntaxhighlight lang="lua"> function p.SpisRzeczySzablon(nazwa_szablonu,numer,tabela_parametrow_szablonu,tabela_nazw_spisu_rzeczy_szablon,kod_num)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|nazwa_szablonu}} {{Patrz|nazwa_szablonu}} | _1 = Nazwa szablonu, któremu jest przyporządkowana pewna tablica. | 2 = {{Code|numer}} {{Patrz|numer}} | _2 = Numer parametru. | 3 = {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} | _3 = Tabela parametrów szablonu. | 4 = {{Code|tabela_nazw_spisu_rzeczy_szablon}} {{Patrz|tabela_nazw_spisu_rzeczy_szablon}} | _4 = Tabela historii, dzięki któremu jest pamiętana tablica przyporządkowana nazwie szablonu {{Code|nazwa_szablonu}} {{LinkPatrz|nazwa_szablonu}}. Ta tablica w historii, ma wtedy zapamiętany klucz: {{Code|numer_parametru}} {{Patrz|numer_parametru}}. | 5 = {{Code|kod_num}} | _5 = Wartość odpowiadająca logicznej, dzięki któremu jest wybierana jakaś tablica. Wartości odpowiadającej fałszywej, co odpowiada: {{LinkTbl|p.szablony_spisu_rzeczy_artykularnego_wprowadzenia_tekstu}}, a innej: {{LinkTbl|p.szablony_linkowe_spisu_rzeczy}}. }} == {{Śródtytuł|p.LiczonyHNumer}}{{Code|p.LiczonyHNumer}} == Funkcja do liczenia numeracji rozdziałów i artykułów, którym jest przyporządkowany pewien poziom. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.LiczonyHNumer() ... return function(h_numer,h_numer_nowe) ... end; end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Brak parametrów | komórka1 = tak }} {{OpisParametrów | tytuł = Opis parametrów funkcji zwracanej: | 1 = {{Code|h_numer}} {{Patrz|h_numer}} | _1 = Poziom rozdziału lub artykułu (wymagany). | 2 = {{Code|h_numer_nowe}} {{Patrz|h_numer_nowe}} | _2 = Numer poziomu przyporządkowany danemu poziomowi (opcjonalny) }} Wywołanie funkcji mniej więcej polega na tym: <syntaxhighlight lang="lua"> local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne"); local HNumer=stronicowyparser_potrzebne_modul.LiczonyHNumer(); ... ---- Funkcja wywołana wiele razy, dla różnych poziomów rozdziałów i artykułów, a tutaj jest pojedynczy przykład: local numer_poziomu=HNumer(2); </syntaxhighlight> {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 6u07yfrv12tj443fzjlk6gj116uuae8 Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom II 4 64468 560607 560200 2026-11-04T12:10:12Z Persino 2851 560607 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.PoziomAdresu}}{{Code|p.PoziomAdresu}} == Funkcja licząca poziom adresu. Jeśli adres ma jedną kresko ukośną prawą, to poziom jest dwa, czyli poziom jest to liczba takich kresem plus jeden. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.PoziomAdresu(adres)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|adres}} {{Patrz|adres}} | _1 = To jest adres czegoś tam, napisaną za pomocą kresek poziomych. }} == {{Śródtytuł|p.NazwaNadStrony}}{{Code|p.NazwaNadStrony}} == Funkcja licząca adres nadstrony dla danego adresu strony: {{Code|adres}} {{LinkPatrz|adres}}. Jeżeli poziom {{Code|numer}} {{LinkPatrz|numer}} jest jeden, to adres nadstrony jest pusty. <syntaxhighlight lang="lua"> function p.NazwaNadStrony(adres,numer)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|adres}} {{LinkPatrz|adres}} | _1 = Adres czegoś tam, napisaną za pomocą liter i odstępów, a czasami za pomocą kresem ukośników prawych. | 2 = {{Code|numer}} {{Patrz|numer}} | _2 = Poziom adresu nadstrony, który chcemy wyznaczyć. }} == {{Śródtytuł|p.SubNazwaNadStrony}}{{Code|p.SubNazwaNadStrony}} == Funkcja licząca nazwę części adresu substrony: {{Code|adres}} {{LinkPatrz|adres}}, o danym poziomie: {{Code|numer}} {{LinkPatrz|numer}}, posiadająca o jeden mniej prawych ukośników niż to wskazuje krok: {{Code|krok}} {{LinkPatrz|krok}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.SubNazwaNadStrony(adres,numer,krok)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|adres}} {{LinkPatrz|adres}} | _1 = Adres posiadający ileś tam kresem ukośnych prawych, lub nie posiadająca ich wcale. | 2 = {{Code|numer}} {{LinkPatrz|numer}} | _2 = Numer poziomu, od którego dla którego zaczyna się ciąg subnazwystrony, którego chcemy wydobyć. | 3 = {{Code|krok}} {{Patrz|krok}} | _3 = Liczba kolejnych poziomów wzwyż, którego ta nazwa powinna zawierać ta wydobywana. }} == {{Śródtytuł|p.KompletnaNazwaWoluminu}}{{Code|p.KompletnaNazwaWoluminu}} == Liczy kompletną pełną nazwę woluminu bieżącego na podstawie zmiennych artykularnych danego artykułu. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.KompletnaNazwaWoluminu(self,frame)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji {{nobold|{{ZobaczTeż|p.KompletnaNazwaWoluminu}}}}: | 1 = {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}| _1 = Zmienna modułowa ramki funkcji modułu tablicy transportu. | 2 = {{Code|frame}} {{Patrz|frame}} | _2 = Tablica ramki funkcji tablicy transportu. }} Funkcja korzysta ze zmiennych artykularnych ze zmiennej obiektowej: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczach o nazwach: {{Code|nazwa_przestrzeni}} {{LinkPatrz|nazwa_przestrzeni|StronicowyParser/Potrzebne/Tom III}} - nazwa przestrzeni nazw artykułu bieżącego, {{Code|nazwa_przestrzeni_woluminu}} {{LinkPatrz|nazwa_przestrzeni_woluminu|StronicowyParser/Potrzebne/Tom III}} - nazwa przestrzeni nazw książki artykułu danego, i {{Code|nazwa_woluminu}} {{LinkPatrz|nazwa_woluminu|StronicowyParser/Potrzebne/Tom III}} - nazwa woluminu. == {{Śródtytuł|p.NazwaPodStronyWoluminu}}{{Code|p.NazwaPodStronyWoluminu}} == Funkcja liczy nazwę podstrony strony artykułu wraz z jego parametrami i na końcu z nagłówkiem. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.NazwaPodStronyWoluminu(self,frame)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja ma te same parametry i one to samo znaczą, jak w punkcie: {{LinkZobaczTeż|p.KompletnaNazwaWoluminu}}. | komórka1 = tak }} Funkcje wykorzystuje elementy zmiennej: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, tzn. kluczy o nazwach: {{Code|nazwa_podstrony_woluminu}} {{LinkPatrz|nazwa_podstrony_woluminu|StronicowyParser/Potrzebne/Tom III}}, {{Code|parametry}} {{LinkPatrz|parametry|StronicowyParser/Potrzebne/Tom III}} i {{Code|naglowek}} {{LinkPatrz|naglowek|StronicowyParser/Potrzebne/Tom III}}. Te wartości o tych nazwach są łączone ze sobą w ten sposób powstaje, co powinno być. == {{Śródtytuł|p.StronaArtykularnaKompletna}}{{Code|p.StronaArtykularnaKompletna}} == Funkcja liczy artykuł lub pełną nazwę artykułu danej bieżącej książki danego artykułu przeglądanego w przeglądarce, w zależności od pewnych zmiennych podanych w parametrach funkcji. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.StronaArtykularnaKompletna(artykul,pelna_nazwa_ksiazki_w_bazie,przekierowanie_w_bazie,naglowek,ksiazka,analizowana)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|artykul}} {{Patrz|artykul}} | _1 = Nazwa artykułu w {{ZobaczTeż|książka}} danej książce. | 2 = {{Code|pelna_nazwa_ksiazki_w_bazie}} {{Patrz|pelna_nazwa_ksiazki_w_bazie}} | _2 = Pełna nazwa książki danej książki {{LinkZobaczTeż|książka}}. | 3 = {{Code|przekierowanie_w_bazie}} {{Patrz|przekierowanie_w_bazie}} | _3 = Tabela bazy przekierowań. | 4 = {{Code|naglowek}} {{Patrz|naglowek-p.StronaArtykularnaKompletna}} | _4 = Uwzględnij nagłówek w adresie artykułu. | 5 = {{Code|ksiazka}} {{Patrz|ksiazka}} | _5 = Napisz pełną nazwę książki bieżącej, w adresie artykułu, a jeżeli jest na stronie głównej przekierowanie, na którą ona wskazuje. | 6 = {{Code|analizowana}} {{Patrz|analizowana}} | _6 = Napisz pełną nazwę książki bieżącej, w adresie artykułu, a jeżeli jest na stronie głównej przekierowanie, to go nie uwzględniaj. }} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 88n94rfe9oa3dvkje7kpgrc04sj3x5w Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom III 4 64469 560608 560347 2026-11-04T15:34:33Z Persino 2851 560608 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.ParametryKonteneraWoluminu}}{{Code|p.ParametryKonteneraWoluminu}} == Funkcja generująca ustawienia zmiennej: {{Code|self}} {{LinkPatrz|self}}, w odpowiednio w odpowiednich kluczach: Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.ParametryKonteneraWoluminu(self,frame,tabela_listy_danych_analizy_ksiazki)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji {{nobold|{{ZobaczTeż|parametry-p.ParametryKonteneraWoluminu}}}}: | 1 = {{Code|self}} | _1 = Jak w: {{LinkPatrz|self}}. | 2 = {{Code|frame}} | _2 = Jak w: {{LinkPatrz|frame}}. | 3 = {{Code|tabela_listy_danych_analizy_ksiazki}} | _3 = Jak w: {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}. }} Funkcja sprawdza, czy są zmienne o pewnych kluczach w zmiennej: {{Code|self}} {{LinkPatrz|self}}, o nazwach: {{Code|nazwa przestrzeni nazw}} {{Patrz|nazwa przestrzeni nazw}}, i {{Code|nazwa jednostki}} {{Patrz|nazwa jednostki}}. * Jeżeli te zmienne, któreś z nich lub wszystkie, istnieją to: : liczona jest zmienna: {{Code|self}} {{LinkPatrz|self}}, o kluczach: {{Code|naglowek}} {{Patrz|naglowek}}, i {{Code|parametry}} {{Patrz|parametry}}. : Liczone są inne o kluczach poprzedniego parametru: {{Code|nazwa_przestrzeni}} {{LinkPatrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{LinkPatrz|nazwa_przestrzeni_woluminu}}, {{Code|nazwa_woluminu}} {{LinkPatrz|nazwa_woluminu}}, i {{Code|nazwa_podstrony_woluminu}} {{LinkPatrz|nazwa_podstrony_woluminu}}. : Generowany jest parametr tej zmiennej o kluczu: {{Code|parametry_woluminu}} {{Patrz|parametry_woluminu}}, z wartością: {{Code|false}}. :: Na podstawie zmiennych tablicy wielowymiarowej: {{Code|tabela_listy_danych_analizy_ksiazki}} {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, o kluczach: {{Code|nazwa_przestrzeni}} {{LinkPatrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{LinkPatrz|nazwa_przestrzeni_woluminu}}, i {{Code|nazwa_woluminu}} {{LinkPatrz|nazwa_woluminu}}, wtedy mamy zmienną: {{Code|tab_lista_artykulow_w_ksiazce}} {{LinkPatrz|tab_lista_artykulow_w_ksiazce}}. W tej zmiennej szukamy elementu o kluczu: {{Code|adres_woluminu_bazowego_spisu_rzeczy}} {{Patrz|adres_woluminu_bazowego_spisu_rzeczy}}, której kolejne elementy liczbowe przydzielamy zmiennym z: {{Code|self}} {{LinkPatrz|self}}, tzn.: {{Code|nazwa_przestrzeni}} {{LinkPatrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{LinkPatrz|nazwa_przestrzeni_woluminu}}, i {{Code|nazwa_woluminu}} {{LinkPatrz|nazwa_woluminu}}. * Jeżeli owe nie istnieją: : To z tablicy: {{Code|tabela_listy_danych_analizy_ksiazki}} {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, o kluczach: {{Code|nazwa_przestrzeni}} {{LinkPatrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{LinkPatrz|nazwa_przestrzeni_woluminu}}, i {{Code|nazwa_woluminu}} {{LinkPatrz|nazwa_woluminu}}, są przedzielane ich wartości do {{Code|self}} {{LinkPatrz|self}}: o kluczach: {{Code|nazwa_przestrzeni}} {{LinkPatrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{LinkPatrz|nazwa_przestrzeni_woluminu}}, {{Code|nazwa_woluminu}} {{LinkPatrz|nazwa_woluminu}}, i {{Code|nazwa_podstrony_woluminu}} {{LinkPatrz|nazwa_podstrony_woluminu}}. : Zmiennej: {{Code|parametry_woluminu}} {{LinkPatrz|parametry_woluminu}}, z wartością: {{Code|true}}. == {{Śródtytuł|p.TabelaListyStronWoluminu}}{{Code|p.TabelaListyStronWoluminu}} == Funkcja liczy kolejno parametry tablic zebranych artykułów dla danej przestrzeni nazw, przestrzeni książki, nazwy książki i nazwy artykułu, te tablice dla nich są kolejno {{ZobaczTeż|tabele-p.TabelaListyStronWoluminu}}: {{Code|lista_artykulow_w_ksiazkach_w_danej_przestrzeni}} {{Patrz|lista_artykulow_w_ksiazkach_w_danej_przestrzeni}}, {{Code|tab_lista_ksiazek_w_danej_przestrzeni_nazw_ksiazki}} {{Patrz|tab_lista_ksiazek_w_danej_przestrzeni_nazw_ksiazki}}, {{Code|tab_lista_artykulow_w_ksiazce}} {{Patrz|tab_lista_artykulow_w_ksiazce}}, {{Code|tab_lista_zmiennych_w_artykule}} {{Patrz|tab_lista_zmiennych_w_artykule}}, {{Code|tab_lista_zmiennych_w_artykule}}, liczone w sposób podany w: {{LinkZobaczTeż|czy_podana}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.TabelaListyStronWoluminu(self,frame,tabela_listy_danych_analizy_ksiazki,czy_podana,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu) </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|self}} | _1 = Jak w: {{LinkPatrz|self}}. | 2 = {{Code|frame}} | _2 = Jak w: {{LinkPatrz|frame}}. | 3 = {{Code|tabela_listy_danych_analizy_ksiazki}} | _3 = Jak w: {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}. | 4 = {{Code|czy_podana}} {{Patrz|czy_podana}} | _4 = Czy liczyć {{ZobaczTeż|czy_podana}} tablicę według zmiennych z tym na końcu o kluczach z: {{Code|_podana}}, czy bez tego, dla tablicy: {{Code|tabela_listy_danych_analizy_ksiazki}}, licząc dla odpowiednich tych kluczy jawnych, jak i innych niejawnych, we właściwy sposób, wyznaczając różne tablicę: {{LinkZobaczTeż|tabele-p.TabelaListyStronWoluminu}}. | 5 = {{Code|nazwa_przestrzeni}} {{LinkPatrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}}, i {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} | _5 = Kolejno jako: '''nazwa przestrzeni nazw''', '''nazwa przestrzeni książki''' i '''nazwa książki''', ale te nazwy są dla danej książki. | 6 = {{Code|nazwa_artykulu}} {{Patrz|nazwa_artykulu}} | _6 = Nazwa artykułu strony. }} Funkcja zwraca parametry określone: <syntaxhighlight lang="lua"> return tab_lista_artykulow_w_ksiazce.spis,lista_artykulow_w_ksiazkach_w_danej_przestrzeni,tab_lista_ksiazek_w_danej_przestrzeni_nazw_ksiazki,tab_lista_artykulow_w_ksiazce,tab_lista_zmiennych_w_artykule; </syntaxhighlight> Gdzie zmienna o kluczu: {{Code|spis}} {{Patrz|spis}}, zmiennej: {{Code|tab_lista_artykulow_w_ksiazce}} {{LinkPatrz|tab_lista_artykulow_w_ksiazce}}, to tablica spisu artykułów danej książki. Jeżeli któraś z tablic jest o wartości {{Code|nil}}, to kolejne też są takie, i nie są liczone tam, wtedy w tym podświetlaczu składni, te zmienne przyjmują tą wartość odpowiednio mu danej w kodzie. == {{Śródtytuł|p.AnalizujArgumentySzablonu}}{{Code|p.AnalizujArgumentySzablonu}} == Funkcja wyszukuje parametry funkcją: {{LinkŚródtytuł|p.PobierzArgsParametry|Parametry/Tom XIV}}, i zapamiętuje je w zmiennej: {{Code|self}} {{LinkPatrz|self}}, o kluczu: {{Code|args}} {{Patrz|args}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.AnalizujArgumentySzablonu(self,frame)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji {{nobold|{{ZobaczTeż|parametry-p.AnalizujArgumentySzablonu}}}}: | 1 = {{Code|self}} {{Patrz|self}} | _1 = Zmienna obiektowa ramki tablicy transportu modułu. | 2 = {{Code|frame}} {{Patrz|frame}} | _2 = Zmienna tablicy ramki tablicy transportu modułu. }} == {{Śródtytuł|p.Args}}{{Code|p.Args}} == Funkcja zwraca tablicę parametrów zebranych w zmiennej: {{Code|self}} {{LinkPatrz|self}}, pod kluczem: {{Code|args}} {{LinkPatrz|args}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.Args(self)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|self}} | _1 = Jak w: {{LinkPatrz|self}}. }} == {{Śródtytuł|p.Self}}{{Code|p.Self}} == Funkcja generuje główną tablicę przy pomocy przypisania z: {{Code|tabela_listy_danych_analizy_ksiazki}} {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}} lub policzenia, jeśli ona nie istnieje, z modułu: {{LinkZobaczTeż|informacje}}, zbierając jego klucz o nazwie: {{Code|tablica_zebranych_danych_woluminowych}} {{Patrz|tablica_zebranych_danych_woluminowych}}. Funkcja definiuje i inicjuje pustą tablicą zmienną: {{Code|self_tab}} {{Patrz|self_tab}}. Przypisuje jej elementy o kluczach o odpowiednio: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}}, {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}, i {{Code|nazwa_podstrony_woluminu}} {{Patrz|nazwa_podstrony_woluminu}}, ze zmiennej: {{Code|tabela_listy_danych_analizy_ksiazki}} {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, kolejno o odpowiednich kluczach o takich samych nazwach, jak w tej poprzedniej tablicy. We zmiennej: {{Code|self_tab}} {{LinkPatrz|self_tab}}, zmienne o kluczach: {{Code|nazwa_przestrzeni_podana}} {{Patrz|nazwa_przestrzeni_podana}}, {{Code|nazwa_przestrzeni_woluminu_podana}} {{Patrz|nazwa_przestrzeni_woluminu_podana}}, {{Code|nazwa_woluminu_podana}} {{Patrz|nazwa_woluminu_podana}}, i {{Code|nazwa_podstrony_woluminu_podana}} {{Patrz|nazwa_podstrony_woluminu_podana}}, im przypisuje się zmienne z: {{Code|self}} {{LinkPatrz|self}}, o kluczach tego bez {{Code|_podana}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.Self(self,tabela_listy_danych_analizy_ksiazki)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|self}} | _1 = Jak w: {{LinkPatrz|self}}. | 2 = {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} | _2 = Tablica główna generowana przez moduł {{ZobaczTeż|informacje}}: {{Code|{{ld2|StronicowyParser/informacje}}}}. }} Funkcja zwraca parametry: <syntaxhighlight lang="lua"> return self_tab,tabela_listy_danych_analizy_ksiazki; </syntaxhighlight> {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> ef4ceq4d1govucwujaeq3fuds56xde8 Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom IV 4 64470 560609 560259 2026-11-04T15:38:47Z Persino 2851 560609 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.TablicaNapisowaPoWprowadzeniachTekstu}}{{Code|p.TablicaNapisowaPoWprowadzeniachTekstu}} == Funkcja na podstawie spisu tworzy tabelę nagłówków zapisaną pod zmienną: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|tablica_napisowa_wprowadzenia_tekstu}} {{Patrz|tablica_napisowa_wprowadzenia_tekstu}}, będąca tablicą, przy pomocy: {{LinkŚródtytuł|p.TablicaNapisowaPoWprowadzeniachTekstu}}. Funkcja zwraca tą tablicę nagłówków. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.TablicaNapisowaPoWprowadzeniachTekstu(self,frame,tabela_listy_danych_analizy_ksiazki)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja ma takie same parametry jak funkcja, dla której dotyczą parametry: {{LinkZobaczTeż|parametry-p.ParametryKonteneraWoluminu|StronicowyParser/Potrzebne/Tom III}}. | komórka1 = tak }} == {{Śródtytuł|p.LosowyNapisProwadzeniaTekstuBezPierwszegoOrazOstatniegoNapisuSpisuRzeczy}}{{Code|p.LosowyNapisProwadzeniaTekstuBezPierwszegoOrazOstatniegoNapisuSpisuRzeczy}} == Funkcja tworzy numer losowy pod zmienną: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|numer_pomiedzy_napis_wprowadzenia_tekstu}} {{Patrz|numer_pomiedzy_napis_wprowadzenia_tekstu}} - jest to numer pomiędzy, której jest dawany wynik transformacji z: {{Code|1}} {{LinkPatrz|1}}, na liczą całkowitą. Funkcja też pod tą zmienną tworzy inne zmienne o kluczach odpowiednio: {{Code|tablica_napisowa_wprowadzenia_tekstu}} {{LinkPatrz|tablica_napisowa_wprowadzenia_tekstu}}, będąca tablicą, jeśli nie istnieje, przy pomocy: {{LinkŚródtytuł|p.TablicaNapisowaPoWprowadzeniachTekstu}}, dalej: {{Code|len_tablicy_napisowej_wprowadzenia_tekstu}} {{Patrz|len_tablicy_napisowej_wprowadzenia_tekstu}} - liczba nagłówków w rozważanej tablicy, {{Code|reszta_pomiedzy_napis_wprowadzenia_tekstu}} {{Patrz|reszta_pomiedzy_napis_wprowadzenia_tekstu}} - reszta mówiąca, który artykuł ma wybrać. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.LosowyNapisProwadzeniaTekstuBezPierwszegoOrazOstatniegoNapisuSpisuRzeczy(self,frame,tabela_listy_danych_analizy_ksiazki)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja ma takie same parametry jak funkcja, dla której dotyczą parametry: {{LinkZobaczTeż|parametry-p.ParametryKonteneraWoluminu|StronicowyParser/Potrzebne/Tom III}}. | komórka1 = tak }} {{OpisParametrów | tytuł = Opis parametrów ramki funkcji {{nobold|{{Code|frame}}}} tablicy transportu {{nobold|{{ZobaczTeż|frame}}}}: | 1 = {{Code|1}} {{Patrz|1}} | _1 = Element z: {{Code|frame.args[1]}} {{Patrz|frame.args[1]}}. }} == {{Śródtytuł|p.LosowyNapisProwadzeniaTekstuWoluminu}}{{Code|p.LosowyNapisProwadzeniaTekstuWoluminu}} == Funkcja tworzy numer losowy pod zmienną: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|numer_losowy_napis_wprowadzenia_tekstu}} {{Patrz|numer_losowy_napis_wprowadzenia_tekstu}} - jest to numer losowy, której jest dawany wynik transformacji z: {{Code|1}} {{LinkPatrz|1}}, na liczą całkowitą. Funkcja też pod tą zmienną tworzy inne zmienne o kluczach odpowiednio: {{Code|tablica_napisowa_wprowadzenia_tekstu}} {{LinkPatrz|tablica_napisowa_wprowadzenia_tekstu}}, będąca tablicą, jeśli nie istnieje, przy pomocy: {{LinkŚródtytuł|p.TablicaNapisowaPoWprowadzeniachTekstu}}, dalej: {{Code|len_tablicy_napisowej_wprowadzenia_tekstu}} {{LinkPatrz|len_tablicy_napisowej_wprowadzenia_tekstu}} - liczba nagłówków w rozważanej tablicy, {{Code|reszta_losowy_napis_wprowadzenia_tekstu}} {{Patrz|reszta_losowy_napis_wprowadzenia_tekstu}} - reszta mówiąca, który artykuł ma wybrać. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.LosowyNapisProwadzeniaTekstuWoluminu(self,frame)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja ma takie same parametry jak funkcja, dla której dotyczą parametry: {{LinkZobaczTeż|parametry-p.AnalizujArgumentySzablonu|StronicowyParser/Potrzebne/Tom III}}. | komórka1 = tak }} {{OpisParametrów | tytuł = Opis parametrów ramki funkcji {{nobold|{{Code|frame}}}} tablicy transportu: | 1 = Funkcja przyjmuje takie same parametry ramki, co jest w: {{LinkZobaczTeż|frame}}. | komórka1 = tak }} == {{Śródtytuł|p.PierwszyNapisWprowadzeniaTekstu}}{{Code|p.PierwszyNapisWprowadzeniaTekstu}} == Funkcja definiuje zmienną: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|tablica_napisowa_wprowadzenia_tekstu}} {{LinkPatrz|tablica_napisowa_wprowadzenia_tekstu}}, jeśli ona nie istnieje, będąca jest tablicą, przy pomocy: {{LinkŚródtytuł|p.TablicaNapisowaPoWprowadzeniachTekstu}}. Funkcja liczy pierwszy jej element. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.PierwszyNapisWprowadzeniaTekstu(self,frame)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja ma takie same parametry jak funkcja, dla której dotyczą parametry: {{LinkZobaczTeż|parametry-p.AnalizujArgumentySzablonu|StronicowyParser/Potrzebne/Tom III}}. | komórka1 = tak }} == {{Śródtytuł|p.OstatniNapisWprowadzeniaTekstu}}{{Code|p.OstatniNapisWprowadzeniaTekstu}} == Funkcja definiuje zmienną: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|tablica_napisowa_wprowadzenia_tekstu}} {{LinkPatrz|tablica_napisowa_wprowadzenia_tekstu}}, jeśli ona nie istnieje, będąca jest tablicą, przy pomocy: {{LinkŚródtytuł|p.TablicaNapisowaPoWprowadzeniachTekstu}}. Funkcja liczy ostatni jej element. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.OstatniNapisWprowadzeniaTekstu(self,frame)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja ma takie same parametry jak funkcja, dla której dotyczą parametry: {{LinkZobaczTeż|parametry-p.AnalizujArgumentySzablonu|StronicowyParser/Potrzebne/Tom III}}. | komórka1 = tak }} == {{Śródtytuł|p.LiczbaNapisowaWprowadzeniaTekstu}}{{Code|p.LiczbaNapisowaWprowadzeniaTekstu}} == Funkcja definiuje zmienną: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|tablica_napisowa_wprowadzenia_tekstu}} {{LinkPatrz|tablica_napisowa_wprowadzenia_tekstu}}, jeśli ona nie istnieje, będąca jest tablicą, przy pomocy: {{LinkŚródtytuł|p.TablicaNapisowaPoWprowadzeniachTekstu}}. Funkcja liczy liczbę elementów: {{Code|len_tablicy_napisowej_wprowadzenia_tekstu}} {{LinkPatrz|len_tablicy_napisowej_wprowadzenia_tekstu}}. Funkcja zwraca tę właśnie liczbę. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.LiczbaNapisowaWprowadzeniaTekstu(self,frame)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja ma takie same parametry jak funkcja, dla której dotyczą parametry: {{LinkZobaczTeż|parametry-p.AnalizujArgumentySzablonu|StronicowyParser/Potrzebne/Tom III}}. | komórka1 = tak }} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> rbx9a9k2gufxwdjyy4k2phi2nw9m2z9 Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom V 4 64471 560610 560295 2026-11-04T15:41:23Z Persino 2851 560610 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.IteratorPoWprowadzeniachNapisowychTekstu}}{{Code|p.IteratorPoWprowadzeniachNapisowychTekstu}} == To jest iterator po tablicy nagłówków zdefiniowanej w tablicy: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|tablica_napisowa_wprowadzenia_tekstu}}{{LinkPatrz|tablica_napisowa_wprowadzenia_tekstu|StronicowyParser/Potrzebne/Tom IV}}, a jeśli w tej funkcji nie istnieje, to jest tworzona, przy pomocy: {{LinkŚródtytuł|p.TablicaNapisowaPoWprowadzeniachTekstu|StronicowyParser/Potrzebne/Tom IV}}. Funkcja zwraca iterator funkcji iteratora zdefiniowaną w: {{LinkŚródtytuł|p.IteratorPoNumerowanychElementachTablicy|Parametry/Tom XIX}}, której parametrem jest tablica nagłówków w danym spisach dostępnych dla danej książki. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.IteratorPoWprowadzeniachNapisowychTekstu(self,frame)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja ma takie same parametry jak funkcja, dla której dotyczą parametry: {{LinkZobaczTeż|parametry-p.AnalizujArgumentySzablonu|StronicowyParser/Potrzebne/Tom III}}. | komórka1 = tak }} Funkcja w wyniku iteracji zwraca za każdym razem nagłówek przetworzony i zanalizowany. Koniec iteracji nastąpi tego, gdy jest koniec zasobów przetwarzania nagłówków, wszystkich spisów obsługiwanej przez bieżącą książkę, względem danej strony. == {{Śródtytuł|p.IteratorPoStronachWoluminuEwentualnieWedleAutonawigacji}}{{Code|p.IteratorPoStronachWoluminuEwentualnieWedleAutonawigacji}} == Funkcja iteruje po artykułach danej książki, które są zapisane na jej stronie głównej, i na stronach ustawień skategoryzowanych w: {{lk2|Szablony nawigacyjne układu autonawigacji do autonawigacji podręczników}}, w użytym tam stronach szablonu: {{s|Układ autonawigacji}}, dla danej bieżącej książki. Funkcja wykorzystuje iterator: {{LinkŚródtytuł|p.IteratorPoNumerowanychElementachTablicy|Parametry/Tom XIX}}, do generowania jeszcze większego iteratora, który jest tym opisywanym. Funkcja wykorzystuje spisy i ich tabelki do generacji definicji tego iteratora. Funkcja może iterować też po podanym spisie w zmiennej ramki: {{Code|frame}} {{LinkPatrz|frame|StronicowyParser/Potrzebne/Tom III}}, według zmiennej: {{Code|spis}} {{Patrz|spis}}, która jest dekodowana funkcją: {{LinkŚródtytuł|p.DecodeHtml|Html/Tom VI}}, formatujące ciągowo według: {{LinkŚródtytuł|p["Odstępy"]|Parametry/Tom VI}}, a póxniej jeżeli ona jest adresem względnym, to jest rozwijana według: {{Code|{{sr|#p["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]|p=Techniczne}}}}, a później jest liczone jej przekierowanie: {{Code|{{sr|#p.PrzekierowanieDoStrony|p=Techniczne}}}} a na ostatku nazwa spisu według jest przedstawienia artykularnego: {{LinkŚródtytuł|m["NAZWAARTYKUŁUKSIĄŻKI"]|Nazwy/Tom IV}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.IteratorPoStronachWoluminuEwentualnieWedleAutonawigacji(frame,tabela_listy_danych_analizy_ksiazki,tab_lista_artykulow_w_ksiazce_spis,spis_tresci,inne_spisy,dodatkowe_artykuly)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|frame}} | _1 = Jak w: {{LinkPatrz|frame|StronicowyParser/Potrzebne/Tom III}}. Parametr wymagany. | 2 = {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} | _2 = Jak w: {{LinkPatrz|tabela_listy_danych_analizy_ksiazki|StronicowyParser/Potrzebne/Tom III}}. Parametr opcjonalny. | 3 = {{Code|tab_lista_artykulow_w_ksiazce_spis}} {{Patrz|tab_lista_artykulow_w_ksiazce_spis}} | _3 = Zmienna odpowiadająca: {{Code|spis}} {{LinkPatrz|spis|StronicowyParser/Potrzebne/Tom III}}. Parametr opcjonalny. | 4 = {{Code|spis_tresci}} {{Patrz|spis_tresci}} | _4 = Nazwa bazowego spisu. Parametr opcjonalny. To jemu odpowiada łańcuch znakowy: {{Code|tabela_listy_danych_analizy_ksiazki}} {{LinkPatrz|tabela_listy_danych_analizy_ksiazki|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|nazwa_bazowego_spisu}} {{Patrz|nazwa_bazowego_spisu}}, gdy nie podano parametru: {{Code|tab_lista_artykulow_w_ksiazce_spis}} {{LinkPatrz|tab_lista_artykulow_w_ksiazce_spis}}. | 5 = {{Code|inne_spisy}} {{Patrz|inne_spisy}} | _5 = Tabela rozdziałów i w nim z artykułami, w innych spisach. Parametr opcjonalny. To jemu odpowiada tabela: {{Code|tabela_listy_danych_analizy_ksiazki}} {{LinkPatrz|tabela_listy_danych_analizy_ksiazki|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|tab_inne_spisy}} {{Patrz|tab_inne_spisy}}, gdy nie podano parametru: {{Code|tab_lista_artykulow_w_ksiazce_spis}} {{LinkPatrz|tab_lista_artykulow_w_ksiazce_spis}}. | 6 = {{Code|dodatkowe_artykuly}} {{Patrz|dodatkowe_artykuly}} | _6 = Dodatkowe artykuły książki ustawione w szablonie spisu artykułów do nawigacji. Parametr opcjonalny. To jemu odpowiada tabela: {{Code|tabela_listy_danych_analizy_ksiazki}} {{LinkPatrz|tabela_listy_danych_analizy_ksiazki|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|dodatkowe_strony_woluminu}} {{Patrz|dodatkowe_strony_woluminu}}, gdy nie podano parametru: {{Code|tab_lista_artykulow_w_ksiazce_spis}} {{LinkPatrz|tab_lista_artykulow_w_ksiazce_spis}}. }} Funkcja uwzględnia zagnieżdżone stosowanie spisów bezpośrednio w innych spisach tej samej danej książki. Spotkanie tego w spisie w iteracjach iterotora powoduje, że on podąża za jego artykułami, itd. w nim, aż do wyczerpania zasobów. Funkcja iterując tym iteratorem zwraca wyniki w postaci wielu po kolei wartości, a tego zarys: <syntaxhighlight lang="lua"> return artykul,nazwa,przekierowanie,pelna_nazwa_ksiazki; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów zwracanych przez iterator: | 1 = {{Code|artykul}} {{Patrz|artykul}} | _1 = Tabela z adresem artykułu, i innymi parametrami w postaci tablicy, względem danej książki, ale bez pełnej nazwy książki, a w przypadku innej strony niż to, to wtedy to reprezentuje pełną nazwę tego. Ta wartość jest wtedy nilowa, gdy nastąpił koniec zasobów spisów, ale w żadnym innym wypadku. | 2 = {{Code|nazwa}} {{Patrz|nazwa}} | _2 = Nazwa linku, to nie jest jego adres, w przypadku, gdy to tego nie ma to zwracane jest tego wartość nilowa. | 3 = {{Code|przekierowanie}} {{Patrz|przekierowanie}} | _3 = Tabela przekierowania danego artykułu, i innymi jego danymi, a jeżeli to nie istnieje, to zwracana jest wartość nilowa. | 4 = {{Code|pelna_nazwa_ksiazki}} {{Patrz|pelna_nazwa_ksiazki}} | _4 = Pełna nazwa książki w postaci tabeli, w innym wypadku niż artykuł aktualnej książki. }} Te tablice są dobrze opisane na stronach dokumentacji modułów, w tym przypadku chodzi, tu o: {{lr2|Moduły/StronicowyParser/SpisTreści}}, gdzie tam jest wskazana w sposób ogólny tablica: {{Code|tab_stare}}, w sposób jej tworzenia i definicja ogólna. Jej części są właśnie zwracane przez ten iterator. Przed pisaniem przykładów należy się zapoznać ze strukturą ich. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> op240pkwanb4ev5xtfi0h2dlwnlkyds Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom VI 4 64472 560611 560313 2026-11-04T15:43:17Z Persino 2851 560611 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.OdpowiednikNaPrzemianArtykularnychStronWoluminu}}{{Code|p.OdpowiednikNaPrzemianArtykularnychStronWoluminu}} == Funkcja wykorzystuje do iteracji iterator funkcja zwracaną przez: {{LinkŚródtytuł|p.IteratorPoStronachWoluminuEwentualnieWedleAutonawigacji|StronicowyParser/Potrzebne/Tom V}}. Tą funkcję zwracaną przez to uruchamiany w każdym obiegu iteracji przez instrukcję pętlową funkcji bezparametrowej: {{Code|iterator}} {{Patrz|iterator}}: <syntaxhighlight lang="lua"> for nazwa_artykulu_w_bazie,nazwa,przekierowanie_w_bazie,pelna_nazwa_ksiazki in iterator do for nazwa_artykulu_w_bazie,nazwa,przekierowanie_w_bazie,pelna_nazwa_ksiazki in iterator do </syntaxhighlight> Funkcja liczy odpowiednik adresowy nieprzekierowaniowy, gdy to liczymy dany artykuł, który jest przekierowaniem, to wtedy jest zwracane, na co on wskazuje, artykuł, który nie jest przekierowaniem. Funkcja też sprawdzam którym typ przypadku rozważamy, dostępne typy: {{GridTabela|klasa=gridtable dwukolumna-tytułowa |liczba wierszy=4|liczba kolumn=2 | nagłówek 1 = Tryb | nagłówek 2 = Opis | komórka 1_1 = {{Code|1}} | komórka 1_2 = Mamy, gdy artykuł jest przekierowaniem danej książki. | komórka 2_1 = {{Code|2}} | komórka 2_2 = Mamy, gdy strona główna bieżącej książki jest przekierowaniem do innej książki. | komórka 3_1 = {{Code|3}} | komórka 3_2 = Gdy dana strona artykułu książki, ale z adresem książki w bazie rozdziałów i artykułu, gdy istnieje, wtedy artykuł książki nie jest przekierowaniem, to wtedy nie jest sprawdzane, czy istnieje, tylko wtedy funkcja zwraca tą drugą wartość taką. | komórka 4_1 = {{Code|4}} | komórka 4_2 = Jak powyżej, tylko że ten artykuł nie istnieje. Przeciwnie w takim przypadku w sytuacji braku informacji o książce w bazie, tzn. mamy artykuł dla danej książki, jej bieżącej, dla danego artykułu, on przyjmuje nie tą, tylko wtedy wartość tą powyższą. }} Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tab_lista_artykulow_w_ksiazce_spis,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,co_ma_wykrywac)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|tab_lista_artykulow_w_ksiazce_spis}}| _1 = Jak w: {{LinkPatrz|tab_lista_artykulow_w_ksiazce_spis|StronicowyParser/Potrzebne/Tom V}}. | 2 = {{Code|nazwa_glownego_spisu}} | _2 = Jak w: {{LinkPatrz|spis_tresci|StronicowyParser/Potrzebne/Tom V}}. | 3 = {{Code|tab_inne_spisy}} | _3 = Jak w: {{LinkPatrz|inne_spisy|StronicowyParser/Potrzebne/Tom V}}. | 4 = {{Code|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}}, i {{Code|nazwa_ksiazki}} | _4 = Te zmienne są kolejno zdefiniowane, jak w: {{LinkPatrz|nazwa_przestrzeni|StronicowyParser/Potrzebne/Tom III}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki|StronicowyParser/Potrzebne/Tom III}} i {{LinkPatrz|nazwa_ksiazki|StronicowyParser/Potrzebne/Tom III}}. | 5 = {{Code|nazwa_artykulu}} | _5 = Jak w: {{LinkPatrz|nazwa_artykulu|StronicowyParser/Potrzebne/Tom III}}. | 6 = {{Code|co_ma_wykrywac}} | _6 = Zmienna sterująca w warunku (instrukcji warunkowej), czy ma wyświetlać wyniki w przypadku innych książek w spisie, gdy to nie jest artykuł danej książki, w dla bieżącego podręcznika, wartość przeciwna niż prawdziwa, powoduje, że jest wyświetlany w ogóle wynik. }} Funkcja zwraca wartości, przypadku gdy ma zrzucać jakąś wartość: <syntaxhighlight lang="lua"> return nazwa_artykulu_strony,tryb; </syntaxhighlight> Wartość '''trybu''' może przyjmować jeden z czterech wartości naturalnych, tzn. od: {{Code|1}}, do: {{Code|4}}, w takim wypadku, gdy jest informacja o książce danego artykułu, w bazie rozdziałów i artykułów, dla niego. A w przypadku przeciwnym dla danej strony, gdy artykuł jest bieżącej książki, to od: {{Code|1}}, do: {{Code|3}}. ---- Informacja o książce jest taka, na jaką wskazuje opis w module dokumentacji modułów, na stronie: {{lr2|Moduły/StronicowyParser/SpisTreści}}. == {{Śródtytuł|p.ObliczeniaInformacje}}{{Code|p.ObliczeniaInformacje}} == Funkcja zbiera w zmiennej: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|tab_artykul}} {{Patrz|tab_artykul}}, elementy przy pomocy warunku zbierającego i tworzącego: <syntaxhighlight lang="lua"> table.insert(self.tab_artykul, (nazwa or przekierowanie or pelna_nazwa_ksiazki) and {artykul,nazwa,przekierowanie,pelna_nazwa_ksiazki,} or artykul); </syntaxhighlight> Te elementy są zbierane przez iterator: {{LinkŚródtytuł|p.IteratorPoStronachWoluminuEwentualnieWedleAutonawigacji|StronicowyParser/Potrzebne/Tom V}} - jeśli ten iterator nie istnieje, to zwracana jest wartość nilowa, poprzez iterację po elementach: <syntaxhighlight lang="lua"> for artykul,nazwa,przekierowanie,pelna_nazwa_ksiazki in iterator do </syntaxhighlight> Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.ObliczeniaInformacje(self,frame)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja ma takie same parametry jak funkcja, dla której dotyczą parametry: {{LinkZobaczTeż|parametry-p.AnalizujArgumentySzablonu|StronicowyParser/Potrzebne/Tom III}}. | komórka1 = tak }} Funkcja zawsze zwraca wartość prawdziwą. == {{Śródtytuł|p.UsuwanieElementowePoziomoweZTablicy}}{{Code|p.UsuwanieElementowePoziomoweZTablicy}} == Funkcja usuwa wszystkie elementy z tablicy: {{Code|tablica}} {{LinkPatrz|tablica}}, innych niż numer: {{Code|numer}} {{LinkPatrz|numer}}, do tego służy funkcja: {{LinkŚródtytuł|p.PoziomAdresu|StronicowyParser/Potrzebne/Tom II}}. Funkcja też zwraca drugi parametr równy liczbie usuniętych elementów z niej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UsuwanieElementowePoziomoweZTablicy(tablica,numer)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|tablica}} {{Patrz|tablica}} | _1 = Tablica, tablic z pierwszym elementem, który jest artykułem. | 2 = {{Code|numer}} {{Patrz|numer}} | _2 = Poziom, dla którego ma pozostawiać elementy w tablicy powyżej. }} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> ecy5qr6m2ihdlb17tgnxl46t5dzldur Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom VII 4 64473 560612 560323 2026-11-04T15:46:19Z Persino 2851 560612 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.LosowaStronaBezPierwszejOrazOstatniejStronyWoluminu}}{{Code|p.LosowaStronaBezPierwszejOrazOstatniejStronyWoluminu}} == Funkcja na podstawie pierwszego parametru: {{Code|1}} {{LinkPatrz|1|StronicowyParser/Potrzebne/Tom IV}}, który jest transformowany do liczby lub zera, co na podstawie tego wybierany jest przez funkcję artykuł pomiędzy pierwszym, a ostatnim artykułem, bez nich. Funkcja wykorzystuje zmienną: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|tab_artykul}} {{LinkPatrz|tab_artykul|StronicowyParser/Potrzebne/Tom VI}}, z której jeżeli numer: {{Code|numer}} {{LinkPatrz|numer|StronicowyParser/Potrzebne/Tom VI}}, jest większy od zera {{Code| > 0}}, to wtedy są usuwane z jej kopii (kopia jest robiona, generowana przez: {{LinkŚródtytuł|p["KopiujTabelęElementów"]|Parametry/Tom IV}}) elementy według: {{LinkŚródtytuł|p.UsuwanieElementowePoziomoweZTablicy|StronicowyParser/Potrzebne/Tom VI}}, inne niż tego numeru, i na podstawie tego wybierane są artykuły. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.LosowaStronaBezPierwszejOrazOstatniejStronyWoluminu(self,frame,numer)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji {{nobold|{{ZobaczTeż|p.LosowaStronaBezPierwszejOrazOstatniejStronyWoluminu}}}}: | 1 = {{Code|self}} | _1 = Jak w: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}. | 2 = {{Code|frame}} | _2 = Jak w: {{Code|frame}} {{LinkPatrz|frame|StronicowyParser/Potrzebne/Tom III}}. | 3 = {{Code|numer}} | _3 = Jak w: {{Code|numer}} {{LinkPatrz|numer|StronicowyParser/Potrzebne/Tom VI}}. }} {{OpisParametrów | tytuł = Opis parametrów ramki {{nobold|{{Code|frame}}}} funkcji tablicy transportu modułu: | 1 = Argument do generacji losowej wyboru artykułów pomiędzy pierwszym a ostatnim artykułem danej książki, ta funkcja ma parametry ramki posiadające takie same, jak w: {{LinkZobaczTeż|frame|StronicowyParser/Potrzebne/Tom IV}}. | komórka1 = tak }} == {{Śródtytuł|p.LosowaStronaWoluminu}}{{Code|p.LosowaStronaWoluminu}} == Funkcja na podstawie pierwszego parametru: {{Code|1}} {{LinkPatrz|1|StronicowyParser/Potrzebne/Tom IV}}, który jest transformowany do liczby lub zera, co na podstawie tego wybierany jest przez funkcję artykuł ze wszystkich. Funkcja wykorzystuje zmienną: {{Code|self}} {{LinkPatrz|self|StronicowyParser/Potrzebne/Tom III}}, o kluczu: {{Code|tab_artykul}} {{LinkPatrz|tab_artykul|StronicowyParser/Potrzebne/Tom VI}}, z której jeżeli numer: {{Code|numer}} {{LinkPatrz|numer|StronicowyParser/Potrzebne/Tom VI}}, jest większy od zera {{Code| > 0}}, to wtedy są usuwane z jej kopii (kopia jest robiona, generowana przez: {{LinkŚródtytuł|p["KopiujTabelęElementów"]|Parametry/Tom IV}}) według: {{LinkŚródtytuł|p.UsuwanieElementowePoziomoweZTablicy|StronicowyParser/Potrzebne/Tom VI}}, inne niż tego numeru, i na podstawie tego wybierane są artykuły. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.LosowaStronaWoluminu(self,frame,numer)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja ma te same parametry, co: {{LinkZobaczTeż|p.LosowaStronaBezPierwszejOrazOstatniejStronyWoluminu}}. | komórka1 = tak }} {{OpisParametrów | tytuł = Opis parametrów ramki {{nobold|{{Code|frame}}}} funkcji tablicy transportu modułu: | 1 = Argument do generacji losowej wyboru artykułów ze wszystkich danej książki, ta funkcja ma parametry ramki posiadające takie same, jak w: {{LinkZobaczTeż|frame|StronicowyParser/Potrzebne/Tom IV}}. | komórka1 = tak }} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> ff169cqiauhcrekmuvmccm8ivs18bag Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom VIII 4 64474 560613 560359 2026-11-04T15:49:51Z Persino 2851 560613 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.RozwijanieZakodowanejNazwySzablonu}}{{Code|p.RozwijanieZakodowanejNazwySzablonu}} == {{Śródtekst|uchwyt=p.RozwijanieZakodowanejNazwySzablonu|bez preprocess=tak|klucz=tak|klucz2=tak|tekst={{#if:{{{klucz|}}}| Funkcja do dekodowania i rozwijania nazwy szablonu: {{Code|nazwa_szablonu}} {{LinkPatrz|nazwa_szablonu}}, przy pomocy uchwytu bazy: {{Code|nazwa_modulu}} {{LinkPatrz|nazwa_modulu}}, lub tabeli bazy zakodowania tekstu: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, a jeżeli ona posiada w sobie wywołania: {{lk|Szablony stronicowe|szablonów stronicowych}}, to one są zamieniane kody typu: {{Code|ARCHIW}} {{LinkPatrz|ARCHIW}}{{#if:{{{klucz2|}}}||, przy fałszywej wartości zmiennej: {{Code|czy_z_kluczem}} {{LinkPatrz|czy_z_kluczem}}, a przy innej już nie, wtedy takie kody są pozostawione bez rozwijania}}, aby {{ld|StronicowyParser|Stronicowy Parser}} nie wpadł w nieskończoną pętle, która nigdy się nie kończy, aby zapobiec temu, to tak trzeba robić. Jeżeli w nazwie tego nie ma żadnego kodu, to z nim nic nie jest robione, a jak nie ma żadnego tworu szablonowego, to ona nie jest rozwijana względem funkcji: {{LzLua|frame:preprocess}}. Funkcja też jest używana w wersji {{#if:{{{klucz2|}}}|po wydzieleniu|przed wydzieleniem}} opcji modyfikatorowych, podczas ustalania nazwy szablonu, czy parsera, to robi się zwykle {{#if:{{{klucz2|}}}|po|przed}}: {{Code|{{sr|#p.WydzielanieOpcjiModyfikatorowych|p=Szablonowe}}}}, która wydziela nazwę, modyfikatory w postaci łańcucha znaków i tabele użytych modyfikatorów. | tak}} }} Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.RozwijanieZakodowanejNazwySzablonu(nazwa_szablonu,tabela_modyfikatorow,nazwa_modulu,nazwa_modulu_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji {{nobold|{{ZobaczTeż|p.RozwijanieZakodowanejNazwySzablonu}}}}: | 1 = {{Code|nazwa_szablonu}} {{Patrz|nazwa_szablonu}} | _1 = Nazwa szablonu do odkodowania. | 2 = {{Code|nazwa_modulu}} {{Patrz|nazwa_modulu}} | _2 = Uchwyt bazy zakodowanego tekstu, używany zamiast: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}. | 3 = {{Code|nazwa_modulu_szablonowa}} {{Patrz|nazwa_modulu_szablonowa}} | _3 = Nazwa modułu w postaci szablonowej, w takiej postaci jaką się go wywołuje w szablnach. | 4 = {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} | _4 = Tablica bazy zakodowanego tekstu wikikodu. | 5 = {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} | _5 = Tabela rozkładów niektórych, ale niekoniecznie, elementów na czynniki pierwsze. }} ; Kroki postępowania funkcji{{dk}} Funkcja używa funkcji: {{Code|{{sr|#p.CzyModyfikatoryInstrukcjiWarunkowychSzablonowych|p=Szablonowe}}}} lub {{Code|{{sr|#p.CzyModyfikatoryCharakterystyczneSzablonowe|p=Szablonowe}}}}, wtedy jeśli któraś z nich coś wykryła, to wtedy funkcja zwraca wynik: <syntaxhighlight lang="lua"> return nil,false; </syntaxhighlight> Dalej, jeśli funkcja ominęła powyższy krok instrukcji, jest wykonywana: {{LinkŚródtytuł|p.DekodowanieNazwySzablonu}}, a jeśli ona nic nie zrobiła, ale nazwa szablonu: {{Code|nazwa_szablonu}} {{LinkPatrz|nazwa_szablonu}}, zawiera jakiś kod, wtedy druki parametr wskazuje na niepowodzenie, w takim wypadku wynik: <syntaxhighlight lang="lua"> return nil,false; </syntaxhighlight> Jeśli wszystko poszło dobrze, to wtedy funkcja zwraca zmodyfikowany lub nienaruszony, jeśli w nim nie ma żadnych kodów, wynik z drugim parametrem prawdziwym: <syntaxhighlight lang="lua"> return nazwa_szablonu,true; </syntaxhighlight> Drugi parametr oznacza tutaj, że jakiś wynik mamy. == {{Śródtytuł|p.DekodowanieTekstu}}{{Code|p.DekodowanieTekstu}} == Funkcja do dekodowania tekstu i rozwijania go funkcją: {{LzLua|frame:preprocess}}. Funkcja {{lk|szablony stronicowe}} zamienia na kod symboliczny, a inne już są w postaci normalnych wywołań, całość jest rozwijana tą funkcją. Funkcja używa podwójnego uruchamiania swoich funkcji, najpierw zbiera parametry, dzięki którym ma być uruchamiana, a później ona tak zwraca inną funkcją, którą dekodujemy właściwie tekst. W tym drugim działa: {{LinkŚródtytuł|p.DekodowanieTekstuNazwLinku|StronicowyParser/Pomocne}}, której dwa zwrócone wynik za jednym razem są zwracane przez tą funkcję zwracaną. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.DekodowanieTekstu(nazwa_modulu,nazwa_modulu_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci) return function(tekst,tryb,czy_nie_odstepy,drugi_wynik,czy_drugi_wynik_przetworzony) ... end; end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|nazwa_modulu}} | _1 = Jak w: {{LinkPatrz|nazwa_modulu}}. | 2 = {{Code|nazwa_modulu_szablonowa}} | _2 = Jak w: {{LinkPatrz|nazwa_modulu_szablonowa}}. | 3 = {{Code|tablica_analizy_obiektow_strony_dany_modul}} | _3 = Jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}. | 4 = {{Code|tablica_danych_parametrow_szablonu_strony}} | _4 = Jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}. | 5 = {{Code|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}}, i {{Code|nazwa_ksiazki}} | _5 = Kolejno jak: {{LinkPatrz|nazwa_przestrzeni|StronicowyParser/Potrzebne/Tom III}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki|StronicowyParser/Potrzebne/Tom III}} i {{LinkPatrz|nazwa_ksiazki|StronicowyParser/Potrzebne/Tom III}}. | 6 = {{Code|nazwa_artykulu}} | _6 = Jak w: {{LinkPatrz|nazwa_artykulu|StronicowyParser/Potrzebne/Tom III}}. }} {{OpisParametrów | tytuł = Parametry funkcji zwracanej: | 1 = {{Code|tekst}} | _1 = Jak w: {{LinkPatrz|tekst|StronicowyParser/Pomocne}}. | 2 = {{Code|tryb}} | _2 = Jak w: {{LinkPatrz|tryb|StronicowyParser/Pomocne}}. | 3 = {{Code|czy_nie_odstepy}} | _3 = Jak w: {{LinkPatrz|czy_nie_odstepy|StronicowyParser/Pomocne}}. | 4 = {{Code|drugi_wynik}} | _4 = Jak w: {{LinkPatrz|drugi_wynik|StronicowyParser/Pomocne}}. | 5 = {{Code|czy_drugi_wynik_przetworzony}} | _5 = Jak w: {{LinkPatrz|czy_drugi_wynik_przetworzony|StronicowyParser/Pomocne}}. }} Funkcja zwraca te same parametry, co funkcja, o którą jest zbudowane ciało, dzięki tego jest powtórzenie działania tego jak funkcja zwracana. Przykład działania funkcji: <syntaxhighlight lang="lua"> local DekodowanieTekstu=p.DekodowanieTekstu(nazwa_modulu,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci); ... strona,strona_wolumin=DekodowanieTekstu(strona,nazwa and 2 or 3,nil,(not nazwa) and true or nil); </syntaxhighlight> == {{Śródtytuł|p.ARCHIWLubSTARE}}{{Code|p.ARCHIWLubSTARE}} == Funkcja zamieniająca kod niedozwolony przez dany szablon na kod typu: {{Code|obiekt}} {{LinkPatrz|obiekt}} lub {{Code|ARCHIW}} {{LinkPatrz|ARCHIW}}, o pewnym numerze ustalanym przez {{Code|kod}} {{LinkPatrz|kod}} lub funkcję: {{Code|{{sr|#p.NumerSzablonuObiektu|p=Szablonowe}}}}, o właściwym kodzie pisanym przez: {{Code|{{sr|#p.NormaKoduKodowaniaTekstu|p=Szablonowe}}}}. Funkcja zwraca ten kod z drugim parametrem, który jest numer tego kodu. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.ARCHIWLubSTARE(szablon,obiekt,kod,tablica_analizy_obiektow_strony_dany_modul)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|szablon}} {{Patrz|szablon}} | _1 = Kod stary szablonowy, jeszcze przed zamianą. | 2 = {{Code|obiekt}} {{Patrz|obiekt}} | _2 = Alternatywny typ obiektu po zamianie niż {{Code|ARCHIW}} {{Patrz|ARCHIW}}. | 3 = {{Code|kod}} {{Patrz|kod}} | _3 = Alternatywny numer obiektu o typie: {{LinkPatrz|obiekt}} lub {{LinkPatrz|ARCHIW}}. | 4 = {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}} | _4 = Tablica bazy kodów tekstu zakodowanego. }} == {{Śródtytuł|p.DekodowanieNazwySzablonu}}{{Code|p.DekodowanieNazwySzablonu}} == {{PobierzŚródtekst|uchwyt=p.RozwijanieZakodowanejNazwySzablonu|klucz=tak|klucz2=}} Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.DekodowanieNazwySzablonu(nazwa_szablonu,nazwa_modulu,nazwa_modulu_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_uwzgledniac_modyfikatory,czy_z_kluczem)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = Funkcja przyjmuje te same parametry, co: {{LinkZobaczTeż|p.RozwijanieZakodowanejNazwySzablonu}}.| komórka1 = tak | 2 = Parametry dadatkowe: | nagłówek2 = tak | 3 = {{Code|czy_uwzgledniac_modyfikatory}} {{Patrz|czy_uwzgledniac_modyfikatory}} | _3 = Wartość fałszywa, wtedy funkcja nie uwzględnia modyfikatorów przy dekodowaniu, w takiej ssytuacj, jak ona to wykryje, to natychmiast zwraca wynik. | 4 = {{Code|czy_z_kluczem}} {{Patrz|czy_z_kluczem}} | _4 = Wartość fałszywa, wtedy zmienne kluczowe dla szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}, są kodowane w specjalnych kodach: {{Code|ARCHIW}} {{LinkPatrz|ARCHIW}}. }} Gdy funkcja nie wykryła żadnego kody w: {{Code|nazwa_szablonu}} {{LinkPatrz|nazwa_szablonu}}, to jest zakańczana z wynikiem: <syntaxhighlight lang="lua"> return nil,true; </syntaxhighlight> Gdy nie uwzględnia modyfikatorów, ale w tej nazwie są one jednak jakieś, rozważając ogólnie, to funkcja zakańcza się: <syntaxhighlight lang="lua"> return nil,false; </syntaxhighlight> A gdy jednak tą nazwę odkodowano, i ewentualnie rozwinięto specjalną funkcją: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, to wtedy mamy: <syntaxhighlight lang="lua"> return nazwa_szablonu,true; </syntaxhighlight> {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> gg5bmd356pnzaedpckx5t58sq0l4qz7 Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom IX 4 64475 560614 560436 2026-11-04T15:52:50Z Persino 2851 560614 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.TOCSilnik}}{{Code|p.TOCSilnik}} == Funkcja generująca samo ciało spisu treści podręcznika, czyli bez jego formatowania i nie w ramce. Funkcja ma możliwość ukrywania pewnych elementów spisu, w tym przypadku nagłówków: przypisów i uwag oraz bibliografii i licencji, tak generowanych przez: {{lk|Szablony przypisów|szablony przypisów}}, robi to za pomocą właściwości: {{Code|display:none;}}, przy pomocy: {{Code|bez_przypisow}} {{LinkPatrz|bez_przypisow}}. Funkcja tworzy spis treści w sposób zagnieżdżony mieszcząc jedną listy w innej o takim samym znaczniku: {{tag|ul}}, mówiąc w sposób ogólny. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.TOCSilnik(frame,lista_elementow_spisu_tresci, atrybuty,bez_przypisow)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|frame}} {{Patrz|frame}} | _1 = Tablica ramki funkcji tablicy transportu. | 2 = {{Code|lista_elementow_spisu_tresci}} {{Patrz|lista_elementow_spisu_tresci}} | _2 = Tablica listy pozycji elementów adresów i nagłówków spisu treści. Jest to element zwracany przez funkcję: {{LinkŚródtytuł|p.SpisRzeczyWedlePodanegoTekstu|StronicowyParser/GłównaFunkcjaZbieraniaDanychStron}}. | 3 = {{Code|atrybuty}} {{Patrz|atrybuty}} | _3 = Atrybuty znacznika {{Tag|ul}}. | 4 = {{Code|bez_przypisow}} {{Patrz|bez_przypisow}} | _4 = Parametr logiczny niepusty, wtedy to odpowiada wartości prawdziwej. }} Funkcja umieszcza poszczególne linki, jeśli istnieją linkujące do adresu: {{Code|nazwa_strony}} {{Patrz|nazwa_strony}}, zmiennej: {{Code|lista_elementow_spisu_tresci}} {{LinkPatrz|lista_elementow_spisu_tresci}}, przeciwnie tym adresem jest adres lokalny tego spisu. Funkcja liczy policzony poziom kolejny poszczególnych elementów spisu treści, robi to na podstawie na początku z: {{Code|liczba_ulozenia_w_menu_spisu_tresci}} {{Patrz|liczba_ulozenia_w_menu_spisu_tresci}}, obliczonych z: {{Code|lista_elementow_spisu_tresci}} {{LinkPatrz|lista_elementow_spisu_tresci}}, a później to liczy na podstawie różniących się poziomów kolejnych w spisie, by później można było dopasować sposób zagnieżdżenia poszczególnych pozycji sekcji linkowych spisu treści. Dzięki temu funkcja liczy numerację poszczególnych linków dzięki pewnym sposobom. Funkcja liczy nagłówek: {{Code|adres}} {{Patrz|adres}}, i nagłówek: {{Code|naglowek}} {{Patrz|naglowek}}, spisu, w odpowiedni sposób przy pomocy funkcji: {{LinkŚródtytuł|p["PrzetwórzNagłówek"]|Specjalne/Tom VIII}}. Funkcja rozpoznaje linki do nagłówków w spisach, czy je ma ukrywać w zależności od tabeli: {{Code|{{sr|#p.napisy_wprowadzenia_tekstu_przypisowych|p=StronicowyParser/obiekty}}}}, a ta tabela tych nagłówków jest: {{Tbl|uchwyt=p.napisy_wprowadzenia_tekstu_przypisowych|tekst=<syntaxhighlight lang="lua"> p.napisy_wprowadzenia_tekstu_przypisowych={ ["Przypisy"]=true, ["Uwagi"]=true, ["Bibliografia"]=true, ["Licencja"]=true, }; </syntaxhighlight>}} == {{Śródtytuł|p.TOC}}{{Code|p.TOC}} == Funkcja generuje listę pozycji spisowych, tzn.: {{Code|lista_elementow_spisu_tresci}} {{LinkPatrz|lista_elementow_spisu_tresci}}, według funkcji tam podanej.Ma ona dwie możliwości liczenia,tzn. bieżący i inny. Funkcja wykorzystuje {{s|Tabela nawigacyjna}}, to liczenia z opcjonalnym ukrywaniem pozycji elementów spisu, gdy to chcemy robić na podstawie elementu: {{Code|toc_czy_tocramka}} {{Patrz|toc_czy_tocramka}}, uzyskanej ze zmiennej: {{Code|toc}} {{Patrz|toc}}, z policzoną wartością logiczną. Gdy ta funkcja przyjmuje kształt fałszywy, to wtedy wykorzystujemy ten szablon, w innym wypadku jest liczona zwykła lista z elementami spisu treści bez wykorzystania żadnego szablonu. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij)..end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|frame}} | _1 = Jak w: {{LinkPatrz|frame}}. | 2 = {{Code|lista_elementow_spisu_tresci}} | _2 = Jak w: {{LinkPatrz|lista_elementow_spisu_tresci}}. | 3 = {{Code|czy_nie_aktualny}} {{Patrz|czy_nie_aktualny}} | _3 = Czy spis treści dotyczy strony bieżącej, czy innej. | 4 = {{Code|rozciagnij}} {{Patrz|rozciagnij}} | _4 = Czy ma rozciągnąć spis na całą stronę. }} {{OpisParametrów | tytuł = Opis parametrów ramki {{nobold|{{Code|frame}}}} funkcji tablicy transportu: | 1 = {{Code|bez przypisów}} {{Patrz|bez przypisów}} | _1 = Parametry oznaczający to samo, co: {{Code|bez_przypisow}} {{LinkPatrz|bez_przypisow}}. }} Gdy: {{Code|toc_czy_tocramka}} {{LinkPatrz|toc_czy_tocramka}}, jest fałszywe, wtedy jest liczona ramka: {{Code|frame}} {{LinkPatrz|frame}}, z której wyodrębniamy parametry ramki dziecka, czy rodzica w zależności od podanej zmiennej dziecka: {{Parametr|wyspecjalizowana}}, z parametrem niepustym lub nie: {{OpisParametrów | tytuł = Funkcja ta robi za pomocą niepustych parametrów tytułu, lub wielkości alternatywnych: | 1 = {{Code|funkcja}} {{Patrz|funkcja}} | _1 = lub {{Code|UkrytaWikitabelowaListaMenu}} {{Patrz|UkrytaWikitabelowaListaMenu}} - ustawienia szablonu {{s|Tabela nawigacyjna}}. | 2 = {{Code|wysokość}} {{Patrz|wysokość}} | _2 = Wysokość ramki ze spisem treści lub {{Code|43.75rem}}. | 3 = {{Code|szerokość}} {{Patrz|szerokość}} | _3 = Szerokość ramki ze spisem lub {{Code|100%}}. | 4 = {{Code|spis treści}} {{Patrz|spis treści}} | _4 = Nazwa nagłówka spisu treści lub {{Code|Spis treści}} {{Patrz|Spis treści}}. | 5 = {{Code|bez pasków poziomych przewijania}} {{Patrz|bez pasków poziomych przewijania}} | _5 = Funkcja włącza możliwość nie włączania poziomych pasków przewijania. | 6 = {{Code|spis artykułu}} {{Patrz|spis artykułu}} | _6 = Funkcja włącza podkreślenie tytułu. | 7 = {{Code|bez marginesu dolnego}} {{Patrz|bez marginesu dolnego}} | _7 = Funkcja wyłącza margines dolny ramki ze spisem. | 8 = {{Code|z marginesami ramki}} {{Patrz|z marginesami ramki}} | _8 = Marginesy zewnętrzne ramki, jak: {{Code|margin:0}}. | 9 = {{Code|zawartość z marginesami}} {{Patrz|zawartość z marginesami}} | _9 = Marginesy wewnętrzne ramki, jak: {{Code|padding:0}}. | 10 = {{Code|max-width}} {{Patrz|max-width}} | _10 = Maksymalna szerokość stylu spisowego, jak: {{Code|700px}}. | 11 = {{Code|klasa}} {{Patrz|klasa}} | _11 = Klasa {{lpg|CSS}} tabeli nawigacyjnej. }} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> spd1rzdsmhjgtlbb8klr3zmtqb3eekq Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom X 4 64476 560615 560490 2026-11-04T15:56:17Z Persino 2851 560615 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.AnalizaSzablonuStronicowegoParsera}}{{Code|p.AnalizaSzablonuStronicowegoParsera}} == Funkcja jest uruchamiana z poziomu innej funkcji z modułu: {{ld2|StronicowyParser/ZbieranieDanychStron}}, w funkcji: {{LinkŚródtytuł|p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi|StronicowyParser/ZbieranieDanychStron/Moduł główny/Część I}}, w funkcji lokalnej: {{LinkŚródtytuł|GeneralnaAnalizaSzablonuStronicowegoParsera|StronicowyParser/ZbieranieDanychStron/Moduł główny/Część I}}, a ta z kolei działa dzięki: {{LinkŚródtytuł|IterowaniePoElementachTekstu|StronicowyParser/ZbieranieDanychStron/Moduł główny/Część I}}, a ta natomiast, w funkcji, w której są zdefiniowane inne funkcje lokalne tu opisywane. Ta ostatnia jest uruchamiana, nie tylko w niej, ale i w module: {{ld2|StronicowyParser/SzablonyTekstu}}, przez funkcję: {{LinkŚródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz|StronicowyParser/SzablonyTekstu}}, przy pomocy parametru: {{Code|IterowaniePoElementachTekstu}} {{LinkPatrz|IterowaniePoElementachTekstu|StronicowyParser/SzablonyTekstu}}. Funkcja omija inne obiekty niż: {{Code|obiekt}} {{Code|{{=}}}} {{Code|SZABLON}}, po prostu dla tych nic nie jest wykonywane. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.AnalizaSzablonuStronicowegoParsera(self,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer,nazwa_modulu_szablonowa,tablica_danych_parametrow_szablonu_strony,__Funkcja, __Funkcja2)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|self}} {{Patrz|self}} | _1 = Zmienna obiektowa tablicy ramki modułu istniejącej w funkcji: {{LinkŚródtytuł|p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi|StronicowyParser/ZbieranieDanychStron/Moduł główny/Część I}}. | 2 = {{Code|uzyskano_w_wyniku_parsowania_wywolanie_szablonu}} {{Patrz|uzyskano_w_wyniku_parsowania_wywolanie_szablonu}}, {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} | _2 = Wnętrze rozważnego szablonu, rodzaj kodu i numer jego, uzyskiwanego poprzez iterację: <syntaxhighlight lang="lua"> for uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod in iterator do GeneralnaAnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer); end; </syntaxhighlight> | 3 = {{Code|nazwa_modulu_szablonowa}} {{Patrz|nazwa_modulu_szablonowa}} | _3 = Nazwa, jak: {{Code|nazwa_modulu_szablonowa}} {{LinkPatrz|nazwa_modulu_szablonowa|StronicowyParser/Potrzebne/Tom VIII}}. | 4 = {{Code|tablica_danych_parametrow_szablonu_strony}} | _4 = Jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony|StronicowyParser/Potrzebne/Tom VIII}}. | 5 = {{Code|__Funkcja}} {{Patrz|__Funkcja}} | _5 = Jest to zwykle funkcja: {{LinkŚródtytuł|AnalizaParametrowaOrazNazwowaStronicowegoIteratoraSzablonowego|StronicowyParser/ZbieranieDanychStron/Moduł główny/Część I}}. A gdy to jest ogólnie inna funkcja: <syntaxhighlight lang="lua"> __Funkcja(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,wywolanie,obiekt,kod,tab_numer); </syntaxhighlight> | 6 = {{Code|__Funkcja2}} {{Patrz|__Funkcja2}} | _6 = Gdy ta funkcja istnieje, można jej nie podawać, ona ma format: <syntaxhighlight lang="lua"> __Funkcja2(wywolanie,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,uzyskano_w_wyniku_parsowania_wywolanie_szablonu); </syntaxhighlight> Funkcja: {{Code|__Funkcja2}} {{LinkPatrz|__Funkcja2}}, jest uruchamiana pod samą funkcją: {{Code|__Funkcja}} {{LinkPatrz|__Funkcja}}. }} W tej funkcji jest uruchamiana inna lokalna funkcja w niej zdefiniowana: {{LinkŚródtytuł|GlownaFunkcja}}, która uruchamia w sobie inne procedury. === {{Śródtytuł|GlownaFunkcja}}{{Code|GlownaFunkcja}} === Lokalna funkcja główna funkcji, jest ona definiowana w funkcji nadrzędnej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function GlownaFunkcja(wywolanie,obiekt,kod)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|wywolanie}} {{Patrz|wywolanie}} | _1 = To jest nic innego jak: {{Code|uzyskano_w_wyniku_parsowania_wywolanie_szablonu}} {{LinkPatrz|uzyskano_w_wyniku_parsowania_wywolanie_szablonu}}. | 2 = {{Code|obiekt}} | _2 = To jest zawsze obiekt typu: {{Code|SZABLON}}. Jest to powtórzenie: {{Code|obiekt}} {{LinkPatrz|obiekt}}. | 3 = {{Code|kod}} | _3 = Jest to numer powyższego obiektu. Jest to powtórzenie: {{Code|kod}} {{LinkPatrz|kod}}. }} W tej funkcji są wywoływane funkcje: {{Code|__Funkcja}} {{LinkPatrz|__Funkcja}}, i pod nim: {{Code|__Funkcja2}} {{LinkPatrz|__Funkcja2}}. == {{Śródtytuł|p.UzyskanieTylkoNazwyLubTabeliNazwyLinkuStronyWoluminuZTabeliZParametramiOrazIdentyfikatorem}}{{Code|p.UzyskanieTylkoNazwyLubTabeliNazwyLinkuStronyWoluminuZTabeliZParametramiOrazIdentyfikatorem}} == Funkcja uzyskuje w wyniku operacji na podstawie tego, że zmienna: {{Code|artykul}} {{LinkPatrz|artykul}}, jest tabelką, a w tej tabeli jest zmienna: {{Code|LINK}} {{LinkPatrz|LINK}}, prawdziwa, wtedy ona uzyskuje pierwszy element tego, przy niepodaniu lub fałszywości zmiennej: {{Code|czy_naglowek}} {{LinkPatrz|czy_naglowek}}, to jest jakaś nazwa (wartość), którego chcemy otrzymać, jako pierwszy jego element. Przeciwnie mamy tą tabelę przy istnieniu jego elementu: {{Code|LINK}} {{LinkPatrz|LINK}}, lub w innym wypadku, inną nietabelową, ogólnie dowolnego typu. Funkcja jest bardzo podobna do funkcji: {{LinkŚródtytuł|p.TylkoNazwaStronyWoluminuZTabeliPublikacji}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UzyskanieTylkoNazwyLubTabeliNazwyLinkuStronyWoluminuZTabeliZParametramiOrazIdentyfikatorem(artykul,czy_naglowek)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|artykul}} {{Patrz|artykul}} | _1 = Tabela lub łańcuch znaków, ogólnie dowolnego typu. | 2 = {{Code|czy_naglowek}} {{Patrz|czy_naglowek}} | _2 = Wartość mówiąca, że chcemy pierwszy element tabeli, lub samą tabelę, a jeżeli tym obiektem jest łańcuch znaków, to ten ciąg znakowy. }} Przykładowe użycie kodu: {{Źródło|uchwyt=p.UzyskanieTylkoNazwyLubTabeliNazwyLinkuStronyWoluminuZTabeliZParametramiOrazIdentyfikatorem-przykład|tekst= <syntaxhighlight lang="lua"> local tabela_nazw_strony=tabela_parametrowa_strony[1]; local czy_table_nazw_strony=stronicowyparser_potrzebne_modul.CzyTabelaStronyWoluminuSpisuRzeczy(tabela_nazw_strony); local tabela_nazw_strony_parametr=czy_table_nazw_strony and tabela_nazw_strony[1] or tabela_nazw_strony; local nazwa_strony=stronicowyparser_potrzebne_modul.UzyskanieTylkoNazwyLubTabeliNazwyLinkuStronyWoluminuZTabeliZParametramiOrazIdentyfikatorem(tabela_nazw_strony_parametr,false); </syntaxhighlight>}} == {{Śródtytuł|p.CzyTabelaStronyWoluminuSpisuRzeczy}}{{Code|p.CzyTabelaStronyWoluminuSpisuRzeczy}} == Funkcja sprawdza, czy podana zmienna: {{Code|tab_artykul}} {{LinkPatrz|tab_artykul}}, jest tabelą z elementem: {{Code|LINK}} {{Patrz|LINK}}, o wartości prawdziwej, wtedy funkcja zwraca wartość fałszywą, przeciwnie funkcja zwraca tych tej funkcji. Tę funkcję stosuje się, gdy pierwszy elementem takiej wykrytej tabeli jest tabela, wtedy ta funkcja zwraca wartość: {{Code|true}}, a gdy tam nie ma takiego elementu, to: {{Code|false}}. Gdy gdy to jest tylko normalny element nietabelowy, to uzyskujemy wartość: {{Code|false}}. Zawsze badamy to za pomocą zmiennej tabelowej o wartości prawdziwej w postaci zmiennej powyższej. Definicja skrótowa funkcja: <syntaxhighlight lang="lua"> function p.CzyTabelaStronyWoluminuSpisuRzeczy(tab_artykul)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|tab_artykul}} {{Patrz|tab_artykul}} | _1 = Zmienna, którą sprawdzamy, ona może być tabelą. }} Przykładem jego użycia jest: {{Źródło|uchwyt=p.CzyTabelaStronyWoluminuSpisuRzeczy-przykład|tekst= <syntaxhighlight lang="lua"> for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce_spis)do if(tab_lista[2])then for _,artykul_w_bazie_element in ipairs(tab_lista[2])do local artykul_w_bazie=artykul_w_bazie_element[1]; local czy_table=stronicowyparser_potrzebne_modul.CzyTabelaStronyWoluminuSpisuRzeczy(artykul_w_bazie); artykul_w_bazie=czy_table and artykul_w_bazie[1] or artykul_w_bazie; local artykul_bez_naglowka_w_bazie=stronicowyparser_potrzebne_modul.TylkoNazwaStronyWoluminuZTabeliPublikacji(artykul_w_bazie); </syntaxhighlight>}} Też jest użycie tego w przykładzie: {{LinkŹródło|uchwyt=p.UzyskanieTylkoNazwyLubTabeliNazwyLinkuStronyWoluminuZTabeliZParametramiOrazIdentyfikatorem-przykład}}. == {{Śródtytuł|p.TylkoNazwaStronyWoluminuZTabeliPublikacji}}{{Code|p.TylkoNazwaStronyWoluminuZTabeliPublikacji}} == Funkcja uzyskuje w wyniku operacji na podstawie tego, że zmienna: {{Code|tab_artykulu}} {{LinkPatrz|tab_artykulu}}, jest tabelką, a: {{Code|pomin_link}} {{LinkPatrz|pomin_link}}, jest prawdziwe lub w tej tabeli jest zmienna: {{Code|LINK}} {{LinkPatrz|LINK}}, prawdziwa, wtedy ona uzyskuje pierwszy element tego, to jest jakaś nazwa (wartość), którego chcemy otrzymać. Przeciwnie mamy inna wartość nietabelową, ogólnie dowolnego typu. Funkcja jest bardzo podobna do funkcji: {{LinkŚródtytuł|p.UzyskanieTylkoNazwyLubTabeliNazwyLinkuStronyWoluminuZTabeliZParametramiOrazIdentyfikatorem}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.TylkoNazwaStronyWoluminuZTabeliPublikacji(tab_artykulu,pomin_link)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|tab_artykulu}} {{Patrz|tab_artykulu}} | _1 = Podobnie, jak się używa zmiennej: {{Code|tab_artykul}} {{LinkPatrz|tab_artykul}}. | 2 = {{Code|pomin_link}} {{Patrz|pomin_link}} | _2 = Zmienna podobna do zmiennej tabelowej: {{Code|LINK}} {{LinkPatrz|LINK}}, ukrytą pod możliwą tylko tabelą: {{Code|tab_artykulu}} {{LinkPatrz|tab_artykulu}}. Zmienna używana zamiast: {{Code|LINK}} {{LinkPatrz|LINK}}. }} Przykład użycia jest w ramce kodu: {{LinkŹródło|p.CzyTabelaStronyWoluminuSpisuRzeczy-przykład}}. == {{Śródtytuł|p.TylkoStronaWoluminuBezParametrowOrazReferencji}}{{Code|p.TylkoStronaWoluminuBezParametrowOrazReferencji}} == Funkcja dla tabeli określanej przez typ zmiennej: {{Code|tab_artykulu}} {{LinkPatrz|tab_artykulu}}, jeśli zawiera podelement: {{Code|LINK}} {{LinkPatrz|LINK}}, prawdziwy, wtedy funkcja nic nie zwraca, przeciwnie zrzuca ten twór tablicowy. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.TylkoStronaWoluminuBezParametrowOrazReferencji(tab_artykulu)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|tab_artykulu}} | _1 = Jak w: {{LinkPatrz|tab_artykulu}}. }} Przykładowe użycie funkcji: {{Źródło|uchwyt=p.TylkoStronaWoluminuBezParametrowOrazReferencji|tekst= <syntaxhighlight lang="lua"> local czy_tabelka_artykulu=stronicowyparser_potrzebne_modul.CzyTabelaStronyWoluminuSpisuRzeczy(tab_dane_nazwa_artykulu_spisu[1]); local tab_nazwa_artukulu_link=czy_tabelka_artykulu and tab_dane_nazwa_artykulu_spisu[1][1] or tab_dane_nazwa_artykulu_spisu[1]; local artykul=stronicowyparser_potrzebne_modul.TylkoStronaWoluminuBezParametrowOrazReferencji(tab_nazwa_artukulu_link); </syntaxhighlight>}} == {{Śródtytuł|p.UzyskanieTabeliStronyWoluminuParametremOrazIdentyfikatorem}}{{Code|p.UzyskanieTabeliStronyWoluminuParametremOrazIdentyfikatorem}} == Funkcja zwraca tabelę elementów według: {{LinkZobaczTeż|p.UzyskanieTabeliStronyWoluminuParametremOrazIdentyfikatorem}}, lub w innym wypadku: {{Code|nazwa_artykulu_strony}} {{LinkPatrz|nazwa_artykulu_strony}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UzyskanieTabeliStronyWoluminuParametremOrazIdentyfikatorem(nazwa_artykulu_strony,parametry,naglowek,tab_innej_przekierowania_strony)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|nazwa_artykulu_strony}} {{Patrz|nazwa_artykulu_strony}} | _1 = Nazwa artykułu strony. | 2 = {{Code|parametry}} {{Patrz|parametry}} | _2 = Parametry strony. | 3 = {{Code|naglowek}} {{Patrz|naglowek}} | _3 = Nagłówek strony. | 4 = {{Code|tab_innej_przekierowania_strony}} {{Patrz|tab_innej_przekierowania_strony}} | _4 = Inna tabela, ogólnie istniejąca. }} Funkcja {{ZobaczTeż|p.UzyskanieTabeliStronyWoluminuParametremOrazIdentyfikatorem}}, gdy któreś z parametrów: {{Code|parametry}} {{LinkPatrz|parametry}}, {{Code|naglowek}} {{LinkPatrz|naglowek}} i {{Code|tab_innej_przekierowania_strony}} {{LinkPatrz|tab_innej_przekierowania_strony}}, wtedy zwracana jest tabela z ustawianą wartością: {{Code|LINK}} {{LinkPatrz|LINK}}, stąd: <syntaxhighlight lang="lua"> {nazwa_artykulu_strony,parametry,naglowek,["LINK"]=true,tab_innej_przekierowania_strony,}; </syntaxhighlight> W innym wypadku zwracana jest przez funkcję tylko element: {{Code|nazwa_artykulu_strony}} {{LinkPatrz|nazwa_artykulu_strony}}. == {{Śródtytuł|p.UzyskanieNazwyStronyWoluminuZParametramiOrazIdentyfikatoremZTabeliWoluminu}}{{Code|p.UzyskanieNazwyStronyWoluminuZParametramiOrazIdentyfikatoremZTabeliWoluminu}} == Gdy: {{Code|tab_artykul}} {{LinkPatrz|tab_artykul}}, jest tabelką, i zmienna: {{Code|pomin_link}} {{LinkPatrz|pomin_link}}, jest prawdziwa lub podelement tabeli: {{Code|LINK}} {{LinkPatrz|LINK}}, jest prawdziwy, wtedy jeśli nagłówek: {{Code|naglowek}} {{LinkPatrz|naglowek}}, jest prawdziwy, wtedy jest zwracana zmienna w formie: <syntaxhighlight lang="lua"> return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or ""); </syntaxhighlight> Gdy ten parametr ma wartość wtedy przeciwną, to: {{Code|nazwa_artykulu_strony}} {{LinkPatrz|nazwa_artykulu_strony}}, a w innym wypadku sama tabelę, co podano na wejściu funkcji: Gdy elementy: {{Code|parametry}} {{LinkPatrz|parametry}}, i {{Code|naglowek}} {{LinkPatrz|naglowek}}, są puste, to są zastępowane wartością: {{Code|nil}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UzyskanieNazwyStronyWoluminuZParametramiOrazIdentyfikatoremZTabeliWoluminu(tab_artykul,naglowek,pomin_link)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|tab_artykul}} | _1 = Jak w: {{LinkPatrz|tab_artykul}}. | 2 = {{Code|naglowek}} | _2 = Czy w odpowiednim przypadku ma być zwracana nazwa z parametrami i nagłówkiem, przeciwnie tylko nazwa. | 3 = {{Code|pomin_link}} | _3 = Jak w: {{LinkPatrz|pomin_link}}. Zmienna używana zamiast: {{Code||LINK}} {{LinkPatrz|LINK}}. }} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> mdc47rnvxe3mum06p0aefmsy0hqnvnr Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom XI 4 64477 560616 560523 2026-11-04T15:59:13Z Persino 2851 560616 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.SzablonyPrzekierowanioweInteligentne}}{{Code|p.SzablonyPrzekierowanioweInteligentne}} == Funkcja jest odwrotnością do szablonów pełnych ich nazw: {{LinkŚródtytuł|p.PodzielNaElementyNazwowyWikiLinkInteligentny}}. Funkcja wykorzystuje pewne tabele do swojego działania, funkcja wykrywa kolidację nazw przekierowań względem normalnych szablonów, tą tabelą jest: {{Tbl|uchwyt=p.nazwy_szablonowe_kolidacja|tekst= <syntaxhighlight lang="lua"> p.nazwy_szablonowe_kolidacja={ --["Ltr"]=true, }; </syntaxhighlight>}} Wtedy drugi parametr zwracany jest: {{Code|false}}, z pierwszą nazwą wykrytą przez tą tabelę. Innymi tabelami potrzebnymi do działania są: {{Tbl|uchwyt=p.przekierowania_szablonowe_linkowe_inteligentne_inne|tekst= <syntaxhighlight lang="lua"> p.przekierowania_szablonowe_linkowe_inteligentne_inne={ ["Lz"]="LinkURL", ["Lb"]="LinkWB", ["Sr"]="Sekcja referencyjna", ["Ly"]="Link wewnętrzny", }; </syntaxhighlight>}} Ta tabela zamienia przekierowania niestandardowych linków inteligentnych na ich pełne nazwy, i to jest zwracane przez tą funkcję z drugim parametrem: {{Code|true}}. Funkcja wykrywa litery kolidujące i zamienia je na normalne, bez dodatkowych znaczków, na podstawie: {{Tbl|uchwyt=p.litery_przestrzeni_kolidacja|tekst= <syntaxhighlight lang="lua"> p.litery_przestrzeni_kolidacja={ --["ř"]="r", }; </syntaxhighlight>}} Do wykrywania nazw przestrzeni jest dobrze potrzebna tabela do usystematyzowanych nazw linków inteligentnych w zależności jakie on przestrzenie reprezentuje na równych projektach siostrzanych i językowych polskiego {{NS|l=tak|w=tak|pk=d}}. Tą tabelą jest: {{Tbl|uchwyt=p.nazwy_przestrzeni_nazw_przekierowaniowe_linkowe_inteligentne|tekst= <syntaxhighlight lang="lua"> p.nazwy_przestrzeni_nazw_przekierowaniowe_linkowe_inteligentne={ ["g"]="Główna", ["c"]="Specjalna", ["k"]="Kategoria", ["f"]="Plik", ["m"]="Komunukat", ["d"]="Moduł", ["p"]="Pomoc", ["r"]="Projekt", ["s"]="Szablon", ["j"]="Wikijunior", ["ż"]="Użytkownik", ["e"]="Extension", ["x"]="Property", ["w"]="Wikiprojekt", ["t"]="Portal", }; </syntaxhighlight>}} Te projekty są reprezentowane przez różne serwisy, a one są definiowane przez części nazw linków inteligentnych, które mają skategoryzowane nazwy, według tabeli: {{Tbl|uchwyt=p.nazwy_projektowe_serwisy_linkowe_inteligentne|tekst= <syntaxhighlight lang="lua"> p.nazwy_projektowe_serwisy_linkowe_inteligentne={ ["p"]="Pedia", ["h"]="EnPedia", ["s"]="Słownik", ["x"]="Cytaty", ["ź"]="Źródła", ["d"]="Podróże", ["g"]="Species", ["z"]="News", ["r"]="Wersytet", ["w"]="Wikia", ["c"]="Commons", ["n"]="Dane", ["k"]="MediaWiki", ["m"]="MetaWiki", ["b"]="En", }; </syntaxhighlight>}} Funkcja zwraca skonstruowaną nazwę pełną szablonu z jego przekierowania, z drugą wartością prawdziwą, a jeżeli nie udało się skonstruować tego, to funkcją zrzuca nazwę szablonu z parametrów, jako nie przetworzoną jego tworu, z drugą wartością: {{Code|false}}. Jeżeli nazwą przekierowaniem jest pewny usystematyzowany skrót, to można go zamienić na pełną nazwę szablonu jego nieprzekierowania, do postaci dla szablonów lokalnych: * {{s|lg}} → to ona jest rozkładana w sposób: l → '''Link''' i g → '''Główna'''. * {{s|lk}} → to ona jest rozkładana w sposób: l → '''Link''' i k → '''Kategoria'''. * {{s|ls}} → to ona jest rozkładana w sposób: l → '''Link''' i k → '''Szablon'''. Jeżeli nazwą przekierowaniem jest pewny usystematyzowany skrót, to można go zamienić na pełną nazwę szablonu jego nieprzekierowania, do postaci dla szablonów nielokalnych: * {{s|lpg}} → to ona jest rozkładana w sposób: l → '''Link''', p → '''Pedia''' i g → '''Główna'''. * {{s|lck}} → to ona jest rozkładana w sposób: l → '''Link''', c → '''Commons''' i k → '''Kategoria'''. * {{s|lnx}} → to ona jest rozkładana w sposób: l → '''Link''', n → '''Dane''' i x → '''Property'''. Funkcja rozpoznaje szablony typu: {{s|LinkUstęp}} (skrót: {{s|lu}}) i jego kolegów, którego przykład jest taki dla szablonów lokalnych: * {{s|lgu}} → to ona jest rozkładana w sposób: l → '''Link''', g → '''Główna''' i u → '''Ustęp'''. * {{s|lsu}} → to ona jest rozkładana w sposób: l → '''Link''', s → '''Szablon''' i u → '''Ustęp'''. Funkcja rozpoznaje szablony typu: {{s|LinkUstęp}} (skrót: {{s|lu}}) i jego kolegów, którego przykład jest taki dla szablonów nielokalnych: * {{s|lpgu}} → to ona jest rozkładana w sposób: l → '''Link''', p → '''Pedia''', g → '''Główna''' i u → '''Ustęp'''. * {{s|lpsu}} → to ona jest rozkładana w sposób: l → '''Link''', p → '''Pedia''', s → '''Szablon''' i u → '''Ustęp'''. Funkcja też rozpoznaje skróty: {{s|lo}} i {{s|lo2}}, i zamienia je odpowiednio na pełne nazwy szablonów, tzn.: {{s|LinkOgólne}} i {{s|LinkOgólne2}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.SzablonyPrzekierowanioweInteligentne(nazwa_szablonu)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|nazwa_szablonu}} {{Patrz|nazwa_szablonu}} | _1 = Nazwa przekierowania skrótu odpowiednich szablonów inteligentnych zamienianych na ich pełne nazwy z wiadomością o przetłumaczeniu, lub inne nazwy innych szablonów, które te nazwy są zwracane przez szablon z informacją o niemożności jego przetłumaczenia. }} == {{Śródtytuł|p.PodzielNaElementyNazwowyWikiLinkInteligentny}}{{Code|p.PodzielNaElementyNazwowyWikiLinkInteligentny}} == Funkcja jest odwrotnością do szablonu linków inteligentnych przekierowań, ale nie dokładnie, tzn. tych: {{LinkŚródtytuł|p.SzablonyPrzekierowanioweInteligentne}}, za pomocą tej funkcji, w tym szablonie nazwy przekierowań skrótów są zamieniane na ich pełne nazwy, oczywiście nieprzekierowań. Funkcja wykrywa, czy to jest link inteligentny usystematyzowanych według reguł, robi to według tabel: {{Tbl|uchwyt=p.kody_szablony_linkowe_przestrzenne|tekst= <syntaxhighlight lang="lua"> p.kody_szablony_linkowe_przestrzenne={ ["Główna"]={"",}, ["Wikijunior"]={"Wikijunior",}, ["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",}, }; </syntaxhighlight>}} Ta funkcja pełnym nazwie szablonu linku rozpoznaje przestrzenie nazw, który on reprezentuje. Funkcja też rozpoznaje dialekt danego projektu lokalnego, dzieląc je na języki: {{Tbl|uchwyt=p.kody_szablony_linkowe_dialektu|tekst= <syntaxhighlight lang="lua"> p.kody_szablony_linkowe_dialektu={ ["En"]="en", }; </syntaxhighlight>}} Funkcja też rozpoznaje projekty w nazwach szablonów tych: {{Tbl|uchwyt=p.kody_szablony_linkowe_projektowe|tekst= <syntaxhighlight lang="lua"> 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", }; </syntaxhighlight>}} Funkcja zamienia np. nazwę pełną: {{s|LinkSzablon}}, która mówi, że to jest link i on reprezentuje przestrzeń główną, a inne przykłady: ---- Linki do lokalnego bieżącego projektu: {{Pre start}} LinkGłówna → Link + ["Główna"]={"",}, LinkKategoria → Link + ["Kategoria"]={"Category",}, {{Pre koniec}} ---- Linki do nielokalnego projektu: {{Pre start}} LinkCommonsGłówna → Link + ["Commons"]="commons", + ["Główna"]={"",}, LinkSłownikKategoria → Link + ["Słownik"]="wikt", + ["Kategoria"]={"Category",}, {{Pre koniec}} Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.PodzielNaElementyNazwowyWikiLinkInteligentny(nazwa,tablica_danych_parametrow_szablonu_strony,kod,czy_liczyc_przekierowanie)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|nazwa}} {{Patrz|nazwa}}| _1 = Nazwa przekierowania lub jego pełna nazwa. | 2 = {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} | _2 = Tablica parametrów zamiany nazw szablonów elementów bazy danych kodowania na czynniki pierwsze. Ta tablica zamienia kody: {{Code|kod}} {{LinkPatrz|kod}}, na ich zapamiętaną w tej tablicy, by później bez przetwarzania, by te odtworzyć. | 3 = {{Code|kod}} {{Patrz|kod}} | _3 = Numer kodu typu: {{Code|obiekt}} {{Code|{{=}}}} {{Code|SZABLON}}. | 4 = {{Code|czy_liczyc_przekierowanie}} {{Patrz|czy_liczyc_przekierowanie}} | _4 = Wtedy przekierowanie nie jest zamieniane na jej pełną wersję. }} == {{Śródtytuł|p.NazwaInnegoSzablonowegoLinkowegoObiektu}}{{Code|p.NazwaInnegoSzablonowegoLinkowegoObiektu}} == Funkcja zamienia nazwę przekierowania szablonu inteligentnego na jego pełną nazwę na podstawie: {{LinkŚródtytuł|p.SzablonyPrzekierowanioweInteligentne}}. {{OpisParametrów | tytuł = Szablon rozróżnia szablony typu: | 1 = {{s|Sekcja referencyjna}} | _1 = Funkcja zamienia to wywołanie szablonu na jego nazwę: {{Parametr|nazwa}}, {{Parametr|n}} lub {{Parametr|2}} albo na parametr: {{Parametr|strona}}, {{Parametr|s}} lub {{Parametr|1}}. A jeżeli te parametry nie istnieją, to jest liczona pełną nazwa książki z: {{LinkŚródtytuł|m["PEŁNANAZWAKSIĄŻKI"]|Nazwy/Tom IV}}. Dalej jest liczona zmienna: {{Parametr|ustęp}}, którego wartość logiczna jest odwracana, gdy parametr strony nie istnieje. Dalej jest liczony jej ustęp przy wykorzystaniu: {{LinkŚródtytuł|p.Indentyfikator_lub_podstrona_wikiadresu_strony|Sekcja referencyjna}}. | 2 = {{s|Link wewnętrzny}} | _2 = Funkcja zamienia to na: {{Parametr|nazwa}} lub {{Parametr|n}} lub na parametr: {{Parametr|strona}}, z nagłówkiem: {{Parametr|nagłówek}}. | 3 = {{s|LinkOgólne}} | _3 = Funkcja zamienia na parametr: {{Parametr|2}} (nazwę), i nazwę strony: {{Parametr|1}}. | 4 = {{s|SpisTreści}} | _4 = Funkcja liczy nazwę szablonu w postaci: <syntaxhighlight lang="lua"> ---- te elementy są sprawdzane w kolejności po kolei,a jeśli dany parametr istnieje, to nie jest sprawdzane to dalej. local nazwa=(tabela_parametrow_szablonu["nazwa"] -- Nazwa artykułu or tabela_parametrow_szablonu[3] -- Jego wersja numeryczna, też to samo. or tabela_parametrow_szablonu["artykuł"] -- Artykuł podręcznika. or tabela_parametrow_szablonu[1]); -- Jego element numerowany. </syntaxhighlight> Czyli kolejno są sprawdzane parametry w kolejności wyliczania: {{Parametr|nazwa}}, {{Parametr|3}}, {{Code|artykuł}} i {{Code|1}}. Musi istnieć pierwszy z kolei. A jeżeli ona istnieje, to jest zwracana ta nazwa, przeciwnie do tego dodawane są inne elementy: <syntaxhighlight lang="lua"> local dodatek=tabela_parametrow_szablonu["dodatek"] or tabela_parametrow_szablonu[4]; if(dodatek)then dodatek=" "..dodatek;else dodatek="";end; nazwa_zamiast_linku=nazwa..dodatek; </syntaxhighlight> Jeśli jest podany parametr: {{Parametr|dodatek}}, to on jest dodawany po spacji ta zmienna. | 5 = {{s|LinkURL}} | _5 = Funkcja, jeśli istnieje jej nazwa, to jest to zrzucane: <syntaxhighlight lang="lua"> local nazwa=tabela_parametrow_szablonu["nazwa"] or tabela_parametrow_szablonu["n"]; </syntaxhighlight> Czyli funkcja wyszukuje w kolejności wyszukiwania ich najpierw: {{Parametr|nazwa}}, później: {{Parametr|n}}. A jeśli ona nie istnieje, to zwracane jest: <syntaxhighlight lang="lua"> local strona=tabela_parametrow_szablonu["strona"] or tabela_parametrow_szablonu["s"]; </syntaxhighlight> Najpierw jest wyznaczany element: {{Parametr|strona}}, a później: {{Parametr|s}}. }} Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.NazwaInnegoSzablonowegoLinkowegoObiektu(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,tablica_danych_parametrow_szablonu_strony,kod)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} | _1 = Tabela parametrów szablonu. | 2 = {{Code|nazwa_szablonu}} | _2 = Jak w: {{LinkPatrz|nazwa_szablonu}}. | 3 = {{Code|tabela_modyfikatorow}} {{Patrz|tabela_modyfikatorow}} | _3 = Tabela modyfikatorów o kluczach modyfikatorowych i wartościach logicznych prawdziwych. | 4 = {{Code|tablica_danych_parametrow_szablonu_strony}} | _4 = Jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}. | 5 = {{Code|kod}} | _5 = Jak w: {{LinkPatrz|kod}}. }} == {{Śródtytuł|p.NazwaInnegoSzablonowegoLinkowegoSpisuRzeczy}}{{Code|p.NazwaInnegoSzablonowegoLinkowegoSpisuRzeczy}} == Funkcja operuje na nazwach szablonów i ich parametrach według opisu w tabeli: {{Tbl|uchwyt=p.inne_linki_szablony_elementy_spisu_rzeczy|tekst= <syntaxhighlight lang="lua"> p.inne_linki_szablony_elementy_spisu_rzeczy={ ["SpisPozycja"]={true,numer_link="tyt",}, ["SpisZw"]={false,numer=1,link=2,}, }; </syntaxhighlight> }} Funkcja liczy nazwę szablonów linków typowo spisowych, funkcja obsługuje według: {{LinkTbl|p.inne_linki_szablony_elementy_spisu_rzeczy}}, szablony: {{s|SpisPozycja}} i {{s|SpisZw}}. Z nich liczy nazwę. Z tego pierwszego liczy tylko nazwę, a z tego drugiego nazwę, która jest połączeniem numeru wskazywanych przez: {{Code|numer}} {{Patrz|numer}} (szuka parametru w parametrach szablonu pod jego wartością), i po spacji nazwy: {{Code|link}} {{Patrz|link}} (też pod jego wartością). Te nazwy szablony w postaci przekierowań skrótów są zamieniane na pełne nazwy szablonów dzięki: {{LinkŚródtytuł|p.SzablonyPrzekierowanioweInteligentne}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.NazwaInnegoSzablonowegoLinkowegoSpisuRzeczy(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,tablica_danych_parametrow_szablonu_strony,kod) </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|tabela_parametrow_szablonu}} | _1 = Jak w: {{LinkPatrz|tabela_parametrow_szablonu}}. | 2 = {{Code|nazwa_szablonu}} | _2 = Jak w: {{LinkPatrz|nazwa_szablonu}}. | 3 = {{Code|tabela_modyfikatorow}} | _3 = Jak w: {{LinkPatrz|tabela_modyfikatorow}}. | 4 = {{Code|tablica_danych_parametrow_szablonu_strony}} | _4 = Jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}. | 5 = {{Code|kod}} | _5 = Jak w: {{LinkPatrz|kod}}. }} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 5lhszvug845hysy5un1obgi70t2ds4j Wikibooks:Moduły/StronicowyParser/Potrzebne/Tom XII 4 64478 560617 560531 2026-11-04T16:00:29Z Persino 2851 560617 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Potrzebne}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.AnalizujLinkSzablonyOrazLinki}}{{Code|p.AnalizujLinkSzablonyOrazLinki}} == Funkcja do analizy szablonów inteligentnych: {{Code|SZABLON}} {{LinkPatrz|SZABLON}}, i linków: {{Code|LINKW}} {{LinkPatrz|LINKW}}, i {{Code|LINKZ}} {{LinkPatrz|LINKZ}}, jeśli dany obiekt już został policzonym to zwracana jest już policzona wartość, bez tego wyznaczania powtórnie, gdy tego nie ma w bazie: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul|StronicowyParser/Potrzebne/Tom VIII}}, o kodzie: {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/Potrzebne/Tom VIII}}, to wtedy funkcja to liczy, i to zapisuje w bazie, powtórnie tylko ściąga. Funkcja uruchamia przy wyznaczaniu obiektu za pierwszym razem przy pomocy: {{LinkŚródtytuł|p.AnalizujLinkSzablonyOrazLinki2}}, którą dla danego obiektu uruchamia się tylko raz. Definicja skrótowa funkcji {{ZobaczTeż|p.AnalizujLinkSzablonyOrazLinki}}: <syntaxhighlight lang="lua"> function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,nazwa_modulu,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,obiekt,kod,tab_nazwa_spisow_przekierowaniowych,__FUNKCJA)...end; </syntaxhighlight> {{OpisParametrów | tytuł = Opis parametrów funkcji: | 1 = {{Code|wyzyskane_wywolanie_szablonu_spis_tresci}} {{Patrz|wyzyskane_wywolanie_szablonu_spis_tresci}} | _1 = Wnętrze szablonu linku inteligentnego: {{Code|SZABLON}} {{Patrz|SZABLON}}, {{Code|LINKW}} {{Patrz|LINKW}} i {{Code|LINKZ}} {{Patrz|LINKZ}}. | 2 = {{Code|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}}, {{Code|nazwa_ksiazki}} | _2 = Kolejno jak: {{LinkPatrz|nazwa_przestrzeni|StronicowyParser/Potrzebne/Tom III}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki|StronicowyParser/Potrzebne/Tom III}}, {{LinkPatrz|nazwa_ksiazki|StronicowyParser/Potrzebne/Tom III}}. To są nazwy ksiązki spisu. | 3 = {{Code|nazwa_spisu_tresci}} | _3 = Jak nazwa artykułu: {{LinkPatrz|nazwa_artykulu|StronicowyParser/Potrzebne/Tom III}}, tylko że nazwa artykułu jakiegoś spisu. | 4 = {{Code|nazwa_modulu}} | _4 = Jak w: {{LinkPatrz|nazwa_modulu|StronicowyParser/Potrzebne/Tom VIII}}. | 5 = {{Code|pelna_nazwa_spisu_tresci_szablonowa}} | _5 = Jak w: {{LinkPatrz|nazwa_modulu_szablonowa|StronicowyParser/Potrzebne/Tom VIII}}. Nazwa szablonowa wywołaniowa spisu treści jego artykułu. | 6 = {{Code|tablica_analizy_obiektow_strony_dany_modul}} | _6 = Jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul|StronicowyParser/Potrzebne/Tom VIII}}. | 7 = {{Code|tablica_danych_parametrow_szablonu_strony}} | _7 = Jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony|StronicowyParser/Potrzebne/Tom VIII}}. | 8 = {{Code|obiekt}} | _8 = Jak w: {{LinkPatrz|obiekt|StronicowyParser/Potrzebne/Tom VIII}}. | 9 = {{Code|kod}} | _9 = Jak w: {{LinkPatrz|kod|StronicowyParser/Potrzebne/Tom VIII}}. | 10 = {{Code|tab_nazwa_spisow_przekierowaniowych}} {{Patrz|tab_nazwa_spisow_przekierowaniowych}} | _10 = Tablica przekierować, aby nie rozpatrywać tego samego przekierowania wiele razy. | 11 = {{Code|__FUNKCJA}} {{Patrz|__FUNKCJA}} | _11 = Używana, gdy niedopasowano szablonu do żadnego obsługiwanego szablonu. }} == {{Śródtytuł|p.AnalizujLinkSzablonyOrazLinki2}}{{Code|p.AnalizujLinkSzablonyOrazLinki2}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> hokf7zjvm1ue1sajadun6rgdl4ba5ao