Wikibooks plwikibooks https://pl.wikibooks.org/wiki/Wikibooks:Strona_g%C5%82%C3%B3wna MediaWiki 1.46.0-wmf.24 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 Szablon:Ekspresowe kasowanie 10 1593 540938 510872 2026-04-27T09:09:28Z Persino 2851 540938 wikitext text/x-wiki <includeonly>{{#invoke:Pudełko|Ogólne pudełko | nazwa = mbox | typ = poważny | grafika = {{ikona|ek|50}} | nazwa przestrzeni nazw = {{#invoke:Pudełko|Nazwa przestrzeni nazw|Template}} | tekst = {{P|{{Ekspresowe kasowanie/wstęp}}<!-- -->{{#if:{{{1|{{{powód|}}}}}}|<!-- <!-- UWAGA! Dodając tutaj nowe uzasadnienie w {{Ekspresowe kasowanie/powód|...}} pamiętaj o zaktualizowaniu {{Ekspresowe kasowanie/usuń|...}} --> {{Ekspresowe kasowanie/powód|{{{1|{{{powód|}}}}}}}} {{Ekspresowe kasowanie/admin}}<!-- -->}}}} | poniżej = {{Ekspresowe kasowanie/usuń|{{{1|{{{powód|}}}}}}}} | kategorie = {{#if:{{{bez kategorii|}}}||__NOINDEX__{{Kategoria|Ekspresowe kasowanie}}}} }}</includeonly><!-- --><noinclude>{{Dokumentacja}} <!-- Interwiki dodawaj do podstrony /opis, nie tutaj! --> </noinclude> 3d23rwbotn0arvj2sk9qdrmjmvw97jy 540941 540938 2026-04-27T09:18:57Z Persino 2851 540941 wikitext text/x-wiki <includeonly>{{#invoke:Pudełko|Ogólne pudełko | nazwa = mbox | typ = poważny | grafika = {{ikona|ek|50}} | nazwa przestrzeni nazw = {{#invoke:Pudełko|Nazwa przestrzeni nazw|Template}} | tekst = {{P|{{Ekspresowe kasowanie/wstęp}}<!-- -->{{#if:{{{1|{{{powód|}}}}}}|<!-- <!-- UWAGA! Dodając tutaj nowe uzasadnienie w {{Ekspresowe kasowanie/powód|...}} pamiętaj o zaktualizowaniu {{Ekspresowe kasowanie/usuń|...}} --> {{Ekspresowe kasowanie/powód|{{{1|{{{powód|}}}}}}}} {{Ekspresowe kasowanie/admin}}<!-- -->}}}} | poniżej = {{Ekspresowe kasowanie/usuń|{{{1|{{{powód|}}}}}}}} | kategorie = {{#if:{{{bez kategorii|}}}||__NOINDEX__{{#invoke:Skrót|Kategoria2|Ekspresowe kasowanie}}}} }}</includeonly><!-- --><noinclude>{{Dokumentacja}} <!-- Interwiki dodawaj do podstrony /opis, nie tutaj! --> </noinclude> orfzo7650fs8uc5tslh47089sllolzm Szablon:Dopracować 10 1613 540956 481238 2026-04-27T11:37:32Z Persino 2851 540956 wikitext text/x-wiki <includeonly>{{#invoke:Pudełko|Ogólne pudełko | cecha = {{#invoke:Pudełko|Przedmiotowa cecha pudełka | dodatkowy warunek 1 = {{#if:{{#invoke:Dopracować|nadmiarowe|Kategoria={{#invoke:Pudełko|Nazwa przestrzeni nazw|Template}}}}|{{#ifeq:{{#invoke:Pudełko|Nazwa przestrzeni nazw|Template}}|Wikibooks|{{#if:{{#invoke:Dopracować|nadmiarowe|Kategoria=(main)}}{{#invoke:Dopracować|nadmiarowe|Kategoria=Wikijunior}}|true}}|true}}}} | dodatkowy warunek 2 = {{#invoke:Dopracować|nieznane}} | dodatkowy warunek 3 = {{#invoke:Dopracować|powtarzające}} | błędy dodatkowego warunku 1 = Szablon nie powinien przyjmować nadmiarowego zbioru parametrów. | błędy dodatkowego warunku 2 = Szablon nie powinien przyjmować nieznanych parametrów. | błędy dodatkowego warunku 3 = Szablon nie powinien przyjmować powtarzających się parametrów. | dodatek kategorii błędu dodatkowego warunku 1 = nadmiarowe parametry | dodatek kategorii błędu dodatkowego warunku 2 = nieznane parametry | dodatek kategorii błędu dodatkowego warunku 3 = powtarzające się parametry | parametry przykładowe dodatkowego warunku 1 = Oto jest opis problemu{{!}}tamże{{!}}kategoria{{=}}2020-05{{!}}nazwa przestrzeni nazw{{=}}Kategoria | parametry przykładowe dodatkowego warunku 2 = Oto jest opis problemu{{!}}kategoria{{=}}2020-05{{!}}nazwa przestrzeni nazw{{=}}Kategoria{{!}}nieznany{{=}}123 | parametry przykładowe dodatkowego warunku 3 = Oto jest opis problemu{{!}}styl{{=}}2020-05{{!}}styl{{!}}nazwa przestrzeni nazw{{=}} | pierwszy człon kategorii błędu = Szablon dopracować | nieobsługiwane strony główne = tak | nieobsługiwane strony jednostek programowych = tak |(main)|Wikijunior|User|Category|Template|Module|Wikibooks|Help}} | warunek niealternatywnego wywołania = {{#invoke:Dopracować|test}}{{#ifeq:{{{1}}}|sekcja|1x}} | alternatywne wywołanie = {{#if:{{{bez kategorii|}}}||{{Kategoria|Szablon dopracować bez podanych parametrów}}}} | nazwa przestrzeni nazw = {{#switch:{{FULLPAGENAME}}|Szablon:Dopracować|Szablon:Dopracować/opis=Template|#default={{#invoke:Pudełko|Nazwa przestrzeni nazw|Template}}}} | typ = zawartość | grafika = {{#switch:{{#invoke:Dopracować|ikona}} | aktualizacja = {{ikona|pomczas|35|link=w:Pomoc:Ponadczasowość}} | źródła = {{ikona|nwer|50|link=w:Wikipedia:Weryfikowalność}} | medwer = [[Plik:Question book Asclepius.svg|50px|link=w:Wikipedia:Wiarygodne źródła (artykuły o tematyce medycznej)]] | przypisy = [[plik:REF orange.svg|50px|link=]] | kategoria = {{ikona|kat|35}} | linki = {{ikona|linkwew|50}} | wikikod = [[Plik:Wikicode icon.svg|35px|link=]] | pov|zwodnicze|reklama = {{ikona|pov|35}} | próżne|pustosłowie|trawa = {{ikona|pustosłowie|50}} | zweryfikować|nierzetelne|or = {{ikona|pomuwaga|35}} | styl|linkizew|trivia = {{ikona|miotłasw|35}} | kryteria = {{ikona|kryterialist|35}} | tłumaczenie = {{ikona|tłumaczenie|50|link=w:Wikipedia:Tłumaczenia}} | uzupełnić = [[plik:Add more text icon.svg|35px|link=]] | #default = {{ikona|miotłasw|35|link=Wikibooks:Sprzątanie Wikibooks}} }} | tekst = {{#invoke:Dopracować|tekst}} }}</includeonly><noinclude>{{Dokumentacja}}</noinclude> 0axc3rcxrh70av2uzuv76fi4is5i8j9 Szablon:Fakt 10 25198 540931 517139 2026-04-27T07:46:14Z Persino 2851 540931 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} | artykuł = Artykuły | artykuł dla dzieci = Artykuły dla dzieci | strona brudnopisu projektu = Strony brudnopisu projektu | strona użytkownika = Strony użytkowników | #default = Strony }} zawierające brakujące przypisy {{#if:{{{data|}}}|od {{{data}}} }}}} }}{{#if:{{{1|}}}|{{Span|klasa=need_ref|styl=text-decoration: none; border-bottom: 1px dotted grey;|atrybuty=title="Te informacje wymagają podania przypisów bibliograficznych {{#if:{{{data|}}}|od {{{data}}}|}}"|{{{1}}}}}}}{{Sup|atrybuty=title="Te informacje wymagają podania przypisów bibliograficznych {{#if:{{{data|}}}|od {{{data}}}|}}"|&#91;{{lpp|Przypisy|potrzebny&nbsp;przypis}}&#93;}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> omqhgubov2lxc4qkdpplqpz32pjnzjp Szablon:Status 10 27687 540946 478269 2026-04-27T09:45:31Z Persino 2851 540946 wikitext text/x-wiki <includeonly><!-- -->{{#switch:{{#if:{{{artykuł|}}}<!-- -->|strona artykułu<!-- -->|{{#invoke:Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych=tak}}<!-- -->}}<!-- -->|podręcznik|podręcznik dla dzieci|strona artykułu=<!-- -->{{#invoke:Ramka|Szablon|parametry funkcji modułu pudełek=tak|Nazwa=Status/silnik | ukończona = {{Zastąp|ciąg={{{1|}}}|wzór=^%s*[%-%+]?%s*0*(%d+)%%?%s*$|zamień=%1}} | polecana = {{#if:{{Dopasuj|ciąg={{{1}}}|wzór=^%s*(%+).*$}}|tak}} | typ = {{{typ|}}} | nie kategorie = | id = {{{id|}}}<!-- -->}}<!-- -->{{#if:{{{1|}}}|<!-- -->{{#if:{{Dopasuj|ciąg={{{1}}}|wzór=^%s*([%+%-]).*$}}|<!-- -->{{#ifeq:{{#invoke:Pudełko|Nazwa przestrzeni nazw 2}}|Wikijunior|<!-- -->{{#invoke:Skrót|Kategoria|Wikijunior}}<!-- -->{{#if:{{{junior|}}}|<!-- -->{{#invoke:Ramka|PrzetwarzajIterującCiąg |ciąg={{{junior}}} | 1= {{((}}#if:{{((}}ciąg{{))}} {{!}}{{((}}#invoke:Skrót{{!}}Kategoria{{!}}Wikijunior:{{((}}ucfirst:{{((}}ciąg{{))}}{{))}}{{))}} {{))}}<!-- -->}}<!-- -->}}<!-- -->}}<!-- -->{{#if:{{{archiwalna|}}}|{{#invoke:Skrót|Kategoria|Archiwalne}}}}<!-- -->{{#if:{{Dopasuj|ciąg={{#invoke:Pudełko|Nazwa jednostki 2}}|wzór=^([^/]+)$}}|<!-- -->{{#invoke:Skrót|Kategoria|Wszystkie książki}}<!-- -->{{#invoke:Skrót|Kategoria|Spis alfabetyczny/{{Dopasuj|ciąg={{#invoke:Pudełko|Nazwa jednostki 2}}|wzór=^(.).*$}}}}<!-- -->{{#if:{{{poziom|}}}|<!-- -->{{#invoke:Ramka|PrzetwarzajIterującCiąg |ciąg={{{poziom}}} | 1= {{((}}#if:{{((}}ciąg{{))}}<!-- -->{{!}}{{((}}#invoke:Skrót{{!}}Kategoria{{!}}{{((}}ciąg{{))}}{{))}}<!-- -->{{))}}{{((}}#if:{{(((}}typ{{!}}{{)))}}{{!}}<!--<!-- -->{{((}}#switch:{{((}}ucfirst:{{((}}ciąg{{))}}{{))}}<!-- -->{{!}}Studia{{=}}{{((}}#invoke:Skrót{{!}}Kategoria{{!}}Akademickie książki {{(((}}typ{{)))}}{{))}}<!-- -->{{))}}<!-- -->{{))}}<!-- -->}}<!-- <!-- -->}}<!-- -->}}<!-- -->{{#if:{{{korzeń|}}}|<!-- -->{{#invoke:Skrót|Kategoria|{{{korzeń}}}|*}}<!-- -->}}<!-- -->{{#if:{{{główna|}}}|<!-- -->{{#invoke:Skrót|Kategoria|{{{główna}}}|sortuj spacją=tak}}<!-- -->}}<!-- -->{{#if:{{{rodzaj|}}}|<!-- -->{{#invoke:Ramka|PrzetwarzajIterującCiąg |ciąg={{{rodzaj}}} | 1= {{((}}#if:{{((}}ciąg{{))}}<!-- -->{{!}}{{((}}#invoke:Skrót{{!}}Kategoria{{!}}{{((}}ciąg{{))}}{{))}}<!-- -->{{))}}<!-- -->}}<!-- -->}}<!-- -->{{#if:{{#invoke:Ramka|Powtarzaj|start=2|{{((}}Dopasuj{{!}}ciąg{{=}}{{(((}}{{((}}_{{))}}{{)))}}{{!}}wzór{{=}}^%s*([Kk]siążka)%s*:%s*.+${{))}}}} | |{{#ifexist:{{Ns:Category}}:Książka:{{#invoke:Pudełko|Pełna nazwa jednostki 2}}|{{#invoke:Skrót|Kategoria|Książka:{{#invoke:Pudełko|Pełna nazwa jednostki 2}}|sortuj spacją={{#if:{{{książka|}}}||tak}}}}}} }} {{#invoke:Ramka|Powtarzaj|start=2|<!-- -->{{((}}#if:{{(((}}{{((}}_{{))}}{{!}}{{)))}}{{!}}<!-- -->{{((}}#ifeq:{{((}}ucfirst:{{((}}Dopasuj{{!}}ciąg{{=}}{{(((}}{{((}}_{{))}}{{)))}}{{!}}wzór{{=}}^%s*([Kk]siążka)%s*:%s*{{))}}{{))}}{{!}}Książka<!-- -->{{!}}<!-- -->{{((}}#invoke:Skrót{{!}}Kategoria{{!}}{{(((}}{{((}}_{{))}}{{)))}}{{!}}sortuj spacją{{=}}<!-- -->{{((}}#if:{{(((}}książka{{!}}{{)))}}{{!}}{{!}}tak{{))}}<!-- -->{{))}}<!-- -->{{!}}<!-- -->{{((}}#invoke:Skrót{{!}}Kategoria{{!}}{{(((}}{{((}}_{{))}}{{)))}}{{))}}<!-- -->{{))}}<!-- -->{{((}}#if:{{(((}}język{{!}}{{)))}}{{!}} {{((}}#ifeq:{{((}}ucfirst:{{(((}}{{((}}_{{))}}{{)))}}{{))}}{{!}}Języki{{!}}<!-- -->{{((}}#invoke:Skrót{{!}}Kategoria{{!}}{{(((}}{{((}}_{{))}}{{)))}} {{(((}}język{{)))}}{{))}}<!-- -->{{))}}<!-- -->{{))}}<!-- -->{{))}}<!-- -->}}<!-- -->}}<!-- -->{{#if:{{Dopasuj|ciąg={{{1}}}|wzór=^%s*(%+).*$}} |{{#invoke:Ramka|Powtarzaj|start=2|<!-- -->{{((}}#if:{{(((}}{{((}}_{{))}}{{!}}{{)))}}{{!}}<!-- -->{{((}}#ifeq:{{((}}ucfirst:{{((}}Dopasuj{{!}}ciąg{{=}}{{(((}}{{((}}_{{))}}{{)))}}{{!}}wzór{{=}}^%s*([Kk]siążka)%s*:%s*{{))}}{{))}}{{!}}Książka{{!}}{{!}}<!-- -->{{((}}#invoke:Skrót{{!}}Kategoria{{!}}Polecane książki/{{((}}ucfirst:{{(((}}{{((}}_{{))}}{{)))}}{{))}}{{))}}<!-- -->{{))}}<!-- -->{{((}}#if:{{(((}}język{{!}}{{)))}}{{!}} {{((}}#ifeq:{{((}}ucfirst:{{(((}}{{((}}_{{))}}{{)))}}{{))}}{{!}}Języki{{!}} {{((}}#invoke:Skrót{{!}}Kategoria{{!}}Polecane książki/{{((}}ucfirst:{{(((}}{{((}}_{{))}}{{)))}} {{(((}}język{{)))}}{{))}}{{))}} {{))}}<!-- -->{{))}}<!-- -->{{))}}<!-- -->}}<!-- -->{{#if:{{Dopasuj|ciąg={{#invoke:Pudełko|Nazwa jednostki 2}}|wzór=^([^/]+)$}}|<!-- -->{{#invoke:Skrót|Kategoria|Polecane książki}}<!-- -->{{#invoke:Skrót|Kategoria|Polecane książki/Spis alfabetyczny/{{Dopasuj|ciąg={{#invoke:Pudełko|Nazwa jednostki 2}}|wzór=^(.).*$}}}}<!-- -->{{#if:{{{poziom|}}}|<!-- -->{{#invoke:Ramka|PrzetwarzajIterującCiąg |ciąg={{{poziom}}} | 1= {{((}}#if:{{((}}ciąg{{))}}<!-- -->{{!}}{{((}}#invoke:Skrót{{!}}Kategoria{{!}}Polecane książki/{{((}}ucfirst:{{((}}ciąg{{))}}{{))}}{{))}}<!-- -->{{))}}{{((}}#if:{{(((}}typ{{!}}{{)))}}{{!}}<!-- -->{{((}}#switch:{{((}}ucfirst:{{((}}ciąg{{))}}{{))}}<!-- -->{{!}}Studia{{=}}{{((}}#invoke:Skrót{{!}}Kategoria{{!}}Polecane książki/Akademickie książki {{(((}}typ{{)))}}{{))}}<!-- -->{{))}}<!-- -->{{))}}<!-- -->}}<!-- <!-- -->}}<!-- -->}}<!-- -->}} <!-- -->}}<!-- -->|jednostka użytkownika=<!-- -->{{#invoke:Ramka|Szablon|parametry funkcji modułu pudełek=tak|Nazwa=Status/silnik|ukończona={{Zastąp|ciąg={{{1|}}}|wzór=^%s*[%-%+]?%s*0*(%d+)%%?%s*$|zamień=%1}}|polecana=|typ=|nie kategorie=tak|id={{{id|}}}}}<!-- -->{{#invoke:Skrót|Kategoria|Wszystkie książki użytkowników}}<!-- -->|jednostka brudnopisu projektu=<!-- -->{{#invoke:Ramka|Szablon|parametry funkcji modułu pudełek=tak|Nazwa=Status/silnik|ukończona={{Zastąp|ciąg={{{1|}}}|wzór=^%s*[%-%+]?%s*0*(%d+)%%?%s*$|zamień=%1}}|polecana=|typ=|nie kategorie=tak|id={{{id|}}}}}<!-- -->{{#invoke:Skrót|Kategoria|Wszystkie książki w brudnopisie projektu}}<!-- -->|#default={{Błąd|Aby kompletność statusu działała, musisz wstawić szablon do strony głównej podręcznika.|tag=span}}<!-- -->{{Kategoria|Szablon status wywołano na innej stronie, niż dla której go przystosowano}}<!-- -->}}<!-- --></includeonly><noinclude>{{Dokumentacja}}</noinclude> 4kvykxyf5b0f0nvbwvbg91g5gkg0baw Szablon:Ekspresowe kasowanie/opis 10 33227 540942 516390 2026-04-27T09:20:29Z Persino 2851 /* Zobacz też */ 540942 wikitext text/x-wiki {{Podstrona dokumentacji}} {{Spis treści}} {{wysokie ryzyko|meta}} {{Skrót szablonu|Ek|Delete|Screenshot}} <!-- DODAWAJ KATEGORIE I INTERWIKI NA DOLE STRONY --> Szablon: '''{{s|ek}}''', czyli: '''{{s|Ekspresowe kasowanie}}''', i jego dalsze przekierowania: '''{{s|delete}}''' i '''{{s|screenshot}}''', to jest jeden z najstarszych na polskojęzycznej Wikibooks, wstawia strony do wykazu: [[:Kategoria:Ekspresowe kasowanie]]. == Użycie == Szablon należy wstawić na początku strony (bez usuwania jej treści), która według wstawiającego nadaje się do natychmiastowego skasowania. Posiada jeden parametr pozycyjny nr 1 (faktycznie jest to parametr z nazwą "1") oraz dwa parametry kluczowe (nazwane) – ''powód'' i ''bez kategorii''. '''Uwaga''': nie nadużywaj tego szablonu. Jeśli skasowanie danego artykułu mogłoby być dyskusyjne, rozważ, czy nie lepiej użyć szablonu {{s|DNU}}. Szablon korzysta z {{S|Admin usuń}}, który pokazuje „kubełek” umożliwiający szybkie usunięcie strony lub pliku wraz z zdefiniowanym wcześniej opisem usunięcia. Wygląd i treść szablonu zmienia się w zależności od [[w:Pomoc:Przestrzeń nazw|przestrzeni nazw]], w której został użyty. == Opis parametrów == Przeznaczenie i podawanie wartości parametrów jest opisane poniżej. Warto przypomnieć, że w podawanych wartościach może wystąpić znak równości (symbol „=”), ale wtedy wartość ta '''musi''' być podana dla parametru ''powód'' lub dla parametru ''1'', ale w stylu parametru nazwanego, czyli tak, jak w [[#Przykłady użycia|przykładzie nr 3]]. ; Parametr nr 1 (pozycyjny) Jest on używany do wpisania uzasadnienia dla żądania ekspresowego skasowania strony. Podaje się go po wpisaniu [[w:Kreska pionowa|kreski pionowej]] (symbolu „|”), jak w [[#Przykłady użycia|przykładzie nr 2]]. Prawidłowe jest też jego użycie jak parametru nazwanego – [[#Przykłady użycia|przykład nr 3]]. ; Parametr ''powód'' (kluczowy) Jego przeznaczenie jest identyczne jak parametru pozycyjnego nr 1 – został wprowadzony jako bardziej oczywisty niż parametr nienazwany ''1'', natomiast parametr ''1'' zachowano dla wstecznej zgodności. Podajemy go jak w [[#Przykłady użycia|przykładzie nr 4]]. Ze względu na konstrukcję kodu szablonu można podać w jego wywołaniu wartości dla parametru ''powód'' i ''1'', ale wyświetlona zostanie tylko wartość dla parametru ''1''. ; Parametr ''dokumentacja'' (kluczowy, techniczny) Parametr ten jest używany tylko w specjalnych przypadkach, gdy szablon występuje na stronach pomocowych w wykazach szablonów, jak np. [[Wikibooks:Szablony/Do usunięcia]] – wtedy jego użycie pozwala uniknąć automatycznego wpisania takiej strony do kategorii stron do ekspresowego usunięcia. === Konkretne uzasadnienia === Szablon zawiera wbudowane uzasadnienia żądania skasowania, oparte na najczęstszych powodach usunięcia artykułów. Aby z nich skorzystać, należy wpisać w pole <tt>powód</tt> (lub jako parametr 1) któryś z poniższych skrótów: {{info|'''Wszystkie dostępne skróty:'''<br /> <tt>test, eksperyment, eks, substub, ency, hoax, or, OR, reklama, advert, ad, bezsens, bzdety, bełkot, bzdury, głupoty, wulgaryzmy, wulg, ataki osobiste, osobiste, wandalizm, wandal, dane osobowe, zniesławienie, libel, administracyjne, techniczne, technikalia, tech, autotranslator, translator, tłumacz, redir, przekierowanie, redirect, wygłupy, wygłup, dowcip, żart, npa, NPA, plagiat, copypaste, kopiuj-wklej, moje, wstawiony, nieaktualne, infoboks, infobox, link, plik, brudnopis.</tt>}} : ''Jeżeli podano więcej niż dwa parametry, to można ich używać zamiennie'' * <tt>'''test, eksperyment, eks'''</tt> – wstawia link do [[Wikibooks:Witamy nowicjuszy|pierwsze kroki]] i jako powód usunięcia ustawia {{OpakujKategorieZeSortowaniem|{{ek|test}}}} * <tt>'''substub'''</tt> – wstawia link do [[w:Wikipedia:Zalążek artykułu#Subzalążki|Wikipedia:Zalążek artykułu#Subzalążki]] i jako powód usunięcia ustawia {{OpakujKategorieZeSortowaniem|{{ek|substub}}}} * <tt>'''ency'''</tt> – wstawia link do [[w:Wikipedia:Encyklopedyczność|Wikipedia:Encyklopedyczność]] i jako powód usunięcia ustawia "treść [[w:WP:ENCY|encyklopedyczna]], patrz: [[Wikibooks:Witamy nowicjuszy|pierwsze kroki]]" {{OpakujKategorieZeSortowaniem|{{ek|ency}}}} * <tt>'''hoax'''</tt> – wstawia link do [[w:Wikipedia:Weryfikowalność|Wikipedia:Weryfikowalność]] i jako powód usunięcia ustawia "prawdopodobna mistyfikacja, patrz: [[w:WP:Weryfikowalność|weryfikowalność]]" {{OpakujKategorieZeSortowaniem|{{ek|hoax}}}} * <tt>'''or, OR'''</tt> – wstawia link do [[w:Wikipedia:Nie przedstawiamy twórczości własnej|Wikipedia:Nie przedstawiamy twórczości własnej]] i jako powód usunięcia ustawia "prawdopodobna twórczość własna, patrz: [[w:WP:Nie przedstawiamy twórczości własnej|nie przedstawiamy twórczości własnej]]" {{OpakujKategorieZeSortowaniem|{{ek|or}}}} * <tt>'''reklama, advert, ad'''</tt> – wstawia link do [[Wikibooks:Czym jest Wikibooks]] i jako powód usunięcia ustawia "skrajna forma reklamy, patrz: [[Wikibooks:Czym jest Wikibooks#Czym Wikibooks nie jest|czym Wikibooks nie jest]]" {{OpakujKategorieZeSortowaniem|{{ek|ad}}}} * <tt>'''bezsens, bzdety, bełkot, bzdury, głupoty'''</tt> – wstawia link do [[w:Wikipedia:Głupie dowcipy i czysty bezsens|Wikipedia:Głupie dowcipy i czysty bezsens]] i jako powód usunięcia ustawia "treść niezrozumiała, patrz: [[w:Wikipedia:Głupie dowcipy i czysty bezsens|czysty bezsens]]" {{OpakujKategorieZeSortowaniem|{{ek|bełkot}}}} * <tt>'''wulgaryzmy, wulg, ataki osobiste, osobiste, wandalizm, wandal'''</tt> – wstawia link do [[Wikibooks:Wikietykieta]] i jako powód usunięcia ustawia "[[WB:Wandalizm|wandalizm]] i/lub ataki osobiste, patrz: [[WB:Wikietykieta|wikietykieta]]" {{OpakujKategorieZeSortowaniem|{{ek|wulg}}}} * <tt>'''dane osobowe'''</tt> – jako powód usunięcia ustawia "upublicznienie danych osobowych" {{OpakujKategorieZeSortowaniem|{{ek|dane osobowe}}}} * <tt>'''zniesławienie, libel'''</tt> – jako powód usunięcia ustawia "zniesławienie" {{OpakujKategorieZeSortowaniem|{{ek|libel}}}} * <tt>'''administracyjne, techniczne, technikalia, tech'''</tt> – jako powód usunięcia ustawia "pozostałości po wykonywaniu operacji administracyjnych" {{OpakujKategorieZeSortowaniem|{{ek|techniczne}}}} * <tt>'''autotranslator, translator, tłumacz'''</tt> – jako powód usunięcia ustawia "tekst przetłumaczony z translatora" {{OpakujKategorieZeSortowaniem|{{ek|tłumacz}}}} * <tt>'''redir, przekierowanie, redirect'''</tt> – jako powód usunięcia ustawia "błędne lub niepotrzebne przekierowanie" {{OpakujKategorieZeSortowaniem|{{ek|redir}}}} * <tt>'''wygłupy, wygłup, dowcip, żart'''</tt> – wstawia link do [[Wikibooks:Czym jest Wikibooks#Czym Wikibooks nie jest]] i jako powód usunięcia ustawia "wygłupy" {{OpakujKategorieZeSortowaniem|{{ek|wygłupy}}}} * <tt>'''npa, NPA, plagiat, copypaste, kopiuj-wklej'''</tt> – wstawia link do [[Wikibooks:Prawa autorskie]] i jako powód usunięcia ustawia "naruszenie praw autorskich, patrz: [[WB:Prawa autorskie|prawa autorskie]]" {{OpakujKategorieZeSortowaniem|{{ek|npa}}}} * <tt>'''moje'''</tt> – jako powód usunięcia ustawia "na prośbę autora" {{OpakujKategorieZeSortowaniem|{{ek|moje}}}} * <tt>'''wstawiony, nieaktualne'''</tt> – jako powód usunięcia ustawia "strona zawierała nieaktualny komunikat o problemie" {{OpakujKategorieZeSortowaniem|{{ek|nieaktualne}}}} * <tt>'''infobox, infoboks'''</tt> – to samo, co <tt>wstawiony</tt>, ale jako powód usunięcia ustawia "nieaktualna informacja o braku infoboksu" * <tt>'''link'''</tt> – to samo, co <tt>wstawiony</tt>, ale jako powód usunięcia ustawia "nieaktualna informacja o martwym linku zewnętrznym" * <tt>'''plik'''</tt> – jako powód usunięcia ustawia "lokalny opis pliku, który znajduje się w Wikimedia Commons" {{OpakujKategorieZeSortowaniem|{{ek|plik}}}} * <tt>'''brudnopis'''</tt> – jako powód usunięcia ustawia "niepotrzeby brudnopis" {{OpakujKategorieZeSortowaniem|{{ek|brudnopis}}}} == Przykłady użycia == '''Przykład nr 1''' – wstawienie tylko szablonu, co nie jest zalecane, gdyż należy wskazywać powód: : <code><nowiki>{{ek}}</nowiki></code> '''Przykład nr 2''' – podanie uzasadnienia w parametrze pozycyjnym w sposób nienazwany: : <code><nowiki>{{ek|Ta strona nie spełnia wymogów podręcznikowości}}</nowiki></code> '''Przykład nr 3''' – podanie uzasadnienia w parametrze pozycyjnym w sposób nazwany: : <code><nowiki>{{ek|1=Naruszenie PA według http://pewna.witryna.pl/?a=bzz}}</nowiki></code> '''Przykład nr 4''' – podanie uzasadnienia w parametrze kluczowym z podaniem autora wstawienia szablonu na daną stronę za pomocą czterech tyld: : <code><nowiki>{{ek|powód=Ta strona narusza PA – wpisał to ~~~~}}</nowiki></code> == Użycie szablonu w innych szablonach == Ze względów technicznych, w innych szablonach przedmiotowy szablon wstawiamy osadzony pomiędzy znacznikami <tt>noinclude</tt> w postaci: : <code><nowiki><noinclude>{{ek|powód=uzasadnienie}}</noinclude></nowiki></code> == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { "1": { "aliases": [ "wyjaśnienie" ], "label": "wyjaśnienie", "description": "Wyjaśnienie własnymi słowami dlaczego strona ma być skasowana", "example": "Ta strona nie spełnia wymogów nieencyklopedyczności.", "type": "content", "deprecated": "Zamiast tego pola użyj parametru 'powód'." }, "powód": { "aliases": [ "uzasadnienie" ], "label": "powód", "description": "Wyjaśnienie dlaczego strona ma zostać usunięta", "example": "Ta strona narusza PA – wpisał to ~~~~", "type": "content", "required": true }, "bez kategorii": { "label": "bez kategorii", "description": "Parametr używany tylko na stronach pomocowych, np.: w wykazach szablonów, jak np. Wikibooks:Szablony/Do usunięcia. Nie umieszcza stronę w kategorii: Ekspresowe kasowanie.", "type": "content" } }, "description": "Szablon ek służy do wysłania prośby do administratorów, aby skasowali daną stronę. Konieczne jest podanie uzasadnienia prośby. Szablon wstawia kategorię [[:Kategoria:Ekspresowe kasowanie]], dzięki temu strony" } </templatedata> == Zobacz też == Zobacz też dokumentację szablonów: * {{s|DNU}} - używany, gdy trwa dyskusja nad usunięciem lub naprawieniem strony, albo w sytuacji, gdy zakończone dyskusją z ustaleniem, co należy dalej zrobić, * {{s|SdU}} i {{s|DoSkasowania}} - używany, gdy trwa trwa dyskusja nad usunięciem lub naprawieniem strony podobnie jak {{s|DNU}}, * {{s|SdUwynik}} - używany w sytuacji, gdy ustalono, co dalej trzeba zrobić ze stroną, podobnie jak {{s|DNU}}, * {{s|Kpp}} i {{s|Kasowanie po przeniesieniu}} - powiadamia autora podręcznika przed jakim czasem może skopiować zawartość przed jego skasowaniem, * {{s|Ek2}} - używany do zgłoszenia strony, ale nie podręcznika, do usunięcia przez {{lr|Administratorzy|administratora Wikibooks}}, * {{s|NPA}} i {{s|NPA całość}} - używane do zgłaszanie naruszenia praw autorskich (NPA) przez artykuł i podręcznik w przestrzeni nazw (główna) i Wikijunior lub plik w przestrzeni nazw Plik, kolejno wstawiane ręcznie lub przez bota, * {{s|Zgłoś błąd}} i {{s|ZB}} - używane do zgłaszania błędów. * {{lpr|Zasady ekspresowego kasowania|Wikipedia:Zasady ekspresowego kasowania}} * {{lpr|Narzędzia/QuickEK|Wikipedia:Narzędzia/QuickEK}} {{BrClear}} <includeonly> {{Kategorie | Szablony porządkowe | Usuwanie stron - szablony }} </includeonly> 2cwsdiyvin8so47fp64sqqzvp3mx0sg 540944 540942 2026-04-27T09:31:21Z Persino 2851 540944 wikitext text/x-wiki 540945 540944 2026-04-27T09:32:53Z Persino 2851 540945 wikitext text/x-wiki {{Podstrona dokumentacji}} {{Spis treści}} {{wysokie ryzyko|meta}} {{Skrót szablonu|Ek|Delete|Screenshot}} <!-- DODAWAJ KATEGORIE I INTERWIKI NA DOLE STRONY --> Szablon: '''{{s|ek}}''', czyli: '''{{s|Ekspresowe kasowanie}}''', i jego dalsze przekierowania: '''{{s|delete}}''' i '''{{s|screenshot}}''', to jest jeden z najstarszych na polskojęzycznej Wikibooks, wstawia strony do wykazu: [[:Kategoria:Ekspresowe kasowanie]]. == Użycie == Szablon należy wstawić na początku strony (bez usuwania jej treści), która według wstawiającego nadaje się do natychmiastowego skasowania. Posiada jeden parametr pozycyjny nr 1 (faktycznie jest to parametr z nazwą "1") oraz dwa parametry kluczowe (nazwane) – ''powód'' i ''bez kategorii''. '''Uwaga''': nie nadużywaj tego szablonu. Jeśli skasowanie danego artykułu mogłoby być dyskusyjne, rozważ, czy nie lepiej użyć szablonu {{s|DNU}}. Szablon korzysta z {{S|Admin usuń}}, który pokazuje „kubełek” umożliwiający szybkie usunięcie strony lub pliku wraz z zdefiniowanym wcześniej opisem usunięcia. Wygląd i treść szablonu zmienia się w zależności od [[w:Pomoc:Przestrzeń nazw|przestrzeni nazw]], w której został użyty. == Opis parametrów == Przeznaczenie i podawanie wartości parametrów jest opisane poniżej. Warto przypomnieć, że w podawanych wartościach może wystąpić znak równości (symbol „=”), ale wtedy wartość ta '''musi''' być podana dla parametru ''powód'' lub dla parametru ''1'', ale w stylu parametru nazwanego, czyli tak, jak w [[#Przykłady użycia|przykładzie nr 3]]. ; Parametr nr 1 (pozycyjny) Jest on używany do wpisania uzasadnienia dla żądania ekspresowego skasowania strony. Podaje się go po wpisaniu [[w:Kreska pionowa|kreski pionowej]] (symbolu „|”), jak w [[#Przykłady użycia|przykładzie nr 2]]. Prawidłowe jest też jego użycie jak parametru nazwanego – [[#Przykłady użycia|przykład nr 3]]. ; Parametr ''powód'' (kluczowy) Jego przeznaczenie jest identyczne jak parametru pozycyjnego nr 1 – został wprowadzony jako bardziej oczywisty niż parametr nienazwany ''1'', natomiast parametr ''1'' zachowano dla wstecznej zgodności. Podajemy go jak w [[#Przykłady użycia|przykładzie nr 4]]. Ze względu na konstrukcję kodu szablonu można podać w jego wywołaniu wartości dla parametru ''powód'' i ''1'', ale wyświetlona zostanie tylko wartość dla parametru ''1''. ; Parametr ''dokumentacja'' (kluczowy, techniczny) Parametr ten jest używany tylko w specjalnych przypadkach, gdy szablon występuje na stronach pomocowych w wykazach szablonów, jak np. [[Wikibooks:Szablony/Do usunięcia]] – wtedy jego użycie pozwala uniknąć automatycznego wpisania takiej strony do kategorii stron do ekspresowego usunięcia. === Konkretne uzasadnienia === Szablon zawiera wbudowane uzasadnienia żądania skasowania, oparte na najczęstszych powodach usunięcia artykułów. Aby z nich skorzystać, należy wpisać w pole <tt>powód</tt> (lub jako parametr 1) któryś z poniższych skrótów: {{info|'''Wszystkie dostępne skróty:'''<br /> <tt>test, eksperyment, eks, substub, ency, hoax, or, OR, reklama, advert, ad, bezsens, bzdety, bełkot, bzdury, głupoty, wulgaryzmy, wulg, ataki osobiste, osobiste, wandalizm, wandal, dane osobowe, zniesławienie, libel, administracyjne, techniczne, technikalia, tech, autotranslator, translator, tłumacz, redir, przekierowanie, redirect, wygłupy, wygłup, dowcip, żart, npa, NPA, plagiat, copypaste, kopiuj-wklej, moje, wstawiony, nieaktualne, infoboks, infobox, link, plik, brudnopis.</tt>}} : ''Jeżeli podano więcej niż dwa parametry, to można ich używać zamiennie'' * <tt>'''test, eksperyment, eks'''</tt> – wstawia link do [[Wikibooks:Witamy nowicjuszy|pierwsze kroki]] i jako powód usunięcia ustawia {{OpakujKategorieZeSortowaniem|{{ek|test}}}} * <tt>'''substub'''</tt> – wstawia link do [[w:Wikipedia:Zalążek artykułu#Subzalążki|Wikipedia:Zalążek artykułu#Subzalążki]] i jako powód usunięcia ustawia {{OpakujKategorieZeSortowaniem|{{ek|substub}}}} * <tt>'''ency'''</tt> – wstawia link do [[w:Wikipedia:Encyklopedyczność|Wikipedia:Encyklopedyczność]] i jako powód usunięcia ustawia "treść [[w:WP:ENCY|encyklopedyczna]], patrz: [[Wikibooks:Witamy nowicjuszy|pierwsze kroki]]" {{OpakujKategorieZeSortowaniem|{{ek|ency}}}} * <tt>'''hoax'''</tt> – wstawia link do [[w:Wikipedia:Weryfikowalność|Wikipedia:Weryfikowalność]] i jako powód usunięcia ustawia "prawdopodobna mistyfikacja, patrz: [[w:WP:Weryfikowalność|weryfikowalność]]" {{OpakujKategorieZeSortowaniem|{{ek|hoax}}}} * <tt>'''or, OR'''</tt> – wstawia link do [[w:Wikipedia:Nie przedstawiamy twórczości własnej|Wikipedia:Nie przedstawiamy twórczości własnej]] i jako powód usunięcia ustawia "prawdopodobna twórczość własna, patrz: [[w:WP:Nie przedstawiamy twórczości własnej|nie przedstawiamy twórczości własnej]]" {{OpakujKategorieZeSortowaniem|{{ek|or}}}} * <tt>'''reklama, advert, ad'''</tt> – wstawia link do [[Wikibooks:Czym jest Wikibooks]] i jako powód usunięcia ustawia "skrajna forma reklamy, patrz: [[Wikibooks:Czym jest Wikibooks#Czym Wikibooks nie jest|czym Wikibooks nie jest]]" {{OpakujKategorieZeSortowaniem|{{ek|ad}}}} * <tt>'''bezsens, bzdety, bełkot, bzdury, głupoty'''</tt> – wstawia link do [[w:Wikipedia:Głupie dowcipy i czysty bezsens|Wikipedia:Głupie dowcipy i czysty bezsens]] i jako powód usunięcia ustawia "treść niezrozumiała, patrz: [[w:Wikipedia:Głupie dowcipy i czysty bezsens|czysty bezsens]]" {{OpakujKategorieZeSortowaniem|{{ek|bełkot}}}} * <tt>'''wulgaryzmy, wulg, ataki osobiste, osobiste, wandalizm, wandal'''</tt> – wstawia link do [[Wikibooks:Wikietykieta]] i jako powód usunięcia ustawia "[[WB:Wandalizm|wandalizm]] i/lub ataki osobiste, patrz: [[WB:Wikietykieta|wikietykieta]]" {{OpakujKategorieZeSortowaniem|{{ek|wulg}}}} * <tt>'''dane osobowe'''</tt> – jako powód usunięcia ustawia "upublicznienie danych osobowych" {{OpakujKategorieZeSortowaniem|{{ek|dane osobowe}}}} * <tt>'''zniesławienie, libel'''</tt> – jako powód usunięcia ustawia "zniesławienie" {{OpakujKategorieZeSortowaniem|{{ek|libel}}}} * <tt>'''administracyjne, techniczne, technikalia, tech'''</tt> – jako powód usunięcia ustawia "pozostałości po wykonywaniu operacji administracyjnych" {{OpakujKategorieZeSortowaniem|{{ek|techniczne}}}} * <tt>'''autotranslator, translator, tłumacz'''</tt> – jako powód usunięcia ustawia "tekst przetłumaczony z translatora" {{OpakujKategorieZeSortowaniem|{{ek|tłumacz}}}} * <tt>'''redir, przekierowanie, redirect'''</tt> – jako powód usunięcia ustawia "błędne lub niepotrzebne przekierowanie" {{OpakujKategorieZeSortowaniem|{{ek|redir}}}} * <tt>'''wygłupy, wygłup, dowcip, żart'''</tt> – wstawia link do [[Wikibooks:Czym jest Wikibooks#Czym Wikibooks nie jest]] i jako powód usunięcia ustawia "wygłupy" {{OpakujKategorieZeSortowaniem|{{ek|wygłupy}}}} * <tt>'''npa, NPA, plagiat, copypaste, kopiuj-wklej'''</tt> – wstawia link do [[Wikibooks:Prawa autorskie]] i jako powód usunięcia ustawia "naruszenie praw autorskich, patrz: [[WB:Prawa autorskie|prawa autorskie]]" {{OpakujKategorieZeSortowaniem|{{ek|npa}}}} * <tt>'''moje'''</tt> – jako powód usunięcia ustawia "na prośbę autora" {{OpakujKategorieZeSortowaniem|{{ek|moje}}}} * <tt>'''wstawiony, nieaktualne'''</tt> – jako powód usunięcia ustawia "strona zawierała nieaktualny komunikat o problemie" {{OpakujKategorieZeSortowaniem|{{ek|nieaktualne}}}} * <tt>'''infobox, infoboks'''</tt> – to samo, co <tt>wstawiony</tt>, ale jako powód usunięcia ustawia "nieaktualna informacja o braku infoboksu" * <tt>'''link'''</tt> – to samo, co <tt>wstawiony</tt>, ale jako powód usunięcia ustawia "nieaktualna informacja o martwym linku zewnętrznym" * <tt>'''plik'''</tt> – jako powód usunięcia ustawia "lokalny opis pliku, który znajduje się w Wikimedia Commons" {{OpakujKategorieZeSortowaniem|{{ek|plik}}}} * <tt>'''brudnopis'''</tt> – jako powód usunięcia ustawia "niepotrzeby brudnopis" {{OpakujKategorieZeSortowaniem|{{ek|brudnopis}}}} == Przykłady użycia == '''Przykład nr 1''' – wstawienie tylko szablonu, co nie jest zalecane, gdyż należy wskazywać powód: : <code><nowiki>{{ek}}</nowiki></code> '''Przykład nr 2''' – podanie uzasadnienia w parametrze pozycyjnym w sposób nienazwany: : <code><nowiki>{{ek|Ta strona nie spełnia wymogów podręcznikowości}}</nowiki></code> '''Przykład nr 3''' – podanie uzasadnienia w parametrze pozycyjnym w sposób nazwany: : <code><nowiki>{{ek|1=Naruszenie PA według http://pewna.witryna.pl/?a=bzz}}</nowiki></code> '''Przykład nr 4''' – podanie uzasadnienia w parametrze kluczowym z podaniem autora wstawienia szablonu na daną stronę za pomocą czterech tyld: : <code><nowiki>{{ek|powód=Ta strona narusza PA – wpisał to ~~~~}}</nowiki></code> == Użycie szablonu w innych szablonach == Ze względów technicznych, w innych szablonach przedmiotowy szablon wstawiamy osadzony pomiędzy znacznikami <tt>noinclude</tt> w postaci: : <code><nowiki><noinclude>{{ek|powód=uzasadnienie}}</noinclude></nowiki></code> == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { "1": { "aliases": [ "wyjaśnienie" ], "label": "wyjaśnienie", "description": "Wyjaśnienie własnymi słowami dlaczego strona ma być skasowana", "example": "Ta strona nie spełnia wymogów nieencyklopedyczności.", "type": "content", "deprecated": "Zamiast tego pola użyj parametru 'powód'." }, "powód": { "aliases": [ "uzasadnienie" ], "label": "powód", "description": "Wyjaśnienie dlaczego strona ma zostać usunięta", "example": "Ta strona narusza PA – wpisał to ~~~~", "type": "content", "required": true }, "bez kategorii": { "label": "bez kategorii", "description": "Parametr używany tylko na stronach pomocowych, np.: w wykazach szablonów, jak np. Wikibooks:Szablony/Do usunięcia. Nie umieszcza stronę w kategorii: Ekspresowe kasowanie.", "type": "content" } }, "description": "Szablon ek służy do wysłania prośby do administratorów, aby skasowali daną stronę. Konieczne jest podanie uzasadnienia prośby. Szablon wstawia kategorię [[:Kategoria:Ekspresowe kasowanie]], dzięki temu strony" } </templatedata> == Zobacz też == Zobacz też dokumentację szablonów: * {{s|DNU}} - używany, gdy trwa dyskusja nad usunięciem lub naprawieniem strony, albo w sytuacji, gdy zakończone dyskusją z ustaleniem, co należy dalej zrobić, * {{s|SdU}} i {{s|DoSkasowania}} - używany, gdy trwa trwa dyskusja nad usunięciem lub naprawieniem strony podobnie jak {{s|DNU}}, * {{s|SdUwynik}} - używany w sytuacji, gdy ustalono, co dalej trzeba zrobić ze stroną, podobnie jak {{s|DNU}}, * {{s|Kpp}} i {{s|Kasowanie po przeniesieniu}} - powiadamia autora podręcznika przed jakim czasem może skopiować zawartość przed jego skasowaniem, * {{s|Ek2}} - używany do zgłoszenia strony, ale nie podręcznika, do usunięcia przez {{lr|Administratorzy|administratora Wikibooks}}, * {{s|NPA}} i {{s|NPA całość}} - używane do zgłaszanie naruszenia praw autorskich (NPA) przez artykuł i podręcznik w przestrzeni nazw (główna) i Wikijunior lub plik w przestrzeni nazw Plik, kolejno wstawiane ręcznie lub przez bota, * {{s|Zgłoś błąd}} i {{s|ZB}} - używane do zgłaszania błędów. * {{lpr|Zasady ekspresowego kasowania|Wikipedia:Zasady ekspresowego kasowania}} * {{lpr|Narzędzia/QuickEK|Wikipedia:Narzędzia/QuickEK}} {{BrClear}} <includeonly> {{Kategorie | Szablony porządkowe | Usuwanie stron - szablony }} </includeonly> 2cwsdiyvin8so47fp64sqqzvp3mx0sg Szablon:Brak strony 10 33812 540930 517138 2026-04-27T07:45:17Z Persino 2851 540930 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} | artykuł = Artykuły | artykuł dla dzieci = Artykuły dla dzieci, | strona brudnopisu projektu = Strony brudnopisu projektu, | strona użytkownika = Strony użytkowników, | #default = Strony }} z zepsutymi przypisami – brak numeru strony}} }}{{#if:{{{1|}}}|{{Span|klasa=need_ref|styl=border-bottom:1px dotted grey|atrybuty=title="Podany obok przypis nie zawiera numeru strony lub zakresu stron na których można znaleźć te informacje {{#if:{{{data|}}}|od {{{data}}}|}}|{{{1}}}}}}}{{Sup|atrybuty=title="Podany obok przypis nie zawiera numeru strony lub zakresu stron na których można znaleźć te informacje {{#if:{{{data|}}}|od {{{data}}}|}}"|&#91;{{lpr|Weryfikowalność|potrzebny&nbsp;numer&nbsp;strony}}&#93;}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> r4ktxk0eu2e9nixe2lmwd2rr2mt8zw3 Szablon:Niewiarygodne źródło 10 33814 540932 517137 2026-04-27T07:47:08Z Persino 2851 540932 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} | artykuł = Artykuły | artykuł dla dzieci = Artykuły dla dzieci, | strona brudnopisu projektu = Strony brudnopisu projektu, | strona użytkownika = Strony użytkowników, | #default = Strony }} z nierzetelnymi źródłami {{#if:{{{data|}}}|od {{{data}}} }}}} }}{{Sup|atrybuty=title="Te informacje wymagają podania wiarygodnych źródeł {{#if:{{{data|}}}|od {{{data}}}|}}"|&#91;{{lpr|Weryfikowalność|niewiarygodne&nbsp;źródło?}}&#93;}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> cclw0qh5c82gv4o9x3mm3s2r1943v8e Szablon:Nie w źródle 10 33817 540933 517141 2026-04-27T07:48:04Z Persino 2851 540933 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} | artykuł = Artykuły | artykuł dla dzieci = Artykuły dla dzieci, | strona brudnopisu projektu = Strony brudnopisu projektu, | strona użytkownika = Strony użytkowników, | #default = Strony }} z przypisami niepotwierdzającymi podanych informacji {{#if:{{{data|}}}|od {{{data}}} }}}} }}{{#if:{{{1|}}}|{{Span|klasa=need_ref|styl=border-bottom:1px dotted grey|atrybuty=title="Ta opinia wymaga poprawienia źródeł {{#if:{{{data|}}}|od {{{data}}}|}}"|{{{1}}}}}}}{{Sup|atrybuty=title="Ta opinia wymaga poprawienia źródeł {{#if:{{{data|}}}|od {{{data}}}|}}"|klasa=noprint|&#91;{{lpr|Weryfikowalność|brak potwierdzenia w źródle}}&#93;}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> ek40xmexxonsmwglept1ac9qjl0et10 Szablon:Martwy link 10 33819 540934 517142 2026-04-27T07:49:19Z Persino 2851 540934 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} | artykuł = Artykuły | artykuł dla dzieci = Artykuły dla dzieci, | strona brudnopisu projektu = Strony brudnopisu projektu, | strona brudnopisu szablonu = Strony brudnopisu szablonów, | strona brudnopisu modułu = Strony brudnopisu modułów, | strona użytkownika = Strony użytkowników, | strona kategorii = Strony kategorii, | strona szablonu = Strony szablonów, | strona modułu = Strony modułów, | strona projektu = Strony projektu, | strona pomocy = Strony pomocy, | #default = Strony }} z niezweryfikowanymi martwymi linkami}} }}{{Sup|atrybuty=title="Informacje umieszczone obok wymagają podania źródeł {{#if:{{{data|}}}|od {{{data}}}|}}"|klasa=noprint|&#91;{{lpr|Weryfikacja martwych linków|martwy&nbsp;link}}&#93;}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> f7xavdks3bhykt7d5poexyc035ggkyh Szablon:Wątpliwe 10 33823 540935 517145 2026-04-27T07:50:43Z Persino 2851 540935 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} | artykuł = Artykuły | artykuł dla dzieci = Artykuły dla dzieci | strona brudnopisu projektu = Strony brudnopisu projektu | strona brudnopisu szablonu = Strony brudnopisu szablonów | strona brudnopisu modułu = Strony brudnopisu modułów | strona użytkownika = Strony użytkowników | strona kategorii = Strony kategorii | strona szablonu = Strony szablonów | strona modułu = Strony modułów | strona projektu = Strony projektu | strona pomocy = Strony pomocy | #default = Strony }} wymagające weryfikacji}} }}{{Sup|atrybuty=title="Te informacje wymagają weryfikacji {{#if:{{{data|}}}|od {{{data}}}|}}"|&#91;{{lpr|Weryfikowalność|wymaga weryfikacji?}}&#93;}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> 5rffeha38w5qwucconh1fwfx9jbrs7i Szablon:Czy to ważne 10 33825 540927 517147 2026-04-27T07:43:19Z Persino 2851 540927 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} | artykuł = Artykuły | artykuł dla dzieci = Artykuły dla dzieci | strona brudnopisu projektu = Strony brudnopisu projektu | strona brudnopisu szablonu = Strony brudnopisu szablonów | strona brudnopisu modułu = Strony brudnopisu modułów | strona użytkownika = Strony użytkowników | strona kategorii = Strony kategorii | strona szablonu = Strony szablonów | strona modułu = Strony modułów | strona projektu = Strony projektu | strona pomocy = Strony pomocy | #default = Strony }} potrzebujące uzupełnienia informacji {{#if:{{{data|}}}|od {{{data}}} }}}} }}{{Sup|atrybuty=title="Informacje umieszczone obok wymagają doprecyzowania {{#if:{{{data|}}}|od {{{data}}}|}}"|klasa=noprint|&#91;{{lpr|Czym Wikipedia nie jest#Wikipedia nie jest bezwładnym zbiorem informacji|czy to ważne?}}&#93;}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> 5usayv6nes6vt1jb3pmwh03xy5oa0lf Szablon:Doprecyzuj 10 33827 540926 517148 2026-04-27T07:41:59Z Persino 2851 540926 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} |artykuł = Artykuły |artykuł dla dzieci = Artykuły dla dzieci |strona brudnopisu projektu = Strony brudnopisu projektu |strona brudnopisu szablonu = Strony brudnopisu szablonów |strona brudnopisu modułu = Strony brudnopisu modułów |strona użytkownika = Strony użytkowników |strona kategorii = Strony kategorii |strona szablonu = Strony szablonów |strona modułu = Strony modułów |strona projektu = Strony projektu |strona pomocy = Strony pomocy |#default = Strony }} zawierające wyrażenia zwodnicze {{#if:{{{data|}}}|od {{{data}}} }}}} }}{{Sup|atrybuty=title="Informacje umieszczone obok wymagają doprecyzowania {{#if:{{{data|}}}|od {{{data}}}|}}"|klasa=noprint|&#91;{{lpr|Unikaj wyrażeń zwodniczych|{{{1|doprecyzuj!}}}}}&#93;}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> 6jb68bln9vcg384nniz6ozfq4uzdtll 540928 540926 2026-04-27T07:43:43Z Persino 2851 540928 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} | artykuł = Artykuły | artykuł dla dzieci = Artykuły dla dzieci | strona brudnopisu projektu = Strony brudnopisu projektu | strona brudnopisu szablonu = Strony brudnopisu szablonów | strona brudnopisu modułu = Strony brudnopisu modułów | strona użytkownika = Strony użytkowników | strona kategorii = Strony kategorii | strona szablonu = Strony szablonów | strona modułu = Strony modułów | strona projektu = Strony projektu | strona pomocy = Strony pomocy | #default = Strony }} zawierające wyrażenia zwodnicze {{#if:{{{data|}}}|od {{{data}}} }}}} }}{{Sup|atrybuty=title="Informacje umieszczone obok wymagają doprecyzowania {{#if:{{{data|}}}|od {{{data}}}|}}"|klasa=noprint|&#91;{{lpr|Unikaj wyrażeń zwodniczych|{{{1|doprecyzuj!}}}}}&#93;}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> fzzvb9wunpp5zuqq17qr9lo9snab6iw Szablon:Or 10 33847 540925 517158 2026-04-27T07:40:37Z Persino 2851 540925 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} |artykuł = Artykuły |artykuł dla dzieci = Artykuły dla dzieci, |strona brudnopisu projektu = Strony brudnopisu projektu, |strona brudnopisu szablonu = Strony brudnopisu szablonów, |strona brudnopisu modułu = Strony brudnopisu modułów, |strona użytkownika = Strony użytkowników, |strona kategorii = Strony kategorii, |strona szablonu = Strony szablonów, |strona modułu = Strony modułów, |strona projektu = Strony projektu, |strona pomocy = Strony pomocy, |#default = Strony }} z zawartymi własnymi teoriami}} }}{{Sup|atrybuty=title="Informacje umieszczone obok mogą być oparte na nieweryfikowalnej twórczości własnej"|klasa=noprint|&#91;{{lpr|Nie przedstawiamy twórczości własnej|twórczość własna?}}&#93;}}</includeonly><noinclude>{{Dokumentacja}} <!-- Kategorie i interwiki dodawaj do podstrony /opis, nie tutaj! --> </noinclude> q9hkbbu9ch2gmmdymls5vks5finrioa 540929 540925 2026-04-27T07:44:09Z Persino 2851 540929 wikitext text/x-wiki <includeonly>{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} | artykuł = Artykuły | artykuł dla dzieci = Artykuły dla dzieci, | strona brudnopisu projektu = Strony brudnopisu projektu, | strona brudnopisu szablonu = Strony brudnopisu szablonów, | strona brudnopisu modułu = Strony brudnopisu modułów, | strona użytkownika = Strony użytkowników, | strona kategorii = Strony kategorii, | strona szablonu = Strony szablonów, | strona modułu = Strony modułów, | strona projektu = Strony projektu, | strona pomocy = Strony pomocy, | #default = Strony }} z zawartymi własnymi teoriami}} }}{{Sup|atrybuty=title="Informacje umieszczone obok mogą być oparte na nieweryfikowalnej twórczości własnej"|klasa=noprint|&#91;{{lpr|Nie przedstawiamy twórczości własnej|twórczość własna?}}&#93;}}</includeonly><noinclude>{{Dokumentacja}} <!-- Kategorie i interwiki dodawaj do podstrony /opis, nie tutaj! --> </noinclude> m07vgb16y2tvwqyehr6zw1vsxfa1bas Szablon:Aktualizuj po 10 33849 540924 475860 2026-04-27T07:39:33Z Persino 2851 540924 wikitext text/x-wiki <includeonly>{{#ifexpr: {{Aktualizuj po/licz| {{CURRENTYEAR}} | {{CURRENTMONTH}} | {{CURRENTDAY}} }} > {{Aktualizuj po/licz| {{{1|{{CURRENTYEAR}}-1}}} | {{{2|{{CURRENTMONTH}}}}} | {{{3|{{CURRENTDAY}}}}} + {{{opóźnienie|0}}} }} |{{Span|klasa=need_ref|styl=border-bottom:1px dotted grey|atrybuty=title="Oznaczone informacje mogą wymagać aktualizacji {{#if:{{{1|}}}|od {{{1}}}{{#if:{{{2|}}}|-{{{2}}}{{#if:{{{3|}}}|-{{{3}}}}}}}}}"|{{{tekst|}}}}}{{{info|{{Sup|atrybuty=title="Oznaczone informacje mogą wymagać aktualizacji {{#if:{{{1|}}}|od {{{1}}}{{#if:{{{2|}}}|-{{{2}}}{{#if:{{{3|}}}|-{{{3}}}}}}}}}"|klasa=noprint|&#91;potrzebna aktualizacja?&#93;}}}}}{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} | artykuł = Artykuły | artykuł dla dzieci = Artykuły dla dzieci | strona brudnopisu projektu = Strony brudnopisu projektu | strona użytkownika = Strony użytkowników | #default = Strony }} wymagające aktualizacji {{#if:{{{1|}}}|od {{{1}}}|}}}} }}|{{{tekst|}}}{{#if:{{{bez kategorii|}}}|| {{Kategoria|{{#switch:{{#invoke:Pudełko|Typ jednostki 2|obsługiwane jednostki jako nieopisowe strony=tak}} |artykuł = Artykuły |artykuł dla dzieci = Artykuły dla dzieci |strona brudnopisu projektu = Strony brudnopisu projektu |strona użytkownika = Strony użytkowników |#default = Strony }} wymagające aktualizacji w przyszłości}} }}}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> j5ntnc2n9rz1jl6gfhiqj3v1llwbg78 Moduł:Pudełko 828 42178 540836 540557 2026-04-26T14:52:12Z Persino 2851 540836 Scribunto text/plain local p={}; function p.CzyNiepoprawnaNazwa(nazwa_jednostki) local html_dane_modul=mw.loadData("Module:Html/dane"); return mw.ustring.match(nazwa_jednostki,"[{}<>|%[%]#\n"..html_dane_modul.znak_127.."]+") or mw.ustring.match(nazwa_jednostki,"~~~") or mw.ustring.match(nazwa_jednostki,"&(%a+);"); end; p["Nazwa przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,0, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); end; p["Nazwa przedmiotowej przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,1, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); end; p["Nazwa przestrzeni nazw dyskusji"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,2, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); end; p["Nazwa przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) end; p["Nazwa przedmiotowej przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"przedmiotowa"); end; p["Nazwa przestrzeni nazw dyskusji 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"dyskusja"); end; p["Nazwa przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,czy_uwzglednic_alternatywna_nazwe,liczba_numeru_jednostki,nil,1); end; p["Nazwa przedmiotowej przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,czy_uwzglednic_alternatywna_nazwe,liczba_numeru_jednostki,nil,1); end; p["Nazwa przestrzeni nazw dyskusji 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,czy_uwzglednic_alternatywna_nazwe,liczba_numeru_jednostki,nil,1); end; p["Nazwa jednostki"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_jednostki(frame,i); end; p["Nazwa jednostki 2"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,nil); end; p["Nazwa przedmiotowa jednostki 2"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"przedmiotowa"); end; p["Nazwa dyskusji jednostki 2"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"dyskusja"); end; p["Nazwa jednostki 3"]=function(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,nil,liczba_numeru_jednostki,nil,2); end; p["Nazwa przedmiotowa jednostki 3"]=function(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,nil,liczba_numeru_jednostki,nil,2); end; p["Nazwa dyskusji jednostki 3"]=function(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,nil,liczba_numeru_jednostki,nil,2); end; p["Pełna nazwa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; end; p["Pełna nazwa przedmiotowa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; end; p["Pełna nazwa dyskusji jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; end; p["Pełna nazwa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa jednostki 2"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; end; p["Pełna nazwa przedmiotowa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa przedmiotowa jednostki 2"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; end; p["Pełna nazwa dyskusji jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa dyskusji jednostki 2"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; end; p["Pełna nazwa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; end; p["Pełna nazwa przedmiotowa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; end; p["Pełna nazwa dyskusji jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; end; p["Typ jednostki"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Typ_jednostki(frame,0,i,0); end; p["Przedmiotowy typ jednostki"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Typ_jednostki(frame, 1,i,0); end; p["Dyskusyjny typ jednostki"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Typ_jednostki(frame,2,i,0); end; p["Typ jednostki 2"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Typ_jednostki(frame,0,i,1); end; p["Przedmiotowy typ jednostki 2"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Typ_jednostki(frame, 1,i,1); end; p["Dyskusyjny typ jednostki 2"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Typ_jednostki(frame, 2,i,1); end; p["Typ jednostki 3"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Typ_jednostki(frame,0,i,nil); end; p["Przedmiotowy typ jednostki 3"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Typ_jednostki(frame, 1,i,nil); end; p["Dyskusyjny typ jednostki 3"]=function(frame,i) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Typ_jednostki(frame, 2,i,nil); end; p["Błędy pudełka"]=function(frame) local pudelko_potrzebne_modul=require("Module:Pudełko/Potrzebne"); return pudelko_potrzebne_modul.Problemy_kontenerowe_szablonowe(frame,0); end; p["Przedmiotowe błędy pudełka"]=function(frame) local pudelko_potrzebne_modul=require("Module:Pudełko/Potrzebne"); return pudelko_potrzebne_modul.Problemy_kontenerowe_szablonowe(frame,1); end; p["Dyskusyjne błędy pudełka"]=function(frame) local pudelko_potrzebne_modul=require("Module:Pudełko/Potrzebne"); return pudelko_potrzebne_modul.Problemy_kontenerowe_szablonowe(frame,2); end; p["Cecha pudełka"] = function(frame) local pudelko_potrzebne_modul=require("Module:Pudełko/Potrzebne"); return pudelko_potrzebne_modul.Cecha_kontenerowa_szablonowa(frame,"Błędy pudełka"); end; p["Przedmiotowa cecha pudełka"] = function(frame) local pudelko_potrzebne_modul=require("Module:Pudełko/Potrzebne"); return pudelko_potrzebne_modul.Cecha_kontenerowa_szablonowa(frame,"Przedmiotowe błędy pudełka"); end; p["Dyskusyjna cecha pudełka"] = function(frame) local pudelko_potrzebne_modul=require("Module:Pudełko/Potrzebne"); return pudelko_potrzebne_modul.Cecha_kontenerowa_szablonowa(frame,"Dyskusyjne błędy pudełka"); end; p["Ogólne pudełko"]= function(frame) local pudelko_potrzebne_modul=require("Module:Pudełko/Potrzebne"); return pudelko_potrzebne_modul.Generalny_kontener_szablonowy(frame); end; p["Tekst pudełka"] = function (frame) return frame.args["tekst"]; end; p["Nazwa strony głównej projektu"]=function(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local i=(numer_jednostki)and tonumber(numer_jednostki) or 0; local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); local kod_jezyka,kod_projektu=pudelko_pomocne_modul.Wikikody_kontenera(frame,i); return pudelko_pomocne_modul.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,i,kod_jezyka,kod_projektu) or pudelko_pomocne_modul.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu); end; p["Nazwa strony głównej dla dzieci projektu"]=function(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local i=(numer_jednostki)and tonumber(numer_jednostki) or 0; local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); local kod_jezyka,kod_projektu=pudelko_pomocne_modul.Wikikody_kontenera(frame,i); return pudelko_pomocne_modul.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,i,kod_jezyka) or pudelko_pomocne_modul.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka); end; p["Kod języka"]=function(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local i=(numer_jednostki)and tonumber(numer_jednostki) or 0; local pudelko_modul=require("Module:Pudełko"); local wartosc_domyslna=pudelko_modul["Kod języka tego projektu"](); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Kod_jezyka(frame,i,wartosc_domyslna); end; p["Kod projektu"]=function(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local i=(numer_jednostki)and tonumber(numer_jednostki) or 0; local pudelko_modul=require("Module:Pudełko"); local wartosc_domyslna=pudelko_modul["Kod projektu tego projektu"](); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Kod_projektu(frame,i,wartosc_domyslna); end; p["Klucz projektu"]=function(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local i=(numer_jednostki)and tonumber(numer_jednostki) or 0; local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Klucz_projektu(frame,i); end; p["Inny niż język bieżący wiki"]=function(frame) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Analiza_interwiki_czy_projekt_aktualny(frame,true,false); end; p["Inne niż lokalne wiki"]=function(frame) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Analiza_interwiki_czy_projekt_aktualny(frame,false,true); end; p["Inne niż bieżące wiki"]=function(frame) local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Analiza_interwiki_czy_projekt_aktualny(frame,true,true); end; p["Podano parametry nienazwane"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); for i,_ in pairs(args)do if(type(i)=="number")then return "tak";end; end; return; end; p["Podano parametry numerowane"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); for i,_ in ipairs(args)do return "tak"; end; return; end; p["Podano parametry nazwane"]=function(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame); for name,_ in pairs(args)do if(type(name)=="string")then return "tak"; end; end; return; end; p["Kod projektu tego projektu"]=function(frame) return "b"; end; p["Kod języka tego projektu"]=function(frame) return "pl" end; p["Klucz projektu tego projektu"]=function(frame) local pudelko_modul=require("Module:Pudełko"); return pudelko_modul["Kod języka tego projektu"](frame)..":"..pudelko_modul["Kod projektu tego projektu"](frame); end; p["Strona główna tego projektu"] = function(frame) local komunikat = mw.message.new('Mainpage', ''); if(not komunikat:exists())then return "Wikibooks:Strona główna";end; local zawartosc_komunikatu=komunikat:plain(); zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu); return zawartosc_komunikatu; end; p["Strona główna dla dzieci tego projektu"] = function(frame) return "Wikijunior:Strona główna"; end; p["Nazwa strony głównej dla dzieci projektu 2"] = function(frame) local args=frame and (frame.args or frame) or {}; local kod_jezyka=args[1]; local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka); end; p["Nazwa strony głównej projektu 2"] = function(frame) local args=frame and (frame.args or frame) or {}; local kod_jezyka=args[1]; local kod_projektu=args[2]; local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu); end; return p; 1mwbhl6001awo1t3fcn24bb0f7up629 Szablon:Szablonowy opis pudełka 10 42292 540951 516433 2026-04-27T10:47:03Z Persino 2851 540951 wikitext text/x-wiki <includeonly>{{#if:{{{opis parametrów szablonu|}}}| {{Tabela nawigacyjna|styl=width:100%;|tytuł=<div style="text-align:left;">Parametry dodatkowe tego szablonu.</div>|spis= {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}| {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| * {{Code|klucz projektu}} i {{Code|klucz projektu N}}, {{Code|kod języka}} i {{Code|kod języka N}}, {{Code|kod projektu}} i {{Code|kod projektu N}} - kolejno: klucz projektu, kod języka i kod projektu, dla zmiennej jeden i {{Code|N}},}}}} * {{Code|nazwa przestrzeni nazw}} - przestrzeń nazw, w której znajduje się jednostka, (opcjonalny, domyślnie jego wartość jest nazwę przestrzeni nazw, w której siedzi ten szablon),{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|&nbsp; * {{Code|nazwa przestrzeni nazw N}} - przestrzeń nazw N-tego parametru nazwy jednostki, w której znajduje się N-ta jednostka, (opcjonalny, domyślnie jego wartość jest nazwę przestrzeni nazw {{Code|nazwa przestrzeni nazw}}, a jeżeli nie użyto tej zmiennej, to w której siedzi ten szablon),}} * {{Code|nazwa jednostki}} - jest to nazwa strony, bez przestrzeni nazw, występującej na polskim serwisie {{NAZWASERWISU}}, (opcjonalny, domyślnie jego wartość jest nazwą aktualnej jednostki, w której siedzi ten szablon), * {{Code|typ jednostki}} {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|i {{Code|typ jednostki N}}}} - używana do nazywania jednostek w dowolnej przestrzeni nazw, gdy jednostkę umieszczono w jakieś z tych przestrzeni nazw, lub przypisano ją do jakieś z tych przestrzeni ustawionej za pomocą zmiennej: {{Code|nazwa przestrzeni nazw}}, oto wartości tej zmiennej:{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=(main)}}|&nbsp; ** {{Code|artykuł}} - jednostka nazywana artykułem, przeznaczona dla wszystkich, w przestrzeni nazw {{Np|(main)|link=tak}},{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}||&nbsp; ** {{Code|podręcznik}} - jednostka nazywana podręcznikiem, przeznaczona dla wszystkich, w przestrzeni nazw {{Np|(main)|link=tak}},}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikijunior}}|&nbsp; ** {{Code|artykuł dla dzieci}} - jednostka nazywana artykułem dla dzieci, w przestrzeni nazw {{Np|Wikijunior|link=tak}},{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}||&nbsp; ** {{Code|podręcznik dla dzieci}} - jednostka nazywana podręcznikiem dla dzieci, w przestrzeni nazw {{Np|Wikijunior|link=tak}},}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=User}}|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane indywidua użytkownika jako normalne strony}}|&nbsp; ** {{Code|strona użytkownika}} - strona użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwane strony główne użytkowników=tak}}||&nbsp; ** {{Code|strona główna użytkownika}} - strona główna użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},}}{{#if:{{#invoke:Parametry|Not|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}}}|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki użytkownika}}|&nbsp; ** {{Code|artykuł użytkownika}} - artykuł w przestrzeni nazw użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}}, ** {{Code|podręcznik użytkownika}} - podręcznik w przestrzeni nazw użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},|&nbsp; ** {{Code|jednostka użytkownika}} - jednostka w przestrzeni nazw użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},}}|&nbsp; ** {{Code|strona użytkownika}} - strona użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},}}}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=File}}|&nbsp; ** {{Code|strona pliku}} - strona pliku, jest to przestrzeń nazw {{Np|File|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Category}}|&nbsp; ** {{Code|strona kategorii}} - strona kategorii, jest to przestrzeń nazw {{Np|Category|link=tak}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Template}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony szablonów=tak}}||&nbsp; ** {{Code|strona szablonu}} - strona szablonu, jest to przestrzeń nazw {{Np|Template|link=tak}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu szablonów=tak}}||&nbsp; ** {{Code|strona opisu szablonu}} - strona opisu szablonu, jest to przestrzeń nazw {{Np|Template|link=tak}},}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Module}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony modułów=tak}}||&nbsp; ** {{Code|strona modułu}} - strona modułu, jest to przestrzeń nazw {{Np|Module|link=tak}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu szablonów=tak}}||&nbsp; ** {{Code|strona opisu modułu}} - strona opisu modułu, jest to przestrzeń nazw {{Np|Module|link=tak}},}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikibooks}}|&nbsp; ** {{Code|strona projektu}} - strona projektu, jest to przestrzeń nazw {{Np|Wikibooks|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Help}}|&nbsp; ** {{Code|strona pomocy}} - strona pomocy, jest to przestrzeń nazw {{Np|Help|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Special}}|&nbsp; ** {{Code|strona specjalna}} - strona specjalna, jest to przestrzeń nazw {{Np|Special|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=MediaWiki}}|&nbsp; ** {{Code|strona komunikatu}} - w przypadku strony komunikatu, jest to przestrzeń nazw {{Np|MediaWiki|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Gadget}}|&nbsp; ** {{Code|strona gadżetu}} - strona gadżetu, jest to przestrzeń nazw {{Np|Gadget|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna dla dzieci=tak}}||&nbsp; ** {{Code|strona główna dla dzieci}} - strona główna {{lj2|Strona główna}} (lub o nazwie z nazwą przestrzeni nazw ustawioną za pomocą zmiennej: {{Code|strona główna dla dzieci}}),}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna projektu=tak}}||&nbsp; ** {{Code|strona główna projektu}} - strona główna {{lr2|Strona główna}} (lub o nazwie z nazwą przestrzeni nazw ustawioną za pomocą zmiennej: {{Code|strona główna projektu}}),}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwany brudnopis projektu=tak}}| {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}|&nbsp; ** {{Code|strona brudnopisu projektu}} - jednostka w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}},|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki brudnopisu projektu}}|&nbsp; ** {{Code|artykuł brudnopisu projektu}} - jednostka znana artykułem w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}}, ** {{Code|podręcznik brudnopisu projektu}} - jednostka znana podręcznikiem w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}},|&nbsp; ** {{Code|jednostka brudnopisu projektu}} - jednostka w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}}, }}}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwany brudnopis szablonu=tak}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu szablonów=tak}}||&nbsp; ** {{Code|strona brudnopisu szablonu}} - szablon w przestrzeni nazw {{Np|Template|link=tak}} w nibyprzestrzeni nazw: {{ls2|Brudnopis}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu szablonów=tak}}||&nbsp; ** {{Code|strona brudnopisu opisu szablonu}} - opis szablonu w przestrzeni nazw {{Np|Template|link=tak}} w nibyprzestrzeni nazw: {{ls2|Brudnopis}},}} }}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwany brudnopis modułu=tak}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu modułów=tak}}||&nbsp; ** {{Code|strona brudnopisu modułu}} - moduł w przestrzeni nazw {{Np|Module|link=tak}} w nibyprzestrzeni nazw: {{ld2|Brudnopis}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu modułów=tak}}||&nbsp; ** {{Code|strona brudnopisu opisu modułu}} - opis modułu w przestrzeni nazw {{Np|Module|link=tak}} w nibyprzestrzeni nazw: {{ld2|Brudnopis}},}}}} :(opcjonalny, szablon domyślnie sam ustawia do jakiego typu jednostki, należy jednostka, powyżej wymienionego), * {{Code|nazwij jednostką}} - wartość niepusta, wtedy szablon jednostkę nazywa po prostu {{Code|jednostką}}, w przeciwnym wypadku szablon nazywa zbiory w zależności do jakiej przestrzeni nazw ona zależy i od rodzaju strony,{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna dla dzieci=tak}}||&nbsp; * {{Code|strona główna dla dzieci}} - strona główna z przestrzenią nazw, zwykle jest to w przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} z nazwą strony {{Code|Strona główna}}, (opcjonalny, domyślnie ustawiony na: {{lj2|Strona główna}}),}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna projektu=tak}}||&nbsp; * {{Code|strona główna projektu}} - strona główna z przestrzenią nazw, zwykle jest to w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} z nazwą strony {{Code|Strona główna}}, (opcjonalny, domyślnie ustawiony na: {{lr2|Strona główna}}),}} * {{Code|bez kategorii}} - wartość niepusta, tzn. wtedy szablon nie umieszcza strony w żadnej kategorii, w przeciwnym przypadku umieszcza (opcjonalny). {{Hr}} * Zmienn{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|e|a}}: {{Code|typ jednostki}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|&nbsp;i {{Code|typ jednostki N}}}}, nie {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|są używane|jest używana}} do wyświetlania rodzaju jednostki, gdy zmienna: {{Code|nazwij jednostką}}, jest niepusta, wtedy ona jest nazywana {{Code|jednostką}}.{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|&nbsp; * Numer {{Code|N}}, to {{Code|1}},{{Code|2}},{{Code|3}} do {{Code|n}} parametrów szablonu nazywane liczbami naturalnymi.}} }}| {{Tabela nawigacyjna|styl=width:100%;|tytuł=<div style="text-align:left;">Kategorie błędów tego szablonu.</div>|spis=<div style="padding-left:5px;padding-right:5px;"> {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#invoke:Parametry|Or | 1 = {{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}} | 2 = {{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}} | 3 = {{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}} }} |{{#switch:{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}|1|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}}|1|0}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}}|1|0}}}} |1=Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na jakiś projekt wiki siostrzane z {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie niebieżącym, niepolskim lub nielokalnym, niż polski {{NAZWASERWISU|link=tak}}. {{Hr}} ;Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}pl:b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}pl:b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w zmiennej {{Code|kod języka}} kod języka bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} *{{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod projektu}} bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kod języka i kodu projektu kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod języka}} i {{Code|kod projektu}} bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}} |10= Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na jakiś projekt wiki siostrzane z {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie niebieżącym, niepolskim lub nielokalnym, niż polski {{NAZWASERWISU|link=tak}}. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}pl:w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, polskiego {{NAZWASERWISU|link=tak|po=a}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}pl:w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w zmiennej {{Code|kod języka}} kod języka polskiego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano niejawnie projekt polski. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kod języka i kodu projektu kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. *{{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}kod projektu{{((}}{{=}}{{))}}w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano niejawnie projekt polski. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}kod projektu{{=}}w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}} |01= Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na projekt bieżącego projektu {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie bieżącym. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}en:b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, lokalnego wiki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}en:b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano przy pomocy {{Code|kod języka}} niejawnie lokalnego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano kod projektu lokalny przy pomocy {{Code|kod projektu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka i kodu projektu dla kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}en{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano kod projektu lokalny przy pomocy {{Code|kod projektu}}. *Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}en{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}} |11= Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na projekt bieżącego projektu {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie bieżącym. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}pl:w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, polskiego wiki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}pl:w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}en{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano przy pomocy {{Code|kod języka}} niejawnie lokalny projekt. *Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}en{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano projekt lokalny. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka i kodu projektu kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}en{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano projekt lokalny. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}en{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}}}} Gdy szablon podano ze zmienną {{Code|klucz projektu}} albo {{Code|kod języka}} lub {{Code|kod projektu}}, które mogą posiadać wartości nieprawidłowe. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale nieprawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}ek:r{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - gdy podano w parametrze {{Code|klucz projektu}} nieprawidłową wartość. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}ek:r{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale nieprawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}ek{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod języka}} o wartości nieprawidłowej. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}ek{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład trzeci ilustrujący działanie złego, ale nieprawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}bt{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod projektu}} posiadającą wartość nieprawidłową. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}bt{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład czwarty ilustrujący działanie złego, ale nieprawidłowego kodu projektu w zmiennej {{Code|kod języka}} i {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}ee{{!}}kod projektu{{((}}{{=}}{{))}}ww{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano: {{Code|kod języka}} i {{Code|kod projektu}}, mający nieprawidłowe wartości. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}ek{{!}}kod projektu{{=}}rw{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}}}}}} * Gdy nazwa przestrzeni w zmiennej: {{Code|nazwa przestrzeni nazw}}, jest nieprawidłowa, a więc działania tego szablonu są równoważne, jeśli napiszemy je ogólnie według przykładu: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}MojaPrzestrzeń{{))}}}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa przestrzeni nazw}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{moja przestrzeń|MojaPrzestrzeń}}}{{))}} }} }} {{Hr}} * Gdy szablon został wstawiony na stronę w przestrzeni innej, niż obsługiwane przestrzenie nazw, lub ustawiono wartość parametru: {{Code|nazwa przestrzeni nazw}}, na inną wartość, niż te, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - wstawiono szablon do nieobsługiwanej przestrzeni nazw, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza nieobsługiwana przestrzeń nazw=tak}}{{))}}}} - gdy ustawiono nazwę przestrzeni nazw na wartość inną, niż obsługiwaną przestrzeń nazw, tutaj ustawiono na przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza nieobsługiwana przestrzeń nazw=tak}}|link=tak}}}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana przestrzeń nazw}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza nieobsługiwana przestrzeń nazw=tak}}{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|nazwa jednostki}}, o wartości pustej, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{))}}}} - gdy w szablonie ustawiono na obsługiwaną przestrzeń nazw, tutaj na przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono na stronę w obsługiwanej przestrzeni nazw. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=pusta nazwa jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|nazwa jednostki}}, o wartości nieprawidłowej, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{((}}((({{))}}1{{((}}))){{))}}{{))}}}} - gdy szablon użyto z parametrem nazwy jednostki zawierającą w sobie wyrażenie między innymi typu: <nowiki>{{{1}}}</nowiki>. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}{{((}}((({{))}}1{{((}}))){{))}}{{))}}}}}} {{Hr}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=(main)}}| * Gdy szablon wsadzono do przestrzeni nazw (główna) lub nadano zmiennej: {{Code|nazwa przestrzeni nazw}}, wartość pustą, z nazwą jednostki w zmiennej: {{Code|nazwa jednostki}}, zawierającą w sobie przestrzeń, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|(main)}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona{{))}}}} - gdy w szablonie ustawiono przestrzeń nazw {{Code|{{Np|(main)|link=tak}}}} z ustawioną nazwą strony na {{Code|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona}} zawierającą w sobie przestrzeń nazw, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona{{))}}}} - gdy szablon wstawiono na stronę w przestrzeni nazw {{Code|{{Np|(main)|link=tak}}}} z ustawioną nazwą strony na {{Code|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona}} zawierającą w sobie przestrzeń nazw. ** Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nazwa jednostki zawierająca w sobie przestrzeń}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}(main){{!}}nazwa jednostki{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona{{))}}}}}} {{Hr}} }} * Gdy w szablonie użyto zmiennej: {{Code|typ jednostki}}, o niewłaściwej wartości oraz jego umieszczono na stronie w dowolnej obsługiwanej przestrzeni nazw, lub nadano wartość zmiennej: {{Code|nazwa przestrzeni nazw}}, o nazwie, któreś z tych przestrzeni, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{((}}{{=}}{{))}}jakaś{{))}}}} - gdy ustawiono przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i nieprawidłowy typ jednostki, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}typ jednostki{{((}}{{=}}{{))}}jakaś{{))}}}} - gdy wstawiono szablon na stronę do przestrzeni nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i ustawiono nieprawidłowy typ jednostki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa wartość typu jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{=}}jakaś{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|typ jednostki}}, o wartości niezgodnej z podaną nazwą przestrzeni nazw z parametrów szablonu, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{((}}{{=}}{{))}}artykuł{{))}}}} - gdy ustawiono przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i niezgdodną z typem jednostki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=niezgodna wartość typu jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{=}}artykuł{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|typ jednostki}}, o wartości niezgodnej z podaną nazwą przestrzeni nazw i nazwą jednostki z parametrów szablonu, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona główna podręcznika{{!}}typ jednostki{{((}}{{=}}{{))}}artykuł{{))}}}} - gdy ustawiono przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i nazwę jednostki niezgdodną z typem jednostki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=niezgodne parametry pudełkowe}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}Strona główna podręcznika{{!}}typ jednostki{{=}}artykuł{{))}}}}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>0|{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=2|tak}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=4|tak}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=6|tak}}|tak}}| {{Hr}} * Gdy szablon wstawiono na stronę w obsługiwanej przestrzeni nazw z listą zmiennych nienazwanych zmieniająca się nie o jeden, ten problem możemy zapisać przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>0|{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=2|{{!}}2{{((}}{{=}}{{))}}argument 2}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=4|{{!}}4{{((}}{{=}}{{))}}argument 4}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=6|{{!}}6{{((}}{{=}}{{))}}argument 6}}|{{!}}2{{((}}{{=}}{{))}}argument 2{{!}}4{{((}}{{=}}{{))}}argument 4{{!}}6{{((}}{{=}}{{))}}argument 6}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#invoke:Parametry|Or|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}}}}|{{((}}!{{))}}klucz projektu{{((}}{{=}}{{))}}en:w}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono z parametrami nienazwanymi zmieniające się między sobą nie o jeden. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=brak parametrów}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>0|{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=2|{{!}}2{{=}}argument 2}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=4|{{!}}4{{=}}argument 4}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=6|{{!}}6{{=}}argument 6}}|{{!}}2{{=}}argument 2{{!}}4{{=}}argument 4{{!}}6{{=}}argument 6}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#invoke:Parametry|Or|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}}}}|{{!}}klucz projektu{{=}}en:w}}}}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}Strona{{))}}}}}} }}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Template}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Strona szablonu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Strona szablonu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę opisu szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Strona szablonu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona opisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Strona szablonu/opis{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Module}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Strona modułu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Strona modułu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę opisu modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Strona modułu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona opisu modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Strona modułu/opis{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Template}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwany brudnopis szablonu=tak}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Brudnopis/Użytkownik/Strona szablonu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona szablonu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu opisu szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Strona szablonu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu opisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona szablonu/opis{{))}}}}}} }}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Module}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwany brudnopis modułu=tak}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Brudnopis/Użytkownik/Strona modułu}}. *Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona modułu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu opisu modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Strona modułu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu opisu modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona modułu/opis{{))}}}}}} }}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikibooks}}| {{Hr}} * Gdy szablon został wstawiony na stronę z pustą nazwą strony głównej projektu w zmiennej: {{Code|strona główna projektu}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy w szablonie ustawiono przestrzeń nazw {{Code|{{Np|Wikibooks|link=tak}}}} i nazwę jednostki {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i ustawiono zmienną nazwy jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono na stronę o nazwie {{Code|Strona}} z ustawioną nazwą przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} na stronę o nazwie {{Code|Strona}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=pusta nazwa strony głównej projektu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}strona główna projektu{{=}}{{))}}}}}}{{#if:{{#invoke:Parametry|Not|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=dowolna nazwa strony głównej projektu}}}}| {{Hr}} * Gdy szablon został wstawiony na stronę z nazwą strony głównej projektu w zmiennej: {{Code|strona główna projektu}}, zawierającą w sobie prawe ukośniki, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy w szablonie ustawiono przestrzeń nazw {{Code|{{Np|Wikibooks|link=tak}}}} i nazwę jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy szablon wstawiono na stronę {{Code|Strona}} i ustawiono nazwę przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i ustawiono w szablonie nazwę jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i na stronę {{Code|Strona}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa strony głównej projektu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}strona główna projektu{{=}}Wikibooks:Strona/Podstrona{{))}}}}}}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwana strona główna projektu=tak}}| {{Hr}} * Gdy szablon został wstawiony na stronę wskazywaną przez zmienną: {{Code|strona główna projektu}} (używana, gdy chcemy określić samemu nazwę strony głównej projektu), a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona{{))}}}} - gdy w szablonie ustawiono nazwę strony na {{Code|Strona}} o podanej w zmiennej nazwy jednostki o takiej samej wartości bez przestrzeni nazw, jak wartość w zmiennej strony głównej projektu, i nazwę przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona{{))}}}} - gdy szablon wstawiono na stronę o nazwie {{Code|Strona}} i ustawiono w szablonie nazwę przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona{{))}}}} - gdy szablon wstawiono na stronę w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i ustawiono nazwę jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono na stronę główną projektu o nazwie {{lr2|Strona główna}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona główna projektu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}strona główna projektu{{=}}Wikibooks:Strona{{!}}nazwa jednostki{{=}}Strona{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikibooks}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwany brudnopis projektu=tak}}|| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę szablonu w przestrzeni nazw {{Np|Wikibooks|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona brudnopisu projektu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Wikibooks|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona brudnopisu projektu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Wikibooks|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona brudnopisu projektu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona brudnopisu projektu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Wikibooks|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona brudnopisu projektu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Wikibooks|link=tak}} i na stronę o nazwie nazwę {{Code|Brudnopis/Użytkownik/Strona szablonu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona brudnopisu projektu{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikijunior}}| {{Hr}} * Nazwa strony głównej projektu w zmiennej: {{Code|strona główna dla dzieci}}, jest pusta, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy użyto zmiennych wskazujących, jedna na nazwę przestrzeni nazw o wartości {{Code|{{Np|Wikijunior|link=tak}}}}, a druga na nazwę jednostki {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy użyto zmiennej wskazującej na nazwę przestrzeni nazw o wartości {{Code|{{Np|Wikijunior|link=tak}}}} i szablon wstawiono na stronę o nazwie {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} i ustawiono nazwę jednostki w szablonie na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy szablon został wstawiony do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} na stronę {{Code|Strona}}. * Szablon przydziela stronę do kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=pusta nazwa strony głównej dla dzieci}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikijunior{{!}}strona główna dla dzieci{{=}}{{))}}}}}}{{#if:{{#invoke:Parametry|Not|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=dowolna nazwa strony głównej dla dzieci}}}}| {{Hr}} * Nazwa strony głównej projektu w zmiennej: {{Code|strona główna dla dzieci}}, zawiera prawe ukośniki, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy użyto zmiennej wskazującej na nazwę przestrzeni nazw o wartości {{Code|{{Np|Wikijunior|link=tak}}}} i nazwę strony na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} z ustawioną zmienną nazwy jednostki na stronę o nazwie {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy w szablonie ustawiono zmienną wskazującej na nazwę przestrzeni nazw o wartości {{Code|Wikijunior}} i wstawiono go na stronę o nazwie {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy szablon został wstawiony do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} na stronę {{Code|Strona}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa strony głównej dla dzieci}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikijunior{{!}}strona główna dla dzieci{{=}}Wikijunior:Strona/Podstrona{{))}}}}}}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwana strona główna dla dzieci=tak}}| {{Hr}} * Gdy szablon wstawiono na stronę główną dla dzieci lub ustawiono wartość zmiennej: {{Code|nazwa przestrzeni nazw}} na wartość {{Code|{{Np|Wikijunior|link=tak}}}}, oraz ewentualnie nadano zmiennej: {{Code|nazwa jednostki}}, określającą nazwę tej jednostki (jeśli ta zmienna jest niepodana, to wtedy jest tożsama z nazwą tej strony) i argument: {{Code|strona główna dla dzieci}} (używana, gdy chcemy określić samemu nazwę strony głównej dla dzieci) na nazwę tej jednostki, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikijunior}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona{{))}}}} - gdy w szablonie ustawiono nazwę strony podanej w zmiennej nazwy jednostki o takiej samej wartości, jak wartość zmiennej bez przestrzeni nazw strony głównej dla dzieci, i nazwę przestrzeni nazw na {{Code|{{Np|Wikijunior|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikijunior}}{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona{{))}}}} - gdy szablon wstawiono na stronę o nazwie {{Code|Strona}} z ustawioną nazwą przestrzeni nazw na {{Code|{{Np|Wikijunior|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona{{))}}}} - gdy w szablonie ustawiono nazwę jednostki na {{Code|Strona}} i go wstawiono na stronę w przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono na stronę główną dla dzieci o nazwie {{lj2|Strona główna}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona główna dla dzieci}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikijunior{{!}}strona główna dla dzieci{{=}}Wikijunior:Strona{{!}}nazwa jednostki{{=}}Strona{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=User}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony główne użytkowników=tak}}| {{Hr}} * Gdy szablon wstawiono do przestrzeni nazw na stronę główną użytkownika lub nazwa przestrzeni w zmiennej: {{Code|nazwa przestrzeni nazw}}, jest {{Np|User|link=tak}} albo wstawiono go do przestrzeni Wikipedysta, i ewentualnie podano: {{Code|nazwa jednostki}}, równą nazwie użytkownika lub nazwie strony niezawierająca prawych ukośników, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|User}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Użytkownik{{))}}}} - gdy w szablonie ustawiono na przestrzeń nazw {{Np|User|link=tak}} i nazwę strony, tutaj strony głównej użytkownika, nieskładającego się z prawych ukośników, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|User}}{{))}}}} - gdy szablon wstawiono na stronę o nazwie nieskładającego się z prawych ukośników, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Użytkownik{{))}}}} - gdy szablon wstawiono na stronę, o ustawionej nazwie, do przestrzeni nazw {{Np|User|link=tak}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono na stronę główną użytkownika (Wikipedysty). * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona główna użytkownika}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}User{{!}}nazwa jednostki{{=}}Użytkownik{{))}}}}}} }}}}{{#invoke:Ramka|PowtarzajOdDo |start = {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|najniższy numer dodatkowego warunku=tak}} |koniec = {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|najwyższy numer dodatkowego warunku=tak}} |1 = {{((}}#if:{{((}}#invoke:Ramka{{!}}Rozwiń{{!}}{{((}}(({{))}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{((}}!{{))}}parametry pudełka{{=}}tak{{((}}!{{))}}istnieje taki parametr dodatkowego warunku{{((}}={{))}}tak{{!}}numer parametru dodatkowego{{((}}={{))}}{{((}}_{{))}}{{!}}{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}parametry dodatkowego warunku{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}{{((}})){{))}}{{))}}{{!}}{{Hr}}Dodatkowe błędy zwrócone przez szablon zaznaczony wprowadzone pośrednio w obsługę szablonu {{s|{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}}}, nie za pomoca pudełek zaimplemetowane w module {{ld2|Pudełko}}. Wywołanie błędu numer {{((}}_{{))}}, w którym w tym szablonie jest uruchamiany za pomocą dodatkowych parametrów, tym razem o tym numerze: * {{((}}#invoke:Ramka{{!}}Rozwiń{{!}}{{((}}(({{))}}s{{((}}!{{))}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{((}}!{{))}}{{((}}Zastąp{{!}}ciąg{{=}}{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}parametry dodatkowego warunku{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}{{!}}wzór{{=}}{{=}}{{!}}zamień{{=}}{{((}}(({{))}}={{((}})){{))}}{{))}}{{((}})){{))}}{{))}} - szablon ten o tych parametrach lub bez parametru {{Code|nazwa przestrzeni nazw}}, ale wstawiony do tej przestrzeni nazw o wartości obsługiwanej reprezentowanej przez ten szablon. * Szablon włącza stronę do kategorii: {{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}kategorie parametrów dodatkowych{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{((}}OpakujKategorieZeSortowaniem{{!}}{{((}}#invoke:Ramka{{!}}Rozwiń{{!}}{{((}}(({{))}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{((}}!{{))}}{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}parametry dodatkowego warunku{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}{{((}})){{))}}{{))}}{{))}}{{))}} }}</div>}}}}<!-- -->{{#ifeq:{{Ns:Template}}:{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|{{#invoke:Pudełko|Pełna nazwa jednostki 2}} |{{#if:{{Dopasuj|ciąg={{#invoke:Pudełko|Nazwa jednostki 2}}|wzór=/{{{strona|opis}}}$}} | <!-- wartość pusta --> |{{Kategoria|Szablony z szablonowym opisem pudełka}} }} }}</includeonly><!-- --><noinclude>{{#ifeq:{{Ns:Template}}:Szablonowy opis pudełka|{{FULLPAGENAME}}|{{Kategoria|Szablony z szablonowym opisem pudełka|sortuj spacją=tak}}}}</noinclude><!-- --><noinclude>{{Dokumentacja}}</noinclude> 8ovywchksrh2iafnlszzgo6mi1lgwce 540953 540951 2026-04-27T11:21:37Z Persino 2851 Anulowano wersję [[Special:Diff/540951|540951]] autorstwa [[Special:Contributions/Persino|Persino]] ([[User talk:Persino|dyskusja]]) 540953 wikitext text/x-wiki <includeonly>{{#if:{{{opis parametrów szablonu|}}}| {{Tabela nawigacyjna|styl=width:100%;|tytuł=<div style="text-align:left;">Parametry dodatkowe tego szablonu.</div>|spis= {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}| {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| * {{Code|klucz projektu}} i {{Code|klucz projektu N}}, {{Code|kod języka}} i {{Code|kod języka N}}, {{Code|kod projektu}} i {{Code|kod projektu N}} - kolejno: klucz projektu, kod języka i kod projektu, dla zmiennej jeden i {{Code|N}},}}}} * {{Code|nazwa przestrzeni nazw}} - przestrzeń nazw, w której znajduje się jednostka, (opcjonalny, domyślnie jego wartość jest nazwę przestrzeni nazw, w której siedzi ten szablon),{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|&nbsp; * {{Code|nazwa przestrzeni nazw N}} - przestrzeń nazw N-tego parametru nazwy jednostki, w której znajduje się N-ta jednostka, (opcjonalny, domyślnie jego wartość jest nazwę przestrzeni nazw {{Code|nazwa przestrzeni nazw}}, a jeżeli nie użyto tej zmiennej, to w której siedzi ten szablon),}} * {{Code|nazwa jednostki}} - jest to nazwa strony, bez przestrzeni nazw, występującej na polskim serwisie {{NAZWASERWISU}}, (opcjonalny, domyślnie jego wartość jest nazwą aktualnej jednostki, w której siedzi ten szablon), * {{Code|typ jednostki}} {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|i {{Code|typ jednostki N}}}} - używana do nazywania jednostek w dowolnej przestrzeni nazw, gdy jednostkę umieszczono w jakieś z tych przestrzeni nazw, lub przypisano ją do jakieś z tych przestrzeni ustawionej za pomocą zmiennej: {{Code|nazwa przestrzeni nazw}}, oto wartości tej zmiennej:{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=(main)}}|&nbsp; ** {{Code|artykuł}} - jednostka nazywana artykułem, przeznaczona dla wszystkich, w przestrzeni nazw {{Np|(main)|link=tak}},{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}||&nbsp; ** {{Code|podręcznik}} - jednostka nazywana podręcznikiem, przeznaczona dla wszystkich, w przestrzeni nazw {{Np|(main)|link=tak}},}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikijunior}}|&nbsp; ** {{Code|artykuł dla dzieci}} - jednostka nazywana artykułem dla dzieci, w przestrzeni nazw {{Np|Wikijunior|link=tak}},{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}||&nbsp; ** {{Code|podręcznik dla dzieci}} - jednostka nazywana podręcznikiem dla dzieci, w przestrzeni nazw {{Np|Wikijunior|link=tak}},}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=User}}|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki użytkownika jako normalne strony}}|&nbsp; ** {{Code|strona użytkownika}} - strona użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwane strony główne użytkowników=tak}}||&nbsp; ** {{Code|strona główna użytkownika}} - strona główna użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},}}{{#if:{{#invoke:Parametry|Not|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}}}|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki użytkownika}}|&nbsp; ** {{Code|artykuł użytkownika}} - artykuł w przestrzeni nazw użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}}, ** {{Code|podręcznik użytkownika}} - podręcznik w przestrzeni nazw użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},|&nbsp; ** {{Code|jednostka użytkownika}} - jednostka w przestrzeni nazw użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},}}|&nbsp; ** {{Code|strona użytkownika}} - strona użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},}}}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=File}}|&nbsp; ** {{Code|strona pliku}} - strona pliku, jest to przestrzeń nazw {{Np|File|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Category}}|&nbsp; ** {{Code|strona kategorii}} - strona kategorii, jest to przestrzeń nazw {{Np|Category|link=tak}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Template}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony szablonów=tak}}||&nbsp; ** {{Code|strona szablonu}} - strona szablonu, jest to przestrzeń nazw {{Np|Template|link=tak}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu szablonów=tak}}||&nbsp; ** {{Code|strona opisu szablonu}} - strona opisu szablonu, jest to przestrzeń nazw {{Np|Template|link=tak}},}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Module}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony modułów=tak}}||&nbsp; ** {{Code|strona modułu}} - strona modułu, jest to przestrzeń nazw {{Np|Module|link=tak}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu szablonów=tak}}||&nbsp; ** {{Code|strona opisu modułu}} - strona opisu modułu, jest to przestrzeń nazw {{Np|Module|link=tak}},}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikibooks}}|&nbsp; ** {{Code|strona projektu}} - strona projektu, jest to przestrzeń nazw {{Np|Wikibooks|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Help}}|&nbsp; ** {{Code|strona pomocy}} - strona pomocy, jest to przestrzeń nazw {{Np|Help|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Special}}|&nbsp; ** {{Code|strona specjalna}} - strona specjalna, jest to przestrzeń nazw {{Np|Special|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=MediaWiki}}|&nbsp; ** {{Code|strona komunikatu}} - w przypadku strony komunikatu, jest to przestrzeń nazw {{Np|MediaWiki|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Gadget}}|&nbsp; ** {{Code|strona gadżetu}} - strona gadżetu, jest to przestrzeń nazw {{Np|Gadget|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna dla dzieci=tak}}||&nbsp; ** {{Code|strona główna dla dzieci}} - strona główna {{lj2|Strona główna}} (lub o nazwie z nazwą przestrzeni nazw ustawioną za pomocą zmiennej: {{Code|strona główna dla dzieci}}),}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna projektu=tak}}||&nbsp; ** {{Code|strona główna projektu}} - strona główna {{lr2|Strona główna}} (lub o nazwie z nazwą przestrzeni nazw ustawioną za pomocą zmiennej: {{Code|strona główna projektu}}),}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwany brudnopis projektu=tak}}| {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}|&nbsp; ** {{Code|strona brudnopisu projektu}} - jednostka w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}},|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki brudnopisu projektu}}|&nbsp; ** {{Code|artykuł brudnopisu projektu}} - jednostka znana artykułem w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}}, ** {{Code|podręcznik brudnopisu projektu}} - jednostka znana podręcznikiem w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}},|&nbsp; ** {{Code|jednostka brudnopisu projektu}} - jednostka w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}}, }}}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwany brudnopis szablonu=tak}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu szablonów=tak}}||&nbsp; ** {{Code|strona brudnopisu szablonu}} - szablon w przestrzeni nazw {{Np|Template|link=tak}} w nibyprzestrzeni nazw: {{ls2|Brudnopis}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu szablonów=tak}}||&nbsp; ** {{Code|strona brudnopisu opisu szablonu}} - opis szablonu w przestrzeni nazw {{Np|Template|link=tak}} w nibyprzestrzeni nazw: {{ls2|Brudnopis}},}} }}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwany brudnopis modułu=tak}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu modułów=tak}}||&nbsp; ** {{Code|strona brudnopisu modułu}} - moduł w przestrzeni nazw {{Np|Module|link=tak}} w nibyprzestrzeni nazw: {{ld2|Brudnopis}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu modułów=tak}}||&nbsp; ** {{Code|strona brudnopisu opisu modułu}} - opis modułu w przestrzeni nazw {{Np|Module|link=tak}} w nibyprzestrzeni nazw: {{ld2|Brudnopis}},}}}} :(opcjonalny, szablon domyślnie sam ustawia do jakiego typu jednostki, należy jednostka, powyżej wymienionego), * {{Code|nazwij jednostką}} - wartość niepusta, wtedy szablon jednostkę nazywa po prostu {{Code|jednostką}}, w przeciwnym wypadku szablon nazywa zbiory w zależności do jakiej przestrzeni nazw ona zależy i od rodzaju strony,{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna dla dzieci=tak}}||&nbsp; * {{Code|strona główna dla dzieci}} - strona główna z przestrzenią nazw, zwykle jest to w przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} z nazwą strony {{Code|Strona główna}}, (opcjonalny, domyślnie ustawiony na: {{lj2|Strona główna}}),}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna projektu=tak}}||&nbsp; * {{Code|strona główna projektu}} - strona główna z przestrzenią nazw, zwykle jest to w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} z nazwą strony {{Code|Strona główna}}, (opcjonalny, domyślnie ustawiony na: {{lr2|Strona główna}}),}} * {{Code|bez kategorii}} - wartość niepusta, tzn. wtedy szablon nie umieszcza strony w żadnej kategorii, w przeciwnym przypadku umieszcza (opcjonalny). {{Hr}} * Zmienn{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|e|a}}: {{Code|typ jednostki}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|&nbsp;i {{Code|typ jednostki N}}}}, nie {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|są używane|jest używana}} do wyświetlania rodzaju jednostki, gdy zmienna: {{Code|nazwij jednostką}}, jest niepusta, wtedy ona jest nazywana {{Code|jednostką}}.{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|&nbsp; * Numer {{Code|N}}, to {{Code|1}},{{Code|2}},{{Code|3}} do {{Code|n}} parametrów szablonu nazywane liczbami naturalnymi.}} }}| {{Tabela nawigacyjna|styl=width:100%;|tytuł=<div style="text-align:left;">Kategorie błędów tego szablonu.</div>|spis=<div style="padding-left:5px;padding-right:5px;"> {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#invoke:Parametry|Or | 1 = {{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}} | 2 = {{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}} | 3 = {{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}} }} |{{#switch:{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}|1|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}}|1|0}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}}|1|0}}}} |1=Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na jakiś projekt wiki siostrzane z {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie niebieżącym, niepolskim lub nielokalnym, niż polski {{NAZWASERWISU|link=tak}}. {{Hr}} ;Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}pl:b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}pl:b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w zmiennej {{Code|kod języka}} kod języka bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} *{{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod projektu}} bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kod języka i kodu projektu kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod języka}} i {{Code|kod projektu}} bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}} |10= Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na jakiś projekt wiki siostrzane z {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie niebieżącym, niepolskim lub nielokalnym, niż polski {{NAZWASERWISU|link=tak}}. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}pl:w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, polskiego {{NAZWASERWISU|link=tak|po=a}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}pl:w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w zmiennej {{Code|kod języka}} kod języka polskiego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano niejawnie projekt polski. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kod języka i kodu projektu kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. *{{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}kod projektu{{((}}{{=}}{{))}}w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano niejawnie projekt polski. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}kod projektu{{=}}w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}} |01= Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na projekt bieżącego projektu {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie bieżącym. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}en:b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, lokalnego wiki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}en:b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano przy pomocy {{Code|kod języka}} niejawnie lokalnego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano kod projektu lokalny przy pomocy {{Code|kod projektu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka i kodu projektu dla kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}en{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano kod projektu lokalny przy pomocy {{Code|kod projektu}}. *Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}en{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}} |11= Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na projekt bieżącego projektu {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie bieżącym. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}pl:w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, polskiego wiki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}pl:w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}en{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano przy pomocy {{Code|kod języka}} niejawnie lokalny projekt. *Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}en{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano projekt lokalny. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka i kodu projektu kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}en{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano projekt lokalny. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}en{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}}}} Gdy szablon podano ze zmienną {{Code|klucz projektu}} albo {{Code|kod języka}} lub {{Code|kod projektu}}, które mogą posiadać wartości nieprawidłowe. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale nieprawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}ek:r{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - gdy podano w parametrze {{Code|klucz projektu}} nieprawidłową wartość. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}ek:r{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale nieprawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}ek{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod języka}} o wartości nieprawidłowej. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}ek{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład trzeci ilustrujący działanie złego, ale nieprawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}bt{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod projektu}} posiadającą wartość nieprawidłową. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}bt{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład czwarty ilustrujący działanie złego, ale nieprawidłowego kodu projektu w zmiennej {{Code|kod języka}} i {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}ee{{!}}kod projektu{{((}}{{=}}{{))}}ww{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano: {{Code|kod języka}} i {{Code|kod projektu}}, mający nieprawidłowe wartości. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}ek{{!}}kod projektu{{=}}rw{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}}}}}} * Gdy nazwa przestrzeni w zmiennej: {{Code|nazwa przestrzeni nazw}}, jest nieprawidłowa, a więc działania tego szablonu są równoważne, jeśli napiszemy je ogólnie według przykładu: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}MojaPrzestrzeń{{))}}}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa przestrzeni nazw}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{moja przestrzeń|MojaPrzestrzeń}}}{{))}} }} }} {{Hr}} * Gdy szablon został wstawiony na stronę w przestrzeni innej, niż obsługiwane przestrzenie nazw, lub ustawiono wartość parametru: {{Code|nazwa przestrzeni nazw}}, na inną wartość, niż te, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - wstawiono szablon do nieobsługiwanej przestrzeni nazw, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza nieobsługiwana przestrzeń nazw=tak}}{{))}}}} - gdy ustawiono nazwę przestrzeni nazw na wartość inną, niż obsługiwaną przestrzeń nazw, tutaj ustawiono na przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza nieobsługiwana przestrzeń nazw=tak}}|link=tak}}}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana przestrzeń nazw}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza nieobsługiwana przestrzeń nazw=tak}}{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|nazwa jednostki}}, o wartości pustej, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{))}}}} - gdy w szablonie ustawiono na obsługiwaną przestrzeń nazw, tutaj na przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono na stronę w obsługiwanej przestrzeni nazw. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=pusta nazwa jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|nazwa jednostki}}, o wartości nieprawidłowej, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{((}}((({{))}}1{{((}}))){{))}}{{))}}}} - gdy szablon użyto z parametrem nazwy jednostki zawierającą w sobie wyrażenie między innymi typu: <nowiki>{{{1}}}</nowiki>. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}{{((}}((({{))}}1{{((}}))){{))}}{{))}}}}}} {{Hr}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=(main)}}| * Gdy szablon wsadzono do przestrzeni nazw (główna) lub nadano zmiennej: {{Code|nazwa przestrzeni nazw}}, wartość pustą, z nazwą jednostki w zmiennej: {{Code|nazwa jednostki}}, zawierającą w sobie przestrzeń, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|(main)}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona{{))}}}} - gdy w szablonie ustawiono przestrzeń nazw {{Code|{{Np|(main)|link=tak}}}} z ustawioną nazwą strony na {{Code|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona}} zawierającą w sobie przestrzeń nazw, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona{{))}}}} - gdy szablon wstawiono na stronę w przestrzeni nazw {{Code|{{Np|(main)|link=tak}}}} z ustawioną nazwą strony na {{Code|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona}} zawierającą w sobie przestrzeń nazw. ** Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nazwa jednostki zawierająca w sobie przestrzeń}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}(main){{!}}nazwa jednostki{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona{{))}}}}}} {{Hr}} }} * Gdy w szablonie użyto zmiennej: {{Code|typ jednostki}}, o niewłaściwej wartości oraz jego umieszczono na stronie w dowolnej obsługiwanej przestrzeni nazw, lub nadano wartość zmiennej: {{Code|nazwa przestrzeni nazw}}, o nazwie, któreś z tych przestrzeni, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{((}}{{=}}{{))}}jakaś{{))}}}} - gdy ustawiono przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i nieprawidłowy typ jednostki, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}typ jednostki{{((}}{{=}}{{))}}jakaś{{))}}}} - gdy wstawiono szablon na stronę do przestrzeni nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i ustawiono nieprawidłowy typ jednostki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa wartość typu jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{=}}jakaś{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|typ jednostki}}, o wartości niezgodnej z podaną nazwą przestrzeni nazw z parametrów szablonu, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{((}}{{=}}{{))}}artykuł{{))}}}} - gdy ustawiono przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i niezgdodną z typem jednostki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=niezgodna wartość typu jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{=}}artykuł{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|typ jednostki}}, o wartości niezgodnej z podaną nazwą przestrzeni nazw i nazwą jednostki z parametrów szablonu, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona główna podręcznika{{!}}typ jednostki{{((}}{{=}}{{))}}artykuł{{))}}}} - gdy ustawiono przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i nazwę jednostki niezgdodną z typem jednostki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=niezgodne parametry pudełkowe}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}Strona główna podręcznika{{!}}typ jednostki{{=}}artykuł{{))}}}}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>0|{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=2|tak}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=4|tak}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=6|tak}}|tak}}| {{Hr}} * Gdy szablon wstawiono na stronę w obsługiwanej przestrzeni nazw z listą zmiennych nienazwanych zmieniająca się nie o jeden, ten problem możemy zapisać przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>0|{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=2|{{!}}2{{((}}{{=}}{{))}}argument 2}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=4|{{!}}4{{((}}{{=}}{{))}}argument 4}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=6|{{!}}6{{((}}{{=}}{{))}}argument 6}}|{{!}}2{{((}}{{=}}{{))}}argument 2{{!}}4{{((}}{{=}}{{))}}argument 4{{!}}6{{((}}{{=}}{{))}}argument 6}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#invoke:Parametry|Or|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}}}}|{{((}}!{{))}}klucz projektu{{((}}{{=}}{{))}}en:w}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono z parametrami nienazwanymi zmieniające się między sobą nie o jeden. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=brak parametrów}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>0|{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=2|{{!}}2{{=}}argument 2}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=4|{{!}}4{{=}}argument 4}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=6|{{!}}6{{=}}argument 6}}|{{!}}2{{=}}argument 2{{!}}4{{=}}argument 4{{!}}6{{=}}argument 6}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#invoke:Parametry|Or|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}}}}|{{!}}klucz projektu{{=}}en:w}}}}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}Strona{{))}}}}}} }}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Template}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Strona szablonu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Strona szablonu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę opisu szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Strona szablonu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona opisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Strona szablonu/opis{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Module}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Strona modułu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Strona modułu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę opisu modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Strona modułu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona opisu modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Strona modułu/opis{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Template}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwany brudnopis szablonu=tak}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Brudnopis/Użytkownik/Strona szablonu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona szablonu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu opisu szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Strona szablonu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu opisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona szablonu/opis{{))}}}}}} }}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Module}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwany brudnopis modułu=tak}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Brudnopis/Użytkownik/Strona modułu}}. *Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona modułu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu opisu modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Strona modułu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu opisu modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona modułu/opis{{))}}}}}} }}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikibooks}}| {{Hr}} * Gdy szablon został wstawiony na stronę z pustą nazwą strony głównej projektu w zmiennej: {{Code|strona główna projektu}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy w szablonie ustawiono przestrzeń nazw {{Code|{{Np|Wikibooks|link=tak}}}} i nazwę jednostki {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i ustawiono zmienną nazwy jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono na stronę o nazwie {{Code|Strona}} z ustawioną nazwą przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} na stronę o nazwie {{Code|Strona}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=pusta nazwa strony głównej projektu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}strona główna projektu{{=}}{{))}}}}}}{{#if:{{#invoke:Parametry|Not|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=dowolna nazwa strony głównej projektu}}}}| {{Hr}} * Gdy szablon został wstawiony na stronę z nazwą strony głównej projektu w zmiennej: {{Code|strona główna projektu}}, zawierającą w sobie prawe ukośniki, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy w szablonie ustawiono przestrzeń nazw {{Code|{{Np|Wikibooks|link=tak}}}} i nazwę jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy szablon wstawiono na stronę {{Code|Strona}} i ustawiono nazwę przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i ustawiono w szablonie nazwę jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i na stronę {{Code|Strona}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa strony głównej projektu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}strona główna projektu{{=}}Wikibooks:Strona/Podstrona{{))}}}}}}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwana strona główna projektu=tak}}| {{Hr}} * Gdy szablon został wstawiony na stronę wskazywaną przez zmienną: {{Code|strona główna projektu}} (używana, gdy chcemy określić samemu nazwę strony głównej projektu), a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona{{))}}}} - gdy w szablonie ustawiono nazwę strony na {{Code|Strona}} o podanej w zmiennej nazwy jednostki o takiej samej wartości bez przestrzeni nazw, jak wartość w zmiennej strony głównej projektu, i nazwę przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona{{))}}}} - gdy szablon wstawiono na stronę o nazwie {{Code|Strona}} i ustawiono w szablonie nazwę przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona{{))}}}} - gdy szablon wstawiono na stronę w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i ustawiono nazwę jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono na stronę główną projektu o nazwie {{lr2|Strona główna}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona główna projektu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}strona główna projektu{{=}}Wikibooks:Strona{{!}}nazwa jednostki{{=}}Strona{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikibooks}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwany brudnopis projektu=tak}}|| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę szablonu w przestrzeni nazw {{Np|Wikibooks|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona brudnopisu projektu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Wikibooks|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona brudnopisu projektu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Wikibooks|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona brudnopisu projektu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona brudnopisu projektu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Wikibooks|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona brudnopisu projektu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Wikibooks|link=tak}} i na stronę o nazwie nazwę {{Code|Brudnopis/Użytkownik/Strona szablonu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona brudnopisu projektu{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikijunior}}| {{Hr}} * Nazwa strony głównej projektu w zmiennej: {{Code|strona główna dla dzieci}}, jest pusta, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy użyto zmiennych wskazujących, jedna na nazwę przestrzeni nazw o wartości {{Code|{{Np|Wikijunior|link=tak}}}}, a druga na nazwę jednostki {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy użyto zmiennej wskazującej na nazwę przestrzeni nazw o wartości {{Code|{{Np|Wikijunior|link=tak}}}} i szablon wstawiono na stronę o nazwie {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} i ustawiono nazwę jednostki w szablonie na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy szablon został wstawiony do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} na stronę {{Code|Strona}}. * Szablon przydziela stronę do kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=pusta nazwa strony głównej dla dzieci}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikijunior{{!}}strona główna dla dzieci{{=}}{{))}}}}}}{{#if:{{#invoke:Parametry|Not|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=dowolna nazwa strony głównej dla dzieci}}}}| {{Hr}} * Nazwa strony głównej projektu w zmiennej: {{Code|strona główna dla dzieci}}, zawiera prawe ukośniki, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy użyto zmiennej wskazującej na nazwę przestrzeni nazw o wartości {{Code|{{Np|Wikijunior|link=tak}}}} i nazwę strony na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} z ustawioną zmienną nazwy jednostki na stronę o nazwie {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy w szablonie ustawiono zmienną wskazującej na nazwę przestrzeni nazw o wartości {{Code|Wikijunior}} i wstawiono go na stronę o nazwie {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy szablon został wstawiony do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} na stronę {{Code|Strona}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa strony głównej dla dzieci}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikijunior{{!}}strona główna dla dzieci{{=}}Wikijunior:Strona/Podstrona{{))}}}}}}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwana strona główna dla dzieci=tak}}| {{Hr}} * Gdy szablon wstawiono na stronę główną dla dzieci lub ustawiono wartość zmiennej: {{Code|nazwa przestrzeni nazw}} na wartość {{Code|{{Np|Wikijunior|link=tak}}}}, oraz ewentualnie nadano zmiennej: {{Code|nazwa jednostki}}, określającą nazwę tej jednostki (jeśli ta zmienna jest niepodana, to wtedy jest tożsama z nazwą tej strony) i argument: {{Code|strona główna dla dzieci}} (używana, gdy chcemy określić samemu nazwę strony głównej dla dzieci) na nazwę tej jednostki, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikijunior}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona{{))}}}} - gdy w szablonie ustawiono nazwę strony podanej w zmiennej nazwy jednostki o takiej samej wartości, jak wartość zmiennej bez przestrzeni nazw strony głównej dla dzieci, i nazwę przestrzeni nazw na {{Code|{{Np|Wikijunior|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikijunior}}{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona{{))}}}} - gdy szablon wstawiono na stronę o nazwie {{Code|Strona}} z ustawioną nazwą przestrzeni nazw na {{Code|{{Np|Wikijunior|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona{{))}}}} - gdy w szablonie ustawiono nazwę jednostki na {{Code|Strona}} i go wstawiono na stronę w przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono na stronę główną dla dzieci o nazwie {{lj2|Strona główna}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona główna dla dzieci}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikijunior{{!}}strona główna dla dzieci{{=}}Wikijunior:Strona{{!}}nazwa jednostki{{=}}Strona{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=User}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony główne użytkowników=tak}}| {{Hr}} * Gdy szablon wstawiono do przestrzeni nazw na stronę główną użytkownika lub nazwa przestrzeni w zmiennej: {{Code|nazwa przestrzeni nazw}}, jest {{Np|User|link=tak}} albo wstawiono go do przestrzeni Wikipedysta, i ewentualnie podano: {{Code|nazwa jednostki}}, równą nazwie użytkownika lub nazwie strony niezawierająca prawych ukośników, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|User}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Użytkownik{{))}}}} - gdy w szablonie ustawiono na przestrzeń nazw {{Np|User|link=tak}} i nazwę strony, tutaj strony głównej użytkownika, nieskładającego się z prawych ukośników, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|User}}{{))}}}} - gdy szablon wstawiono na stronę o nazwie nieskładającego się z prawych ukośników, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Użytkownik{{))}}}} - gdy szablon wstawiono na stronę, o ustawionej nazwie, do przestrzeni nazw {{Np|User|link=tak}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono na stronę główną użytkownika (Wikipedysty). * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona główna użytkownika}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}User{{!}}nazwa jednostki{{=}}Użytkownik{{))}}}}}} }}}}{{#invoke:Ramka|PowtarzajOdDo |start = {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|najniższy numer dodatkowego warunku=tak}} |koniec = {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|najwyższy numer dodatkowego warunku=tak}} |1 = {{((}}#if:{{((}}#invoke:Ramka{{!}}Rozwiń{{!}}{{((}}(({{))}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{((}}!{{))}}parametry pudełka{{=}}tak{{((}}!{{))}}istnieje taki parametr dodatkowego warunku{{((}}={{))}}tak{{!}}numer parametru dodatkowego{{((}}={{))}}{{((}}_{{))}}{{!}}{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}parametry dodatkowego warunku{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}{{((}})){{))}}{{))}}{{!}}{{Hr}}Dodatkowe błędy zwrócone przez szablon zaznaczony wprowadzone pośrednio w obsługę szablonu {{s|{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}}}, nie za pomoca pudełek zaimplemetowane w module {{ld2|Pudełko}}. Wywołanie błędu numer {{((}}_{{))}}, w którym w tym szablonie jest uruchamiany za pomocą dodatkowych parametrów, tym razem o tym numerze: * {{((}}#invoke:Ramka{{!}}Rozwiń{{!}}{{((}}(({{))}}s{{((}}!{{))}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{((}}!{{))}}{{((}}Zastąp{{!}}ciąg{{=}}{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}parametry dodatkowego warunku{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}{{!}}wzór{{=}}{{=}}{{!}}zamień{{=}}{{((}}(({{))}}={{((}})){{))}}{{))}}{{((}})){{))}}{{))}} - szablon ten o tych parametrach lub bez parametru {{Code|nazwa przestrzeni nazw}}, ale wstawiony do tej przestrzeni nazw o wartości obsługiwanej reprezentowanej przez ten szablon. * Szablon włącza stronę do kategorii: {{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}kategorie parametrów dodatkowych{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{((}}OpakujKategorieZeSortowaniem{{!}}{{((}}#invoke:Ramka{{!}}Rozwiń{{!}}{{((}}(({{))}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{((}}!{{))}}{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}parametry dodatkowego warunku{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}{{((}})){{))}}{{))}}{{))}}{{))}} }}</div>}}}}<!-- -->{{#ifeq:{{Ns:Template}}:{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|{{#invoke:Pudełko|Pełna nazwa jednostki 2}} |{{#if:{{Dopasuj|ciąg={{#invoke:Pudełko|Nazwa jednostki 2}}|wzór=/{{{strona|opis}}}$}} | <!-- wartość pusta --> |{{Kategoria|Szablony z szablonowym opisem pudełka}} }} }}</includeonly><!-- --><noinclude>{{#ifeq:{{Ns:Template}}:Szablonowy opis pudełka|{{FULLPAGENAME}}|{{Kategoria|Szablony z szablonowym opisem pudełka|sortuj spacją=tak}}}}</noinclude><!-- --><noinclude>{{Dokumentacja}}</noinclude> 4o2g96zea7zrioy6d0xe0b5365iaabs 540954 540953 2026-04-27T11:23:59Z Persino 2851 Anulowano wersję [[Special:Diff/540953|540953]] autorstwa [[Special:Contributions/Persino|Persino]] ([[User talk:Persino|dyskusja]]) 540954 wikitext text/x-wiki <includeonly>{{#if:{{{opis parametrów szablonu|}}}| {{Tabela nawigacyjna|styl=width:100%;|tytuł=<div style="text-align:left;">Parametry dodatkowe tego szablonu.</div>|spis= {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}| {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| * {{Code|klucz projektu}} i {{Code|klucz projektu N}}, {{Code|kod języka}} i {{Code|kod języka N}}, {{Code|kod projektu}} i {{Code|kod projektu N}} - kolejno: klucz projektu, kod języka i kod projektu, dla zmiennej jeden i {{Code|N}},}}}} * {{Code|nazwa przestrzeni nazw}} - przestrzeń nazw, w której znajduje się jednostka, (opcjonalny, domyślnie jego wartość jest nazwę przestrzeni nazw, w której siedzi ten szablon),{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|&nbsp; * {{Code|nazwa przestrzeni nazw N}} - przestrzeń nazw N-tego parametru nazwy jednostki, w której znajduje się N-ta jednostka, (opcjonalny, domyślnie jego wartość jest nazwę przestrzeni nazw {{Code|nazwa przestrzeni nazw}}, a jeżeli nie użyto tej zmiennej, to w której siedzi ten szablon),}} * {{Code|nazwa jednostki}} - jest to nazwa strony, bez przestrzeni nazw, występującej na polskim serwisie {{NAZWASERWISU}}, (opcjonalny, domyślnie jego wartość jest nazwą aktualnej jednostki, w której siedzi ten szablon), * {{Code|typ jednostki}} {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|i {{Code|typ jednostki N}}}} - używana do nazywania jednostek w dowolnej przestrzeni nazw, gdy jednostkę umieszczono w jakieś z tych przestrzeni nazw, lub przypisano ją do jakieś z tych przestrzeni ustawionej za pomocą zmiennej: {{Code|nazwa przestrzeni nazw}}, oto wartości tej zmiennej:{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=(main)}}|&nbsp; ** {{Code|artykuł}} - jednostka nazywana artykułem, przeznaczona dla wszystkich, w przestrzeni nazw {{Np|(main)|link=tak}},{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}||&nbsp; ** {{Code|podręcznik}} - jednostka nazywana podręcznikiem, przeznaczona dla wszystkich, w przestrzeni nazw {{Np|(main)|link=tak}},}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikijunior}}|&nbsp; ** {{Code|artykuł dla dzieci}} - jednostka nazywana artykułem dla dzieci, w przestrzeni nazw {{Np|Wikijunior|link=tak}},{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}||&nbsp; ** {{Code|podręcznik dla dzieci}} - jednostka nazywana podręcznikiem dla dzieci, w przestrzeni nazw {{Np|Wikijunior|link=tak}},}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=User}}|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane indywidua użytkownika jako normalne strony}}|&nbsp; ** {{Code|strona użytkownika}} - strona użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwane strony główne użytkowników=tak}}||&nbsp; ** {{Code|strona główna użytkownika}} - strona główna użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},}}{{#if:{{#invoke:Parametry|Not|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}}}|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki użytkownika}}|&nbsp; ** {{Code|artykuł użytkownika}} - artykuł w przestrzeni nazw użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}}, ** {{Code|podręcznik użytkownika}} - podręcznik w przestrzeni nazw użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},|&nbsp; ** {{Code|jednostka użytkownika}} - jednostka w przestrzeni nazw użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},}}|&nbsp; ** {{Code|strona użytkownika}} - strona użytkownika, jest to przestrzeń nazw {{Np|User|link=tak}},}}}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=File}}|&nbsp; ** {{Code|strona pliku}} - strona pliku, jest to przestrzeń nazw {{Np|File|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Category}}|&nbsp; ** {{Code|strona kategorii}} - strona kategorii, jest to przestrzeń nazw {{Np|Category|link=tak}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Template}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony szablonów=tak}}||&nbsp; ** {{Code|strona szablonu}} - strona szablonu, jest to przestrzeń nazw {{Np|Template|link=tak}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu szablonów=tak}}||&nbsp; ** {{Code|strona opisu szablonu}} - strona opisu szablonu, jest to przestrzeń nazw {{Np|Template|link=tak}},}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Module}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony modułów=tak}}||&nbsp; ** {{Code|strona modułu}} - strona modułu, jest to przestrzeń nazw {{Np|Module|link=tak}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu szablonów=tak}}||&nbsp; ** {{Code|strona opisu modułu}} - strona opisu modułu, jest to przestrzeń nazw {{Np|Module|link=tak}},}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikibooks}}|&nbsp; ** {{Code|strona projektu}} - strona projektu, jest to przestrzeń nazw {{Np|Wikibooks|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Help}}|&nbsp; ** {{Code|strona pomocy}} - strona pomocy, jest to przestrzeń nazw {{Np|Help|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Special}}|&nbsp; ** {{Code|strona specjalna}} - strona specjalna, jest to przestrzeń nazw {{Np|Special|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=MediaWiki}}|&nbsp; ** {{Code|strona komunikatu}} - w przypadku strony komunikatu, jest to przestrzeń nazw {{Np|MediaWiki|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Gadget}}|&nbsp; ** {{Code|strona gadżetu}} - strona gadżetu, jest to przestrzeń nazw {{Np|Gadget|link=tak}},}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna dla dzieci=tak}}||&nbsp; ** {{Code|strona główna dla dzieci}} - strona główna {{lj2|Strona główna}} (lub o nazwie z nazwą przestrzeni nazw ustawioną za pomocą zmiennej: {{Code|strona główna dla dzieci}}),}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna projektu=tak}}||&nbsp; ** {{Code|strona główna projektu}} - strona główna {{lr2|Strona główna}} (lub o nazwie z nazwą przestrzeni nazw ustawioną za pomocą zmiennej: {{Code|strona główna projektu}}),}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwany brudnopis projektu=tak}}| {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki jako nieopisowe strony}}|&nbsp; ** {{Code|strona brudnopisu projektu}} - jednostka w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}},|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane jednostki brudnopisu projektu}}|&nbsp; ** {{Code|artykuł brudnopisu projektu}} - jednostka znana artykułem w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}}, ** {{Code|podręcznik brudnopisu projektu}} - jednostka znana podręcznikiem w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}},|&nbsp; ** {{Code|jednostka brudnopisu projektu}} - jednostka w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} w nibyprzestrzeni nazw: {{lr2|Brudnopis}}, }}}}}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwany brudnopis szablonu=tak}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu szablonów=tak}}||&nbsp; ** {{Code|strona brudnopisu szablonu}} - szablon w przestrzeni nazw {{Np|Template|link=tak}} w nibyprzestrzeni nazw: {{ls2|Brudnopis}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu szablonów=tak}}||&nbsp; ** {{Code|strona brudnopisu opisu szablonu}} - opis szablonu w przestrzeni nazw {{Np|Template|link=tak}} w nibyprzestrzeni nazw: {{ls2|Brudnopis}},}} }}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|obsługiwany brudnopis modułu=tak}}|{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu modułów=tak}}||&nbsp; ** {{Code|strona brudnopisu modułu}} - moduł w przestrzeni nazw {{Np|Module|link=tak}} w nibyprzestrzeni nazw: {{ld2|Brudnopis}},}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu modułów=tak}}||&nbsp; ** {{Code|strona brudnopisu opisu modułu}} - opis modułu w przestrzeni nazw {{Np|Module|link=tak}} w nibyprzestrzeni nazw: {{ld2|Brudnopis}},}}}} :(opcjonalny, szablon domyślnie sam ustawia do jakiego typu jednostki, należy jednostka, powyżej wymienionego), * {{Code|nazwij jednostką}} - wartość niepusta, wtedy szablon jednostkę nazywa po prostu {{Code|jednostką}}, w przeciwnym wypadku szablon nazywa zbiory w zależności do jakiej przestrzeni nazw ona zależy i od rodzaju strony,{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna dla dzieci=tak}}||&nbsp; * {{Code|strona główna dla dzieci}} - strona główna z przestrzenią nazw, zwykle jest to w przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} z nazwą strony {{Code|Strona główna}}, (opcjonalny, domyślnie ustawiony na: {{lj2|Strona główna}}),}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|nieobsługiwana strona główna projektu=tak}}||&nbsp; * {{Code|strona główna projektu}} - strona główna z przestrzenią nazw, zwykle jest to w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} z nazwą strony {{Code|Strona główna}}, (opcjonalny, domyślnie ustawiony na: {{lr2|Strona główna}}),}} * {{Code|bez kategorii}} - wartość niepusta, tzn. wtedy szablon nie umieszcza strony w żadnej kategorii, w przeciwnym przypadku umieszcza (opcjonalny). {{Hr}} * Zmienn{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|e|a}}: {{Code|typ jednostki}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|&nbsp;i {{Code|typ jednostki N}}}}, nie {{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|są używane|jest używana}} do wyświetlania rodzaju jednostki, gdy zmienna: {{Code|nazwij jednostką}}, jest niepusta, wtedy ona jest nazywana {{Code|jednostką}}.{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}|&nbsp; * Numer {{Code|N}}, to {{Code|1}},{{Code|2}},{{Code|3}} do {{Code|n}} parametrów szablonu nazywane liczbami naturalnymi.}} }}| {{Tabela nawigacyjna|styl=width:100%;|tytuł=<div style="text-align:left;">Kategorie błędów tego szablonu.</div>|spis=<div style="padding-left:5px;padding-right:5px;"> {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#invoke:Parametry|Or | 1 = {{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}} | 2 = {{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}} | 3 = {{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}} }} |{{#switch:{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}|1|{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}}|1|0}}{{#if:{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}}|1|0}}}} |1=Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na jakiś projekt wiki siostrzane z {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie niebieżącym, niepolskim lub nielokalnym, niż polski {{NAZWASERWISU|link=tak}}. {{Hr}} ;Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}pl:b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}pl:b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w zmiennej {{Code|kod języka}} kod języka bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} *{{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod projektu}} bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kod języka i kodu projektu kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod języka}} i {{Code|kod projektu}} bieżącego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}} |10= Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na jakiś projekt wiki siostrzane z {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie niebieżącym, niepolskim lub nielokalnym, niż polski {{NAZWASERWISU|link=tak}}. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}pl:w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, polskiego {{NAZWASERWISU|link=tak|po=a}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}pl:w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w zmiennej {{Code|kod języka}} kod języka polskiego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano niejawnie projekt polski. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kod języka i kodu projektu kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. *{{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}kod projektu{{((}}{{=}}{{))}}w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano niejawnie projekt polski. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}kod projektu{{=}}w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}} |01= Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na projekt bieżącego projektu {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie bieżącym. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}en:b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, lokalnego wiki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}en:b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}pl{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano przy pomocy {{Code|kod języka}} niejawnie lokalnego projektu. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}pl{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano kod projektu lokalny przy pomocy {{Code|kod projektu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka i kodu projektu dla kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}en{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano kod projektu lokalny przy pomocy {{Code|kod projektu}}. *Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=lokalne wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}en{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}} |11= Gdy szablon wstawiono z kodami: {{Code|klucz projektu}}, {{Code|kod języka}} lub {{Code|kod projektu}}, wskazujący na projekt bieżącego projektu {{NAZWASERWISU}}, lub ich nie podano, w przypadku tego ostatniego szablon wcale nie zwraca błędu, bo on został przystosowany do operowania tylko na projekcie bieżącym. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale prawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}pl:w{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano w {{Code|klucz projektu}} kody: języka i projektu, polskiego wiki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}pl:w{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}en{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano przy pomocy {{Code|kod języka}} niejawnie lokalny projekt. *Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}en{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano projekt lokalny. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale prawidłowego kodu języka i kodu projektu kolejno w zmiennej {{Code|kod języka}} i {{Code|kod projektu}}. * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}en{{!}}kod projektu{{((}}{{=}}{{))}}b{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano projekt lokalny. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=polskie lub lokalne - wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}en{{!}}kod projektu{{=}}b{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}}}} Gdy szablon podano ze zmienną {{Code|klucz projektu}} albo {{Code|kod języka}} lub {{Code|kod projektu}}, które mogą posiadać wartości nieprawidłowe. {{Hr}} ; Przykład pierwszy ilustrujący działanie złego, ale nieprawidłowego klucza projektu w zmiennej {{Code|klucz projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}klucz projektu{{((}}{{=}}{{))}}ek:r{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - gdy podano w parametrze {{Code|klucz projektu}} nieprawidłową wartość. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}klucz projektu{{=}}ek:r{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład drugi ilustrujący działanie złego, ale nieprawidłowego kodu języka w zmiennej {{Code|kod języka}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}ek{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod języka}} o wartości nieprawidłowej. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}ek{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład trzeci ilustrujący działanie złego, ale nieprawidłowego kodu projektu w zmiennej {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod projektu{{((}}{{=}}{{))}}bt{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano {{Code|kod projektu}} posiadającą wartość nieprawidłową. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod projektu{{=}}bt{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}} ; Przykład czwarty ilustrujący działanie złego, ale nieprawidłowego kodu projektu w zmiennej {{Code|kod języka}} i {{Code|kod projektu}} * {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona{{!}}kod języka{{((}}{{=}}{{))}}ee{{!}}kod projektu{{((}}{{=}}{{))}}ww{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}} - podano: {{Code|kod języka}} i {{Code|kod projektu}}, mający nieprawidłowe wartości. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=błędne parametry wiki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}strona{{!}}kod języka{{=}}ek{{!}}kod projektu{{=}}rw{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{))}}}}}}{{Hr}}{{Hr}}}}}} * Gdy nazwa przestrzeni w zmiennej: {{Code|nazwa przestrzeni nazw}}, jest nieprawidłowa, a więc działania tego szablonu są równoważne, jeśli napiszemy je ogólnie według przykładu: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}MojaPrzestrzeń{{))}}}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa przestrzeni nazw}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{moja przestrzeń|MojaPrzestrzeń}}}{{))}} }} }} {{Hr}} * Gdy szablon został wstawiony na stronę w przestrzeni innej, niż obsługiwane przestrzenie nazw, lub ustawiono wartość parametru: {{Code|nazwa przestrzeni nazw}}, na inną wartość, niż te, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - wstawiono szablon do nieobsługiwanej przestrzeni nazw, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza nieobsługiwana przestrzeń nazw=tak}}{{))}}}} - gdy ustawiono nazwę przestrzeni nazw na wartość inną, niż obsługiwaną przestrzeń nazw, tutaj ustawiono na przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza nieobsługiwana przestrzeń nazw=tak}}|link=tak}}}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana przestrzeń nazw}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza nieobsługiwana przestrzeń nazw=tak}}{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|nazwa jednostki}}, o wartości pustej, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{))}}}} - gdy w szablonie ustawiono na obsługiwaną przestrzeń nazw, tutaj na przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono na stronę w obsługiwanej przestrzeni nazw. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=pusta nazwa jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|nazwa jednostki}}, o wartości nieprawidłowej, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{((}}((({{))}}1{{((}}))){{))}}{{))}}}} - gdy szablon użyto z parametrem nazwy jednostki zawierającą w sobie wyrażenie między innymi typu: <nowiki>{{{1}}}</nowiki>. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}{{((}}((({{))}}1{{((}}))){{))}}{{))}}}}}} {{Hr}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=(main)}}| * Gdy szablon wsadzono do przestrzeni nazw (główna) lub nadano zmiennej: {{Code|nazwa przestrzeni nazw}}, wartość pustą, z nazwą jednostki w zmiennej: {{Code|nazwa jednostki}}, zawierającą w sobie przestrzeń, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|(main)}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona{{))}}}} - gdy w szablonie ustawiono przestrzeń nazw {{Code|{{Np|(main)|link=tak}}}} z ustawioną nazwą strony na {{Code|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona}} zawierającą w sobie przestrzeń nazw, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona{{))}}}} - gdy szablon wstawiono na stronę w przestrzeni nazw {{Code|{{Np|(main)|link=tak}}}} z ustawioną nazwą strony na {{Code|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona}} zawierającą w sobie przestrzeń nazw. ** Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nazwa jednostki zawierająca w sobie przestrzeń}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}(main){{!}}nazwa jednostki{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}:Strona{{))}}}}}} {{Hr}} }} * Gdy w szablonie użyto zmiennej: {{Code|typ jednostki}}, o niewłaściwej wartości oraz jego umieszczono na stronie w dowolnej obsługiwanej przestrzeni nazw, lub nadano wartość zmiennej: {{Code|nazwa przestrzeni nazw}}, o nazwie, któreś z tych przestrzeni, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{((}}{{=}}{{))}}jakaś{{))}}}} - gdy ustawiono przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i nieprawidłowy typ jednostki, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}typ jednostki{{((}}{{=}}{{))}}jakaś{{))}}}} - gdy wstawiono szablon na stronę do przestrzeni nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i ustawiono nieprawidłowy typ jednostki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa wartość typu jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{=}}jakaś{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|typ jednostki}}, o wartości niezgodnej z podaną nazwą przestrzeni nazw z parametrów szablonu, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{((}}{{=}}{{))}}artykuł{{))}}}} - gdy ustawiono przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i niezgdodną z typem jednostki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=niezgodna wartość typu jednostki}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}typ jednostki{{=}}artykuł{{))}}}}}} {{Hr}} * Gdy w szablonie użyto zmiennej: {{Code|typ jednostki}}, o wartości niezgodnej z podaną nazwą przestrzeni nazw i nazwą jednostki z parametrów szablonu, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona główna podręcznika{{!}}typ jednostki{{((}}{{=}}{{))}}artykuł{{))}}}} - gdy ustawiono przestrzeń nazw {{Code|{{Np|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}|link=tak}}}} i nazwę jednostki niezgdodną z typem jednostki. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=niezgodne parametry pudełkowe}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}Strona główna podręcznika{{!}}typ jednostki{{=}}artykuł{{))}}}}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>0|{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=2|tak}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=4|tak}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=6|tak}}|tak}}| {{Hr}} * Gdy szablon wstawiono na stronę w obsługiwanej przestrzeni nazw z listą zmiennych nienazwanych zmieniająca się nie o jeden, ten problem możemy zapisać przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>0|{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=2|{{!}}2{{((}}{{=}}{{))}}argument 2}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=4|{{!}}4{{((}}{{=}}{{))}}argument 4}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=6|{{!}}6{{((}}{{=}}{{))}}argument 6}}|{{!}}2{{((}}{{=}}{{))}}argument 2{{!}}4{{((}}{{=}}{{))}}argument 4{{!}}6{{((}}{{=}}{{))}}argument 6}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#invoke:Parametry|Or|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}}}}|{{((}}!{{))}}klucz projektu{{((}}{{=}}{{))}}en:w}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono z parametrami nienazwanymi zmieniające się między sobą nie o jeden. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=brak parametrów}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>0|{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=2|{{!}}2{{=}}argument 2}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=4|{{!}}4{{=}}argument 4}}{{#ifexpr:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|maksymalny numer argumentu nienazwanego=tak}}>=6|{{!}}6{{=}}argument 6}}|{{!}}2{{=}}argument 2{{!}}4{{=}}argument 4{{!}}6{{=}}argument 6}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nazwy jednostki numerowane}}| {{#if:{{#invoke:Parametry|Or|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=obsługiwane niebieżące wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane polskie wiki}}|{{ {{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=nieobsługiwane lokalne wiki}}}}|{{!}}klucz projektu{{=}}en:w}}}}{{!}}nazwa przestrzeni nazw{{=}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|pierwsza obsługiwana użytkowa niegłówna cechowa przestrzeń nazw=tak}}{{!}}nazwa jednostki{{=}}Strona{{))}}}}}} }}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Template}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Strona szablonu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Strona szablonu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę opisu szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona szablonu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Strona szablonu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona opisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Strona szablonu/opis{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Module}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Strona modułu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Strona modułu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony opisu modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę opisu modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona modułu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Strona modułu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona opisu modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Strona modułu/opis{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Template}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwany brudnopis szablonu=tak}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Brudnopis/Użytkownik/Strona szablonu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona szablonu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu szablonów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu opisu szablonu w przestrzeni nazw {{Np|Template|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Template}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Template|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona szablonu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Template|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona szablonu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Template|link=tak}} i na stronę o nazwie nazwę {{Code|Strona szablonu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu opisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Template{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona szablonu/opis{{))}}}}}} }}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Module}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwany brudnopis modułu=tak}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Brudnopis/Użytkownik/Strona modułu}}. *Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona modułu{{))}}}}}} }}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony brudnopisu opisu modułów=tak}}| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę brudnopisu opisu modułu w przestrzeni nazw {{Np|Module|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu/opis{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Module}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Module|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona modułu/opis{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Module|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona modułu/opis}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Module|link=tak}} i na stronę o nazwie nazwę {{Code|Strona modułu/opis}}, * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu opisu modułu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Module{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona modułu/opis{{))}}}}}} }}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikibooks}}| {{Hr}} * Gdy szablon został wstawiony na stronę z pustą nazwą strony głównej projektu w zmiennej: {{Code|strona główna projektu}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy w szablonie ustawiono przestrzeń nazw {{Code|{{Np|Wikibooks|link=tak}}}} i nazwę jednostki {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i ustawiono zmienną nazwy jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono na stronę o nazwie {{Code|Strona}} z ustawioną nazwą przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna projektu{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} na stronę o nazwie {{Code|Strona}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=pusta nazwa strony głównej projektu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}strona główna projektu{{=}}{{))}}}}}}{{#if:{{#invoke:Parametry|Not|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=dowolna nazwa strony głównej projektu}}}}| {{Hr}} * Gdy szablon został wstawiony na stronę z nazwą strony głównej projektu w zmiennej: {{Code|strona główna projektu}}, zawierającą w sobie prawe ukośniki, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy w szablonie ustawiono przestrzeń nazw {{Code|{{Np|Wikibooks|link=tak}}}} i nazwę jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy szablon wstawiono na stronę {{Code|Strona}} i ustawiono nazwę przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i ustawiono w szablonie nazwę jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona/Podstrona{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i na stronę {{Code|Strona}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa strony głównej projektu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}strona główna projektu{{=}}Wikibooks:Strona/Podstrona{{))}}}}}}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwana strona główna projektu=tak}}| {{Hr}} * Gdy szablon został wstawiony na stronę wskazywaną przez zmienną: {{Code|strona główna projektu}} (używana, gdy chcemy określić samemu nazwę strony głównej projektu), a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona{{))}}}} - gdy w szablonie ustawiono nazwę strony na {{Code|Strona}} o podanej w zmiennej nazwy jednostki o takiej samej wartości bez przestrzeni nazw, jak wartość w zmiennej strony głównej projektu, i nazwę przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona{{))}}}} - gdy szablon wstawiono na stronę o nazwie {{Code|Strona}} i ustawiono w szablonie nazwę przestrzeni nazw na {{Code|{{Np|Wikibooks|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna projektu{{((}}{{=}}{{))}}Wikibooks:Strona{{))}}}} - gdy szablon wstawiono na stronę w przestrzeni nazw {{Code|{{Np|Wikibooks|link=tak}}}} i ustawiono nazwę jednostki na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono na stronę główną projektu o nazwie {{lr2|Strona główna}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona główna projektu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}strona główna projektu{{=}}Wikibooks:Strona{{!}}nazwa jednostki{{=}}Strona{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikibooks}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwany brudnopis projektu=tak}}|| {{Hr}} * Gdy szablon wstawiono na nieobsługiwaną stronę szablonu w przestrzeni nazw {{Np|Wikibooks|link=tak}}, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona brudnopisu projektu{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Wikibooks|link=tak}} i nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona brudnopisu projektu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikibooks}}{{))}}}} - gdy ustawiono przestrzeń nazw {{Np|Wikibooks|link=tak}} i wstawiono na stronę o nazwie {{Code|Brudnopis/Użytkownik/Strona brudnopisu projektu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Brudnopis/Użytkownik/Strona brudnopisu projektu{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Np|Wikibooks|link=tak}} i ustawiono nazwę jednostki na {{Code|Brudnopis/Użytkownik/Strona brudnopisu projektu}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy wstawiono stronę do przestrzeni nazw {{Np|Wikibooks|link=tak}} i na stronę o nazwie nazwę {{Code|Brudnopis/Użytkownik/Strona szablonu}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona brudnopisu szablonu}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikibooks{{!}}nazwa jednostki{{=}}Brudnopis/Użytkownik/Strona brudnopisu projektu{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=Wikijunior}}| {{Hr}} * Nazwa strony głównej projektu w zmiennej: {{Code|strona główna dla dzieci}}, jest pusta, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy użyto zmiennych wskazujących, jedna na nazwę przestrzeni nazw o wartości {{Code|{{Np|Wikijunior|link=tak}}}}, a druga na nazwę jednostki {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy użyto zmiennej wskazującej na nazwę przestrzeni nazw o wartości {{Code|{{Np|Wikijunior|link=tak}}}} i szablon wstawiono na stronę o nazwie {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy szablon wstawiono do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} i ustawiono nazwę jednostki w szablonie na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}{{))}}}} - gdy szablon został wstawiony do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} na stronę {{Code|Strona}}. * Szablon przydziela stronę do kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=pusta nazwa strony głównej dla dzieci}}. *{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikijunior{{!}}strona główna dla dzieci{{=}}{{))}}}}}}{{#if:{{#invoke:Parametry|Not|{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowy parametr=tak|parametr=dowolna nazwa strony głównej dla dzieci}}}}| {{Hr}} * Nazwa strony głównej projektu w zmiennej: {{Code|strona główna dla dzieci}}, zawiera prawe ukośniki, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy użyto zmiennej wskazującej na nazwę przestrzeni nazw o wartości {{Code|{{Np|Wikijunior|link=tak}}}} i nazwę strony na {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy wstawiono szablon do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} z ustawioną zmienną nazwy jednostki na stronę o nazwie {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}Wikijunior{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy w szablonie ustawiono zmienną wskazującej na nazwę przestrzeni nazw o wartości {{Code|Wikijunior}} i wstawiono go na stronę o nazwie {{Code|Strona}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona/Podstrona{{))}}}} - gdy szablon został wstawiony do przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}} na stronę {{Code|Strona}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieprawidłowa nazwa strony głównej dla dzieci}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikijunior{{!}}strona główna dla dzieci{{=}}Wikijunior:Strona/Podstrona{{))}}}}}}}} {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwana strona główna dla dzieci=tak}}| {{Hr}} * Gdy szablon wstawiono na stronę główną dla dzieci lub ustawiono wartość zmiennej: {{Code|nazwa przestrzeni nazw}} na wartość {{Code|{{Np|Wikijunior|link=tak}}}}, oraz ewentualnie nadano zmiennej: {{Code|nazwa jednostki}}, określającą nazwę tej jednostki (jeśli ta zmienna jest niepodana, to wtedy jest tożsama z nazwą tej strony) i argument: {{Code|strona główna dla dzieci}} (używana, gdy chcemy określić samemu nazwę strony głównej dla dzieci) na nazwę tej jednostki, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikijunior}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona{{))}}}} - gdy w szablonie ustawiono nazwę strony podanej w zmiennej nazwy jednostki o takiej samej wartości, jak wartość zmiennej bez przestrzeni nazw strony głównej dla dzieci, i nazwę przestrzeni nazw na {{Code|{{Np|Wikijunior|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|Wikijunior}}{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona{{))}}}} - gdy szablon wstawiono na stronę o nazwie {{Code|Strona}} z ustawioną nazwą przestrzeni nazw na {{Code|{{Np|Wikijunior|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Strona{{!}}strona główna dla dzieci{{((}}{{=}}{{))}}Wikijunior:Strona{{))}}}} - gdy w szablonie ustawiono nazwę jednostki na {{Code|Strona}} i go wstawiono na stronę w przestrzeni nazw {{Code|{{Np|Wikijunior|link=tak}}}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono na stronę główną dla dzieci o nazwie {{lj2|Strona główna}}. * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona główna dla dzieci}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}Wikijunior{{!}}strona główna dla dzieci{{=}}Wikijunior:Strona{{!}}nazwa jednostki{{=}}Strona{{))}}}}}} }}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|obsługiwana przestrzeń nazw=tak|nazwa przestrzeni nazw=User}}| {{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|nieobsługiwane strony główne użytkowników=tak}}| {{Hr}} * Gdy szablon wstawiono do przestrzeni nazw na stronę główną użytkownika lub nazwa przestrzeni w zmiennej: {{Code|nazwa przestrzeni nazw}}, jest {{Np|User|link=tak}} albo wstawiono go do przestrzeni Wikipedysta, i ewentualnie podano: {{Code|nazwa jednostki}}, równą nazwie użytkownika lub nazwie strony niezawierająca prawych ukośników, a więc działania tego szablonu są równoważne, jeśli napiszemy je przykładowo: ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|User}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Użytkownik{{))}}}} - gdy w szablonie ustawiono na przestrzeń nazw {{Np|User|link=tak}} i nazwę strony, tutaj strony głównej użytkownika, nieskładającego się z prawych ukośników, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa przestrzeni nazw{{((}}{{=}}{{))}}{{Np|User}}{{))}}}} - gdy szablon wstawiono na stronę o nazwie nieskładającego się z prawych ukośników, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{!}}nazwa jednostki{{((}}{{=}}{{))}}Użytkownik{{))}}}} - gdy szablon wstawiono na stronę, o ustawionej nazwie, do przestrzeni nazw {{Np|User|link=tak}}, ** {{#invoke:Ramka|Rozwiń|{{((}}s{{!}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{Zastąp|ciąg={{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|wzór=({{!}}{{!(}}^{{=}}{{!}}{{)!}}*)({{=}})|zamień=%1{{((}}{{=}}{{))}}}}}}{{))}}}} - gdy szablon wstawiono na stronę główną użytkownika (Wikipedysty). * Szablon umieszcza stronę w kategorii: {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|zwracane kategorie błędu=tak|dodatek=nieobsługiwana strona główna użytkownika}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{OpakujKategorieZeSortowaniem|{{#invoke:Ramka|Rozwiń|{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}}|{{!}}{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|parametry=tak}} }}{{!}}nazwa przestrzeni nazw{{=}}User{{!}}nazwa jednostki{{=}}Użytkownik{{))}}}}}} }}}}{{#invoke:Ramka|PowtarzajOdDo |start = {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|najniższy numer dodatkowego warunku=tak}} |koniec = {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|najwyższy numer dodatkowego warunku=tak}} |1 = {{((}}#if:{{((}}#invoke:Ramka{{!}}Rozwiń{{!}}{{((}}(({{))}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{((}}!{{))}}parametry pudełka{{=}}tak{{((}}!{{))}}istnieje taki parametr dodatkowego warunku{{((}}={{))}}tak{{!}}numer parametru dodatkowego{{((}}={{))}}{{((}}_{{))}}{{!}}{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}parametry dodatkowego warunku{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}{{((}})){{))}}{{))}}{{!}}{{Hr}}Dodatkowe błędy zwrócone przez szablon zaznaczony wprowadzone pośrednio w obsługę szablonu {{s|{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}}}, nie za pomoca pudełek zaimplemetowane w module {{ld2|Pudełko}}. Wywołanie błędu numer {{((}}_{{))}}, w którym w tym szablonie jest uruchamiany za pomocą dodatkowych parametrów, tym razem o tym numerze: * {{((}}#invoke:Ramka{{!}}Rozwiń{{!}}{{((}}(({{))}}s{{((}}!{{))}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{((}}!{{))}}{{((}}Zastąp{{!}}ciąg{{=}}{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}parametry dodatkowego warunku{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}{{!}}wzór{{=}}{{=}}{{!}}zamień{{=}}{{((}}(({{))}}={{((}})){{))}}{{))}}{{((}})){{))}}{{))}} - szablon ten o tych parametrach lub bez parametru {{Code|nazwa przestrzeni nazw}}, ale wstawiony do tej przestrzeni nazw o wartości obsługiwanej reprezentowanej przez ten szablon. * Szablon włącza stronę do kategorii: {{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}kategorie parametrów dodatkowych{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}. * {{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}{{#if:{{{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}|parametry pudełka=tak|dodatkowa informacja=tak}}|,}} co da w efekcie: {{((}}OpakujKategorieZeSortowaniem{{!}}{{((}}#invoke:Ramka{{!}}Rozwiń{{!}}{{((}}(({{))}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{((}}!{{))}}{{((}}{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}}}}}{{!}}parametry pudełka{{=}}tak{{!}}parametry dodatkowego warunku{{=}}tak{{!}}numer parametru dodatkowego{{=}}{{((}}_{{))}}{{))}}{{((}})){{))}}{{))}}{{))}}{{))}} }}</div>}}}}<!-- -->{{#ifeq:{{Ns:Template}}:{{{nazwa szablonu|{{NAZWAKORZENIASTRONY}} }}}|{{#invoke:Pudełko|Pełna nazwa jednostki 2}} |{{#if:{{Dopasuj|ciąg={{#invoke:Pudełko|Nazwa jednostki 2}}|wzór=/{{{strona|opis}}}$}} | <!-- wartość pusta --> |{{Kategoria|Szablony z szablonowym opisem pudełka}} }} }}</includeonly><!-- --><noinclude>{{#ifeq:{{Ns:Template}}:Szablonowy opis pudełka|{{FULLPAGENAME}}|{{Kategoria|Szablony z szablonowym opisem pudełka|sortuj spacją=tak}}}}</noinclude><!-- --><noinclude>{{Dokumentacja}}</noinclude> 8ovywchksrh2iafnlszzgo6mi1lgwce Szablon:Ekspresowe kasowanie 2 10 44965 540939 510864 2026-04-27T09:14:25Z Persino 2851 540939 wikitext text/x-wiki <includeonly><!-- -->{{Mbox | grafika = {{Plik|plik=User-trash-full.png|rozmiar=35px|opis=Ekspresowe kasowanie}} | typ = poważny | tekst = '''Jeden z użytkowników Wikibooks oznaczył t{{#if:{{{nazwij stroną|}}}|ę stronę jako kwalifikującą się|{{#switch:{{Np|{{#invoke:Pudełko|Nazwa przestrzeni nazw}}|kanoniczna=tak|wyświetlana=tak}} | File = en plik jako kwalifikujący się | Category = ę kategorię jako kwalifikującą się | Template = ę szablon jako kwalifikującą się | Module = ą stronę modułu, jako kwalifikującą się | Wikibooks = ą stronę projektu, jako kwalifikującą się | Help = ą stronę pomocy, jako kwalifikującą się | User = ą stronę użytkownika, jako kwalifikującą się | Wikijunior = ę artykuł dla dzieci, jako kwalifikującą się | (main) = ę artykuł jako kwalifikującą się | #default = ę stronę jako kwalifikującą się}}}}<!-- -->do {{LinkProjekt|Poczekalnia|natychmiastowego skasowania}}'''.{{Br}}{{Small|W najbliższym czasie {{LinkProjekt|Administratorzy|administratorzy Wikibooks}} zweryfikują to zgłoszenie.}}<!-- -->{{#if: {{{1|}}} | :Użytkownik, który zasugerował usunięcie strony podał następujące uzasadnienie:{{Br}} "{{{1}}}" }}{{Br}}{{Small|Jeśli się nie zgadzasz z propozycją usunięcia, napisz o tym na stronie {{LinkProjekt|Poczekalnia}}.}} }}{{#if:{{{bez kategorii|}}}||{{#invoke:Skrót|Kategoria2|Ekspresowe kasowanie}}}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> 4f7s4y01gdz4f9btvnus4bwkv0thtlr Szablon:Ekspresowe kasowanie 2/opis 10 44966 540940 517296 2026-04-27T09:16:27Z Persino 2851 540940 wikitext text/x-wiki {{Podstrona dokumentacji}} {{Skrót szablonu|Ek2}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == Szablon służy do oznaczania stron przeznaczonych do usunięcia. Szablon umieszcza stronę w kategorii: {{lk|Ekspresowe kasowanie}}. == Opis parametrów == Szablon przyjmuje parametry opcjonalne: * {{Code|1}} = uzasadniesie dlaczego strona musi zostać usunięta. * {{Code|nazwij stroną}} = stronę do usunięcia nazywa po prostu stroną. * {{Code|nazwa przestrzeni nazw}} = aktywna, gdy parametr {{Code|nazwij stroną}} jest pusty. == Przykład == ; Pierwszy przykład * {{s|ek2}} {{OpakujKategorieZeSortowaniem|{{ek2|nazwa przestrzeni nazw=(main)|nazwa jednostki=Szczególna teoria względności/Wydłużenie podłużne a poprzeczne}}}} ---- ; Drugi przykład * {{s|ek2|To jest uzasadnienie.}} {{OpakujKategorieZeSortowaniem|{{ek2|To jest uzasadnienie.|nazwa przestrzeni nazw=(main)|nazwa jednostki=Szczególna teoria względności/Wydłużenie podłużne a poprzeczne}}}} == Błędy == Błędy należy zgłaszać na stronie {{kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { "1": { "description": "Uzasadnienie", "type": "string", "suggested": true }, "nazwij stroną": { "description": "Strona do usunięcia nazywana jest po prostu stroną.", "type": "string", "default": "Wartość pusta." }, "nazwa przestrzeni nazw": { "description": "Nazwa przestrzeni nazw, do której należy strona.", "type": "string" } } } </templatedata> == Zobacz też == Zobacz też dokumentację szablonów: * {{s|DNU}} - używany, gdy trwa dyskusja nad usunięciem lub naprawieniem strony, albo w sytuacji, gdy zakończone dyskusją z ustaleniem, co należy dalej zrobić, * {{s|SdU}} i {{s|DoSkasowania}} - używany, gdy trwa trwa dyskusja nad usunięciem lub naprawieniem strony podobnie jak {{s|DNU}}, * {{s|SdUwynik}} - używany w sytuacji, gdy ustalono, co dalej trzeba zrobić ze stroną, podobnie jak {{s|DNU}}, * {{s|Kpp}} i {{s|Kasowanie po przeniesieniu}} - powiadamia autora podręcznika przed jakim czasem może skopiować zawartość przed jego skasowaniem, * {{s|Ek}} i {{s|Delete}} - używany do zgłoszenia strony, ale nie podręcznika, do usunięcia przez {{lr|Administratorzy|administratora Wikibooks}}, * {{s|NPA}} i {{s|NPA całość}} - używane do zgłaszanie naruszenia praw autorskich (NPA) przez artykuł i podręcznik w przestrzeni nazw (główna) i Wikijunior lub plik w przestrzeni nazw Plik, kolejno wstawiane ręcznie lub przez bota, * {{s|Zgłoś błąd}} i {{s|ZB}} - używane do zgłaszania błędów. {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> {{Kategorie | Szablony porządkowe | Usuwanie stron - szablony }} </includeonly> s27rddv8hfgrr6oj6jkr54bi4m57ijm 540943 540940 2026-04-27T09:24:59Z Persino 2851 /* Przykład */ 540943 wikitext text/x-wiki {{Podstrona dokumentacji}} {{Skrót szablonu|Ek2}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == Szablon służy do oznaczania stron przeznaczonych do usunięcia. Szablon umieszcza stronę w kategorii: {{lk|Ekspresowe kasowanie}}. == Opis parametrów == Szablon przyjmuje parametry opcjonalne: * {{Code|1}} = uzasadniesie dlaczego strona musi zostać usunięta. * {{Code|nazwij stroną}} = stronę do usunięcia nazywa po prostu stroną. * {{Code|nazwa przestrzeni nazw}} = aktywna, gdy parametr {{Code|nazwij stroną}} jest pusty. == Przykład == ; Pierwszy przykład * {{s|ek2}} {{OpakujKategorieZeSortowaniem|{{ek2}}}} ---- ; Drugi przykład * {{s|ek2|To jest uzasadnienie.}} {{OpakujKategorieZeSortowaniem|{{ek2|To jest uzasadnienie.}}}} == Błędy == Błędy należy zgłaszać na stronie {{kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { "1": { "description": "Uzasadnienie", "type": "string", "suggested": true }, "nazwij stroną": { "description": "Strona do usunięcia nazywana jest po prostu stroną.", "type": "string", "default": "Wartość pusta." }, "nazwa przestrzeni nazw": { "description": "Nazwa przestrzeni nazw, do której należy strona.", "type": "string" } } } </templatedata> == Zobacz też == Zobacz też dokumentację szablonów: * {{s|DNU}} - używany, gdy trwa dyskusja nad usunięciem lub naprawieniem strony, albo w sytuacji, gdy zakończone dyskusją z ustaleniem, co należy dalej zrobić, * {{s|SdU}} i {{s|DoSkasowania}} - używany, gdy trwa trwa dyskusja nad usunięciem lub naprawieniem strony podobnie jak {{s|DNU}}, * {{s|SdUwynik}} - używany w sytuacji, gdy ustalono, co dalej trzeba zrobić ze stroną, podobnie jak {{s|DNU}}, * {{s|Kpp}} i {{s|Kasowanie po przeniesieniu}} - powiadamia autora podręcznika przed jakim czasem może skopiować zawartość przed jego skasowaniem, * {{s|Ek}} i {{s|Delete}} - używany do zgłoszenia strony, ale nie podręcznika, do usunięcia przez {{lr|Administratorzy|administratora Wikibooks}}, * {{s|NPA}} i {{s|NPA całość}} - używane do zgłaszanie naruszenia praw autorskich (NPA) przez artykuł i podręcznik w przestrzeni nazw (główna) i Wikijunior lub plik w przestrzeni nazw Plik, kolejno wstawiane ręcznie lub przez bota, * {{s|Zgłoś błąd}} i {{s|ZB}} - używane do zgłaszania błędów. {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> {{Kategorie | Szablony porządkowe | Usuwanie stron - szablony }} </includeonly> myz9ib4atuayttta7x4a2k1vknmj9mv Moduł:Pudełko/Pomocne 828 56499 540919 540767 2026-04-27T06:44:59Z Persino 2851 540919 Scribunto text/plain local p={}; function p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu) local strona=require("Module:Pudełko")["Strona główna tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else local pudelko_modul=require("Module:Pudełko"); if((kod_jezyka==pudelko_modul["Kod języka tego projektu"]())and(kod_projektu==pudelko_modul["Kod projektu tego projektu"]()))then return strona; else local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local czy_w_wikidanych=wiki_interwiki_modul.tablica_kody_projektu_wikidane.lingwistyczne[kod_projektu] or wiki_interwiki_modul.tablica_kody_projektu_wikidane.specjalistyczne[kod_projektu]; return czy_w_wikidanych and "Main Page" or nil; end; end; end; function p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka) local strona=require("Module:Pudełko")["Strona główna dla dzieci tego projektu"](); local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then return strona;end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,}; else return "Wikijunior"; end; end; function p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,i,kod_jezyka,kod_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local strona_glowna_projektu; if(i~=0)then local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)and(kod_projektu==kod_projektu_tego_projektu)then strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] else strona_glowna_projektu=(frame.args["strona główna projektu "..i] or pf.args["strona główna projektu "..i]) end; else strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] end; local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_projektu))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or (strona_glowna_projektu and "" or nil); end; function p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,i,kod_jezyka) local pf=frame.getParent and frame:getParent() or {args={}}; local pudelko_modul=require("Module:Pudełko"); local strona_glowna_dla_dzieci; if(i~=0)then local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] else strona_glowna_dla_dzieci=(frame.args["strona główna dla dzieci "..i] or pf.args["strona główna dla dzieci "..i]) end; else strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_dla_dzieci))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_dla_dzieci,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,} or (strona_glowna_dla_dzieci and "" or nil); end; function p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw, normmalna_przedmiotwa_dyskusji,kod_jezyka,kod_projektu) local nazwa_przestrzeni_nazw_blad; local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(normmalna_przedmiotwa_dyskusji==0)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==1)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==2)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; return nazwa_przestrzeni_nazw_blad end; function p.Nazwa_przestrzeni_nazw(frame,kod_liczbowy_przestrzeni_nazw,czy_uwzglednic_alternatywna_nazwe,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_przestrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,numer_jednostki,1) or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,numer_jednostki); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwy_przestrzeni_nazw; local typ; if(kod_liczbowy_przestrzeni_nazw==1)then typ="przedmiotowa"; if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(kod_liczbowy_przestrzeni_nazw==2)then if(czy_biezaca_wiki)then typ="dyskusja"; czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; if(czy_blad_nazwy_przestrzeni_nazw)then return czy_blad_nazwy_przestrzeni_nazw; else if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local nazwa_przestrzeni_nazw_alternatywnej=mw.text.trim(frame.args[1]); if(mw.ustring.match(nazwa_przestrzeni_nazw_alternatywnej,"^[%w%s_]*$"))then local czy_blad_nazwa_przestrzeni_nazw_alternatywnej; if(czy_biezaca_wiki)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.NpDane(tab_parametry); end; return czy_blad_nazwa_przestrzeni_nazw_alternatywnej or "(błąd)"; else return "(błąd)"; end; else local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"]{[1]=nazwa_przestrzeni_nazw,[2]="tak",}; if(mw.ustring.match(nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; end; end; function p.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local nazwa_przestrzeni_nazw_blad; local parametry_modul=require("Module:Parametry"); if(czy_biezaca_wiki)then nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; else nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw_blad or nazwa_przestrzeni_nazw; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if(czy_biezaca_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then nazwa_przestrzeni_nazw=nazwy_np_modul.Template; end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then nazwa_przestrzeni_nazw=nazwy_np_modul.Module; end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then nazwa_przestrzeni_nazw=template_prze; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then nazwa_przestrzeni_nazw=module_prze; end; end; end; if(not nazwa_przestrzeni_nazw_blad)then if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(frame.args[1]); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then if(czy_biezaca_wiki)then local nazwy_modul=require("Module:Nazwy"); local czy_blad_nazwy_przestrzeni_nazw=nazwy_modul.Np{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} return czy_blad_nazwy_przestrzeni_nazw or "(błąd)"; else local nazwy_modul=require("Module:Nazwy"); local nazwa_przestrzeni_nazw_blad2=nazwy_modul.NpDane{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; return nazwa_przestrzeni_nazw_blad2 or "(błąd)"; end; else return "(błąd)"; end; else local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(nazwa_przestrzeni_nazw); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return wytrimowana_nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; else return nazwa_przestrzeni_nazw; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,typ) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local tab_nazwa={ ["przedmiotowa"]="Nazwa przedmiotowej przestrzeni nazw", ["dyskusja"]="Nazwa przestrzeni nazw", }; local nazwa_przestrzeni_nazw=pudelko_modul[tab_nazwa[typ]](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); if(nazwa_przestrzeni_nazw=="")then local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local tab_nazwa={ ["przedmiotowa"]="PRZEDMIOTOWAPRZESTRZEŃ", ["dyskusja"]="PRZESTRZEŃDYSKUSJI", }; nazwa_przestrzeni_nazw=nazwy_modul[tab_nazwa[typ]]{nazwa=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else if(typ=="dyskusja")then local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{[typ]="tak",nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{[typ]="tak",nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; return nazwa_przestrzeni_nazw; end; function p.Kod_jezyka(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod języka tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod języka tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka"] or frame.args["kod języka 1"] or pf.args["kod języka"] or pf.args["kod języka 1"] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka "..i] or pf.args["kod języka "..i] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Kod_projektu(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod projektu tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod projektu tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu"] or frame.args["kod projektu 1"] or pf.args["kod projektu"] or pf.args["kod projektu 1"] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu "..i] or pf.args["kod projektu "..i] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local klucz_projektu; local function domyslne_klucz(klucz_projektu) local parametry_modul=require("Module:Parametry"); return ((klucz_projektu)and(klucz_projektu~=""))and mw.text.trim(klucz_projektu)or((parametry_modul.CzyTak(wartosc_domyslna_jezyka)and(parametry_modul.CzyTak(wartosc_domyslna_projektu)))and (wartosc_domyslna_jezyka..":" ..wartosc_domyslna_projektu)or(parametry_modul.CzyTak(wartosc_domyslna_jezyka) and wartosc_domyslna_jezyka or (parametry_modul.CzyTak(wartosc_domyslna_projektu) and wartosc_domyslna_projektu or nil))); end; if(i==0)then return nil; elseif(i==1)then local klucz_projektu=frame.args["klucz projektu"] or frame.args["klucz projektu 1"] or pf.args["klucz projektu"] or pf.args["klucz projektu 1"]; return domyslne_klucz(klucz_projektu); elseif(i>1)then local klucz_projektu=frame.args["klucz projektu "..i] or pf.args["klucz projektu "..i]; return domyslne_klucz(klucz_projektu); end; end; function p.Wikikody_kontenera(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu),p.Kod_jezyka(frame,i,wartosc_domyslna_jezyka),p.Kod_projektu(frame,i,wartosc_domyslna_projektu)); return kod_jezyka,kod_projektu; end; function p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,args,bez_analizy) if(not bez_analizy)then local parametry_modul=require("Module:Parametry"); if((((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł")or(typ=="podręcznik")))or (typ=="artykuł")))then return ""; elseif(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci")))or(typ=="artykuł dla dzieci"))then return "Wikijunior"; elseif((not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"])) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki brudnopisu projektu"])and (typ=="podręcznik brudnopisu projektu" or typ=="artykuł brudnopisu projektu")or (typ=="jednostka brudnopisu projektu")) or (typ=="strona brudnopisu projektu"))or(typ=="strona projektu"))or (typ=="strona projektu"))then return "Project"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona szablonu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))or(typ=="strona brudnopisu szablonu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona szablonu")or(typ=="strona opisu szablonu"))or(typ=="strona szablonu"))))then return "Template"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona modułu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))or(typ=="strona brudnopisu modułu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona modułu")or(typ=="strona opisu modułu"))or(typ=="strona modułu"))))then return "Module"; elseif(not parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika jako normalne strony"]) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika"])and (typ=="podręcznik użytkownika" or typ=="artykuł użytkownika") or (typ=="jednostka użytkownika")) or (typ=="strona użytkownika"))or(typ=="strona główna użytkownika"))or(typ=="strona użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; return; end; if(typ)then if((typ=="artykuł")or(typ=="podręcznik"))then return ""; elseif((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci"))then return "Wikijunior"; elseif((typ=="podręcznik brudnopisu projektu")or(typ=="artykuł brudnopisu projektu")or(typ=="jednostka brudnopisu projektu")or(typ=="strona brudnopisu projektu")or(typ=="strona projektu"))then return "Project"; elseif((typ=="strona szablonu")or(typ=="strona opisu szablonu")or(typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))then return "Template"; elseif((typ=="strona modułu")or(typ=="strona opisu modułu")or(typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))then return "Module"; elseif((typ=="podręcznik użytkownika")or(typ=="artykuł użytkownika")or(typ=="jednostka użytkownika")or(typ=="strona użytkownika")or(typ=="strona główna użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; end; end; function p.Typ_jednostki_uzyskany_z_frame(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local pf=frame.getParent and frame:getParent() or {args={}}; local typ; if liczba_numer_jednostki~=0 then typ=liczba_numer_jednostki and( (frame.args["typ jednostki "..liczba_numer_jednostki] or frame.args["typ jednostki i"]) or (pf.args["typ jednostki "..liczba_numer_jednostki] or pf.args["typ jednostki i"]) ); if(not typ)then local nazwa_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,2); if(nazwa_jednostki)then if(not mw.ustring.match(mw.text.trim(nazwa_jednostki),"^:"))then local nazwa_przesrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,1); if(not nazwa_przesrzeni_nazw)then typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; end; end; end; else typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; return typ,liczba_numer_jednostki; end; function p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i) local typ,liczba_numer_jednostki,ile_dyskusja=p.Typ_jednostki_uzyskany_z_frame(frame,i); local pf=frame.getParent and frame:getParent() or {args={},}; local function FuncTemp(liczba_numer_jednostki) local dyskusja_parametr="dyskusja typu jednostki"; if(liczba_numer_jednostki==0)then return frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr]; else return ((frame.args[dyskusja_parametr.." "..liczba_numer_jednostki] or pf.args[dyskusja_parametr.." "..liczba_numer_jednostki]) or (frame.args[dyskusja_parametr.." i"] or pf.args[dyskusja_parametr.." i"]) or(frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr])); end; end; local czy_dyskusja=FuncTemp(liczba_numer_jednostki); local parametry_modul=require("Module:Parametry"); local czy_dyskusja=parametry_modul.CzyTak(czy_dyskusja); return czy_dyskusja; end; function p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i) local typ=p.Typ_jednostki_uzyskany_z_frame(frame,i); if(typ)then local typ,ile=mw.ustring.gsub(typ,"^(%S+)(%s+)(dyskusji)",function(strona,spacja,dyskusji)return strona;end); local nazwa_przestrzeni_nazw=p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,nil,true); if(nazwa_przestrzeni_nazw)then local czy_dyskusja=p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i); if((czy_dyskusja)or(ile>0))then if(nazwa_przestrzeni_nazw=="")then return "Talk"; else return nazwa_przestrzeni_nazw.." talk"; end; else return nazwa_przestrzeni_nazw; end; else return nil; end; end; return nil; end; function p.Typ_jednostki(frame, kod_liczbowy_przestrzeni_nazw,i,numer_argorytmu) local parametry_modul=require("Module:Parametry"); local analiza=parametry_modul.CzyTak(frame.args["analiza"]); local typ,liczba_numer_jednostki=p.Typ_jednostki_uzyskany_z_frame(frame,i); local uzyskana_przestrzen_nazw_od_typu_jednostki; local nazwa_przestrzeni_nazw_podana,nazwa_jednostki_podana=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki); local function TempFunc(typ_jednostki,nazwa_przestrzeni_nazw) if( (kod_liczbowy_przestrzeni_nazw==2) or( (kod_liczbowy_przestrzeni_nazw==0) and( typ and (p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i)) or( (nazwa_przestrzeni_nazw) and (mw.ustring.match(nazwa_przestrzeni_nazw,"^Talk$") or mw.ustring.match(nazwa_przestrzeni_nazw," talk$")) or nil ) ) ) )then if(not mw.ustring.match(typ_jednostki,"^(%S+)(%s+)(dyskusji)"))then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)",function(strona) return strona.." dyskusji"; end); end; return typ_jednostki; elseif(kod_liczbowy_przestrzeni_nazw==1)then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)(%s+)(dyskusji)",function(strona,spacje,dyskusji) return strona; end); return typ_jednostki; end; return typ_jednostki; end; if((not analiza)and(typ))then if(typ~="")then uzyskana_przestrzen_nazw_od_typu_jednostki=p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i); if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((not nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then return TempFunc(typ,nil); end; else return "(błąd typu jednostki)"; end; end; end; local nazwa_przestrzeni_nazw,nazwa_jednostki=p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw,nil,liczba_numer_jednostki,numer_argorytmu); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwa_przestrzeni_nazw; if(czy_biezaca)then czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} else czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} end; if(not czy_blad_nazwa_przestrzeni_nazw)then return "(błąd nazwy przestrzeni nazw)";end; nazwa_przestrzeni_nazw=czy_blad_nazwa_przestrzeni_nazw; --- --- if((not analiza)and(typ))then if(typ~="")then ---typ jednostki if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then if(uzyskana_przestrzen_nazw_od_typu_jednostki==nazwa_przestrzeni_nazw)then return typ; else return "(błąd niezgodności)"; end; end; else return "(błąd typu jednostki)"; end; end; end; local function Typ_jednostki() if(nazwa_jednostki~="")then --local kod_jezyka,kod_projektu=KodyWikiPudelka(frame,liczba_numer_jednostki); --local klucz_projektu=kod_projektu..":"..kod_jezyka; local pudelko_modul=require("Module:Pudełko"); local pelna_nazwa_strony=((nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":" or "")..nazwa_jednostki; if(pudelko_modul.CzyNiepoprawnaNazwa(pelna_nazwa_strony))then return "(błąd nazwy jednostki)";end; local nazwy_modul=require("Module:Nazwy") pelna_nazwa_strony=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local norm_przed_lub_dyskusji=p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw,1,kod_jezyka,kod_projektu); if(kod_projektu==pudelko_modul["Kod projektu tego projektu"]())then local nazwa_strony_glownej_dla_dzieci_ze_zmiennej=p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka); if(nazwa_strony_glownej_dla_dzieci_ze_zmiennej=="")then return "(błąd nazwy strony głównej dla dzieci)";end; local nazwa_strony_glownej_wikijuniora=p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka); local nazwa_strony_glownej_dla_dzieci_uzyskana=(not nazwa_strony_glownej_dla_dzieci_ze_zmiennej)and nazwa_strony_glownej_wikijuniora or nazwa_strony_glownej_dla_dzieci_ze_zmiennej; if(nazwa_strony_glownej_dla_dzieci_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_dla_dzieci_uzyskana))then return "(błąd nazwy strony głównej dla dzieci)";end; nazwa_strony_glownej_dla_dzieci_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_dla_dzieci_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_dla_dzieci_uzyskana)then return "strona główna dla dzieci";end; end; end; local nazwa_strony_glownej_projektu_ze_zmiennej=p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka,kod_projektu); if(nazwa_strony_glownej_projektu_ze_zmiennej=="")then return "(błąd nazwy strony głównej projektu)";end; local nazwa_strony_glownej_projektu_z_wikidanych=p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu); local nazwa_strony_glownej_projektu_uzyskana=(not nazwa_strony_glownej_projektu_ze_zmiennej)and nazwa_strony_glownej_projektu_z_wikidanych or nazwa_strony_glownej_projektu_ze_zmiennej; if(nazwa_strony_glownej_projektu_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_projektu_uzyskana))then return "(błąd nazwy strony głównej projektu)";end; nazwa_strony_glownej_projektu_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_projektu_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_projektu_uzyskana)then return "strona główna projektu";end; end; if(norm_przed_lub_dyskusji=="")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik";else return "artykuł";end; end; elseif(norm_przed_lub_dyskusji=="Wikijunior")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł dla dzieci"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik dla dzieci";else return "artykuł dla dzieci";end; end; elseif(norm_przed_lub_dyskusji=="User")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony użytkownika jako normalne strony"]))then return "strona użytkownika"; else local czy_podstrony=mw.ustring.match(nazwa_jednostki,"^[^/]+$") if(czy_podstrony)then return "strona główna użytkownika"; else if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki użytkownika"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^[^/]+/[^/]*$"); if(czy_ksiazka)then return "podręcznik użytkownika"; else return "artykuł użytkownika"; end; else return "jednostka użytkownika"; end; else return "strona użytkownika"; end; end; end; elseif(norm_przed_lub_dyskusji=="File")then return "strona pliku"; elseif(norm_przed_lub_dyskusji=="Category")then return "strona kategorii"; elseif(norm_przed_lub_dyskusji=="Project")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))then return "strona projektu";end; if(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*"))then if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki brudnopisu projektu"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/[^/]*$"); if(czy_ksiazka)then return "podręcznik brudnopisu projektu"; else return "artykuł brudnopisu projektu"; end; else return "jednostka brudnopisu projektu"; end; else return "strona brudnopisu projektu"; end; else return "strona projektu"; end; elseif(norm_przed_lub_dyskusji=="Help")then return "strona pomocy"; elseif(norm_przed_lub_dyskusji=="MediaWiki")then return "strona komunikatu"; elseif(norm_przed_lub_dyskusji=="Special")then return "strona specialna"; elseif(norm_przed_lub_dyskusji=="Gadget")then return "strona gadżetu"; elseif(norm_przed_lub_dyskusji=="Template")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona szablonu";end; local function CzySzablonAlboOpis(nazwa_przestrzeni_nazw,nazwa_jednostki,szablon,opis_szablonu,strona_szablonu,prefix) local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return szablon; else if(mw.ustring.match(nazwa_jednostki,"^"..prefix..".*/opis$"))then return opis_szablonu; else if(not parametry_modul.CzyTak(frame.args["obsługiwane nieudokumentowane szablony jako szablony"]))then local czy_brudnopis=mw.ustring.match(nazwa_jednostki,"^"..prefix..".*$"); if(czy_brudnopis)then local pagename=(nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa_jednostki or nazwa_jednostki; local czy_istnieje_strona,tab=require("Module:Techniczne").PoliczZbiory(pagename); if(czy_istnieje_strona==1)then local czy_brudnopis_opisu_szablonu=require("Module:Łatki").contentMatch{ [1]='<noinclude>.-{{%s*[Dd]okumentacja%s*}}.-</noinclude>', [2]='<noinclude>.-{{%s*[Dd]okumentacja%s*|.-</noinclude>',pagename=pagename,namespace=0 }; if(not czy_brudnopis_opisu_szablonu)then return opis_szablonu;else return szablon;end; else return szablon; end; else return strona_szablonu; end; else return szablon; end; end; end; end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona brudnopisu szablonu","strona brudnopisu opisu szablonu","strona szablonu","[Bb]rudnopis/[^/]*/"); else return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona szablonu","strona opisu szablonu","strona szablonu",""); end; elseif(norm_przed_lub_dyskusji=="Module")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona modułu";end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona brudnopisu modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_strony_brudnopisu_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_strony_brudnopisu_opisu_modulu)then return "strona brudnopisu opisu modułu"; else return "strona brudnopisu modułu"; end; end; else if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_opisu_modulu)then return "strona opisu modułu"; else return "strona modułu"; end; end; end; else return "inne"; end; end; return "inne"; end; local typ_jednostki=Typ_jednostki(); if(((analiza)or(nazwa_jednostki_podana))and(typ)and(typ~=""))then typ_jednostki=TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); if(typ_jednostki==typ)then return typ_jednostki; elseif(nazwa_jednostki_podana)then return "(błąd parametrów pudełkowych)" else return "(błąd typu jednostki)"; end; end; return TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); end; function p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki,czy_uwzglednic_alternatywna_nazwe,i,numer_argorytmu,co_ma_liczyc) local nazwa_przestrzeni_fun,nazwa_jednostki_fun; if(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==0)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==1)then nazwa_przestrzeni_fun="Nazwa przedmiotowej przestrzeni nazw"; nazwa_jednostki_fun="Nazwa przedmiotowa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==2)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw dyskusji" nazwa_jednostki_fun="Nazwa dyskusji jednostki"; else nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; end; local pudelko_modul=require("Module:Pudełko"); if(not numer_argorytmu)then local function TempFunc() return ((not i)or(i==0)); end; if((not co_ma_liczyc)or(co_ma_liczyc==0))then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=(czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then local czy_i_0=TempFunc(); return (czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; else if(numer_argorytmu==0)then if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul["Nazwa jednostki"](frame,i); end; else if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; end; end; end; function p.Nazwa_przestrzeni_nazw_dodatkowe(frame,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; return frame.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] or pf.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] end; function p.Nazwa_jednostki(frame,i) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,2); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); if(nazwa_jednostki)then nazwa_jednostki=mw.text.trim(nazwa_jednostki); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^:",""); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else local nazwy_modul=require("Module:Nazwy"); nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); end; function p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,co_podac) local pf=frame.getParent and frame:getParent() or {args={}}; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local nazwa_jednostki; local bool_numer_jednostki=(liczba_numer_jednostki~=0); local function Nazwa_jednostki() if bool_numer_jednostki then nazwa_jednostki=( frame.args["nazwa jednostki "..liczba_numer_jednostki] or pf.args["nazwa jednostki "..liczba_numer_jednostki] ) or ((liczba_numer_jednostki==1)and(pf.args["cel"])) or pf.args[liczba_numer_jednostki]; else nazwa_jednostki=frame.args["nazwa jednostki"] or pf.args["nazwa jednostki"]; end; return nazwa_jednostki; end; local function Nazwa_przestrzeni_nazw() local nazwa_przestrzeni_nazw=bool_numer_jednostki and (frame.args["nazwa przestrzeni nazw i"] or pf.args["nazwa przestrzeni nazw i"] or frame.args["nazwa przestrzeni nazw "..liczba_numer_jednostki] or pf.args["nazwa przestrzeni nazw "..liczba_numer_jednostki]) or frame.args["nazwa przestrzeni nazw"] or pf.args["nazwa przestrzeni nazw"]; return nazwa_przestrzeni_nazw; end; if(not co_podac)then return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; elseif(co_podac==1)then return Nazwa_przestrzeni_nazw(),liczba_numer_jednostki; elseif(co_podac==2)then return Nazwa_jednostki(),liczba_numer_jednostki; else return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; end; end; function p.Jaka_nazwa_jednostki(frame,i,jaka) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); ---- local nazwy_modul=require("Module:Nazwy"); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka)then if(czy_biezaca)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.NpDane(tab_parametry); end; else if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if((not typ)or(typ=="przedmiotowa"))then if(czy_biezaca)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Czy_przestrzen_nazw_jest_obslugiwana(frame,jakas_przestrzen_nazw,kod_jezyka,kod_projektu) local nazwy_modul=require("Module:Nazwy"); local parametry_modul=require("Module:Parametry"); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then jakas_przestrzen_nazw=nazwy_modul.Np{nazwa=jakas_przestrzen_nazw}; else jakas_przestrzen_nazw=nazwy_modul.NpDane{nazwa=jakas_przestrzen_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local function nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_iter) if(czy_biezaca)then nazwa_przestrzeni_nazw_iter=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw_iter}; else nazwa_przestrzeni_nazw_iter=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw_iter,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; if(jakas_przestrzen_nazw==nazwa_przestrzeni_nazw_iter)then return true; end; return false; end; for licznik,nazwa_przestrzeni_nazw in pairs(frame.args)do if(type(licznik)=="number")then local nazwa_przestrzeni_nazw_element,klucze_element=mw.ustring.match(nazwa_przestrzeni_nazw,"^%s*([%w%s]*)%s*:%s*(.-)%s*"); if(nazwa_przestrzeni_nazw_element and klucze_element)then local tab_klucze=mw.text.split(klucze_element,"%s*,%s*",false); local wiki_modul=require("Module:Wiki"); for _,klucz_element in ipairs(tab_klucze)do local kod_jezyka_obslugiwane,kod_projektu_obslugiwane=wiki_modul.KluczProjektu(klucz_element); if(kod_jezyka_obslugiwane==kod_jezyka and kod_projektu_obslugiwane==kod_projektu)then local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_element); if(wynik)then return true;end; end; end; else local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw); if(wynik)then return true;end; end; end; end; return false; end; function p.Analiza_interwiki_czy_projekt_aktualny(frame,czy_jezyk,czy_projekt) local parametry_modul=require("Module:Parametry"); local p=parametry_modul.PobierzFrameEwentualnieParent(frame); local pudelko_modul=require("Module:Pudełko"); local wiki_modul=require("Module:Wiki"); local jezyk_biezacy=czy_jezyk and pudelko_modul["Kod języka tego projektu"](); local projekt_biezacy=czy_projekt and pudelko_modul["Kod projektu tego projektu"](); for i,_ in pairs(p.args)do if(type(i)=="number")then local klucz_projektu=pudelko_modul["Klucz projektu"](frame,i); local kod_jezyka=pudelko_modul["Kod języka"](frame,i); local kod_projektu=pudelko_modul["kod projektu"](frame,i); local jezyk,projekt=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu); if((czy_jezyk and (jezyk~=jezyk_biezacy))or(czy_projekt and(projekt~=projekt_biezacy)))then return "tak"; end; end; end; return; end; return p; fmr6n6jspflt9hdvn21znvtdmnna9z0 540923 540919 2026-04-27T07:20:43Z Persino 2851 540923 Scribunto text/plain local p={}; function p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu) local strona=require("Module:Pudełko")["Strona główna tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else local pudelko_modul=require("Module:Pudełko"); if((kod_jezyka==pudelko_modul["Kod języka tego projektu"]())and(kod_projektu==pudelko_modul["Kod projektu tego projektu"]()))then return strona; else local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local czy_w_wikidanych=wiki_interwiki_modul.tablica_kody_projektu_wikidane.lingwistyczne[kod_projektu] or wiki_interwiki_modul.tablica_kody_projektu_wikidane.specjalistyczne[kod_projektu]; return czy_w_wikidanych and "Main Page" or nil; end; end; end; function p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka) local strona=require("Module:Pudełko")["Strona główna dla dzieci tego projektu"](); local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then return strona;end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,}; else return "Wikijunior"; end; end; function p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,i,kod_jezyka,kod_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local strona_glowna_projektu; if(i~=0)then local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)and(kod_projektu==kod_projektu_tego_projektu)then strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] else strona_glowna_projektu=(frame.args["strona główna projektu "..i] or pf.args["strona główna projektu "..i]) end; else strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] end; local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_projektu))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or (strona_glowna_projektu and "" or nil); end; function p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,i,kod_jezyka) local pf=frame.getParent and frame:getParent() or {args={}}; local pudelko_modul=require("Module:Pudełko"); local strona_glowna_dla_dzieci; if(i~=0)then local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] else strona_glowna_dla_dzieci=(frame.args["strona główna dla dzieci "..i] or pf.args["strona główna dla dzieci "..i]) end; else strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_dla_dzieci))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_dla_dzieci,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,} or (strona_glowna_dla_dzieci and "" or nil); end; function p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw, normmalna_przedmiotwa_dyskusji,kod_jezyka,kod_projektu) local nazwa_przestrzeni_nazw_blad; local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(normmalna_przedmiotwa_dyskusji==0)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==1)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==2)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; return nazwa_przestrzeni_nazw_blad end; function p.Nazwa_przestrzeni_nazw(frame,kod_liczbowy_przestrzeni_nazw,czy_uwzglednic_alternatywna_nazwe,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_przestrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,numer_jednostki,1) or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,numer_jednostki); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwy_przestrzeni_nazw; local typ; if(kod_liczbowy_przestrzeni_nazw==1)then typ="przedmiotowa"; if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(kod_liczbowy_przestrzeni_nazw==2)then if(czy_biezaca_wiki)then typ="dyskusja"; czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; if(czy_blad_nazwy_przestrzeni_nazw)then return czy_blad_nazwy_przestrzeni_nazw; else if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local nazwa_przestrzeni_nazw_alternatywnej=mw.text.trim(frame.args[1]); if(mw.ustring.match(nazwa_przestrzeni_nazw_alternatywnej,"^[%w%s_]*$"))then local czy_blad_nazwa_przestrzeni_nazw_alternatywnej; if(czy_biezaca_wiki)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.NpDane(tab_parametry); end; return czy_blad_nazwa_przestrzeni_nazw_alternatywnej or "(błąd)"; else return "(błąd)"; end; else local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"]{[1]=nazwa_przestrzeni_nazw,[2]="tak",}; if(mw.ustring.match(nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; end; end; function p.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local nazwa_przestrzeni_nazw_blad; local parametry_modul=require("Module:Parametry"); if(czy_biezaca_wiki)then nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; else nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw_blad or nazwa_przestrzeni_nazw; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if(czy_biezaca_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then nazwa_przestrzeni_nazw=nazwy_np_modul.Template; end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then nazwa_przestrzeni_nazw=nazwy_np_modul.Module; end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then nazwa_przestrzeni_nazw=template_prze; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then nazwa_przestrzeni_nazw=module_prze; end; end; end; if(not nazwa_przestrzeni_nazw_blad)then if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(frame.args[1]); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then if(czy_biezaca_wiki)then local nazwy_modul=require("Module:Nazwy"); local czy_blad_nazwy_przestrzeni_nazw=nazwy_modul.Np{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} return czy_blad_nazwy_przestrzeni_nazw or "(błąd)"; else local nazwy_modul=require("Module:Nazwy"); local nazwa_przestrzeni_nazw_blad2=nazwy_modul.NpDane{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; return nazwa_przestrzeni_nazw_blad2 or "(błąd)"; end; else return "(błąd)"; end; else local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(nazwa_przestrzeni_nazw); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return wytrimowana_nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; else return nazwa_przestrzeni_nazw; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,typ) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local tab_nazwa={ ["przedmiotowa"]="Nazwa przedmiotowej przestrzeni nazw", ["dyskusja"]="Nazwa przestrzeni nazw", }; local nazwa_przestrzeni_nazw=pudelko_modul[tab_nazwa[typ]](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); if(nazwa_przestrzeni_nazw=="")then local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local tab_nazwa={ ["przedmiotowa"]="PRZEDMIOTOWAPRZESTRZEŃ", ["dyskusja"]="PRZESTRZEŃDYSKUSJI", }; nazwa_przestrzeni_nazw=nazwy_modul[tab_nazwa[typ]]{nazwa=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else if(typ=="dyskusja")then local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{[typ]="tak",nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{[typ]="tak",nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; return nazwa_przestrzeni_nazw; end; function p.Kod_jezyka(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod języka tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod języka tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka"] or frame.args["kod języka 1"] or pf.args["kod języka"] or pf.args["kod języka 1"] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka "..i] or pf.args["kod języka "..i] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Kod_projektu(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod projektu tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod projektu tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu"] or frame.args["kod projektu 1"] or pf.args["kod projektu"] or pf.args["kod projektu 1"] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu "..i] or pf.args["kod projektu "..i] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local klucz_projektu; local function domyslne_klucz(klucz_projektu) local parametry_modul=require("Module:Parametry"); return ((klucz_projektu)and(klucz_projektu~=""))and mw.text.trim(klucz_projektu)or((parametry_modul.CzyTak(wartosc_domyslna_jezyka)and(parametry_modul.CzyTak(wartosc_domyslna_projektu)))and (wartosc_domyslna_jezyka..":" ..wartosc_domyslna_projektu)or(parametry_modul.CzyTak(wartosc_domyslna_jezyka) and wartosc_domyslna_jezyka or (parametry_modul.CzyTak(wartosc_domyslna_projektu) and wartosc_domyslna_projektu or nil))); end; if(i==0)then return nil; elseif(i==1)then local klucz_projektu=frame.args["klucz projektu"] or frame.args["klucz projektu 1"] or pf.args["klucz projektu"] or pf.args["klucz projektu 1"]; return domyslne_klucz(klucz_projektu); elseif(i>1)then local klucz_projektu=frame.args["klucz projektu "..i] or pf.args["klucz projektu "..i]; return domyslne_klucz(klucz_projektu); end; end; function p.Wikikody_kontenera(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu),p.Kod_jezyka(frame,i,wartosc_domyslna_jezyka),p.Kod_projektu(frame,i,wartosc_domyslna_projektu)); return kod_jezyka,kod_projektu; end; function p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,args,bez_analizy) if(not bez_analizy)then local parametry_modul=require("Module:Parametry"); if((((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł")or(typ=="podręcznik")))or (typ=="artykuł")))then return ""; elseif(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci")))or(typ=="artykuł dla dzieci"))then return "Wikijunior"; elseif((not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"])) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki brudnopisu projektu"])and (typ=="podręcznik brudnopisu projektu" or typ=="artykuł brudnopisu projektu")or (typ=="jednostka brudnopisu projektu")) or (typ=="strona brudnopisu projektu"))or(typ=="strona projektu"))or (typ=="strona projektu"))then return "Project"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona szablonu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))or(typ=="strona brudnopisu szablonu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona szablonu")or(typ=="strona opisu szablonu"))or(typ=="strona szablonu"))))then return "Template"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona modułu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))or(typ=="strona brudnopisu modułu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona modułu")or(typ=="strona opisu modułu"))or(typ=="strona modułu"))))then return "Module"; elseif(not parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika jako normalne strony"]) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika"])and (typ=="podręcznik użytkownika" or typ=="artykuł użytkownika") or (typ=="jednostka użytkownika")) or (typ=="strona użytkownika"))or(typ=="strona główna użytkownika"))or(typ=="strona użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; return; end; if(typ)then if((typ=="artykuł")or(typ=="podręcznik"))then return ""; elseif((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci"))then return "Wikijunior"; elseif((typ=="podręcznik brudnopisu projektu")or(typ=="artykuł brudnopisu projektu")or(typ=="jednostka brudnopisu projektu")or(typ=="strona brudnopisu projektu")or(typ=="strona projektu"))then return "Project"; elseif((typ=="strona szablonu")or(typ=="strona opisu szablonu")or(typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))then return "Template"; elseif((typ=="strona modułu")or(typ=="strona opisu modułu")or(typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))then return "Module"; elseif((typ=="podręcznik użytkownika")or(typ=="artykuł użytkownika")or(typ=="jednostka użytkownika")or(typ=="strona użytkownika")or(typ=="strona główna użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; end; end; function p.Typ_jednostki_uzyskany_z_frame(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local pf=frame.getParent and frame:getParent() or {args={}}; local typ; if liczba_numer_jednostki~=0 then typ=liczba_numer_jednostki and( (frame.args["typ jednostki "..liczba_numer_jednostki] or frame.args["typ jednostki i"]) or (pf.args["typ jednostki "..liczba_numer_jednostki] or pf.args["typ jednostki i"]) ); if(not typ)then local nazwa_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,2); if(nazwa_jednostki)then if(not mw.ustring.match(mw.text.trim(nazwa_jednostki),"^:"))then local nazwa_przesrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,1); if(not nazwa_przesrzeni_nazw)then typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; end; end; end; else typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; return typ,liczba_numer_jednostki; end; function p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i) local typ,liczba_numer_jednostki,ile_dyskusja=p.Typ_jednostki_uzyskany_z_frame(frame,i); local pf=frame.getParent and frame:getParent() or {args={},}; local function FuncTemp(liczba_numer_jednostki) local dyskusja_parametr="dyskusja typu jednostki"; if(liczba_numer_jednostki==0)then return frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr]; else return ((frame.args[dyskusja_parametr.." "..liczba_numer_jednostki] or pf.args[dyskusja_parametr.." "..liczba_numer_jednostki]) or (frame.args[dyskusja_parametr.." i"] or pf.args[dyskusja_parametr.." i"]) or(frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr])); end; end; local czy_dyskusja=FuncTemp(liczba_numer_jednostki); local parametry_modul=require("Module:Parametry"); local czy_dyskusja=parametry_modul.CzyTak(czy_dyskusja); return czy_dyskusja; end; function p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i) local typ=p.Typ_jednostki_uzyskany_z_frame(frame,i); if(typ)then local typ,ile=mw.ustring.gsub(typ,"^(%S+)(%s+)(dyskusji)",function(strona,spacja,dyskusji)return strona;end); local nazwa_przestrzeni_nazw=p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,nil,true); if(nazwa_przestrzeni_nazw)then local czy_dyskusja=p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i); if((czy_dyskusja)or(ile>0))then if(nazwa_przestrzeni_nazw=="")then return "Talk"; else return nazwa_przestrzeni_nazw.." talk"; end; else return nazwa_przestrzeni_nazw; end; else return nil; end; end; return nil; end; function p.Typ_jednostki(frame, kod_liczbowy_przestrzeni_nazw,i,numer_argorytmu) local parametry_modul=require("Module:Parametry"); local analiza=parametry_modul.CzyTak(frame.args["analiza"]); local typ,liczba_numer_jednostki=p.Typ_jednostki_uzyskany_z_frame(frame,i); local uzyskana_przestrzen_nazw_od_typu_jednostki; local nazwa_przestrzeni_nazw_podana,nazwa_jednostki_podana=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki); local function TempFunc(typ_jednostki,nazwa_przestrzeni_nazw) if( (kod_liczbowy_przestrzeni_nazw==2) or( (kod_liczbowy_przestrzeni_nazw==0) and( typ and (p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i)) or( (nazwa_przestrzeni_nazw) and (mw.ustring.match(nazwa_przestrzeni_nazw,"^Talk$") or mw.ustring.match(nazwa_przestrzeni_nazw," talk$")) or nil ) ) ) )then if(not mw.ustring.match(typ_jednostki,"^(%S+)(%s+)(dyskusji)"))then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)",function(strona) return strona.." dyskusji"; end); end; return typ_jednostki; elseif(kod_liczbowy_przestrzeni_nazw==1)then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)(%s+)(dyskusji)",function(strona,spacje,dyskusji) return strona; end); return typ_jednostki; end; return typ_jednostki; end; if((not analiza)and(typ))then if(typ~="")then uzyskana_przestrzen_nazw_od_typu_jednostki=p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i); if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((not nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then return TempFunc(typ,nil); end; else return "(błąd typu jednostki)"; end; end; end; local nazwa_przestrzeni_nazw,nazwa_jednostki=p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw,nil,liczba_numer_jednostki,numer_argorytmu); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwa_przestrzeni_nazw; if(czy_biezaca)then czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} else czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} end; if(not czy_blad_nazwa_przestrzeni_nazw)then return "(błąd nazwy przestrzeni nazw)";end; nazwa_przestrzeni_nazw=czy_blad_nazwa_przestrzeni_nazw; --- --- if((not analiza)and(typ))then if(typ~="")then ---typ jednostki if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then if(uzyskana_przestrzen_nazw_od_typu_jednostki==nazwa_przestrzeni_nazw)then return typ; else return "(błąd niezgodności)"; end; end; else return "(błąd typu jednostki)"; end; end; end; local function Typ_jednostki() if(nazwa_jednostki~="")then --local kod_jezyka,kod_projektu=KodyWikiPudelka(frame,liczba_numer_jednostki); --local klucz_projektu=kod_projektu..":"..kod_jezyka; local pudelko_modul=require("Module:Pudełko"); local pelna_nazwa_strony=((nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":" or "")..nazwa_jednostki; if(pudelko_modul.CzyNiepoprawnaNazwa(pelna_nazwa_strony))then return "(błąd nazwy jednostki)";end; local nazwy_modul=require("Module:Nazwy") pelna_nazwa_strony=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local norm_przed_lub_dyskusji=p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw,1,kod_jezyka,kod_projektu); if(kod_projektu==pudelko_modul["Kod projektu tego projektu"]())then local nazwa_strony_glownej_dla_dzieci_ze_zmiennej=p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka); if(nazwa_strony_glownej_dla_dzieci_ze_zmiennej=="")then return "(błąd nazwy strony głównej dla dzieci)";end; local nazwa_strony_glownej_wikijuniora=p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka); local nazwa_strony_glownej_dla_dzieci_uzyskana=(not nazwa_strony_glownej_dla_dzieci_ze_zmiennej)and nazwa_strony_glownej_wikijuniora or nazwa_strony_glownej_dla_dzieci_ze_zmiennej; if(nazwa_strony_glownej_dla_dzieci_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_dla_dzieci_uzyskana))then return "(błąd nazwy strony głównej dla dzieci)";end; nazwa_strony_glownej_dla_dzieci_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_dla_dzieci_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_dla_dzieci_uzyskana)then return "strona główna dla dzieci";end; end; end; local nazwa_strony_glownej_projektu_ze_zmiennej=p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka,kod_projektu); if(nazwa_strony_glownej_projektu_ze_zmiennej=="")then return "(błąd nazwy strony głównej projektu)";end; local nazwa_strony_glownej_projektu_z_wikidanych=p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu); local nazwa_strony_glownej_projektu_uzyskana=(not nazwa_strony_glownej_projektu_ze_zmiennej)and nazwa_strony_glownej_projektu_z_wikidanych or nazwa_strony_glownej_projektu_ze_zmiennej; if(nazwa_strony_glownej_projektu_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_projektu_uzyskana))then return "(błąd nazwy strony głównej projektu)";end; nazwa_strony_glownej_projektu_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_projektu_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_projektu_uzyskana)then return "strona główna projektu";end; end; if(norm_przed_lub_dyskusji=="")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik";else return "artykuł";end; end; elseif(norm_przed_lub_dyskusji=="Wikijunior")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł dla dzieci"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik dla dzieci";else return "artykuł dla dzieci";end; end; elseif(norm_przed_lub_dyskusji=="User")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane indywidua użytkownika jako normalne strony"]))then return "strona użytkownika"; else local czy_podstrony=mw.ustring.match(nazwa_jednostki,"^[^/]+$") if(czy_podstrony)then return "strona główna użytkownika"; else if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki użytkownika"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^[^/]+/[^/]*$"); if(czy_ksiazka)then return "podręcznik użytkownika"; else return "artykuł użytkownika"; end; else return "jednostka użytkownika"; end; else return "strona użytkownika"; end; end; end; elseif(norm_przed_lub_dyskusji=="File")then return "strona pliku"; elseif(norm_przed_lub_dyskusji=="Category")then return "strona kategorii"; elseif(norm_przed_lub_dyskusji=="Project")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))then return "strona projektu";end; if(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*"))then if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki brudnopisu projektu"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/[^/]*$"); if(czy_ksiazka)then return "podręcznik brudnopisu projektu"; else return "artykuł brudnopisu projektu"; end; else return "jednostka brudnopisu projektu"; end; else return "strona brudnopisu projektu"; end; else return "strona projektu"; end; elseif(norm_przed_lub_dyskusji=="Help")then return "strona pomocy"; elseif(norm_przed_lub_dyskusji=="MediaWiki")then return "strona komunikatu"; elseif(norm_przed_lub_dyskusji=="Special")then return "strona specialna"; elseif(norm_przed_lub_dyskusji=="Gadget")then return "strona gadżetu"; elseif(norm_przed_lub_dyskusji=="Template")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona szablonu";end; local function CzySzablonAlboOpis(nazwa_przestrzeni_nazw,nazwa_jednostki,szablon,opis_szablonu,strona_szablonu,prefix) local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return szablon; else if(mw.ustring.match(nazwa_jednostki,"^"..prefix..".*/opis$"))then return opis_szablonu; else if(not parametry_modul.CzyTak(frame.args["obsługiwane nieudokumentowane szablony jako szablony"]))then local czy_brudnopis=mw.ustring.match(nazwa_jednostki,"^"..prefix..".*$"); if(czy_brudnopis)then local pagename=(nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa_jednostki or nazwa_jednostki; local czy_istnieje_strona,tab=require("Module:Techniczne").PoliczZbiory(pagename); if(czy_istnieje_strona==1)then local czy_brudnopis_opisu_szablonu=require("Module:Łatki").contentMatch{ [1]='<noinclude>.-{{%s*[Dd]okumentacja%s*}}.-</noinclude>', [2]='<noinclude>.-{{%s*[Dd]okumentacja%s*|.-</noinclude>',pagename=pagename,namespace=0 }; if(not czy_brudnopis_opisu_szablonu)then return opis_szablonu;else return szablon;end; else return szablon; end; else return strona_szablonu; end; else return szablon; end; end; end; end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona brudnopisu szablonu","strona brudnopisu opisu szablonu","strona szablonu","[Bb]rudnopis/[^/]*/"); else return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona szablonu","strona opisu szablonu","strona szablonu",""); end; elseif(norm_przed_lub_dyskusji=="Module")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona modułu";end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona brudnopisu modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_strony_brudnopisu_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_strony_brudnopisu_opisu_modulu)then return "strona brudnopisu opisu modułu"; else return "strona brudnopisu modułu"; end; end; else if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_opisu_modulu)then return "strona opisu modułu"; else return "strona modułu"; end; end; end; else return "inne"; end; end; return "inne"; end; local typ_jednostki=Typ_jednostki(); if(((analiza)or(nazwa_jednostki_podana))and(typ)and(typ~=""))then typ_jednostki=TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); if(typ_jednostki==typ)then return typ_jednostki; elseif(nazwa_jednostki_podana)then return "(błąd parametrów pudełkowych)" else return "(błąd typu jednostki)"; end; end; return TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); end; function p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki,czy_uwzglednic_alternatywna_nazwe,i,numer_argorytmu,co_ma_liczyc) local nazwa_przestrzeni_fun,nazwa_jednostki_fun; if(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==0)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==1)then nazwa_przestrzeni_fun="Nazwa przedmiotowej przestrzeni nazw"; nazwa_jednostki_fun="Nazwa przedmiotowa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==2)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw dyskusji" nazwa_jednostki_fun="Nazwa dyskusji jednostki"; else nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; end; local pudelko_modul=require("Module:Pudełko"); if(not numer_argorytmu)then local function TempFunc() return ((not i)or(i==0)); end; if((not co_ma_liczyc)or(co_ma_liczyc==0))then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=(czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then local czy_i_0=TempFunc(); return (czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; else if(numer_argorytmu==0)then if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul["Nazwa jednostki"](frame,i); end; else if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; end; end; end; function p.Nazwa_przestrzeni_nazw_dodatkowe(frame,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; return frame.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] or pf.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] end; function p.Nazwa_jednostki(frame,i) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,2); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); if(nazwa_jednostki)then nazwa_jednostki=mw.text.trim(nazwa_jednostki); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^:",""); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else local nazwy_modul=require("Module:Nazwy"); nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); end; function p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,co_podac) local pf=frame.getParent and frame:getParent() or {args={}}; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local nazwa_jednostki; local bool_numer_jednostki=(liczba_numer_jednostki~=0); local function Nazwa_jednostki() if bool_numer_jednostki then nazwa_jednostki=( frame.args["nazwa jednostki "..liczba_numer_jednostki] or pf.args["nazwa jednostki "..liczba_numer_jednostki] ) or ((liczba_numer_jednostki==1)and(pf.args["cel"])) or pf.args[liczba_numer_jednostki]; else nazwa_jednostki=frame.args["nazwa jednostki"] or pf.args["nazwa jednostki"]; end; return nazwa_jednostki; end; local function Nazwa_przestrzeni_nazw() local nazwa_przestrzeni_nazw=bool_numer_jednostki and (frame.args["nazwa przestrzeni nazw i"] or pf.args["nazwa przestrzeni nazw i"] or frame.args["nazwa przestrzeni nazw "..liczba_numer_jednostki] or pf.args["nazwa przestrzeni nazw "..liczba_numer_jednostki]) or frame.args["nazwa przestrzeni nazw"] or pf.args["nazwa przestrzeni nazw"]; return nazwa_przestrzeni_nazw; end; if(not co_podac)then return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; elseif(co_podac==1)then return Nazwa_przestrzeni_nazw(),liczba_numer_jednostki; elseif(co_podac==2)then return Nazwa_jednostki(),liczba_numer_jednostki; else return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; end; end; function p.Jaka_nazwa_jednostki(frame,i,jaka) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); ---- local nazwy_modul=require("Module:Nazwy"); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka)then if(czy_biezaca)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.NpDane(tab_parametry); end; else if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if((not typ)or(typ=="przedmiotowa"))then if(czy_biezaca)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Czy_przestrzen_nazw_jest_obslugiwana(frame,jakas_przestrzen_nazw,kod_jezyka,kod_projektu) local nazwy_modul=require("Module:Nazwy"); local parametry_modul=require("Module:Parametry"); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then jakas_przestrzen_nazw=nazwy_modul.Np{nazwa=jakas_przestrzen_nazw}; else jakas_przestrzen_nazw=nazwy_modul.NpDane{nazwa=jakas_przestrzen_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local function nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_iter) if(czy_biezaca)then nazwa_przestrzeni_nazw_iter=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw_iter}; else nazwa_przestrzeni_nazw_iter=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw_iter,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; if(jakas_przestrzen_nazw==nazwa_przestrzeni_nazw_iter)then return true; end; return false; end; for licznik,nazwa_przestrzeni_nazw in pairs(frame.args)do if(type(licznik)=="number")then local nazwa_przestrzeni_nazw_element,klucze_element=mw.ustring.match(nazwa_przestrzeni_nazw,"^%s*([%w%s]*)%s*:%s*(.-)%s*"); if(nazwa_przestrzeni_nazw_element and klucze_element)then local tab_klucze=mw.text.split(klucze_element,"%s*,%s*",false); local wiki_modul=require("Module:Wiki"); for _,klucz_element in ipairs(tab_klucze)do local kod_jezyka_obslugiwane,kod_projektu_obslugiwane=wiki_modul.KluczProjektu(klucz_element); if(kod_jezyka_obslugiwane==kod_jezyka and kod_projektu_obslugiwane==kod_projektu)then local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_element); if(wynik)then return true;end; end; end; else local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw); if(wynik)then return true;end; end; end; end; return false; end; function p.Analiza_interwiki_czy_projekt_aktualny(frame,czy_jezyk,czy_projekt) local parametry_modul=require("Module:Parametry"); local p=parametry_modul.PobierzFrameEwentualnieParent(frame); local pudelko_modul=require("Module:Pudełko"); local wiki_modul=require("Module:Wiki"); local jezyk_biezacy=czy_jezyk and pudelko_modul["Kod języka tego projektu"](); local projekt_biezacy=czy_projekt and pudelko_modul["Kod projektu tego projektu"](); for i,_ in pairs(p.args)do if(type(i)=="number")then local klucz_projektu=pudelko_modul["Klucz projektu"](frame,i); local kod_jezyka=pudelko_modul["Kod języka"](frame,i); local kod_projektu=pudelko_modul["kod projektu"](frame,i); local jezyk,projekt=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu); if((czy_jezyk and (jezyk~=jezyk_biezacy))or(czy_projekt and(projekt~=projekt_biezacy)))then return "tak"; end; end; end; return; end; return p; c0k763w79c4vmwkjtwufoi8pkxm0bgh 540948 540923 2026-04-27T10:23:40Z Persino 2851 540948 Scribunto text/plain local p={}; function p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu) local strona=require("Module:Pudełko")["Strona główna tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else local pudelko_modul=require("Module:Pudełko"); if((kod_jezyka==pudelko_modul["Kod języka tego projektu"]())and(kod_projektu==pudelko_modul["Kod projektu tego projektu"]()))then return strona; else local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local czy_w_wikidanych=wiki_interwiki_modul.tablica_kody_projektu_wikidane.lingwistyczne[kod_projektu] or wiki_interwiki_modul.tablica_kody_projektu_wikidane.specjalistyczne[kod_projektu]; return czy_w_wikidanych and "Main Page" or nil; end; end; end; function p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka) local strona=require("Module:Pudełko")["Strona główna dla dzieci tego projektu"](); local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then return strona;end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,}; else return "Wikijunior"; end; end; function p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,i,kod_jezyka,kod_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local strona_glowna_projektu; if(i~=0)then local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)and(kod_projektu==kod_projektu_tego_projektu)then strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] else strona_glowna_projektu=(frame.args["strona główna projektu "..i] or pf.args["strona główna projektu "..i]) end; else strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] end; local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_projektu))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or (strona_glowna_projektu and "" or nil); end; function p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,i,kod_jezyka) local pf=frame.getParent and frame:getParent() or {args={}}; local pudelko_modul=require("Module:Pudełko"); local strona_glowna_dla_dzieci; if(i~=0)then local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] else strona_glowna_dla_dzieci=(frame.args["strona główna dla dzieci "..i] or pf.args["strona główna dla dzieci "..i]) end; else strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_dla_dzieci))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_dla_dzieci,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,} or (strona_glowna_dla_dzieci and "" or nil); end; function p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw, normmalna_przedmiotwa_dyskusji,kod_jezyka,kod_projektu) local nazwa_przestrzeni_nazw_blad; local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(normmalna_przedmiotwa_dyskusji==0)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==1)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==2)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; return nazwa_przestrzeni_nazw_blad end; function p.Nazwa_przestrzeni_nazw(frame,kod_liczbowy_przestrzeni_nazw,czy_uwzglednic_alternatywna_nazwe,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_przestrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,numer_jednostki,1) or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,numer_jednostki); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwy_przestrzeni_nazw; local typ; if(kod_liczbowy_przestrzeni_nazw==1)then typ="przedmiotowa"; if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(kod_liczbowy_przestrzeni_nazw==2)then if(czy_biezaca_wiki)then typ="dyskusja"; czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; if(czy_blad_nazwy_przestrzeni_nazw)then return czy_blad_nazwy_przestrzeni_nazw; else if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local nazwa_przestrzeni_nazw_alternatywnej=mw.text.trim(frame.args[1]); if(mw.ustring.match(nazwa_przestrzeni_nazw_alternatywnej,"^[%w%s_]*$"))then local czy_blad_nazwa_przestrzeni_nazw_alternatywnej; if(czy_biezaca_wiki)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.NpDane(tab_parametry); end; return czy_blad_nazwa_przestrzeni_nazw_alternatywnej or "(błąd)"; else return "(błąd)"; end; else local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"]{[1]=nazwa_przestrzeni_nazw,[2]="tak",}; if(mw.ustring.match(nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; end; end; function p.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local nazwa_przestrzeni_nazw_blad; local parametry_modul=require("Module:Parametry"); if(czy_biezaca_wiki)then nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; else nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw_blad or nazwa_przestrzeni_nazw; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if(czy_biezaca_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then nazwa_przestrzeni_nazw=nazwy_np_modul.Template; end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then nazwa_przestrzeni_nazw=nazwy_np_modul.Module; end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then nazwa_przestrzeni_nazw=template_prze; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then nazwa_przestrzeni_nazw=module_prze; end; end; end; if(not nazwa_przestrzeni_nazw_blad)then if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(frame.args[1]); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then if(czy_biezaca_wiki)then local nazwy_modul=require("Module:Nazwy"); local czy_blad_nazwy_przestrzeni_nazw=nazwy_modul.Np{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} return czy_blad_nazwy_przestrzeni_nazw or "(błąd)"; else local nazwy_modul=require("Module:Nazwy"); local nazwa_przestrzeni_nazw_blad2=nazwy_modul.NpDane{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; return nazwa_przestrzeni_nazw_blad2 or "(błąd)"; end; else return "(błąd)"; end; else local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(nazwa_przestrzeni_nazw); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return wytrimowana_nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; else return nazwa_przestrzeni_nazw; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,typ) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local tab_nazwa={ ["przedmiotowa"]="Nazwa przedmiotowej przestrzeni nazw", ["dyskusja"]="Nazwa przestrzeni nazw", }; local nazwa_przestrzeni_nazw=pudelko_modul[tab_nazwa[typ]](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); if(nazwa_przestrzeni_nazw=="")then local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local tab_nazwa={ ["przedmiotowa"]="PRZEDMIOTOWAPRZESTRZEŃ", ["dyskusja"]="PRZESTRZEŃDYSKUSJI", }; nazwa_przestrzeni_nazw=nazwy_modul[tab_nazwa[typ]]{nazwa=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else if(typ=="dyskusja")then local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{[typ]="tak",nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{[typ]="tak",nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; return nazwa_przestrzeni_nazw; end; function p.Kod_jezyka(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod języka tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod języka tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka"] or frame.args["kod języka 1"] or pf.args["kod języka"] or pf.args["kod języka 1"] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka "..i] or pf.args["kod języka "..i] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Kod_projektu(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod projektu tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod projektu tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu"] or frame.args["kod projektu 1"] or pf.args["kod projektu"] or pf.args["kod projektu 1"] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu "..i] or pf.args["kod projektu "..i] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local klucz_projektu; local function domyslne_klucz(klucz_projektu) local parametry_modul=require("Module:Parametry"); return ((klucz_projektu)and(klucz_projektu~=""))and mw.text.trim(klucz_projektu)or((parametry_modul.CzyTak(wartosc_domyslna_jezyka)and(parametry_modul.CzyTak(wartosc_domyslna_projektu)))and (wartosc_domyslna_jezyka..":" ..wartosc_domyslna_projektu)or(parametry_modul.CzyTak(wartosc_domyslna_jezyka) and wartosc_domyslna_jezyka or (parametry_modul.CzyTak(wartosc_domyslna_projektu) and wartosc_domyslna_projektu or nil))); end; if(i==0)then return nil; elseif(i==1)then local klucz_projektu=frame.args["klucz projektu"] or frame.args["klucz projektu 1"] or pf.args["klucz projektu"] or pf.args["klucz projektu 1"]; return domyslne_klucz(klucz_projektu); elseif(i>1)then local klucz_projektu=frame.args["klucz projektu "..i] or pf.args["klucz projektu "..i]; return domyslne_klucz(klucz_projektu); end; end; function p.Wikikody_kontenera(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu),p.Kod_jezyka(frame,i,wartosc_domyslna_jezyka),p.Kod_projektu(frame,i,wartosc_domyslna_projektu)); return kod_jezyka,kod_projektu; end; function p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,args,bez_analizy) if(not bez_analizy)then local parametry_modul=require("Module:Parametry"); if((((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł")or(typ=="podręcznik")))or (typ=="artykuł")))then return ""; elseif(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci")))or(typ=="artykuł dla dzieci"))then return "Wikijunior"; elseif((not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"])) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki brudnopisu projektu"])and (typ=="podręcznik brudnopisu projektu" or typ=="artykuł brudnopisu projektu")or (typ=="jednostka brudnopisu projektu")) or (typ=="strona brudnopisu projektu"))or(typ=="strona projektu"))or (typ=="strona projektu"))then return "Project"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona szablonu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))or(typ=="strona brudnopisu szablonu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona szablonu")or(typ=="strona opisu szablonu"))or(typ=="strona szablonu"))))then return "Template"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona modułu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))or(typ=="strona brudnopisu modułu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona modułu")or(typ=="strona opisu modułu"))or(typ=="strona modułu"))))then return "Module"; elseif(not parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika jako normalne strony"]) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika"])and (typ=="podręcznik użytkownika" or typ=="artykuł użytkownika") or (typ=="jednostka użytkownika")) or (typ=="strona użytkownika"))or(typ=="strona główna użytkownika"))or(typ=="strona użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; return; end; if(typ)then if((typ=="artykuł")or(typ=="podręcznik"))then return ""; elseif((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci"))then return "Wikijunior"; elseif((typ=="podręcznik brudnopisu projektu")or(typ=="artykuł brudnopisu projektu")or(typ=="jednostka brudnopisu projektu")or(typ=="strona brudnopisu projektu")or(typ=="strona projektu"))then return "Project"; elseif((typ=="strona szablonu")or(typ=="strona opisu szablonu")or(typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))then return "Template"; elseif((typ=="strona modułu")or(typ=="strona opisu modułu")or(typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))then return "Module"; elseif((typ=="podręcznik użytkownika")or(typ=="artykuł użytkownika")or(typ=="jednostka użytkownika")or(typ=="strona użytkownika")or(typ=="strona główna użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; end; end; function p.Typ_jednostki_uzyskany_z_frame(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local pf=frame.getParent and frame:getParent() or {args={}}; local typ; if liczba_numer_jednostki~=0 then typ=liczba_numer_jednostki and( (frame.args["typ jednostki "..liczba_numer_jednostki] or frame.args["typ jednostki i"]) or (pf.args["typ jednostki "..liczba_numer_jednostki] or pf.args["typ jednostki i"]) ); if(not typ)then local nazwa_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,2); if(nazwa_jednostki)then if(not mw.ustring.match(mw.text.trim(nazwa_jednostki),"^:"))then local nazwa_przesrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,1); if(not nazwa_przesrzeni_nazw)then typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; end; end; end; else typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; return typ,liczba_numer_jednostki; end; function p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i) local typ,liczba_numer_jednostki,ile_dyskusja=p.Typ_jednostki_uzyskany_z_frame(frame,i); local pf=frame.getParent and frame:getParent() or {args={},}; local function FuncTemp(liczba_numer_jednostki) local dyskusja_parametr="dyskusja typu jednostki"; if(liczba_numer_jednostki==0)then return frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr]; else return ((frame.args[dyskusja_parametr.." "..liczba_numer_jednostki] or pf.args[dyskusja_parametr.." "..liczba_numer_jednostki]) or (frame.args[dyskusja_parametr.." i"] or pf.args[dyskusja_parametr.." i"]) or(frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr])); end; end; local czy_dyskusja=FuncTemp(liczba_numer_jednostki); local parametry_modul=require("Module:Parametry"); local czy_dyskusja=parametry_modul.CzyTak(czy_dyskusja); return czy_dyskusja; end; function p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i) local typ=p.Typ_jednostki_uzyskany_z_frame(frame,i); if(typ)then local typ,ile=mw.ustring.gsub(typ,"^(%S+)(%s+)(dyskusji)",function(strona,spacja,dyskusji)return strona;end); local nazwa_przestrzeni_nazw=p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,nil,true); if(nazwa_przestrzeni_nazw)then local czy_dyskusja=p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i); if((czy_dyskusja)or(ile>0))then if(nazwa_przestrzeni_nazw=="")then return "Talk"; else return nazwa_przestrzeni_nazw.." talk"; end; else return nazwa_przestrzeni_nazw; end; else return nil; end; end; return nil; end; function p.Typ_jednostki(frame, kod_liczbowy_przestrzeni_nazw,i,numer_argorytmu) local parametry_modul=require("Module:Parametry"); local analiza=parametry_modul.CzyTak(frame.args["analiza"]); local typ,liczba_numer_jednostki=p.Typ_jednostki_uzyskany_z_frame(frame,i); local uzyskana_przestrzen_nazw_od_typu_jednostki; local nazwa_przestrzeni_nazw_podana,nazwa_jednostki_podana=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki); local function TempFunc(typ_jednostki,nazwa_przestrzeni_nazw) if( (kod_liczbowy_przestrzeni_nazw==2) or( (kod_liczbowy_przestrzeni_nazw==0) and( typ and (p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i)) or( (nazwa_przestrzeni_nazw) and (mw.ustring.match(nazwa_przestrzeni_nazw,"^Talk$") or mw.ustring.match(nazwa_przestrzeni_nazw," talk$")) or nil ) ) ) )then if(not mw.ustring.match(typ_jednostki,"^(%S+)(%s+)(dyskusji)"))then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)",function(strona) return strona.." dyskusji"; end); end; return typ_jednostki; elseif(kod_liczbowy_przestrzeni_nazw==1)then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)(%s+)(dyskusji)",function(strona,spacje,dyskusji) return strona; end); return typ_jednostki; end; return typ_jednostki; end; if((not analiza)and(typ))then if(typ~="")then uzyskana_przestrzen_nazw_od_typu_jednostki=p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i); if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((not nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then return TempFunc(typ,nil); end; else return "(błąd typu jednostki)"; end; end; end; local nazwa_przestrzeni_nazw,nazwa_jednostki=p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw,nil,liczba_numer_jednostki,numer_argorytmu); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwa_przestrzeni_nazw; if(czy_biezaca)then czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} else czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} end; if(not czy_blad_nazwa_przestrzeni_nazw)then return "(błąd nazwy przestrzeni nazw)";end; nazwa_przestrzeni_nazw=czy_blad_nazwa_przestrzeni_nazw; --- --- if((not analiza)and(typ))then if(typ~="")then ---typ jednostki if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then if(uzyskana_przestrzen_nazw_od_typu_jednostki==nazwa_przestrzeni_nazw)then return typ; else return "(błąd niezgodności)"; end; end; else return "(błąd typu jednostki)"; end; end; end; local function Typ_jednostki() if(nazwa_jednostki~="")then --local kod_jezyka,kod_projektu=KodyWikiPudelka(frame,liczba_numer_jednostki); --local klucz_projektu=kod_projektu..":"..kod_jezyka; local pudelko_modul=require("Module:Pudełko"); local pelna_nazwa_strony=((nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":" or "")..nazwa_jednostki; if(pudelko_modul.CzyNiepoprawnaNazwa(pelna_nazwa_strony))then return "(błąd nazwy jednostki)";end; local nazwy_modul=require("Module:Nazwy") pelna_nazwa_strony=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local norm_przed_lub_dyskusji=p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw,1,kod_jezyka,kod_projektu); if(kod_projektu==pudelko_modul["Kod projektu tego projektu"]())then local nazwa_strony_glownej_dla_dzieci_ze_zmiennej=p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka); if(nazwa_strony_glownej_dla_dzieci_ze_zmiennej=="")then return "(błąd nazwy strony głównej dla dzieci)";end; local nazwa_strony_glownej_wikijuniora=p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka); local nazwa_strony_glownej_dla_dzieci_uzyskana=(not nazwa_strony_glownej_dla_dzieci_ze_zmiennej)and nazwa_strony_glownej_wikijuniora or nazwa_strony_glownej_dla_dzieci_ze_zmiennej; if(nazwa_strony_glownej_dla_dzieci_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_dla_dzieci_uzyskana))then return "(błąd nazwy strony głównej dla dzieci)";end; nazwa_strony_glownej_dla_dzieci_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_dla_dzieci_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_dla_dzieci_uzyskana)then return "strona główna dla dzieci";end; end; end; local nazwa_strony_glownej_projektu_ze_zmiennej=p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka,kod_projektu); if(nazwa_strony_glownej_projektu_ze_zmiennej=="")then return "(błąd nazwy strony głównej projektu)";end; local nazwa_strony_glownej_projektu_z_wikidanych=p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu); local nazwa_strony_glownej_projektu_uzyskana=(not nazwa_strony_glownej_projektu_ze_zmiennej)and nazwa_strony_glownej_projektu_z_wikidanych or nazwa_strony_glownej_projektu_ze_zmiennej; if(nazwa_strony_glownej_projektu_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_projektu_uzyskana))then return "(błąd nazwy strony głównej projektu)";end; nazwa_strony_glownej_projektu_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_projektu_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_projektu_uzyskana)then return "strona główna projektu";end; end; if(norm_przed_lub_dyskusji=="")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik";else return "artykuł";end; end; elseif(norm_przed_lub_dyskusji=="Wikijunior")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł dla dzieci"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik dla dzieci";else return "artykuł dla dzieci";end; end; elseif(norm_przed_lub_dyskusji=="User")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki użytkownika jako normalne strony"]))then local i=1/0;--wywołanie błędu; return "strona użytkownika"; else local czy_podstrony=mw.ustring.match(nazwa_jednostki,"^[^/]+$") if(czy_podstrony)then return "strona główna użytkownika"; else if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki użytkownika"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^[^/]+/[^/]*$"); if(czy_ksiazka)then return "podręcznik użytkownika"; else return "artykuł użytkownika"; end; else return "jednostka użytkownika"; end; else return "strona użytkownika"; end; end; end; elseif(norm_przed_lub_dyskusji=="File")then return "strona pliku"; elseif(norm_przed_lub_dyskusji=="Category")then return "strona kategorii"; elseif(norm_przed_lub_dyskusji=="Project")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))then return "strona projektu";end; if(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*"))then if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki brudnopisu projektu"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/[^/]*$"); if(czy_ksiazka)then return "podręcznik brudnopisu projektu"; else return "artykuł brudnopisu projektu"; end; else return "jednostka brudnopisu projektu"; end; else return "strona brudnopisu projektu"; end; else return "strona projektu"; end; elseif(norm_przed_lub_dyskusji=="Help")then return "strona pomocy"; elseif(norm_przed_lub_dyskusji=="MediaWiki")then return "strona komunikatu"; elseif(norm_przed_lub_dyskusji=="Special")then return "strona specialna"; elseif(norm_przed_lub_dyskusji=="Gadget")then return "strona gadżetu"; elseif(norm_przed_lub_dyskusji=="Template")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona szablonu";end; local function CzySzablonAlboOpis(nazwa_przestrzeni_nazw,nazwa_jednostki,szablon,opis_szablonu,strona_szablonu,prefix) local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return szablon; else if(mw.ustring.match(nazwa_jednostki,"^"..prefix..".*/opis$"))then return opis_szablonu; else if(not parametry_modul.CzyTak(frame.args["obsługiwane nieudokumentowane szablony jako szablony"]))then local czy_brudnopis=mw.ustring.match(nazwa_jednostki,"^"..prefix..".*$"); if(czy_brudnopis)then local pagename=(nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa_jednostki or nazwa_jednostki; local czy_istnieje_strona,tab=require("Module:Techniczne").PoliczZbiory(pagename); if(czy_istnieje_strona==1)then local czy_brudnopis_opisu_szablonu=require("Module:Łatki").contentMatch{ [1]='<noinclude>.-{{%s*[Dd]okumentacja%s*}}.-</noinclude>', [2]='<noinclude>.-{{%s*[Dd]okumentacja%s*|.-</noinclude>',pagename=pagename,namespace=0 }; if(not czy_brudnopis_opisu_szablonu)then return opis_szablonu;else return szablon;end; else return szablon; end; else return strona_szablonu; end; else return szablon; end; end; end; end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona brudnopisu szablonu","strona brudnopisu opisu szablonu","strona szablonu","[Bb]rudnopis/[^/]*/"); else return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona szablonu","strona opisu szablonu","strona szablonu",""); end; elseif(norm_przed_lub_dyskusji=="Module")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona modułu";end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona brudnopisu modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_strony_brudnopisu_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_strony_brudnopisu_opisu_modulu)then return "strona brudnopisu opisu modułu"; else return "strona brudnopisu modułu"; end; end; else if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_opisu_modulu)then return "strona opisu modułu"; else return "strona modułu"; end; end; end; else return "inne"; end; end; return "inne"; end; local typ_jednostki=Typ_jednostki(); if(((analiza)or(nazwa_jednostki_podana))and(typ)and(typ~=""))then typ_jednostki=TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); if(typ_jednostki==typ)then return typ_jednostki; elseif(nazwa_jednostki_podana)then return "(błąd parametrów pudełkowych)" else return "(błąd typu jednostki)"; end; end; return TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); end; function p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki,czy_uwzglednic_alternatywna_nazwe,i,numer_argorytmu,co_ma_liczyc) local nazwa_przestrzeni_fun,nazwa_jednostki_fun; if(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==0)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==1)then nazwa_przestrzeni_fun="Nazwa przedmiotowej przestrzeni nazw"; nazwa_jednostki_fun="Nazwa przedmiotowa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==2)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw dyskusji" nazwa_jednostki_fun="Nazwa dyskusji jednostki"; else nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; end; local pudelko_modul=require("Module:Pudełko"); if(not numer_argorytmu)then local function TempFunc() return ((not i)or(i==0)); end; if((not co_ma_liczyc)or(co_ma_liczyc==0))then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=(czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then local czy_i_0=TempFunc(); return (czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; else if(numer_argorytmu==0)then if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul["Nazwa jednostki"](frame,i); end; else if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; end; end; end; function p.Nazwa_przestrzeni_nazw_dodatkowe(frame,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; return frame.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] or pf.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] end; function p.Nazwa_jednostki(frame,i) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,2); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); if(nazwa_jednostki)then nazwa_jednostki=mw.text.trim(nazwa_jednostki); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^:",""); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else local nazwy_modul=require("Module:Nazwy"); nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); end; function p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,co_podac) local pf=frame.getParent and frame:getParent() or {args={}}; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local nazwa_jednostki; local bool_numer_jednostki=(liczba_numer_jednostki~=0); local function Nazwa_jednostki() if bool_numer_jednostki then nazwa_jednostki=( frame.args["nazwa jednostki "..liczba_numer_jednostki] or pf.args["nazwa jednostki "..liczba_numer_jednostki] ) or ((liczba_numer_jednostki==1)and(pf.args["cel"])) or pf.args[liczba_numer_jednostki]; else nazwa_jednostki=frame.args["nazwa jednostki"] or pf.args["nazwa jednostki"]; end; return nazwa_jednostki; end; local function Nazwa_przestrzeni_nazw() local nazwa_przestrzeni_nazw=bool_numer_jednostki and (frame.args["nazwa przestrzeni nazw i"] or pf.args["nazwa przestrzeni nazw i"] or frame.args["nazwa przestrzeni nazw "..liczba_numer_jednostki] or pf.args["nazwa przestrzeni nazw "..liczba_numer_jednostki]) or frame.args["nazwa przestrzeni nazw"] or pf.args["nazwa przestrzeni nazw"]; return nazwa_przestrzeni_nazw; end; if(not co_podac)then return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; elseif(co_podac==1)then return Nazwa_przestrzeni_nazw(),liczba_numer_jednostki; elseif(co_podac==2)then return Nazwa_jednostki(),liczba_numer_jednostki; else return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; end; end; function p.Jaka_nazwa_jednostki(frame,i,jaka) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); ---- local nazwy_modul=require("Module:Nazwy"); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka)then if(czy_biezaca)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.NpDane(tab_parametry); end; else if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if((not typ)or(typ=="przedmiotowa"))then if(czy_biezaca)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Czy_przestrzen_nazw_jest_obslugiwana(frame,jakas_przestrzen_nazw,kod_jezyka,kod_projektu) local nazwy_modul=require("Module:Nazwy"); local parametry_modul=require("Module:Parametry"); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then jakas_przestrzen_nazw=nazwy_modul.Np{nazwa=jakas_przestrzen_nazw}; else jakas_przestrzen_nazw=nazwy_modul.NpDane{nazwa=jakas_przestrzen_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local function nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_iter) if(czy_biezaca)then nazwa_przestrzeni_nazw_iter=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw_iter}; else nazwa_przestrzeni_nazw_iter=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw_iter,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; if(jakas_przestrzen_nazw==nazwa_przestrzeni_nazw_iter)then return true; end; return false; end; for licznik,nazwa_przestrzeni_nazw in pairs(frame.args)do if(type(licznik)=="number")then local nazwa_przestrzeni_nazw_element,klucze_element=mw.ustring.match(nazwa_przestrzeni_nazw,"^%s*([%w%s]*)%s*:%s*(.-)%s*"); if(nazwa_przestrzeni_nazw_element and klucze_element)then local tab_klucze=mw.text.split(klucze_element,"%s*,%s*",false); local wiki_modul=require("Module:Wiki"); for _,klucz_element in ipairs(tab_klucze)do local kod_jezyka_obslugiwane,kod_projektu_obslugiwane=wiki_modul.KluczProjektu(klucz_element); if(kod_jezyka_obslugiwane==kod_jezyka and kod_projektu_obslugiwane==kod_projektu)then local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_element); if(wynik)then return true;end; end; end; else local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw); if(wynik)then return true;end; end; end; end; return false; end; function p.Analiza_interwiki_czy_projekt_aktualny(frame,czy_jezyk,czy_projekt) local parametry_modul=require("Module:Parametry"); local p=parametry_modul.PobierzFrameEwentualnieParent(frame); local pudelko_modul=require("Module:Pudełko"); local wiki_modul=require("Module:Wiki"); local jezyk_biezacy=czy_jezyk and pudelko_modul["Kod języka tego projektu"](); local projekt_biezacy=czy_projekt and pudelko_modul["Kod projektu tego projektu"](); for i,_ in pairs(p.args)do if(type(i)=="number")then local klucz_projektu=pudelko_modul["Klucz projektu"](frame,i); local kod_jezyka=pudelko_modul["Kod języka"](frame,i); local kod_projektu=pudelko_modul["kod projektu"](frame,i); local jezyk,projekt=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu); if((czy_jezyk and (jezyk~=jezyk_biezacy))or(czy_projekt and(projekt~=projekt_biezacy)))then return "tak"; end; end; end; return; end; return p; a7g7hg1m0tc66di88wphlh0u5la6boc 540949 540948 2026-04-27T10:37:34Z Persino 2851 540949 Scribunto text/plain local p={}; function p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu) local strona=require("Module:Pudełko")["Strona główna tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else local pudelko_modul=require("Module:Pudełko"); if((kod_jezyka==pudelko_modul["Kod języka tego projektu"]())and(kod_projektu==pudelko_modul["Kod projektu tego projektu"]()))then return strona; else local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local czy_w_wikidanych=wiki_interwiki_modul.tablica_kody_projektu_wikidane.lingwistyczne[kod_projektu] or wiki_interwiki_modul.tablica_kody_projektu_wikidane.specjalistyczne[kod_projektu]; return czy_w_wikidanych and "Main Page" or nil; end; end; end; function p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka) local strona=require("Module:Pudełko")["Strona główna dla dzieci tego projektu"](); local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then return strona;end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,}; else return "Wikijunior"; end; end; function p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,i,kod_jezyka,kod_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local strona_glowna_projektu; if(i~=0)then local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)and(kod_projektu==kod_projektu_tego_projektu)then strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] else strona_glowna_projektu=(frame.args["strona główna projektu "..i] or pf.args["strona główna projektu "..i]) end; else strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] end; local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_projektu))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or (strona_glowna_projektu and "" or nil); end; function p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,i,kod_jezyka) local pf=frame.getParent and frame:getParent() or {args={}}; local pudelko_modul=require("Module:Pudełko"); local strona_glowna_dla_dzieci; if(i~=0)then local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] else strona_glowna_dla_dzieci=(frame.args["strona główna dla dzieci "..i] or pf.args["strona główna dla dzieci "..i]) end; else strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_dla_dzieci))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_dla_dzieci,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,} or (strona_glowna_dla_dzieci and "" or nil); end; function p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw, normmalna_przedmiotwa_dyskusji,kod_jezyka,kod_projektu) local nazwa_przestrzeni_nazw_blad; local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(normmalna_przedmiotwa_dyskusji==0)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==1)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==2)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; return nazwa_przestrzeni_nazw_blad end; function p.Nazwa_przestrzeni_nazw(frame,kod_liczbowy_przestrzeni_nazw,czy_uwzglednic_alternatywna_nazwe,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_przestrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,numer_jednostki,1) or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,numer_jednostki); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwy_przestrzeni_nazw; local typ; if(kod_liczbowy_przestrzeni_nazw==1)then typ="przedmiotowa"; if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(kod_liczbowy_przestrzeni_nazw==2)then if(czy_biezaca_wiki)then typ="dyskusja"; czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; if(czy_blad_nazwy_przestrzeni_nazw)then return czy_blad_nazwy_przestrzeni_nazw; else if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local nazwa_przestrzeni_nazw_alternatywnej=mw.text.trim(frame.args[1]); if(mw.ustring.match(nazwa_przestrzeni_nazw_alternatywnej,"^[%w%s_]*$"))then local czy_blad_nazwa_przestrzeni_nazw_alternatywnej; if(czy_biezaca_wiki)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.NpDane(tab_parametry); end; return czy_blad_nazwa_przestrzeni_nazw_alternatywnej or "(błąd)"; else return "(błąd)"; end; else local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"]{[1]=nazwa_przestrzeni_nazw,[2]="tak",}; if(mw.ustring.match(nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; end; end; function p.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local nazwa_przestrzeni_nazw_blad; local parametry_modul=require("Module:Parametry"); if(czy_biezaca_wiki)then nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; else nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw_blad or nazwa_przestrzeni_nazw; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if(czy_biezaca_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then nazwa_przestrzeni_nazw=nazwy_np_modul.Template; end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then nazwa_przestrzeni_nazw=nazwy_np_modul.Module; end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then nazwa_przestrzeni_nazw=template_prze; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then nazwa_przestrzeni_nazw=module_prze; end; end; end; if(not nazwa_przestrzeni_nazw_blad)then if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(frame.args[1]); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then if(czy_biezaca_wiki)then local nazwy_modul=require("Module:Nazwy"); local czy_blad_nazwy_przestrzeni_nazw=nazwy_modul.Np{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} return czy_blad_nazwy_przestrzeni_nazw or "(błąd)"; else local nazwy_modul=require("Module:Nazwy"); local nazwa_przestrzeni_nazw_blad2=nazwy_modul.NpDane{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; return nazwa_przestrzeni_nazw_blad2 or "(błąd)"; end; else return "(błąd)"; end; else local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(nazwa_przestrzeni_nazw); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return wytrimowana_nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; else return nazwa_przestrzeni_nazw; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,typ) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local tab_nazwa={ ["przedmiotowa"]="Nazwa przedmiotowej przestrzeni nazw", ["dyskusja"]="Nazwa przestrzeni nazw", }; local nazwa_przestrzeni_nazw=pudelko_modul[tab_nazwa[typ]](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); if(nazwa_przestrzeni_nazw=="")then local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local tab_nazwa={ ["przedmiotowa"]="PRZEDMIOTOWAPRZESTRZEŃ", ["dyskusja"]="PRZESTRZEŃDYSKUSJI", }; nazwa_przestrzeni_nazw=nazwy_modul[tab_nazwa[typ]]{nazwa=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else if(typ=="dyskusja")then local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{[typ]="tak",nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{[typ]="tak",nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; return nazwa_przestrzeni_nazw; end; function p.Kod_jezyka(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod języka tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod języka tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka"] or frame.args["kod języka 1"] or pf.args["kod języka"] or pf.args["kod języka 1"] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka "..i] or pf.args["kod języka "..i] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Kod_projektu(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod projektu tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod projektu tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu"] or frame.args["kod projektu 1"] or pf.args["kod projektu"] or pf.args["kod projektu 1"] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu "..i] or pf.args["kod projektu "..i] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local klucz_projektu; local function domyslne_klucz(klucz_projektu) local parametry_modul=require("Module:Parametry"); return ((klucz_projektu)and(klucz_projektu~=""))and mw.text.trim(klucz_projektu)or((parametry_modul.CzyTak(wartosc_domyslna_jezyka)and(parametry_modul.CzyTak(wartosc_domyslna_projektu)))and (wartosc_domyslna_jezyka..":" ..wartosc_domyslna_projektu)or(parametry_modul.CzyTak(wartosc_domyslna_jezyka) and wartosc_domyslna_jezyka or (parametry_modul.CzyTak(wartosc_domyslna_projektu) and wartosc_domyslna_projektu or nil))); end; if(i==0)then return nil; elseif(i==1)then local klucz_projektu=frame.args["klucz projektu"] or frame.args["klucz projektu 1"] or pf.args["klucz projektu"] or pf.args["klucz projektu 1"]; return domyslne_klucz(klucz_projektu); elseif(i>1)then local klucz_projektu=frame.args["klucz projektu "..i] or pf.args["klucz projektu "..i]; return domyslne_klucz(klucz_projektu); end; end; function p.Wikikody_kontenera(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu),p.Kod_jezyka(frame,i,wartosc_domyslna_jezyka),p.Kod_projektu(frame,i,wartosc_domyslna_projektu)); return kod_jezyka,kod_projektu; end; function p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,args,bez_analizy) if(not bez_analizy)then local parametry_modul=require("Module:Parametry"); if((((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł")or(typ=="podręcznik")))or (typ=="artykuł")))then return ""; elseif(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci")))or(typ=="artykuł dla dzieci"))then return "Wikijunior"; elseif((not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"])) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki brudnopisu projektu"])and (typ=="podręcznik brudnopisu projektu" or typ=="artykuł brudnopisu projektu")or (typ=="jednostka brudnopisu projektu")) or (typ=="strona brudnopisu projektu"))or(typ=="strona projektu"))or (typ=="strona projektu"))then return "Project"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona szablonu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))or(typ=="strona brudnopisu szablonu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona szablonu")or(typ=="strona opisu szablonu"))or(typ=="strona szablonu"))))then return "Template"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona modułu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))or(typ=="strona brudnopisu modułu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona modułu")or(typ=="strona opisu modułu"))or(typ=="strona modułu"))))then return "Module"; elseif(not parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika jako normalne strony"]) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika"])and (typ=="podręcznik użytkownika" or typ=="artykuł użytkownika") or (typ=="jednostka użytkownika")) or (typ=="strona użytkownika"))or(typ=="strona główna użytkownika"))or(typ=="strona użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; return; end; if(typ)then if((typ=="artykuł")or(typ=="podręcznik"))then return ""; elseif((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci"))then return "Wikijunior"; elseif((typ=="podręcznik brudnopisu projektu")or(typ=="artykuł brudnopisu projektu")or(typ=="jednostka brudnopisu projektu")or(typ=="strona brudnopisu projektu")or(typ=="strona projektu"))then return "Project"; elseif((typ=="strona szablonu")or(typ=="strona opisu szablonu")or(typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))then return "Template"; elseif((typ=="strona modułu")or(typ=="strona opisu modułu")or(typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))then return "Module"; elseif((typ=="podręcznik użytkownika")or(typ=="artykuł użytkownika")or(typ=="jednostka użytkownika")or(typ=="strona użytkownika")or(typ=="strona główna użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; end; end; function p.Typ_jednostki_uzyskany_z_frame(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local pf=frame.getParent and frame:getParent() or {args={}}; local typ; if liczba_numer_jednostki~=0 then typ=liczba_numer_jednostki and( (frame.args["typ jednostki "..liczba_numer_jednostki] or frame.args["typ jednostki i"]) or (pf.args["typ jednostki "..liczba_numer_jednostki] or pf.args["typ jednostki i"]) ); if(not typ)then local nazwa_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,2); if(nazwa_jednostki)then if(not mw.ustring.match(mw.text.trim(nazwa_jednostki),"^:"))then local nazwa_przesrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,1); if(not nazwa_przesrzeni_nazw)then typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; end; end; end; else typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; return typ,liczba_numer_jednostki; end; function p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i) local typ,liczba_numer_jednostki,ile_dyskusja=p.Typ_jednostki_uzyskany_z_frame(frame,i); local pf=frame.getParent and frame:getParent() or {args={},}; local function FuncTemp(liczba_numer_jednostki) local dyskusja_parametr="dyskusja typu jednostki"; if(liczba_numer_jednostki==0)then return frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr]; else return ((frame.args[dyskusja_parametr.." "..liczba_numer_jednostki] or pf.args[dyskusja_parametr.." "..liczba_numer_jednostki]) or (frame.args[dyskusja_parametr.." i"] or pf.args[dyskusja_parametr.." i"]) or(frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr])); end; end; local czy_dyskusja=FuncTemp(liczba_numer_jednostki); local parametry_modul=require("Module:Parametry"); local czy_dyskusja=parametry_modul.CzyTak(czy_dyskusja); return czy_dyskusja; end; function p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i) local typ=p.Typ_jednostki_uzyskany_z_frame(frame,i); if(typ)then local typ,ile=mw.ustring.gsub(typ,"^(%S+)(%s+)(dyskusji)",function(strona,spacja,dyskusji)return strona;end); local nazwa_przestrzeni_nazw=p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,nil,true); if(nazwa_przestrzeni_nazw)then local czy_dyskusja=p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i); if((czy_dyskusja)or(ile>0))then if(nazwa_przestrzeni_nazw=="")then return "Talk"; else return nazwa_przestrzeni_nazw.." talk"; end; else return nazwa_przestrzeni_nazw; end; else return nil; end; end; return nil; end; function p.Typ_jednostki(frame, kod_liczbowy_przestrzeni_nazw,i,numer_argorytmu) if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki użytkownika jako normalne strony"]))then local i=1/0;--wywołanie błędu; end; local parametry_modul=require("Module:Parametry"); local analiza=parametry_modul.CzyTak(frame.args["analiza"]); local typ,liczba_numer_jednostki=p.Typ_jednostki_uzyskany_z_frame(frame,i); local uzyskana_przestrzen_nazw_od_typu_jednostki; local nazwa_przestrzeni_nazw_podana,nazwa_jednostki_podana=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki); local function TempFunc(typ_jednostki,nazwa_przestrzeni_nazw) if( (kod_liczbowy_przestrzeni_nazw==2) or( (kod_liczbowy_przestrzeni_nazw==0) and( typ and (p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i)) or( (nazwa_przestrzeni_nazw) and (mw.ustring.match(nazwa_przestrzeni_nazw,"^Talk$") or mw.ustring.match(nazwa_przestrzeni_nazw," talk$")) or nil ) ) ) )then if(not mw.ustring.match(typ_jednostki,"^(%S+)(%s+)(dyskusji)"))then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)",function(strona) return strona.." dyskusji"; end); end; return typ_jednostki; elseif(kod_liczbowy_przestrzeni_nazw==1)then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)(%s+)(dyskusji)",function(strona,spacje,dyskusji) return strona; end); return typ_jednostki; end; return typ_jednostki; end; if((not analiza)and(typ))then if(typ~="")then uzyskana_przestrzen_nazw_od_typu_jednostki=p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i); if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((not nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then return TempFunc(typ,nil); end; else return "(błąd typu jednostki)"; end; end; end; local nazwa_przestrzeni_nazw,nazwa_jednostki=p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw,nil,liczba_numer_jednostki,numer_argorytmu); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwa_przestrzeni_nazw; if(czy_biezaca)then czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} else czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} end; if(not czy_blad_nazwa_przestrzeni_nazw)then return "(błąd nazwy przestrzeni nazw)";end; nazwa_przestrzeni_nazw=czy_blad_nazwa_przestrzeni_nazw; --- --- if((not analiza)and(typ))then if(typ~="")then ---typ jednostki if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then if(uzyskana_przestrzen_nazw_od_typu_jednostki==nazwa_przestrzeni_nazw)then return typ; else return "(błąd niezgodności)"; end; end; else return "(błąd typu jednostki)"; end; end; end; local function Typ_jednostki() if(nazwa_jednostki~="")then --local kod_jezyka,kod_projektu=KodyWikiPudelka(frame,liczba_numer_jednostki); --local klucz_projektu=kod_projektu..":"..kod_jezyka; local pudelko_modul=require("Module:Pudełko"); local pelna_nazwa_strony=((nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":" or "")..nazwa_jednostki; if(pudelko_modul.CzyNiepoprawnaNazwa(pelna_nazwa_strony))then return "(błąd nazwy jednostki)";end; local nazwy_modul=require("Module:Nazwy") pelna_nazwa_strony=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local norm_przed_lub_dyskusji=p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw,1,kod_jezyka,kod_projektu); if(kod_projektu==pudelko_modul["Kod projektu tego projektu"]())then local nazwa_strony_glownej_dla_dzieci_ze_zmiennej=p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka); if(nazwa_strony_glownej_dla_dzieci_ze_zmiennej=="")then return "(błąd nazwy strony głównej dla dzieci)";end; local nazwa_strony_glownej_wikijuniora=p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka); local nazwa_strony_glownej_dla_dzieci_uzyskana=(not nazwa_strony_glownej_dla_dzieci_ze_zmiennej)and nazwa_strony_glownej_wikijuniora or nazwa_strony_glownej_dla_dzieci_ze_zmiennej; if(nazwa_strony_glownej_dla_dzieci_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_dla_dzieci_uzyskana))then return "(błąd nazwy strony głównej dla dzieci)";end; nazwa_strony_glownej_dla_dzieci_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_dla_dzieci_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_dla_dzieci_uzyskana)then return "strona główna dla dzieci";end; end; end; local nazwa_strony_glownej_projektu_ze_zmiennej=p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka,kod_projektu); if(nazwa_strony_glownej_projektu_ze_zmiennej=="")then return "(błąd nazwy strony głównej projektu)";end; local nazwa_strony_glownej_projektu_z_wikidanych=p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu); local nazwa_strony_glownej_projektu_uzyskana=(not nazwa_strony_glownej_projektu_ze_zmiennej)and nazwa_strony_glownej_projektu_z_wikidanych or nazwa_strony_glownej_projektu_ze_zmiennej; if(nazwa_strony_glownej_projektu_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_projektu_uzyskana))then return "(błąd nazwy strony głównej projektu)";end; nazwa_strony_glownej_projektu_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_projektu_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_projektu_uzyskana)then return "strona główna projektu";end; end; if(norm_przed_lub_dyskusji=="")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik";else return "artykuł";end; end; elseif(norm_przed_lub_dyskusji=="Wikijunior")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł dla dzieci"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik dla dzieci";else return "artykuł dla dzieci";end; end; elseif(norm_przed_lub_dyskusji=="User")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane indywidua użytkownika jako normalne strony"]))then return "strona użytkownika"; else local czy_podstrony=mw.ustring.match(nazwa_jednostki,"^[^/]+$") if(czy_podstrony)then return "strona główna użytkownika"; else if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki użytkownika"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^[^/]+/[^/]*$"); if(czy_ksiazka)then return "podręcznik użytkownika"; else return "artykuł użytkownika"; end; else return "jednostka użytkownika"; end; else return "strona użytkownika"; end; end; end; elseif(norm_przed_lub_dyskusji=="File")then return "strona pliku"; elseif(norm_przed_lub_dyskusji=="Category")then return "strona kategorii"; elseif(norm_przed_lub_dyskusji=="Project")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))then return "strona projektu";end; if(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*"))then if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki brudnopisu projektu"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/[^/]*$"); if(czy_ksiazka)then return "podręcznik brudnopisu projektu"; else return "artykuł brudnopisu projektu"; end; else return "jednostka brudnopisu projektu"; end; else return "strona brudnopisu projektu"; end; else return "strona projektu"; end; elseif(norm_przed_lub_dyskusji=="Help")then return "strona pomocy"; elseif(norm_przed_lub_dyskusji=="MediaWiki")then return "strona komunikatu"; elseif(norm_przed_lub_dyskusji=="Special")then return "strona specialna"; elseif(norm_przed_lub_dyskusji=="Gadget")then return "strona gadżetu"; elseif(norm_przed_lub_dyskusji=="Template")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona szablonu";end; local function CzySzablonAlboOpis(nazwa_przestrzeni_nazw,nazwa_jednostki,szablon,opis_szablonu,strona_szablonu,prefix) local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return szablon; else if(mw.ustring.match(nazwa_jednostki,"^"..prefix..".*/opis$"))then return opis_szablonu; else if(not parametry_modul.CzyTak(frame.args["obsługiwane nieudokumentowane szablony jako szablony"]))then local czy_brudnopis=mw.ustring.match(nazwa_jednostki,"^"..prefix..".*$"); if(czy_brudnopis)then local pagename=(nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa_jednostki or nazwa_jednostki; local czy_istnieje_strona,tab=require("Module:Techniczne").PoliczZbiory(pagename); if(czy_istnieje_strona==1)then local czy_brudnopis_opisu_szablonu=require("Module:Łatki").contentMatch{ [1]='<noinclude>.-{{%s*[Dd]okumentacja%s*}}.-</noinclude>', [2]='<noinclude>.-{{%s*[Dd]okumentacja%s*|.-</noinclude>',pagename=pagename,namespace=0 }; if(not czy_brudnopis_opisu_szablonu)then return opis_szablonu;else return szablon;end; else return szablon; end; else return strona_szablonu; end; else return szablon; end; end; end; end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona brudnopisu szablonu","strona brudnopisu opisu szablonu","strona szablonu","[Bb]rudnopis/[^/]*/"); else return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona szablonu","strona opisu szablonu","strona szablonu",""); end; elseif(norm_przed_lub_dyskusji=="Module")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona modułu";end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona brudnopisu modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_strony_brudnopisu_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_strony_brudnopisu_opisu_modulu)then return "strona brudnopisu opisu modułu"; else return "strona brudnopisu modułu"; end; end; else if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_opisu_modulu)then return "strona opisu modułu"; else return "strona modułu"; end; end; end; else return "inne"; end; end; return "inne"; end; local typ_jednostki=Typ_jednostki(); if(((analiza)or(nazwa_jednostki_podana))and(typ)and(typ~=""))then typ_jednostki=TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); if(typ_jednostki==typ)then return typ_jednostki; elseif(nazwa_jednostki_podana)then return "(błąd parametrów pudełkowych)" else return "(błąd typu jednostki)"; end; end; return TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); end; function p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki,czy_uwzglednic_alternatywna_nazwe,i,numer_argorytmu,co_ma_liczyc) local nazwa_przestrzeni_fun,nazwa_jednostki_fun; if(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==0)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==1)then nazwa_przestrzeni_fun="Nazwa przedmiotowej przestrzeni nazw"; nazwa_jednostki_fun="Nazwa przedmiotowa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==2)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw dyskusji" nazwa_jednostki_fun="Nazwa dyskusji jednostki"; else nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; end; local pudelko_modul=require("Module:Pudełko"); if(not numer_argorytmu)then local function TempFunc() return ((not i)or(i==0)); end; if((not co_ma_liczyc)or(co_ma_liczyc==0))then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=(czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then local czy_i_0=TempFunc(); return (czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; else if(numer_argorytmu==0)then if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul["Nazwa jednostki"](frame,i); end; else if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; end; end; end; function p.Nazwa_przestrzeni_nazw_dodatkowe(frame,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; return frame.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] or pf.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] end; function p.Nazwa_jednostki(frame,i) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,2); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); if(nazwa_jednostki)then nazwa_jednostki=mw.text.trim(nazwa_jednostki); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^:",""); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else local nazwy_modul=require("Module:Nazwy"); nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); end; function p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,co_podac) local pf=frame.getParent and frame:getParent() or {args={}}; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local nazwa_jednostki; local bool_numer_jednostki=(liczba_numer_jednostki~=0); local function Nazwa_jednostki() if bool_numer_jednostki then nazwa_jednostki=( frame.args["nazwa jednostki "..liczba_numer_jednostki] or pf.args["nazwa jednostki "..liczba_numer_jednostki] ) or ((liczba_numer_jednostki==1)and(pf.args["cel"])) or pf.args[liczba_numer_jednostki]; else nazwa_jednostki=frame.args["nazwa jednostki"] or pf.args["nazwa jednostki"]; end; return nazwa_jednostki; end; local function Nazwa_przestrzeni_nazw() local nazwa_przestrzeni_nazw=bool_numer_jednostki and (frame.args["nazwa przestrzeni nazw i"] or pf.args["nazwa przestrzeni nazw i"] or frame.args["nazwa przestrzeni nazw "..liczba_numer_jednostki] or pf.args["nazwa przestrzeni nazw "..liczba_numer_jednostki]) or frame.args["nazwa przestrzeni nazw"] or pf.args["nazwa przestrzeni nazw"]; return nazwa_przestrzeni_nazw; end; if(not co_podac)then return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; elseif(co_podac==1)then return Nazwa_przestrzeni_nazw(),liczba_numer_jednostki; elseif(co_podac==2)then return Nazwa_jednostki(),liczba_numer_jednostki; else return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; end; end; function p.Jaka_nazwa_jednostki(frame,i,jaka) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); ---- local nazwy_modul=require("Module:Nazwy"); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka)then if(czy_biezaca)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.NpDane(tab_parametry); end; else if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if((not typ)or(typ=="przedmiotowa"))then if(czy_biezaca)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Czy_przestrzen_nazw_jest_obslugiwana(frame,jakas_przestrzen_nazw,kod_jezyka,kod_projektu) local nazwy_modul=require("Module:Nazwy"); local parametry_modul=require("Module:Parametry"); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then jakas_przestrzen_nazw=nazwy_modul.Np{nazwa=jakas_przestrzen_nazw}; else jakas_przestrzen_nazw=nazwy_modul.NpDane{nazwa=jakas_przestrzen_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local function nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_iter) if(czy_biezaca)then nazwa_przestrzeni_nazw_iter=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw_iter}; else nazwa_przestrzeni_nazw_iter=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw_iter,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; if(jakas_przestrzen_nazw==nazwa_przestrzeni_nazw_iter)then return true; end; return false; end; for licznik,nazwa_przestrzeni_nazw in pairs(frame.args)do if(type(licznik)=="number")then local nazwa_przestrzeni_nazw_element,klucze_element=mw.ustring.match(nazwa_przestrzeni_nazw,"^%s*([%w%s]*)%s*:%s*(.-)%s*"); if(nazwa_przestrzeni_nazw_element and klucze_element)then local tab_klucze=mw.text.split(klucze_element,"%s*,%s*",false); local wiki_modul=require("Module:Wiki"); for _,klucz_element in ipairs(tab_klucze)do local kod_jezyka_obslugiwane,kod_projektu_obslugiwane=wiki_modul.KluczProjektu(klucz_element); if(kod_jezyka_obslugiwane==kod_jezyka and kod_projektu_obslugiwane==kod_projektu)then local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_element); if(wynik)then return true;end; end; end; else local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw); if(wynik)then return true;end; end; end; end; return false; end; function p.Analiza_interwiki_czy_projekt_aktualny(frame,czy_jezyk,czy_projekt) local parametry_modul=require("Module:Parametry"); local p=parametry_modul.PobierzFrameEwentualnieParent(frame); local pudelko_modul=require("Module:Pudełko"); local wiki_modul=require("Module:Wiki"); local jezyk_biezacy=czy_jezyk and pudelko_modul["Kod języka tego projektu"](); local projekt_biezacy=czy_projekt and pudelko_modul["Kod projektu tego projektu"](); for i,_ in pairs(p.args)do if(type(i)=="number")then local klucz_projektu=pudelko_modul["Klucz projektu"](frame,i); local kod_jezyka=pudelko_modul["Kod języka"](frame,i); local kod_projektu=pudelko_modul["kod projektu"](frame,i); local jezyk,projekt=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu); if((czy_jezyk and (jezyk~=jezyk_biezacy))or(czy_projekt and(projekt~=projekt_biezacy)))then return "tak"; end; end; end; return; end; return p; 8kpv0f208d684u7mke50gtu8mk48ce5 540950 540949 2026-04-27T10:38:31Z Persino 2851 540950 Scribunto text/plain local p={}; function p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu) local strona=require("Module:Pudełko")["Strona główna tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else local pudelko_modul=require("Module:Pudełko"); if((kod_jezyka==pudelko_modul["Kod języka tego projektu"]())and(kod_projektu==pudelko_modul["Kod projektu tego projektu"]()))then return strona; else local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local czy_w_wikidanych=wiki_interwiki_modul.tablica_kody_projektu_wikidane.lingwistyczne[kod_projektu] or wiki_interwiki_modul.tablica_kody_projektu_wikidane.specjalistyczne[kod_projektu]; return czy_w_wikidanych and "Main Page" or nil; end; end; end; function p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka) local strona=require("Module:Pudełko")["Strona główna dla dzieci tego projektu"](); local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then return strona;end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,}; else return "Wikijunior"; end; end; function p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,i,kod_jezyka,kod_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local strona_glowna_projektu; if(i~=0)then local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)and(kod_projektu==kod_projektu_tego_projektu)then strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] else strona_glowna_projektu=(frame.args["strona główna projektu "..i] or pf.args["strona główna projektu "..i]) end; else strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] end; local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_projektu))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or (strona_glowna_projektu and "" or nil); end; function p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,i,kod_jezyka) local pf=frame.getParent and frame:getParent() or {args={}}; local pudelko_modul=require("Module:Pudełko"); local strona_glowna_dla_dzieci; if(i~=0)then local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] else strona_glowna_dla_dzieci=(frame.args["strona główna dla dzieci "..i] or pf.args["strona główna dla dzieci "..i]) end; else strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_dla_dzieci))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_dla_dzieci,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,} or (strona_glowna_dla_dzieci and "" or nil); end; function p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw, normmalna_przedmiotwa_dyskusji,kod_jezyka,kod_projektu) local nazwa_przestrzeni_nazw_blad; local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(normmalna_przedmiotwa_dyskusji==0)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==1)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==2)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; return nazwa_przestrzeni_nazw_blad end; function p.Nazwa_przestrzeni_nazw(frame,kod_liczbowy_przestrzeni_nazw,czy_uwzglednic_alternatywna_nazwe,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_przestrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,numer_jednostki,1) or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,numer_jednostki); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwy_przestrzeni_nazw; local typ; if(kod_liczbowy_przestrzeni_nazw==1)then typ="przedmiotowa"; if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(kod_liczbowy_przestrzeni_nazw==2)then if(czy_biezaca_wiki)then typ="dyskusja"; czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; if(czy_blad_nazwy_przestrzeni_nazw)then return czy_blad_nazwy_przestrzeni_nazw; else if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local nazwa_przestrzeni_nazw_alternatywnej=mw.text.trim(frame.args[1]); if(mw.ustring.match(nazwa_przestrzeni_nazw_alternatywnej,"^[%w%s_]*$"))then local czy_blad_nazwa_przestrzeni_nazw_alternatywnej; if(czy_biezaca_wiki)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.NpDane(tab_parametry); end; return czy_blad_nazwa_przestrzeni_nazw_alternatywnej or "(błąd)"; else return "(błąd)"; end; else local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"]{[1]=nazwa_przestrzeni_nazw,[2]="tak",}; if(mw.ustring.match(nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; end; end; function p.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local nazwa_przestrzeni_nazw_blad; local parametry_modul=require("Module:Parametry"); if(czy_biezaca_wiki)then nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; else nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw_blad or nazwa_przestrzeni_nazw; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if(czy_biezaca_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then nazwa_przestrzeni_nazw=nazwy_np_modul.Template; end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then nazwa_przestrzeni_nazw=nazwy_np_modul.Module; end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then nazwa_przestrzeni_nazw=template_prze; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then nazwa_przestrzeni_nazw=module_prze; end; end; end; if(not nazwa_przestrzeni_nazw_blad)then if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(frame.args[1]); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then if(czy_biezaca_wiki)then local nazwy_modul=require("Module:Nazwy"); local czy_blad_nazwy_przestrzeni_nazw=nazwy_modul.Np{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} return czy_blad_nazwy_przestrzeni_nazw or "(błąd)"; else local nazwy_modul=require("Module:Nazwy"); local nazwa_przestrzeni_nazw_blad2=nazwy_modul.NpDane{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; return nazwa_przestrzeni_nazw_blad2 or "(błąd)"; end; else return "(błąd)"; end; else local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(nazwa_przestrzeni_nazw); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return wytrimowana_nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; else return nazwa_przestrzeni_nazw; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,typ) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local tab_nazwa={ ["przedmiotowa"]="Nazwa przedmiotowej przestrzeni nazw", ["dyskusja"]="Nazwa przestrzeni nazw", }; local nazwa_przestrzeni_nazw=pudelko_modul[tab_nazwa[typ]](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); if(nazwa_przestrzeni_nazw=="")then local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local tab_nazwa={ ["przedmiotowa"]="PRZEDMIOTOWAPRZESTRZEŃ", ["dyskusja"]="PRZESTRZEŃDYSKUSJI", }; nazwa_przestrzeni_nazw=nazwy_modul[tab_nazwa[typ]]{nazwa=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else if(typ=="dyskusja")then local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{[typ]="tak",nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{[typ]="tak",nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; return nazwa_przestrzeni_nazw; end; function p.Kod_jezyka(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod języka tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod języka tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka"] or frame.args["kod języka 1"] or pf.args["kod języka"] or pf.args["kod języka 1"] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka "..i] or pf.args["kod języka "..i] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Kod_projektu(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod projektu tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod projektu tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu"] or frame.args["kod projektu 1"] or pf.args["kod projektu"] or pf.args["kod projektu 1"] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu "..i] or pf.args["kod projektu "..i] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local klucz_projektu; local function domyslne_klucz(klucz_projektu) local parametry_modul=require("Module:Parametry"); return ((klucz_projektu)and(klucz_projektu~=""))and mw.text.trim(klucz_projektu)or((parametry_modul.CzyTak(wartosc_domyslna_jezyka)and(parametry_modul.CzyTak(wartosc_domyslna_projektu)))and (wartosc_domyslna_jezyka..":" ..wartosc_domyslna_projektu)or(parametry_modul.CzyTak(wartosc_domyslna_jezyka) and wartosc_domyslna_jezyka or (parametry_modul.CzyTak(wartosc_domyslna_projektu) and wartosc_domyslna_projektu or nil))); end; if(i==0)then return nil; elseif(i==1)then local klucz_projektu=frame.args["klucz projektu"] or frame.args["klucz projektu 1"] or pf.args["klucz projektu"] or pf.args["klucz projektu 1"]; return domyslne_klucz(klucz_projektu); elseif(i>1)then local klucz_projektu=frame.args["klucz projektu "..i] or pf.args["klucz projektu "..i]; return domyslne_klucz(klucz_projektu); end; end; function p.Wikikody_kontenera(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu),p.Kod_jezyka(frame,i,wartosc_domyslna_jezyka),p.Kod_projektu(frame,i,wartosc_domyslna_projektu)); return kod_jezyka,kod_projektu; end; function p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,args,bez_analizy) if(not bez_analizy)then local parametry_modul=require("Module:Parametry"); if((((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł")or(typ=="podręcznik")))or (typ=="artykuł")))then return ""; elseif(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci")))or(typ=="artykuł dla dzieci"))then return "Wikijunior"; elseif((not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"])) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki brudnopisu projektu"])and (typ=="podręcznik brudnopisu projektu" or typ=="artykuł brudnopisu projektu")or (typ=="jednostka brudnopisu projektu")) or (typ=="strona brudnopisu projektu"))or(typ=="strona projektu"))or (typ=="strona projektu"))then return "Project"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona szablonu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))or(typ=="strona brudnopisu szablonu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona szablonu")or(typ=="strona opisu szablonu"))or(typ=="strona szablonu"))))then return "Template"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona modułu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))or(typ=="strona brudnopisu modułu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona modułu")or(typ=="strona opisu modułu"))or(typ=="strona modułu"))))then return "Module"; elseif(not parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika jako normalne strony"]) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika"])and (typ=="podręcznik użytkownika" or typ=="artykuł użytkownika") or (typ=="jednostka użytkownika")) or (typ=="strona użytkownika"))or(typ=="strona główna użytkownika"))or(typ=="strona użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; return; end; if(typ)then if((typ=="artykuł")or(typ=="podręcznik"))then return ""; elseif((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci"))then return "Wikijunior"; elseif((typ=="podręcznik brudnopisu projektu")or(typ=="artykuł brudnopisu projektu")or(typ=="jednostka brudnopisu projektu")or(typ=="strona brudnopisu projektu")or(typ=="strona projektu"))then return "Project"; elseif((typ=="strona szablonu")or(typ=="strona opisu szablonu")or(typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))then return "Template"; elseif((typ=="strona modułu")or(typ=="strona opisu modułu")or(typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))then return "Module"; elseif((typ=="podręcznik użytkownika")or(typ=="artykuł użytkownika")or(typ=="jednostka użytkownika")or(typ=="strona użytkownika")or(typ=="strona główna użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; end; end; function p.Typ_jednostki_uzyskany_z_frame(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local pf=frame.getParent and frame:getParent() or {args={}}; local typ; if liczba_numer_jednostki~=0 then typ=liczba_numer_jednostki and( (frame.args["typ jednostki "..liczba_numer_jednostki] or frame.args["typ jednostki i"]) or (pf.args["typ jednostki "..liczba_numer_jednostki] or pf.args["typ jednostki i"]) ); if(not typ)then local nazwa_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,2); if(nazwa_jednostki)then if(not mw.ustring.match(mw.text.trim(nazwa_jednostki),"^:"))then local nazwa_przesrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,1); if(not nazwa_przesrzeni_nazw)then typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; end; end; end; else typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; return typ,liczba_numer_jednostki; end; function p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i) local typ,liczba_numer_jednostki,ile_dyskusja=p.Typ_jednostki_uzyskany_z_frame(frame,i); local pf=frame.getParent and frame:getParent() or {args={},}; local function FuncTemp(liczba_numer_jednostki) local dyskusja_parametr="dyskusja typu jednostki"; if(liczba_numer_jednostki==0)then return frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr]; else return ((frame.args[dyskusja_parametr.." "..liczba_numer_jednostki] or pf.args[dyskusja_parametr.." "..liczba_numer_jednostki]) or (frame.args[dyskusja_parametr.." i"] or pf.args[dyskusja_parametr.." i"]) or(frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr])); end; end; local czy_dyskusja=FuncTemp(liczba_numer_jednostki); local parametry_modul=require("Module:Parametry"); local czy_dyskusja=parametry_modul.CzyTak(czy_dyskusja); return czy_dyskusja; end; function p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i) local typ=p.Typ_jednostki_uzyskany_z_frame(frame,i); if(typ)then local typ,ile=mw.ustring.gsub(typ,"^(%S+)(%s+)(dyskusji)",function(strona,spacja,dyskusji)return strona;end); local nazwa_przestrzeni_nazw=p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,nil,true); if(nazwa_przestrzeni_nazw)then local czy_dyskusja=p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i); if((czy_dyskusja)or(ile>0))then if(nazwa_przestrzeni_nazw=="")then return "Talk"; else return nazwa_przestrzeni_nazw.." talk"; end; else return nazwa_przestrzeni_nazw; end; else return nil; end; end; return nil; end; function p.Typ_jednostki(frame, kod_liczbowy_przestrzeni_nazw,i,numer_argorytmu) if(frame.args["obsługiwane jednostki użytkownika jako normalne strony"])then local i=1/0;--wywołanie błędu; end; local parametry_modul=require("Module:Parametry"); local analiza=parametry_modul.CzyTak(frame.args["analiza"]); local typ,liczba_numer_jednostki=p.Typ_jednostki_uzyskany_z_frame(frame,i); local uzyskana_przestrzen_nazw_od_typu_jednostki; local nazwa_przestrzeni_nazw_podana,nazwa_jednostki_podana=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki); local function TempFunc(typ_jednostki,nazwa_przestrzeni_nazw) if( (kod_liczbowy_przestrzeni_nazw==2) or( (kod_liczbowy_przestrzeni_nazw==0) and( typ and (p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i)) or( (nazwa_przestrzeni_nazw) and (mw.ustring.match(nazwa_przestrzeni_nazw,"^Talk$") or mw.ustring.match(nazwa_przestrzeni_nazw," talk$")) or nil ) ) ) )then if(not mw.ustring.match(typ_jednostki,"^(%S+)(%s+)(dyskusji)"))then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)",function(strona) return strona.." dyskusji"; end); end; return typ_jednostki; elseif(kod_liczbowy_przestrzeni_nazw==1)then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)(%s+)(dyskusji)",function(strona,spacje,dyskusji) return strona; end); return typ_jednostki; end; return typ_jednostki; end; if((not analiza)and(typ))then if(typ~="")then uzyskana_przestrzen_nazw_od_typu_jednostki=p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i); if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((not nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then return TempFunc(typ,nil); end; else return "(błąd typu jednostki)"; end; end; end; local nazwa_przestrzeni_nazw,nazwa_jednostki=p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw,nil,liczba_numer_jednostki,numer_argorytmu); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwa_przestrzeni_nazw; if(czy_biezaca)then czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} else czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} end; if(not czy_blad_nazwa_przestrzeni_nazw)then return "(błąd nazwy przestrzeni nazw)";end; nazwa_przestrzeni_nazw=czy_blad_nazwa_przestrzeni_nazw; --- --- if((not analiza)and(typ))then if(typ~="")then ---typ jednostki if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then if(uzyskana_przestrzen_nazw_od_typu_jednostki==nazwa_przestrzeni_nazw)then return typ; else return "(błąd niezgodności)"; end; end; else return "(błąd typu jednostki)"; end; end; end; local function Typ_jednostki() if(nazwa_jednostki~="")then --local kod_jezyka,kod_projektu=KodyWikiPudelka(frame,liczba_numer_jednostki); --local klucz_projektu=kod_projektu..":"..kod_jezyka; local pudelko_modul=require("Module:Pudełko"); local pelna_nazwa_strony=((nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":" or "")..nazwa_jednostki; if(pudelko_modul.CzyNiepoprawnaNazwa(pelna_nazwa_strony))then return "(błąd nazwy jednostki)";end; local nazwy_modul=require("Module:Nazwy") pelna_nazwa_strony=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local norm_przed_lub_dyskusji=p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw,1,kod_jezyka,kod_projektu); if(kod_projektu==pudelko_modul["Kod projektu tego projektu"]())then local nazwa_strony_glownej_dla_dzieci_ze_zmiennej=p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka); if(nazwa_strony_glownej_dla_dzieci_ze_zmiennej=="")then return "(błąd nazwy strony głównej dla dzieci)";end; local nazwa_strony_glownej_wikijuniora=p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka); local nazwa_strony_glownej_dla_dzieci_uzyskana=(not nazwa_strony_glownej_dla_dzieci_ze_zmiennej)and nazwa_strony_glownej_wikijuniora or nazwa_strony_glownej_dla_dzieci_ze_zmiennej; if(nazwa_strony_glownej_dla_dzieci_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_dla_dzieci_uzyskana))then return "(błąd nazwy strony głównej dla dzieci)";end; nazwa_strony_glownej_dla_dzieci_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_dla_dzieci_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_dla_dzieci_uzyskana)then return "strona główna dla dzieci";end; end; end; local nazwa_strony_glownej_projektu_ze_zmiennej=p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka,kod_projektu); if(nazwa_strony_glownej_projektu_ze_zmiennej=="")then return "(błąd nazwy strony głównej projektu)";end; local nazwa_strony_glownej_projektu_z_wikidanych=p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu); local nazwa_strony_glownej_projektu_uzyskana=(not nazwa_strony_glownej_projektu_ze_zmiennej)and nazwa_strony_glownej_projektu_z_wikidanych or nazwa_strony_glownej_projektu_ze_zmiennej; if(nazwa_strony_glownej_projektu_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_projektu_uzyskana))then return "(błąd nazwy strony głównej projektu)";end; nazwa_strony_glownej_projektu_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_projektu_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_projektu_uzyskana)then return "strona główna projektu";end; end; if(norm_przed_lub_dyskusji=="")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik";else return "artykuł";end; end; elseif(norm_przed_lub_dyskusji=="Wikijunior")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł dla dzieci"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik dla dzieci";else return "artykuł dla dzieci";end; end; elseif(norm_przed_lub_dyskusji=="User")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane indywidua użytkownika jako normalne strony"]))then return "strona użytkownika"; else local czy_podstrony=mw.ustring.match(nazwa_jednostki,"^[^/]+$") if(czy_podstrony)then return "strona główna użytkownika"; else if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki użytkownika"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^[^/]+/[^/]*$"); if(czy_ksiazka)then return "podręcznik użytkownika"; else return "artykuł użytkownika"; end; else return "jednostka użytkownika"; end; else return "strona użytkownika"; end; end; end; elseif(norm_przed_lub_dyskusji=="File")then return "strona pliku"; elseif(norm_przed_lub_dyskusji=="Category")then return "strona kategorii"; elseif(norm_przed_lub_dyskusji=="Project")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))then return "strona projektu";end; if(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*"))then if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki brudnopisu projektu"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/[^/]*$"); if(czy_ksiazka)then return "podręcznik brudnopisu projektu"; else return "artykuł brudnopisu projektu"; end; else return "jednostka brudnopisu projektu"; end; else return "strona brudnopisu projektu"; end; else return "strona projektu"; end; elseif(norm_przed_lub_dyskusji=="Help")then return "strona pomocy"; elseif(norm_przed_lub_dyskusji=="MediaWiki")then return "strona komunikatu"; elseif(norm_przed_lub_dyskusji=="Special")then return "strona specialna"; elseif(norm_przed_lub_dyskusji=="Gadget")then return "strona gadżetu"; elseif(norm_przed_lub_dyskusji=="Template")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona szablonu";end; local function CzySzablonAlboOpis(nazwa_przestrzeni_nazw,nazwa_jednostki,szablon,opis_szablonu,strona_szablonu,prefix) local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return szablon; else if(mw.ustring.match(nazwa_jednostki,"^"..prefix..".*/opis$"))then return opis_szablonu; else if(not parametry_modul.CzyTak(frame.args["obsługiwane nieudokumentowane szablony jako szablony"]))then local czy_brudnopis=mw.ustring.match(nazwa_jednostki,"^"..prefix..".*$"); if(czy_brudnopis)then local pagename=(nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa_jednostki or nazwa_jednostki; local czy_istnieje_strona,tab=require("Module:Techniczne").PoliczZbiory(pagename); if(czy_istnieje_strona==1)then local czy_brudnopis_opisu_szablonu=require("Module:Łatki").contentMatch{ [1]='<noinclude>.-{{%s*[Dd]okumentacja%s*}}.-</noinclude>', [2]='<noinclude>.-{{%s*[Dd]okumentacja%s*|.-</noinclude>',pagename=pagename,namespace=0 }; if(not czy_brudnopis_opisu_szablonu)then return opis_szablonu;else return szablon;end; else return szablon; end; else return strona_szablonu; end; else return szablon; end; end; end; end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona brudnopisu szablonu","strona brudnopisu opisu szablonu","strona szablonu","[Bb]rudnopis/[^/]*/"); else return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona szablonu","strona opisu szablonu","strona szablonu",""); end; elseif(norm_przed_lub_dyskusji=="Module")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona modułu";end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona brudnopisu modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_strony_brudnopisu_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_strony_brudnopisu_opisu_modulu)then return "strona brudnopisu opisu modułu"; else return "strona brudnopisu modułu"; end; end; else if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_opisu_modulu)then return "strona opisu modułu"; else return "strona modułu"; end; end; end; else return "inne"; end; end; return "inne"; end; local typ_jednostki=Typ_jednostki(); if(((analiza)or(nazwa_jednostki_podana))and(typ)and(typ~=""))then typ_jednostki=TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); if(typ_jednostki==typ)then return typ_jednostki; elseif(nazwa_jednostki_podana)then return "(błąd parametrów pudełkowych)" else return "(błąd typu jednostki)"; end; end; return TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); end; function p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki,czy_uwzglednic_alternatywna_nazwe,i,numer_argorytmu,co_ma_liczyc) local nazwa_przestrzeni_fun,nazwa_jednostki_fun; if(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==0)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==1)then nazwa_przestrzeni_fun="Nazwa przedmiotowej przestrzeni nazw"; nazwa_jednostki_fun="Nazwa przedmiotowa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==2)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw dyskusji" nazwa_jednostki_fun="Nazwa dyskusji jednostki"; else nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; end; local pudelko_modul=require("Module:Pudełko"); if(not numer_argorytmu)then local function TempFunc() return ((not i)or(i==0)); end; if((not co_ma_liczyc)or(co_ma_liczyc==0))then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=(czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then local czy_i_0=TempFunc(); return (czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; else if(numer_argorytmu==0)then if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul["Nazwa jednostki"](frame,i); end; else if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; end; end; end; function p.Nazwa_przestrzeni_nazw_dodatkowe(frame,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; return frame.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] or pf.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] end; function p.Nazwa_jednostki(frame,i) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,2); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); if(nazwa_jednostki)then nazwa_jednostki=mw.text.trim(nazwa_jednostki); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^:",""); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else local nazwy_modul=require("Module:Nazwy"); nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); end; function p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,co_podac) local pf=frame.getParent and frame:getParent() or {args={}}; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local nazwa_jednostki; local bool_numer_jednostki=(liczba_numer_jednostki~=0); local function Nazwa_jednostki() if bool_numer_jednostki then nazwa_jednostki=( frame.args["nazwa jednostki "..liczba_numer_jednostki] or pf.args["nazwa jednostki "..liczba_numer_jednostki] ) or ((liczba_numer_jednostki==1)and(pf.args["cel"])) or pf.args[liczba_numer_jednostki]; else nazwa_jednostki=frame.args["nazwa jednostki"] or pf.args["nazwa jednostki"]; end; return nazwa_jednostki; end; local function Nazwa_przestrzeni_nazw() local nazwa_przestrzeni_nazw=bool_numer_jednostki and (frame.args["nazwa przestrzeni nazw i"] or pf.args["nazwa przestrzeni nazw i"] or frame.args["nazwa przestrzeni nazw "..liczba_numer_jednostki] or pf.args["nazwa przestrzeni nazw "..liczba_numer_jednostki]) or frame.args["nazwa przestrzeni nazw"] or pf.args["nazwa przestrzeni nazw"]; return nazwa_przestrzeni_nazw; end; if(not co_podac)then return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; elseif(co_podac==1)then return Nazwa_przestrzeni_nazw(),liczba_numer_jednostki; elseif(co_podac==2)then return Nazwa_jednostki(),liczba_numer_jednostki; else return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; end; end; function p.Jaka_nazwa_jednostki(frame,i,jaka) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); ---- local nazwy_modul=require("Module:Nazwy"); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka)then if(czy_biezaca)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.NpDane(tab_parametry); end; else if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if((not typ)or(typ=="przedmiotowa"))then if(czy_biezaca)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Czy_przestrzen_nazw_jest_obslugiwana(frame,jakas_przestrzen_nazw,kod_jezyka,kod_projektu) local nazwy_modul=require("Module:Nazwy"); local parametry_modul=require("Module:Parametry"); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then jakas_przestrzen_nazw=nazwy_modul.Np{nazwa=jakas_przestrzen_nazw}; else jakas_przestrzen_nazw=nazwy_modul.NpDane{nazwa=jakas_przestrzen_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local function nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_iter) if(czy_biezaca)then nazwa_przestrzeni_nazw_iter=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw_iter}; else nazwa_przestrzeni_nazw_iter=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw_iter,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; if(jakas_przestrzen_nazw==nazwa_przestrzeni_nazw_iter)then return true; end; return false; end; for licznik,nazwa_przestrzeni_nazw in pairs(frame.args)do if(type(licznik)=="number")then local nazwa_przestrzeni_nazw_element,klucze_element=mw.ustring.match(nazwa_przestrzeni_nazw,"^%s*([%w%s]*)%s*:%s*(.-)%s*"); if(nazwa_przestrzeni_nazw_element and klucze_element)then local tab_klucze=mw.text.split(klucze_element,"%s*,%s*",false); local wiki_modul=require("Module:Wiki"); for _,klucz_element in ipairs(tab_klucze)do local kod_jezyka_obslugiwane,kod_projektu_obslugiwane=wiki_modul.KluczProjektu(klucz_element); if(kod_jezyka_obslugiwane==kod_jezyka and kod_projektu_obslugiwane==kod_projektu)then local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_element); if(wynik)then return true;end; end; end; else local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw); if(wynik)then return true;end; end; end; end; return false; end; function p.Analiza_interwiki_czy_projekt_aktualny(frame,czy_jezyk,czy_projekt) local parametry_modul=require("Module:Parametry"); local p=parametry_modul.PobierzFrameEwentualnieParent(frame); local pudelko_modul=require("Module:Pudełko"); local wiki_modul=require("Module:Wiki"); local jezyk_biezacy=czy_jezyk and pudelko_modul["Kod języka tego projektu"](); local projekt_biezacy=czy_projekt and pudelko_modul["Kod projektu tego projektu"](); for i,_ in pairs(p.args)do if(type(i)=="number")then local klucz_projektu=pudelko_modul["Klucz projektu"](frame,i); local kod_jezyka=pudelko_modul["Kod języka"](frame,i); local kod_projektu=pudelko_modul["kod projektu"](frame,i); local jezyk,projekt=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu); if((czy_jezyk and (jezyk~=jezyk_biezacy))or(czy_projekt and(projekt~=projekt_biezacy)))then return "tak"; end; end; end; return; end; return p; 9konfwjnhzmyyocisp1ihldgz4d5vt4 540952 540950 2026-04-27T10:55:59Z Persino 2851 540952 Scribunto text/plain local p={}; function p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu) local strona=require("Module:Pudełko")["Strona główna tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else local pudelko_modul=require("Module:Pudełko"); if((kod_jezyka==pudelko_modul["Kod języka tego projektu"]())and(kod_projektu==pudelko_modul["Kod projektu tego projektu"]()))then return strona; else local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki"); local czy_w_wikidanych=wiki_interwiki_modul.tablica_kody_projektu_wikidane.lingwistyczne[kod_projektu] or wiki_interwiki_modul.tablica_kody_projektu_wikidane.specjalistyczne[kod_projektu]; return czy_w_wikidanych and "Main Page" or nil; end; end; end; function p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka) local strona=require("Module:Pudełko")["Strona główna dla dzieci tego projektu"](); local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then return strona;end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local odpowiednik_strony=require("Module:Wiki").WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu}; if(odpowiednik_strony)then local nazwy_modul=require("Module:Nazwy"); return nazwy_modul["PEŁNANAZWASTRONY"]{[1]=odpowiednik_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,}; else return "Wikijunior"; end; end; function p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,i,kod_jezyka,kod_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local strona_glowna_projektu; if(i~=0)then local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)and(kod_projektu==kod_projektu_tego_projektu)then strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] else strona_glowna_projektu=(frame.args["strona główna projektu "..i] or pf.args["strona główna projektu "..i]) end; else strona_glowna_projektu=frame.args["strona główna projektu"] or pf.args["strona główna projektu"] end; local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_projektu))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or (strona_glowna_projektu and "" or nil); end; function p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,i,kod_jezyka) local pf=frame.getParent and frame:getParent() or {args={}}; local pudelko_modul=require("Module:Pudełko"); local strona_glowna_dla_dzieci; if(i~=0)then local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); if(kod_jezyka==kod_jezyka_tego_projektu)then strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] else strona_glowna_dla_dzieci=(frame.args["strona główna dla dzieci "..i] or pf.args["strona główna dla dzieci "..i]) end; else strona_glowna_dla_dzieci=frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"] end; local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); local parametry_modul=require("Module:Parametry"); return (parametry_modul.CzyTak(strona_glowna_dla_dzieci))and require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=strona_glowna_dla_dzieci,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu_tego_projektu,} or (strona_glowna_dla_dzieci and "" or nil); end; function p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw, normmalna_przedmiotwa_dyskusji,kod_jezyka,kod_projektu) local nazwa_przestrzeni_nazw_blad; local wiki_modul=require("Module:Wiki"); local nazwy_modul=require("Module:Nazwy"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(normmalna_przedmiotwa_dyskusji==0)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==1)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(normmalna_przedmiotwa_dyskusji==2)then if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca)then nazwa_przestrzeni_nazw_blad=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else nazwa_przestrzeni_nazw_blad=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; return nazwa_przestrzeni_nazw_blad end; function p.Nazwa_przestrzeni_nazw(frame,kod_liczbowy_przestrzeni_nazw,czy_uwzglednic_alternatywna_nazwe,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_przestrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,numer_jednostki,1) or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,numer_jednostki); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwy_przestrzeni_nazw; local typ; if(kod_liczbowy_przestrzeni_nazw==1)then typ="przedmiotowa"; if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; elseif(kod_liczbowy_przestrzeni_nazw==2)then if(czy_biezaca_wiki)then typ="dyskusja"; czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["PRZESTRZEŃDYSKUSJI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,dyskusja="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; else if(czy_biezaca_wiki)then czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]() or nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwy_przestrzeni_nazw=(not nazwa_przestrzeni_nazw)and nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,} or nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka, ["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; end; if(czy_blad_nazwy_przestrzeni_nazw)then return czy_blad_nazwy_przestrzeni_nazw; else if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local nazwa_przestrzeni_nazw_alternatywnej=mw.text.trim(frame.args[1]); if(mw.ustring.match(nazwa_przestrzeni_nazw_alternatywnej,"^[%w%s_]*$"))then local czy_blad_nazwa_przestrzeni_nazw_alternatywnej; if(czy_biezaca_wiki)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw_alternatywnej,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(typ)then tab_parametry[typ]="tak";end; czy_blad_nazwa_przestrzeni_nazw_alternatywnej=nazwy_modul.NpDane(tab_parametry); end; return czy_blad_nazwa_przestrzeni_nazw_alternatywnej or "(błąd)"; else return "(błąd)"; end; else local parametry_modul=require("Module:Parametry"); nazwa_przestrzeni_nazw=parametry_modul["Odstępy"]{[1]=nazwa_przestrzeni_nazw,[2]="tak",}; if(mw.ustring.match(nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; end; end; function p.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local nazwa_przestrzeni_nazw_blad; local parametry_modul=require("Module:Parametry"); if(czy_biezaca_wiki)then nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").Np{nazwa=nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; else nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; nazwa_przestrzeni_nazw_blad=require("Module:Nazwy").NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw_blad or nazwa_przestrzeni_nazw; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if(czy_biezaca_wiki)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then nazwa_przestrzeni_nazw=nazwy_np_modul.Template; end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=require("Module:Nazwy")["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then nazwa_przestrzeni_nazw=nazwy_np_modul.Module; end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then nazwa_przestrzeni_nazw=template_prze; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then nazwa_przestrzeni_nazw=module_prze; end; end; end; if(not nazwa_przestrzeni_nazw_blad)then if(((czy_uwzglednic_alternatywna_nazwe==nil)and true or czy_uwzglednic_alternatywna_nazwe) and frame.args[1])then local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(frame.args[1]); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then if(czy_biezaca_wiki)then local nazwy_modul=require("Module:Nazwy"); local czy_blad_nazwy_przestrzeni_nazw=nazwy_modul.Np{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} return czy_blad_nazwy_przestrzeni_nazw or "(błąd)"; else local nazwy_modul=require("Module:Nazwy"); local nazwa_przestrzeni_nazw_blad2=nazwy_modul.NpDane{nazwa=wytrimowana_nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; return nazwa_przestrzeni_nazw_blad2 or "(błąd)"; end; else return "(błąd)"; end; else local wytrimowana_nazwa_przestrzeni_nazw=mw.text.trim(nazwa_przestrzeni_nazw); if(mw.ustring.match(wytrimowana_nazwa_przestrzeni_nazw,"^[%w%s_]*$"))then return wytrimowana_nazwa_przestrzeni_nazw; else return "(błąd)"; end; end; else return nazwa_przestrzeni_nazw; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return require("Module:Nazwy")["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,typ) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); local tab_nazwa={ ["przedmiotowa"]="Nazwa przedmiotowej przestrzeni nazw", ["dyskusja"]="Nazwa przestrzeni nazw", }; local nazwa_przestrzeni_nazw=pudelko_modul[tab_nazwa[typ]](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwy_modul=require("Module:Nazwy"); if(nazwa_przestrzeni_nazw=="")then local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local tab_nazwa={ ["przedmiotowa"]="PRZEDMIOTOWAPRZESTRZEŃ", ["dyskusja"]="PRZESTRZEŃDYSKUSJI", }; nazwa_przestrzeni_nazw=nazwy_modul[tab_nazwa[typ]]{nazwa=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; else if(typ=="dyskusja")then local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{[typ]="tak",nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{[typ]="tak",nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; return nazwa_przestrzeni_nazw; end; function p.Kod_jezyka(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod języka tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod języka tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka"] or frame.args["kod języka 1"] or pf.args["kod języka"] or pf.args["kod języka 1"] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_jezyka=frame.args["kod języka "..i] or pf.args["kod języka "..i] return ((kod_jezyka)and(kod_jezyka~=""))and mw.text.trim(kod_jezyka) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Kod_projektu(frame,i,wartosc_domyslna) local pudelko_modul=require("Module:Pudełko"); if(not i)then return pudelko_modul["Kod projektu tego projektu"]();end; local pf=frame.getParent and frame:getParent() or {args={}}; if(i==0)then return pudelko_modul["Kod projektu tego projektu"](); elseif(i==1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu"] or frame.args["kod projektu 1"] or pf.args["kod projektu"] or pf.args["kod projektu 1"] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); elseif(i>1)then local parametry_modul=require("Module:Parametry"); local kod_projektu=frame.args["kod projektu "..i] or pf.args["kod projektu "..i] return ((kod_projektu)and(kod_projektu~=""))and mw.text.trim(kod_projektu) or ((parametry_modul.CzyTak(wartosc_domyslna))and wartosc_domyslna or nil); end; end function p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local pf=frame.getParent and frame:getParent() or {args={}}; local klucz_projektu; local function domyslne_klucz(klucz_projektu) local parametry_modul=require("Module:Parametry"); return ((klucz_projektu)and(klucz_projektu~=""))and mw.text.trim(klucz_projektu)or((parametry_modul.CzyTak(wartosc_domyslna_jezyka)and(parametry_modul.CzyTak(wartosc_domyslna_projektu)))and (wartosc_domyslna_jezyka..":" ..wartosc_domyslna_projektu)or(parametry_modul.CzyTak(wartosc_domyslna_jezyka) and wartosc_domyslna_jezyka or (parametry_modul.CzyTak(wartosc_domyslna_projektu) and wartosc_domyslna_projektu or nil))); end; if(i==0)then return nil; elseif(i==1)then local klucz_projektu=frame.args["klucz projektu"] or frame.args["klucz projektu 1"] or pf.args["klucz projektu"] or pf.args["klucz projektu 1"]; return domyslne_klucz(klucz_projektu); elseif(i>1)then local klucz_projektu=frame.args["klucz projektu "..i] or pf.args["klucz projektu "..i]; return domyslne_klucz(klucz_projektu); end; end; function p.Wikikody_kontenera(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu) local wiki_modul=require("Module:Wiki"); local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(p.Klucz_projektu(frame,i,wartosc_domyslna_jezyka,wartosc_domyslna_projektu),p.Kod_jezyka(frame,i,wartosc_domyslna_jezyka),p.Kod_projektu(frame,i,wartosc_domyslna_projektu)); return kod_jezyka,kod_projektu; end; function p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,args,bez_analizy) if(not bez_analizy)then local parametry_modul=require("Module:Parametry"); if((((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł")or(typ=="podręcznik")))or (typ=="artykuł")))then return ""; elseif(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci")))or(typ=="artykuł dla dzieci"))then return "Wikijunior"; elseif((not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"])) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki brudnopisu projektu"])and (typ=="podręcznik brudnopisu projektu" or typ=="artykuł brudnopisu projektu")or (typ=="jednostka brudnopisu projektu")) or (typ=="strona brudnopisu projektu"))or(typ=="strona projektu"))or (typ=="strona projektu"))then return "Project"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona szablonu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))or(typ=="strona brudnopisu szablonu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]) and not parametry_modul.CzyTak(args["obsługiwane nieudokumentowane szablony jako szablony"])) and((typ=="strona szablonu")or(typ=="strona opisu szablonu"))or(typ=="strona szablonu"))))then return "Template"; elseif((parametry_modul.CzyTak(args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))and (typ=="strona modułu") or(not parametry_modul.CzyTak(args["obsługiwane brudnopisy jako normalne strony"]) and((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))or(typ=="strona brudnopisu modułu")) or((not parametry_modul.CzyTak(args["obsługiwane opisy jako strony jednostek programowych"]) and not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"])) and((typ=="strona modułu")or(typ=="strona opisu modułu"))or(typ=="strona modułu"))))then return "Module"; elseif(not parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika jako normalne strony"]) and(((not parametry_modul.CzyTak(args["obsługiwane jednostki jako nieopisowe strony"]))and(parametry_modul.CzyTak(args["obsługiwane jednostki użytkownika"])and (typ=="podręcznik użytkownika" or typ=="artykuł użytkownika") or (typ=="jednostka użytkownika")) or (typ=="strona użytkownika"))or(typ=="strona główna użytkownika"))or(typ=="strona użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; return; end; if(typ)then if((typ=="artykuł")or(typ=="podręcznik"))then return ""; elseif((typ=="artykuł dla dzieci")or(typ=="podręcznik dla dzieci"))then return "Wikijunior"; elseif((typ=="podręcznik brudnopisu projektu")or(typ=="artykuł brudnopisu projektu")or(typ=="jednostka brudnopisu projektu")or(typ=="strona brudnopisu projektu")or(typ=="strona projektu"))then return "Project"; elseif((typ=="strona szablonu")or(typ=="strona opisu szablonu")or(typ=="strona brudnopisu szablonu")or(typ=="strona brudnopisu opisu szablonu"))then return "Template"; elseif((typ=="strona modułu")or(typ=="strona opisu modułu")or(typ=="strona brudnopisu modułu")or(typ=="strona brudnopisu opisu modułu"))then return "Module"; elseif((typ=="podręcznik użytkownika")or(typ=="artykuł użytkownika")or(typ=="jednostka użytkownika")or(typ=="strona użytkownika")or(typ=="strona główna użytkownika"))then return "User"; elseif(typ=="strona pliku")then return "File"; elseif(typ=="strona kategorii")then return "Category"; elseif(typ=="strona pomocy")then return "Help"; elseif(typ=="strona komunikatu")then return "MediaWiki"; elseif(typ=="strona specjalna")then return "Special"; elseif(typ=="strona gadżetu")then return "Gadget"; elseif(typ=="strona główna projektu")then return "Project"; elseif(typ=="strona główna dla dzieci")then return "Wikijunior"; end; end; end; function p.Typ_jednostki_uzyskany_z_frame(frame,i) local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local pf=frame.getParent and frame:getParent() or {args={}}; local typ; if liczba_numer_jednostki~=0 then typ=liczba_numer_jednostki and( (frame.args["typ jednostki "..liczba_numer_jednostki] or frame.args["typ jednostki i"]) or (pf.args["typ jednostki "..liczba_numer_jednostki] or pf.args["typ jednostki i"]) ); if(not typ)then local nazwa_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,2); if(nazwa_jednostki)then if(not mw.ustring.match(mw.text.trim(nazwa_jednostki),"^:"))then local nazwa_przesrzeni_nazw=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki,1); if(not nazwa_przesrzeni_nazw)then typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; end; end; end; else typ=frame.args["typ jednostki"] or pf.args["typ jednostki"]; end; return typ,liczba_numer_jednostki; end; function p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i) local typ,liczba_numer_jednostki,ile_dyskusja=p.Typ_jednostki_uzyskany_z_frame(frame,i); local pf=frame.getParent and frame:getParent() or {args={},}; local function FuncTemp(liczba_numer_jednostki) local dyskusja_parametr="dyskusja typu jednostki"; if(liczba_numer_jednostki==0)then return frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr]; else return ((frame.args[dyskusja_parametr.." "..liczba_numer_jednostki] or pf.args[dyskusja_parametr.." "..liczba_numer_jednostki]) or (frame.args[dyskusja_parametr.." i"] or pf.args[dyskusja_parametr.." i"]) or(frame.args[dyskusja_parametr] or pf.args[dyskusja_parametr])); end; end; local czy_dyskusja=FuncTemp(liczba_numer_jednostki); local parametry_modul=require("Module:Parametry"); local czy_dyskusja=parametry_modul.CzyTak(czy_dyskusja); return czy_dyskusja; end; function p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i) local typ=p.Typ_jednostki_uzyskany_z_frame(frame,i); if(typ)then local typ,ile=mw.ustring.gsub(typ,"^(%S+)(%s+)(dyskusji)",function(strona,spacja,dyskusji)return strona;end); local nazwa_przestrzeni_nazw=p.Nazwa_przestrzeni_nazw_od_typu_jednostki(typ,nil,true); if(nazwa_przestrzeni_nazw)then local czy_dyskusja=p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i); if((czy_dyskusja)or(ile>0))then if(nazwa_przestrzeni_nazw=="")then return "Talk"; else return nazwa_przestrzeni_nazw.." talk"; end; else return nazwa_przestrzeni_nazw; end; else return nil; end; end; return nil; end; function p.Typ_jednostki(frame, kod_liczbowy_przestrzeni_nazw,i,numer_argorytmu) local parametry_modul=require("Module:Parametry"); local analiza=parametry_modul.CzyTak(frame.args["analiza"]); local typ,liczba_numer_jednostki=p.Typ_jednostki_uzyskany_z_frame(frame,i); local uzyskana_przestrzen_nazw_od_typu_jednostki; local nazwa_przestrzeni_nazw_podana,nazwa_jednostki_podana=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,liczba_numer_jednostki); local function TempFunc(typ_jednostki,nazwa_przestrzeni_nazw) if( (kod_liczbowy_przestrzeni_nazw==2) or( (kod_liczbowy_przestrzeni_nazw==0) and( typ and (p.Czy_dyskusja_typu_jednostki_z_frame_od_dyskusja_typu_jednostki(frame,i)) or( (nazwa_przestrzeni_nazw) and (mw.ustring.match(nazwa_przestrzeni_nazw,"^Talk$") or mw.ustring.match(nazwa_przestrzeni_nazw," talk$")) or nil ) ) ) )then if(not mw.ustring.match(typ_jednostki,"^(%S+)(%s+)(dyskusji)"))then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)",function(strona) return strona.." dyskusji"; end); end; return typ_jednostki; elseif(kod_liczbowy_przestrzeni_nazw==1)then typ_jednostki,ile=mw.ustring.gsub(typ_jednostki,"^(%S+)(%s+)(dyskusji)",function(strona,spacje,dyskusji) return strona; end); return typ_jednostki; end; return typ_jednostki; end; if((not analiza)and(typ))then if(typ~="")then uzyskana_przestrzen_nazw_od_typu_jednostki=p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,i); if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((not nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then return TempFunc(typ,nil); end; else return "(błąd typu jednostki)"; end; end; end; local nazwa_przestrzeni_nazw,nazwa_jednostki=p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw,nil,liczba_numer_jednostki,numer_argorytmu); local nazwy_modul=require("Module:Nazwy"); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwa_przestrzeni_nazw; if(czy_biezaca)then czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} else czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",} end; if(not czy_blad_nazwa_przestrzeni_nazw)then return "(błąd nazwy przestrzeni nazw)";end; nazwa_przestrzeni_nazw=czy_blad_nazwa_przestrzeni_nazw; --- --- if((not analiza)and(typ))then if(typ~="")then ---typ jednostki if(uzyskana_przestrzen_nazw_od_typu_jednostki)then if((nazwa_przestrzeni_nazw_podana)and(not nazwa_jednostki_podana))then if(uzyskana_przestrzen_nazw_od_typu_jednostki==nazwa_przestrzeni_nazw)then return typ; else return "(błąd niezgodności)"; end; end; else return "(błąd typu jednostki)"; end; end; end; local function Typ_jednostki() if(nazwa_jednostki~="")then --local kod_jezyka,kod_projektu=KodyWikiPudelka(frame,liczba_numer_jednostki); --local klucz_projektu=kod_projektu..":"..kod_jezyka; local pudelko_modul=require("Module:Pudełko"); local pelna_nazwa_strony=((nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":" or "")..nazwa_jednostki; if(pudelko_modul.CzyNiepoprawnaNazwa(pelna_nazwa_strony))then return "(błąd nazwy jednostki)";end; local nazwy_modul=require("Module:Nazwy") pelna_nazwa_strony=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local norm_przed_lub_dyskusji=p.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(nazwa_przestrzeni_nazw,1,kod_jezyka,kod_projektu); if(kod_projektu==pudelko_modul["Kod projektu tego projektu"]())then local nazwa_strony_glownej_dla_dzieci_ze_zmiennej=p.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka); if(nazwa_strony_glownej_dla_dzieci_ze_zmiennej=="")then return "(błąd nazwy strony głównej dla dzieci)";end; local nazwa_strony_glownej_wikijuniora=p.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka); local nazwa_strony_glownej_dla_dzieci_uzyskana=(not nazwa_strony_glownej_dla_dzieci_ze_zmiennej)and nazwa_strony_glownej_wikijuniora or nazwa_strony_glownej_dla_dzieci_ze_zmiennej; if(nazwa_strony_glownej_dla_dzieci_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_dla_dzieci_uzyskana))then return "(błąd nazwy strony głównej dla dzieci)";end; nazwa_strony_glownej_dla_dzieci_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_dla_dzieci_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_dla_dzieci_uzyskana)then return "strona główna dla dzieci";end; end; end; local nazwa_strony_glownej_projektu_ze_zmiennej=p.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,liczba_numer_jednostki,kod_jezyka,kod_projektu); if(nazwa_strony_glownej_projektu_ze_zmiennej=="")then return "(błąd nazwy strony głównej projektu)";end; local nazwa_strony_glownej_projektu_z_wikidanych=p.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu); local nazwa_strony_glownej_projektu_uzyskana=(not nazwa_strony_glownej_projektu_ze_zmiennej)and nazwa_strony_glownej_projektu_z_wikidanych or nazwa_strony_glownej_projektu_ze_zmiennej; if(nazwa_strony_glownej_projektu_uzyskana)then if(pudelko_modul.CzyNiepoprawnaNazwa(nazwa_strony_glownej_projektu_uzyskana))then return "(błąd nazwy strony głównej projektu)";end; nazwa_strony_glownej_projektu_uzyskana=nazwy_modul["PEŁNANAZWASTRONY"]{[1]=nazwa_strony_glownej_projektu_uzyskana,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(pelna_nazwa_strony==nazwa_strony_glownej_projektu_uzyskana)then return "strona główna projektu";end; end; if(norm_przed_lub_dyskusji=="")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik";else return "artykuł";end; end; elseif(norm_przed_lub_dyskusji=="Wikijunior")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "artykuł dla dzieci"; else local it=mw.ustring.match(nazwa_jednostki,"^[^/]+$"); if(it)then return "podręcznik dla dzieci";else return "artykuł dla dzieci";end; end; elseif(norm_przed_lub_dyskusji=="User")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane indywidua użytkownika jako normalne strony"]))then return "strona użytkownika"; else local czy_podstrony=mw.ustring.match(nazwa_jednostki,"^[^/]+$") if(czy_podstrony)then return "strona główna użytkownika"; else if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki użytkownika"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^[^/]+/[^/]*$"); if(czy_ksiazka)then return "podręcznik użytkownika"; else return "artykuł użytkownika"; end; else return "jednostka użytkownika"; end; else return "strona użytkownika"; end; end; end; elseif(norm_przed_lub_dyskusji=="File")then return "strona pliku"; elseif(norm_przed_lub_dyskusji=="Category")then return "strona kategorii"; elseif(norm_przed_lub_dyskusji=="Project")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))then return "strona projektu";end; if(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*"))then if(not parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then if(parametry_modul.CzyTak(frame.args["obsługiwane jednostki brudnopisu projektu"]))then local czy_ksiazka=mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/[^/]*$"); if(czy_ksiazka)then return "podręcznik brudnopisu projektu"; else return "artykuł brudnopisu projektu"; end; else return "jednostka brudnopisu projektu"; end; else return "strona brudnopisu projektu"; end; else return "strona projektu"; end; elseif(norm_przed_lub_dyskusji=="Help")then return "strona pomocy"; elseif(norm_przed_lub_dyskusji=="MediaWiki")then return "strona komunikatu"; elseif(norm_przed_lub_dyskusji=="Special")then return "strona specialna"; elseif(norm_przed_lub_dyskusji=="Gadget")then return "strona gadżetu"; elseif(norm_przed_lub_dyskusji=="Template")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona szablonu";end; local function CzySzablonAlboOpis(nazwa_przestrzeni_nazw,nazwa_jednostki,szablon,opis_szablonu,strona_szablonu,prefix) local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return szablon; else if(mw.ustring.match(nazwa_jednostki,"^"..prefix..".*/opis$"))then return opis_szablonu; else if(not parametry_modul.CzyTak(frame.args["obsługiwane nieudokumentowane szablony jako szablony"]))then local czy_brudnopis=mw.ustring.match(nazwa_jednostki,"^"..prefix..".*$"); if(czy_brudnopis)then local pagename=(nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa_jednostki or nazwa_jednostki; local czy_istnieje_strona,tab=require("Module:Techniczne").PoliczZbiory(pagename); if(czy_istnieje_strona==1)then local czy_brudnopis_opisu_szablonu=require("Module:Łatki").contentMatch{ [1]='<noinclude>.-{{%s*[Dd]okumentacja%s*}}.-</noinclude>', [2]='<noinclude>.-{{%s*[Dd]okumentacja%s*|.-</noinclude>',pagename=pagename,namespace=0 }; if(not czy_brudnopis_opisu_szablonu)then return opis_szablonu;else return szablon;end; else return szablon; end; else return strona_szablonu; end; else return szablon; end; end; end; end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona brudnopisu szablonu","strona brudnopisu opisu szablonu","strona szablonu","[Bb]rudnopis/[^/]*/"); else return CzySzablonAlboOpis(norm_przed_lub_dyskusji,nazwa_jednostki,"strona szablonu","strona opisu szablonu","strona szablonu",""); end; elseif(norm_przed_lub_dyskusji=="Module")then local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(frame.args["obsługiwane strony jako niebrudnopisowe jednostki programowe"]))then return "strona modułu";end; if((not parametry_modul.CzyTak(frame.args["obsługiwane brudnopisy jako normalne strony"]))and(mw.ustring.match(nazwa_jednostki,"^%s*[Bb]rudnopis/[^/]*/.*")))then if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona brudnopisu modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_strony_brudnopisu_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_strony_brudnopisu_opisu_modulu)then return "strona brudnopisu opisu modułu"; else return "strona brudnopisu modułu"; end; end; else if(parametry_modul.CzyTak(frame.args["obsługiwane opisy jako strony jednostek programowych"]) or parametry_modul.CzyTak(frame.args["obsługiwane jednostki jako nieopisowe strony"]))then return "strona modułu" else local pelna_nazwa_strony=(norm_przed_lub_dyskusji~="")and norm_przed_lub_dyskusji..":"..nazwa_jednostki or nazwa_jednostki; pelna_nazwa_strony=require("Module:Nazwy")["PEŁNANAZWASTRONY"]{[1]=pelna_nazwa_strony,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local pelna_nazwa_opisu_modulu=require("Module:Techniczne")["PełnaNazwaOpisuModułu"](pelna_nazwa_strony); if(pelna_nazwa_strony==pelna_nazwa_opisu_modulu)then return "strona opisu modułu"; else return "strona modułu"; end; end; end; else return "inne"; end; end; return "inne"; end; local typ_jednostki=Typ_jednostki(); if(((analiza)or(nazwa_jednostki_podana))and(typ)and(typ~=""))then typ_jednostki=TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); if(typ_jednostki==typ)then return typ_jednostki; elseif(nazwa_jednostki_podana)then return "(błąd parametrów pudełkowych)" else return "(błąd typu jednostki)"; end; end; return TempFunc(typ_jednostki,nazwa_przestrzeni_nazw); end; function p.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki,czy_uwzglednic_alternatywna_nazwe,i,numer_argorytmu,co_ma_liczyc) local nazwa_przestrzeni_fun,nazwa_jednostki_fun; if(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==0)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==1)then nazwa_przestrzeni_fun="Nazwa przedmiotowej przestrzeni nazw"; nazwa_jednostki_fun="Nazwa przedmiotowa jednostki"; elseif(kod_liczbowy_przestrzeni_nazw_i_nazwy_jednostki==2)then nazwa_przestrzeni_fun="Nazwa przestrzeni nazw dyskusji" nazwa_jednostki_fun="Nazwa dyskusji jednostki"; else nazwa_przestrzeni_fun="Nazwa przestrzeni nazw"; nazwa_jednostki_fun="Nazwa jednostki"; end; local pudelko_modul=require("Module:Pudełko"); if(not numer_argorytmu)then local function TempFunc() return ((not i)or(i==0)); end; if((not co_ma_liczyc)or(co_ma_liczyc==0))then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=(czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local czy_i_0=TempFunc(); local nazwa_przestrzeni_nazw=(czy_i_0) and pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i) or pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then local czy_i_0=TempFunc(); return (czy_i_0)and pudelko_modul["Nazwa jednostki"](frame,i) or pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; else if(numer_argorytmu==0)then if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul["Nazwa jednostki"](frame,i); end; else if((not co_ma_liczyc)or(co_ma_liczyc==0))then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); local nazwa_jednostki=pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); return nazwa_przestrzeni_nazw,nazwa_jednostki; elseif(co_ma_liczyc==1)then local nazwa_przestrzeni_nazw=pudelko_modul[nazwa_przestrzeni_fun.." 2"](frame,czy_uwzglednic_alternatywna_nazwe,i); return nazwa_przestrzeni_nazw; elseif(co_ma_liczyc==2)then return pudelko_modul[nazwa_jednostki_fun.." 2"](frame,i); end; end; end; end; function p.Nazwa_przestrzeni_nazw_dodatkowe(frame,numer_jednostki) local pf=frame.getParent and frame:getParent() or {args={}}; return frame.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] or pf.args["nazwa przestrzeni nazw "..tostring(numer_jednostki)] end; function p.Nazwa_jednostki(frame,i) local pf=frame.getParent and frame:getParent() or {args={}}; local nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,2); local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); if(nazwa_jednostki)then nazwa_jednostki=mw.text.trim(nazwa_jednostki); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^:",""); nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1"); local parametry=mw.ustring.match(nazwa_jednostki,"^.*%?([^%?]+)$"); if(parametry and mw.ustring.match(parametry,"[^=]+=[^=]*"))then nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"^(.*)%?([^%?]+)$","%1"); end; else local nazwy_modul=require("Module:Nazwy"); nazwa_jednostki=nazwy_modul["NAZWASTRONY"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); end; function p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i,co_podac) local pf=frame.getParent and frame:getParent() or {args={}}; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=tonumber(numer_jednostki) or 0; local nazwa_jednostki; local bool_numer_jednostki=(liczba_numer_jednostki~=0); local function Nazwa_jednostki() if bool_numer_jednostki then nazwa_jednostki=( frame.args["nazwa jednostki "..liczba_numer_jednostki] or pf.args["nazwa jednostki "..liczba_numer_jednostki] ) or ((liczba_numer_jednostki==1)and(pf.args["cel"])) or pf.args[liczba_numer_jednostki]; else nazwa_jednostki=frame.args["nazwa jednostki"] or pf.args["nazwa jednostki"]; end; return nazwa_jednostki; end; local function Nazwa_przestrzeni_nazw() local nazwa_przestrzeni_nazw=bool_numer_jednostki and (frame.args["nazwa przestrzeni nazw i"] or pf.args["nazwa przestrzeni nazw i"] or frame.args["nazwa przestrzeni nazw "..liczba_numer_jednostki] or pf.args["nazwa przestrzeni nazw "..liczba_numer_jednostki]) or frame.args["nazwa przestrzeni nazw"] or pf.args["nazwa przestrzeni nazw"]; return nazwa_przestrzeni_nazw; end; if(not co_podac)then return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; elseif(co_podac==1)then return Nazwa_przestrzeni_nazw(),liczba_numer_jednostki; elseif(co_podac==2)then return Nazwa_jednostki(),liczba_numer_jednostki; else return Nazwa_przestrzeni_nazw(),Nazwa_jednostki(),liczba_numer_jednostki; end; end; function p.Jaka_nazwa_jednostki(frame,i,jaka) local nazwa_przestrzeni_nazw,nazwa_jednostki,liczba_numer_jednostki=p.Nazwy_przestrzeni_i_jednostki_podane_o_pewnym_numerze(frame,i); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw or p.Nazwa_przestrzeni_nazw_uzyskana_z_typu_jednostki_z_frame(frame,liczba_numer_jednostki); ---- local nazwy_modul=require("Module:Nazwy"); nazwa_przestrzeni_nazw=nazwa_przestrzeni_nazw and mw.text.trim(nazwa_przestrzeni_nazw) or nazwy_modul["NAZWAPRZESTRZENI"](); if(nazwa_jednostki)then local html_modul=require("Module:Html"); nazwa_jednostki=html_modul["NazwaStronyAdresu"](nazwa_jednostki,true); else nazwa_jednostki=nazwy_modul["NAZWASTRONY"](); end; local kod_jezyka,kod_projektu=p.Wikikody_kontenera(frame,liczba_numer_jednostki); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka)then if(czy_biezaca)then local tab_parametry={nazwa=nazwa_przestrzeni_nazw,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.Np(tab_parametry); else local tab_parametry={nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(jaka=="przedmiotowa")then tab_parametry["przedmiotowa"]="tak";end; nazwa_przestrzeni_nazw=nazwy_modul.NpDane(tab_parametry); end; else if(czy_biezaca)then nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw}; else nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; if(not mw.ustring.match(nazwa_jednostki,"^:"))then if(nazwa_przestrzeni_nazw~="")then if((not typ)or(typ=="przedmiotowa"))then if(czy_biezaca)then local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if(nazwa_przestrzeni_nazw==nazwy_np_modul.Template)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Template)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; elseif(nazwa_przestrzeni_nazw==nazwy_np_modul.Module)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki); if(nazwa_przestrzeni_nazw_d==nazwy_np_modul.Module)then return nazwy_modul["NAZWASTRONY"](nazwa_jednostki); end; end; else local template_prze=nazwy_modul.NpDane{nazwa="Template",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local module_prze=nazwy_modul.NpDane{nazwa="Module",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw==template_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==template_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; elseif(nazwa_przestrzeni_nazw==module_prze)then local nazwa_przestrzeni_nazw_d=nazwy_modul["NAZWAPRZESTRZENI"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nazwa_przestrzeni_nazw_d==module_prze)then return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; end; end; local parametry_modul=require("Module:Parametry"); nazwa_jednostki=parametry_modul["Odstępy"]{[1]=nazwa_jednostki,[2]="tak",}; return mw.getContentLanguage():ucfirst(nazwa_jednostki); else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; else return nazwy_modul["NAZWASTRONY"]{[1]=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; end; function p.Czy_przestrzen_nazw_jest_obslugiwana(frame,jakas_przestrzen_nazw,kod_jezyka,kod_projektu) local nazwy_modul=require("Module:Nazwy"); local parametry_modul=require("Module:Parametry"); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(czy_biezaca)then jakas_przestrzen_nazw=nazwy_modul.Np{nazwa=jakas_przestrzen_nazw}; else jakas_przestrzen_nazw=nazwy_modul.NpDane{nazwa=jakas_przestrzen_nazw,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; local function nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_iter) if(czy_biezaca)then nazwa_przestrzeni_nazw_iter=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw_iter}; else nazwa_przestrzeni_nazw_iter=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw_iter,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; end; if(jakas_przestrzen_nazw==nazwa_przestrzeni_nazw_iter)then return true; end; return false; end; for licznik,nazwa_przestrzeni_nazw in pairs(frame.args)do if(type(licznik)=="number")then local nazwa_przestrzeni_nazw_element,klucze_element=mw.ustring.match(nazwa_przestrzeni_nazw,"^%s*([%w%s]*)%s*:%s*(.-)%s*"); if(nazwa_przestrzeni_nazw_element and klucze_element)then local tab_klucze=mw.text.split(klucze_element,"%s*,%s*",false); local wiki_modul=require("Module:Wiki"); for _,klucz_element in ipairs(tab_klucze)do local kod_jezyka_obslugiwane,kod_projektu_obslugiwane=wiki_modul.KluczProjektu(klucz_element); if(kod_jezyka_obslugiwane==kod_jezyka and kod_projektu_obslugiwane==kod_projektu)then local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw_element); if(wynik)then return true;end; end; end; else local wynik=nazwa_przestrzeni_nazw_fun(nazwa_przestrzeni_nazw); if(wynik)then return true;end; end; end; end; return false; end; function p.Analiza_interwiki_czy_projekt_aktualny(frame,czy_jezyk,czy_projekt) local parametry_modul=require("Module:Parametry"); local p=parametry_modul.PobierzFrameEwentualnieParent(frame); local pudelko_modul=require("Module:Pudełko"); local wiki_modul=require("Module:Wiki"); local jezyk_biezacy=czy_jezyk and pudelko_modul["Kod języka tego projektu"](); local projekt_biezacy=czy_projekt and pudelko_modul["Kod projektu tego projektu"](); for i,_ in pairs(p.args)do if(type(i)=="number")then local klucz_projektu=pudelko_modul["Klucz projektu"](frame,i); local kod_jezyka=pudelko_modul["Kod języka"](frame,i); local kod_projektu=pudelko_modul["kod projektu"](frame,i); local jezyk,projekt=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu); if((czy_jezyk and (jezyk~=jezyk_biezacy))or(czy_projekt and(projekt~=projekt_biezacy)))then return "tak"; end; end; end; return; end; return p; c0k763w79c4vmwkjtwufoi8pkxm0bgh Wolna przedsiębiorczość/Rzadkość i koszt alternatywny 0 57472 540869 532879 2026-04-26T17:22:58Z Marek Mazurkiewicz 8990 redakcyjne 540869 wikitext text/x-wiki Z tego rozdziału dowiesz się: * dlaczego kwestia rzadkości zasobów jest punktem wyjścia dla nauki ekonomii, * dlaczego wybór jest nieodłącznym elementem środowiska opisywanego przez ekonomię, * dlaczego każdy człowiek zawsze ponosi koszty swoich działań, bez względu na grubość portfela, * dlaczego na koszty można patrzeć nie tylko przeszłościowo, ale i przyszłościowo. Najważniejsze pojęcia: * rzadkość, wybór, koszt alternatywny == Wybór i rzadkość == Ekonomia opisuje wybory i ich konsekwencje, dlatego warto zacząć od tego, skąd właściwie bierze się konieczność wybierania. Podstawową przyczyną tej konieczności jest rzadkość. To techniczny termin, którym w podręcznikach określa się „fakt istnienia nieograniczoności potrzeb oraz ograniczoności zasobów”. Krótko mówiąc, chodzi o to, że człowiek ma bardzo wiele potrzeb, które chciałby zaspokoić. Nie posiada natomiast dostatecznie dużej ilości środków, by móc tego dokonać. Gdybyśmy mieli stworzyć listę potrzeb człowieka, to tak naprawdę nigdy nie miałaby ona końca. Nawet jeśli uda nam się zrealizować ich bardzo wiele, czy jeśli mamy na ten cel mnóstwo środków, zawsze będziemy sobie stawiać kolejne cele – takie jak choćby pływanie w basenie, leniuchowanie na materacu i popijanie oranżady. Niektórym oczywiście powodzi się lepiej i są w stanie osiągnąć dużo więcej, gdyż mają dostęp do większej ilości dóbr. Dobra te rozumie się jako środki, które mogą być wykorzystane do zaspokojenia potrzeb. Ludzie bogatsi mogą sobie pozwolić na znacznie bardziej rozwiniętą działalność niż biedni. Ale nawet najbogatszy człowiek świata nie może zrealizować wszystkich swoich planów (np. dotyczących inwestycji). On także musi wybierać, choć inaczej niż osoba uboga. == Rzadkość i koszt alternatywny == Rzadkość najłatwiej zauważyć, zaglądając do portfela. Nie możemy kupić wszystkiego, czego tylko zapragniemy. Musimy się zdecydować, czy wolimy popcorn, czy ciasto. Takie dobra, których zasoby są ograniczone, nazywa się dobrami rzadkimi. Ich przeciwieństwem są dobra wolne, np. powietrze. Rzadki jest również wspomniany w poprzednim rozdziale czas. W przeciwieństwie do Agenta Smitha z filmu Matrix nie występujemy w nieskończonej liczbie kopii. Każdy i każda z nas jest tym jedynym unikatowym egzemplarzem. A że nie mamy zdolności bilokacyjnych, czyli zdolności pojawiania się w kilku miejscach naraz (choć niektórych ludzi się o to podejrzewa), musimy wybierać, gdzie w danej chwili się znajdziemy. Dlatego nie możemy w tym samym czasie robić wszystkiego. Nawet jeśli potrafimy robić kilka rzeczy w tym samym czasie, to mamy swoje ograniczenia, przed którymi nie da się uciec. == Koszt alter natywny == Perspektywa wyboru stawia przed nami wyzwania, ale są to zawsze wyzwania dotyczące przyszłości, a nie przeszłości. Oznacza to, że kiedy podejmujemy decyzję, najistotniejsze są możliwe przyszłe scenariusze. Dlatego też ekonomiści stworzyli pojęcie kosztu alternatywnego (kosztu utraconych możliwości). Zazwyczaj kiedy mówimy o jakichś kosztach, mamy na myśli koszty przeszłe, które już wystąpiły (nie tylko pieniężne). Mówimy na przykład, że pewne zadanie wymagało od nas poświęcenia wielu godzin pracy albo że na daną inwestycję przeznaczyliśmy duże sumy pieniędzy. Jednakże oglądanie się na przeszłość nie zmieni wachlarza przyszłych możliwości stojących przed nami. Koszt alternatywny występuje przy każdym wyborze, który podejmujemy. Załóżmy, że na ten sam wieczór dostaliśmy dwa zaproszenia od znajomych. Jedni chcą, aby pójść z nimi na mecz piłkarski, a drudzy planują wyjście do kina na komedię romantyczną. Opcja, z której zrezygnujemy – „druga najlepsza możliwość działania” – to właśnie nasz koszt alternatywny. Jeśli pójdziemy na mecz, to zrobimy to kosztem rezygnacji z wyjścia do kina. Jeśli pójdziemy do kina, to nie zobaczymy meczu. Z każdorazowym wydaniem pieniędzy wiąże się koszt, ponieważ nie możemy ich przez to wydać na coś innego, czego również pragniemy. Dotyczy to zarówno poziomu indywidualnego, czyli pojedynczej osoby, jak i całej rodziny czy większych podmiotów gospodarczych, na przykład przedsiębiorstw i państw. Wydatki pieniężne, czyli to, co jest za pieniądze kupowane, zobaczyć łatwo. Trudniej jednak będzie z kosztem alternatywnym, a więc ceną, jaką płacimy za zrealizowane wydatki. Przykładowo, państwo może zwiększyć swoje wydatki i zatrudnić więcej urzędników w administracji, ale ta decyzja będzie miała swój koszt alternatywny: część środków zostanie przekazana z pozostałych sektorów gospodarki, przez co zmaleją tam wydatki i zatrudnienie. W naszym codziennym życiu wszystko jest rzadkie, począwszy od naszego czasu, a skończywszy na pieniądzach i środkach materialnych. Z powodu tej rzadkości musimy wybierać przeznaczenie dla zasobów. Nie możemy ich po- święcić na wszystko, co sobie wymarzymy. Z wyborem zaś wiążą się koszty alternatywne - zawsze istnieje alternatywa dla sposobu wydania pieniędzy, czyli inna opcja ich wykorzystania. Dlatego każda decyzja jest kosztowna w tym sensie, że wiąże się z poniesieniem kosztu alternatywnego: wydając pieniądze na nową powieść ulubionej autorki, rezygnujemy tym samym z zakupienia za nie biletu do teatru. Wyjeżdżając na narty w góry w Czechach, pozbawiamy się możliwości opalania w tym samym czasie nad polskim morzem. Dylemat polegający na konieczności wyboru towarzyszy każdej naszej decyzji – nie tylko wąsko rozumianej decyzji ekonomicznej, ale dowolnej innej, na przykład dotyczącej życia osobistego. Wybór jest tym, co świadczy o naszej wyjątkowości. Pozwala na budowanie własnego miejsca w społeczności, życiu gospodarczym, na działanie dla osobistej satysfakcji i szczęścia. Tej indywidualności nie da się żadnemu i żadnej z nas odebrać. Koncepcja kosztu alternatywnego może ci pozwolić myśleć przyszłościowo o swoim życiu i inwestycjach. Wyobraź sobie, że masz monety kolekcjonerskie, których wartość wynosi 100 złotych. Czy decyzja o tym, czy sprzedać je teraz, czy zatrzymać, powinna zależeć od tego, za ile kupiłeś je rok temu? Załóżmy, że w jednym wariancie kupiłeś je za 50 złotych, a w innym za 200 złotych. Czy powinno to wpływać na decyzję, co zrobić z monetami? == Wpływ przeszłości na wybór == Istnienie kosztu alternatywnego – dotyczącego bieżącego wyboru i przyszłości – nie oznacza oczywiście, że przeszłość w ogóle nie ma dla nas znaczenia. Ma znaczenie, ponieważ decyduje o tym, dlaczego znajdujemy się w miejscu, w którym jesteśmy. Zdarza się, że przeszłość jest w naszym życiu czymś szczególnym i motywującym. Wspomnienia i zdobyte doświadczenia mogą nas kierować ku różnym wyborom, na które w przeciwnym razie moglibyśmy się nie zdecydować. Wyobraźmy sobie, że odziedziczyliśmy restaurację, która nie przynosi wystarczających dochodów. Gdyby interesowała nas sama wartość pieniężna, moglibyśmy zdecydować się na jej sprzedaż, ponieważ tak wynikałoby z naszych kalkulacji. Myśląc przyszłościowo, ocenilibyśmy koszt alternatywny: albo ją sprzedajemy i uzyskujemy kapitał, albo nadal do niej dopłacamy; w tym przypadku przeszłość zostałaby uznana za nieistotną. Na naszą decyzję mogą jednak wpłynąć dotychczasowe doświadczenia. Świadomość, że restauracja ta stanowi rodzinne dziedzictwo, oraz sentyment do niej mogą nas powstrzymać przed taką decyzją. Dlatego w naszym subiektywnym koszcie alternatywnym jest miejsce na sentymenty i przekonania. Czy decyzja o sprzedaży restauracji byłaby nierozsądna? Zdaniem jednej osoby mogłaby taka być, zdaniem innej – niekoniecznie. Każdy człowiek buduje swoją własną przyszłość, własne szczęście, własny ekonomiczny świat. Dla jednego człowieka prowadzenie restauracji byłoby nierozsądne, dla innego jak najbardziej uzasadnione. Ekonomia jako nauka nie ma na celu wskazywania, które cele są rozsądne ani do jakich celów powinien dążyć człowiek. To zadanie należy do etyki i innych dyscyplin. Ekonomia zakłada tylko, że każdy człowiek wybiera te cele, których osiągnięcie może mu przynieść – jego zdaniem – jak największą satysfakcję. == Pytania i zadania == # Wyjaśnij, dlaczego rzadkość uznaje się za punkt wyjścia ekonomii. # Czym jest koszt alternatywny? Podaj przykłady. # Wyjaśnij, dlaczego nawet najbogatszy człowiek na świecie zawsze ponosi koszty swoich działań. # Czy przeszłe decyzje nie mają nigdy znaczenia dla naszych przyszłych decyzji? Uzasadnij odpowiedź. # Czy przeszłe decyzje nie powinny mieć znaczenia dla naszych przyszłych decyzji? Uzasadnij odpowiedź. # Czy zgadasz się ze stwierdzeniem: „rząd powinien dwukrotnie zwiększyć wydatki budżetowe, ponieważ dzięki temu wzrośnie aktywność gospodarcza i spadnie bezrobocie”? Uzasadnij odpowiedź. <noinclude> {{Nawigacja|Wolna przedsiębiorczość|[[../Ekonomia jako dziedzina życia/]]|[[../Produkcja i czynniki produkcji/]]}} </noinclude> 6eifstswrzv6ei3yxul03tip9f6g04v Wolna przedsiębiorczość/Produkcja i czynniki produkcji 0 57473 540872 485450 2026-04-26T17:28:55Z Marek Mazurkiewicz 8990 redakcyjne cdn 540872 wikitext text/x-wiki Z tego rozdziału dowiesz się: * jak klasyfikuje się czynniki produkcji, * dlaczego podział czynników produkcji pojawił się w ekonomii i dlaczego współcześnie stracił na znaczeniu, * czego dotyczy teoria dystrybucji (podziału) dochodu i dlaczego wzbudza kontrowersje, * dlaczego dla wszystkich członków społeczeństwa ważne jest, by cała gospodarka się rozwijała, * dlaczego najważniejszym czynnikiem produkcji jest przedsiębiorczość człowieka. Najważniejsze pojęcia: * czynniki produkcji, teoria dystrybucji, przedsiębiorczość == Czynniki produkcji == W XIX wieku postrzegano produkcję jako projekt przeprowadzany przede wszystkim w wymiarze materialnym, a za czynniki produkcji uważano najczęściej przedmioty fizyczne i łączoną z nimi pracę. Na gruncie tego podejścia w historii myśli ekonomicznej pojawiła się słynna klasyfikacja czynników produkcji. Wyróżniono następujące czynniki: ziemię, pracę i kapitał – tzw. triadę czynników produkcji. Ekonomia zaczęła się dynamicznie rozwijać jako samodzielna dyscyplina naukowa w czasach, gdy gospodarki zachodnie (głównie kraje europejskie na zachód od Łaby oraz Stany Zjednoczone i Kanada) doświadczały niespotykanego wcześniej wzrostu. Można było wówczas zaobserwować trzy grupy społeczne, które pełniły swoje ekonomiczne funkcje: kapitalistów, którzy posiadali fabryki z maszynami i innym wyposażeniem; pracowników, którzy wykonywali dla kapitalistów niezbyt złożoną i wielogodzinną pracę fizyczną, oraz właścicieli ziemskich, którzy od kapitalistów różnili się między innymi tym, że korzystali głównie ze zgromadzonych wcześniej majątków ziemskich. Taki podział na czynniki produkcji stał się czymś naturalnym, przede wszystkim z powodu sytuacji społecznej w tamtych czasach. == Dystrybucja dochodu i harmonia interesów == Jednoczesne występowanie tych trzech grup społecznych zdawało się przekładać na sztywne ramy stosunków ekonomicznych. W związku z tym powstał nawet dział ekonomii zwany teorią dystrybucji, który wyjaśniał, jakie części całkowitego dochodu w gospodarce przypadają na poszczególne grupy. To z kolei otworzyło drogę do rozważań o rzekomych nieodłącznych konfliktach i walkach między właścicielami czynników produkcji (dzisiaj mówi się raczej o współpracy wszystkich czynników niż o walce). Takiemu podejściu sprzyjało zwłaszcza to, że aż do XVIII wieku gospodarka prawie się nie rozwijała. Całkowity dochód w społeczeństwie można było postrzegać jako tort, którego wielkość przez setki lat niemal się nie zmieniała. Główne zagadnienie teorii ekonomii zdawało się dotyczyć tego, w jaki sposób ten tort, czyli bogactwo, jest dzielony między ludzi. Jednak sztywny podział i rozważania na jego temat z czasem przestały odgrywać główną rolę, ponieważ kapitalistyczna organizacja produkcji doprowadziła do ogromnego wzrostu gospodarczego. W wyniku tzw. rewolucji przemysłowej na przełomie XVIII i XIX wieku oraz gwałtownego rozwoju gospodarki od tego czasu „tort” powiększył się kilkudziesięciokrotnie, na czym skrzętnie skorzystali przedstawiciele wszystkich „klas”. Produkcja przestała być postrzegana jako nierosnąca wielkość, o którą to czy się społeczna walka klas. Dostrzeżono bowiem, że interesy wszystkich klas są tak naprawdę zbieżne, bo na „wzroście” tortu może skorzystać każdy. Przed rewolucją przemysłową przynależność do jednej z wymienionych wyżej trzech grup w większym stopniu przekładała się na sytuację materialną. Po latach rozwoju gospodarki ta zależność została znaczą- co osłabiona. Praca coraz częściej przestawała być nieskomplikowaną i powtarzalną rutyną, zaś większą rolę zaczęły odgrywać talenty pracowników, ich wykształcenie i umiejętności. W efekcie w literaturze ekonomicznej pojawiło się pojęcie kapitału ludzkiego, niejako czwartego czynnika produkcji. W dzisiejszej gospodarce znacznie większą rolę odgrywają usługi, a zatem wiedza i odpowiednie umiejętności. Z tego powodu wielu wysoko wykwalifikowanych pracowników najemnych zarabia więcej od kapitalistów, do których zalicza się również indywidualnych inwestorów. == Dobra kapitałowe == Gdy mówimy o kapitale, najczęściej chodzi nam o dobra kapitałowe, czyli przetworzone przez człowieka materialne zasoby, które służą do efektywnej produkcji. W przeciwieństwie do dóbr konsumpcyjnych, bez- pośrednio zaspokajających nasze potrzeby, dobra kapitałowe umożliwiają nam produkcję – dlatego bywają one też nazywane dobrami pośrednimi. Przykładowo, piec w piekarni to dobro kapitałowe (pośrednie), ponieważ nie służy bezpośredniemu zaspokojeniu potrzeb. Służy do wytwarzania innego dobra (chleba), które dopiero pozwoli na zaspokojenie potrzeby (dobra konsumpcyjnego). Młotek, komputer, lampa, linia montażowa, koparka, żelazo, samochód, drukarka – to tylko kilka przykładów licznych dóbr kapitałowych, które umożliwiają nam produkcję. Co charakterystyczne, wytworzenie dóbr kapitałowych zabiera ludziom czas. Ludzie, by móc korzystać z dóbr kapitałowych, muszą wcześniej podjąć decyzję o ich produkcji. Muszą zainwestować swój czas i środki w stworzenie czegoś, co nie daje od razu satysfakcji. Trudno przecież uznać, że linia montażowa bezpośrednio realizuje jakiś cel, do którego dążą ludzie. Czyni to jedynie pośrednio, umożliwiając na przykład masową produkcję samochodów, które z kolei zaspokajają naszą potrzebę szybszego poruszania się. == Przedsiębiorczość i zanik znaczenia podziału na czynniki produkcji == W ekonomii spotyka się pojęcie funkcji produkcji, w której czynniki produkcji traktuje się czasem jak składniki wrzucane razem w odpowiedniej proporcji do ziemi, z której potem wyrasta samoistnie roślina. Analogicznie, w prostym opisie mówi się o czynnikach ekonomicznych „wrzucanych” do produkcji dóbr i usług. W tym ujęciu „wrzucamy” pracowników, maszyny, halę, komputery, a z czasem produkcja sama rośnie niczym drzewko owocowe. W rzeczywistości jest to obraz bardzo uproszczony, czasami wręcz szkodliwy, ponieważ nie istnieje odgórny, najlepszy „przepis na produkcję”, podobny do instrukcji sadzenia roślin. Owszem, znamy technologię wytwarzania najróżniejszych dóbr, ale nigdy nie mamy pewności, jakich dóbr w danej chwili najbardziej potrzebują konsumenci. Dlatego decyzja o tym, co i jak produkować, jest zawsze swego rodzaju eksperymentem, którego efektów nie da się do końca przewidzieć. Diagram 1. Czynniki produkcji Ziemia (i surowce) Rutynowa produkcja Kapitał Większa i bardziej efektywna produkcja Praca Przedsiębiorczość Źródło: opracowanie własne. W tym miejscu dochodzimy do najważniejszego elementu w procesie produkcji: przedsiębiorcy. Jest on jednocześnie głównym reżyserem, autorem, pomysłodawcą, który wybiera, według swojego uznania, najlepsze kombinacje (zestawy) czynników produkcji. To do jego obowiązków nale- ży decydowanie się na jedne czynniki produkcji i rezygnowanie z innych. Przedsiębiorca, który okaże się skuteczny przy dokonywaniu tych wyborów, zdoła odnieść sukces. Możemy dostrzec, że za każdym z czynników produkcji kryje się akt twórczego myślenia. Ropa i węgiel od lat kryły się w ziemi, gdy nikt nie traktował ich jako użytecznych dóbr, aż ludzki umysł nie odkrył, że moż- na ich do czegoś użyć. Praca to wykorzystanie siły mięśni, wymagające rozsądnego planowania i pokierowania. Dobra kapitałowe nie mogłyby zostać wyprodukowane, gdyby ktoś nie wpadł na pomysł ich wytworze- nia. Natomiast kapitał ludzki to umiejętność korzystania z dodatkowych talentów. Dlatego niektórzy słusznie zauważają, że w produkcji istnieje tylko jeden istotny czynnik: przedsiębiorcze zdolności człowieka do prze- kształcania świata materialnego na wszelkie możliwe sposoby. Przedsiębiorcy przez długie lata byli pomijani w wielu teoriach eko- nomicznych. Przyczyna tego tkwi we wspomnianej na początku rozdzia- łu obserwacji: ekonomia jako nauka powstawała w czasach znikomego wzrostu gospodarczego. W XVII wieku historia ludzkości mogła wydawać się bardzo przygnębiająca: bardzo powolny przyrost naturalny, wysoka śmiertelność niemowląt i dzieci, niski poziom życia, nieustanne wojny czy epidemie. Wszystko to razem sprawiało, że gospodarka zdawała się stać w miejscu. Dlatego dla przedsiębiorców-rewolucjonistów, którzy nie bali się zmieniać zastanego świata, nie było wówczas w ekonomicznym teoretyzowaniu zbyt wiele miejsca. Ważniejszą rolę odgrywały wzajemne stosunki ekonomiczne pomiędzy sztywnymi klasami społecznymi: wła- ścicielami ziemskimi, kapitalistami i klasą robotniczą – grupami dostar- czającymi do produkcji kolejną ziemię, kapitał i pracę. Gdy nastąpiła eksplozja innowacji, sztywne podziały na czynniki produk- cji straciły swoje pierwotne znaczenie, choć dalej możemy je wykorzystać przy opisywaniu procesu produkcji. Ale na piedestał trafiła przedsiębiorczość. == Przykład klasyfikacji czynników produkcji == Załóżmy, że wytwarzamy wełnę przeznaczoną na ciepłe swetry. Z ja- kich czynników produkcji korzystamy? Zaczynamy od ziemi, na której zajmujemy się hodowlą owiec. Owce są strzyżone przez mniej wykwali- fikowanych pracowników. Następnie wełna trafia do fabryki, gdzie jest odpowiednio prana, oczyszczana i przetwarzana przez maszyny. Dzięki temu otrzymujemy włókna i nici, stanowiące podstawę do wytworzenia materiału, sprzedawanego potem producentom swetrów. Nad sprawno- ścią procesu w fabryce czuwają bardziej wykwalifikowani pracownicy. Czy w tym przykładzie możemy dokonać klasyfikacji czynników? Tak. Pracownicy to oczywiście praca. Tych bardziej wykwalifikowanych mogli- byśmy określić jako przedstawicieli kapitału ludzkiego. Wszelkie maszyny w fabryce czy narzędzia, którymi strzyże się owce, to dobra kapitałowe – ponieważ należy je wcześniej wytworzyć. Natomiast ziemią jest miej- sce, na którym prowadzona jest hodowla owiec i na którym zbudowano fabrykę. Do ziemi niektórzy czasem zaliczają również zwierzęta, rośliny czy też surowce naturalne: wszelkie rzeczy, które można traktować jako stałe, niejako „dane na zawsze przez naturę” człowiekowi. Gdy się jednak nad tym głębiej zastanowimy, to na pewno zauważymy, że tak naprawdę nic nie jest nam dane raz na zawsze przez naturę. Zwie- rzętami należy się zaopiekować, zainwestować czas i środki w ich hodow- lę. Lasy również wymagają odpowiedniego utrzymania. Surowce natural- ne trzeba wydobywać z ziemi, co wymaga pewnego wysiłku, a do tego ich ilość jest ograniczona. Nawet samą ziemię można albo zniszczyć, albo użyźnić. Pokazuje to faktycznie, że klasyczne rozróżnienie na ziemię i do- bra kapitałowe nie jest możliwe do utrzymania, ponieważ i ziemia, i do- bra kapitałowe wymagają pewnych inwestycji. Potrzeba do tego wiedzy i inteligencji człowieka, ale przede wszystkim przedsiębiorczego działania. == Czy wiesz, że...? == Ekonomia do początku XIX wieku określana była mianem „ponurej nauki”, gdyż wielu teoretykom wydawało się, że ze wzrostu gospo- darczego nie mogą korzystać wszyscy ludzie w społeczeństwie. Na szczęście historia gospodarcza dowiodła błędu tego założenia i po- kazała, że w gospodarce w interesie wszystkich grup leży wzrost całkowitej produkcji i liczby towarów oferowanych konsumentom. == Znaczenie przedsiębiorcy w procesie produkcji == Mimo że dzisiaj ekonomiści nie skupiają się już zbytnio na klasyfikowa- niu czynników produkcji, to ciągle pojawiają się negatywne konsekwencje tego podejścia. Gdy mówi się o wzroście gospodarczym czy poziomie ży- cia, zbyt dużą uwagę przywiązuje się do samych czynników produkcji: su- rowców naturalnych albo gromadzonego kapitału (krajowego lub zagra- nicznego). Tymczasem większą uwagę należy raczej zwracać na to, w jaki sposób te czynniki produkcji są zdobywane i łączone w procesie produkcji przez przedsiębiorców (zob. rozdział 17). Ekonomicznie efektywna produkcja nie przypomina rośliny wyrasta- jącej właściwie samoistnie z ziemi. Produkcja sama nie urośnie w wy- niku dodawania do niej kolejnych czynników (np. surowców albo dóbr kapitałowych). Dużo ważniejsza od materialnych czynników produkcji i tego, jak je zaklasyfikujemy, jest osoba (przedsiębiorca), która razem ukła- da je w przemyślaną całość i stara się robić to lepiej od innych. == Pytania i zadania == # Jaka była klasyczna triada czynników produkcji? Z jakiego powodu była tak ważna i dlaczego straciła na swym pierwotnym znaczeniu? # Podaj przykład dowolnego procesu produkcji i sklasyfikuj jego czynniki. # Czy rozróżnienie czynników produkcji na ziemię i dobra kapitałowe ma sens? Uzasadnij odpowiedź. # Czy można wskazać pewien najważniejszy czynnik produkcji? Dlaczego? # Dlaczego o dobrach kapitałowych, maszynach, mówi się, że są dobrami pośrednimi? # Wyjaśnij, dlaczego kiedyś idea walki klas była tak żywa, a dzisiaj już nie odgrywa większej roli? # Austriacki ekonomista Ludwig von Mises napisał kiedyś: „Produkcja nie jest czymś fizycznym, materialnym i zewnętrznym; jest zjawiskiem o charakterze duchowym i intelektualnym”. Korzystając z diagramu 1, spróbuj uzasadnić takie twierdzenie. <noinclude> {{Nawigacja|Wolna przedsiębiorczość|[[../Rzadkość i koszt alternatywny/]]|[[../Praworządność a społeczeństwo/]]}} </noinclude> 0vpu6sogu0awczmzjo3j15ekfp20mf9 540875 540872 2026-04-26T17:36:33Z Marek Mazurkiewicz 8990 redakcyjne cdn 540875 wikitext text/x-wiki Z tego rozdziału dowiesz się: * jak klasyfikuje się czynniki produkcji, * dlaczego podział czynników produkcji pojawił się w ekonomii i dlaczego współcześnie stracił na znaczeniu, * czego dotyczy teoria dystrybucji (podziału) dochodu i dlaczego wzbudza kontrowersje, * dlaczego dla wszystkich członków społeczeństwa ważne jest, by cała gospodarka się rozwijała, * dlaczego najważniejszym czynnikiem produkcji jest przedsiębiorczość człowieka. Najważniejsze pojęcia: * czynniki produkcji, teoria dystrybucji, przedsiębiorczość == Czynniki produkcji == W XIX wieku postrzegano produkcję jako projekt przeprowadzany przede wszystkim w wymiarze materialnym, a za czynniki produkcji uważano najczęściej przedmioty fizyczne i łączoną z nimi pracę. Na gruncie tego podejścia w historii myśli ekonomicznej pojawiła się słynna klasyfikacja czynników produkcji. Wyróżniono następujące czynniki: ziemię, pracę i kapitał – tzw. triadę czynników produkcji. Ekonomia zaczęła się dynamicznie rozwijać jako samodzielna dyscyplina naukowa w czasach, gdy gospodarki zachodnie (głównie kraje europejskie na zachód od Łaby oraz Stany Zjednoczone i Kanada) doświadczały niespotykanego wcześniej wzrostu. Można było wówczas zaobserwować trzy grupy społeczne, które pełniły swoje ekonomiczne funkcje: kapitalistów, którzy posiadali fabryki z maszynami i innym wyposażeniem; pracowników, którzy wykonywali dla kapitalistów niezbyt złożoną i wielogodzinną pracę fizyczną, oraz właścicieli ziemskich, którzy od kapitalistów różnili się między innymi tym, że korzystali głównie ze zgromadzonych wcześniej majątków ziemskich. Taki podział na czynniki produkcji stał się czymś naturalnym, przede wszystkim z powodu sytuacji społecznej w tamtych czasach. == Dystrybucja dochodu i harmonia interesów == Jednoczesne występowanie tych trzech grup społecznych zdawało się przekładać na sztywne ramy stosunków ekonomicznych. W związku z tym powstał nawet dział ekonomii zwany teorią dystrybucji, który wyjaśniał, jakie części całkowitego dochodu w gospodarce przypadają na poszczególne grupy. To z kolei otworzyło drogę do rozważań o rzekomych nieodłącznych konfliktach i walkach między właścicielami czynników produkcji (dzisiaj mówi się raczej o współpracy wszystkich czynników niż o walce). Takiemu podejściu sprzyjało zwłaszcza to, że aż do XVIII wieku gospodarka prawie się nie rozwijała. Całkowity dochód w społeczeństwie można było postrzegać jako tort, którego wielkość przez setki lat niemal się nie zmieniała. Główne zagadnienie teorii ekonomii zdawało się dotyczyć tego, w jaki sposób ten tort, czyli bogactwo, jest dzielony między ludzi. Jednak sztywny podział i rozważania na jego temat z czasem przestały odgrywać główną rolę, ponieważ kapitalistyczna organizacja produkcji doprowadziła do ogromnego wzrostu gospodarczego. W wyniku tzw. rewolucji przemysłowej na przełomie XVIII i XIX wieku oraz gwałtownego rozwoju gospodarki od tego czasu „tort” powiększył się kilkudziesięciokrotnie, na czym skrzętnie skorzystali przedstawiciele wszystkich „klas”. Produkcja przestała być postrzegana jako nierosnąca wielkość, o którą to czy się społeczna walka klas. Dostrzeżono bowiem, że interesy wszystkich klas są tak naprawdę zbieżne, bo na „wzroście” tortu może skorzystać każdy. Przed rewolucją przemysłową przynależność do jednej z wymienionych wyżej trzech grup w większym stopniu przekładała się na sytuację materialną. Po latach rozwoju gospodarki ta zależność została znaczą- co osłabiona. Praca coraz częściej przestawała być nieskomplikowaną i powtarzalną rutyną, zaś większą rolę zaczęły odgrywać talenty pracowników, ich wykształcenie i umiejętności. W efekcie w literaturze ekonomicznej pojawiło się pojęcie kapitału ludzkiego, niejako czwartego czynnika produkcji. W dzisiejszej gospodarce znacznie większą rolę odgrywają usługi, a zatem wiedza i odpowiednie umiejętności. Z tego powodu wielu wysoko wykwalifikowanych pracowników najemnych zarabia więcej od kapitalistów, do których zalicza się również indywidualnych inwestorów. == Dobra kapitałowe == Gdy mówimy o kapitale, najczęściej chodzi nam o dobra kapitałowe, czyli przetworzone przez człowieka materialne zasoby, które służą do efektywnej produkcji. W przeciwieństwie do dóbr konsumpcyjnych, bez- pośrednio zaspokajających nasze potrzeby, dobra kapitałowe umożliwiają nam produkcję – dlatego bywają one też nazywane dobrami pośrednimi. Przykładowo, piec w piekarni to dobro kapitałowe (pośrednie), ponieważ nie służy bezpośredniemu zaspokojeniu potrzeb. Służy do wytwarzania innego dobra (chleba), które dopiero pozwoli na zaspokojenie potrzeby (dobra konsumpcyjnego). Młotek, komputer, lampa, linia montażowa, koparka, żelazo, samochód, drukarka – to tylko kilka przykładów licznych dóbr kapitałowych, które umożliwiają nam produkcję. Co charakterystyczne, wytworzenie dóbr kapitałowych zabiera ludziom czas. Ludzie, by móc korzystać z dóbr kapitałowych, muszą wcześniej podjąć decyzję o ich produkcji. Muszą zainwestować swój czas i środki w stworzenie czegoś, co nie daje od razu satysfakcji. Trudno przecież uznać, że linia montażowa bezpośrednio realizuje jakiś cel, do którego dążą ludzie. Czyni to jedynie pośrednio, umożliwiając na przykład masową produkcję samochodów, które z kolei zaspokajają naszą potrzebę szybszego poruszania się. == Przedsiębiorczość i zanik znaczenia podziału na czynniki produkcji == W ekonomii spotyka się pojęcie funkcji produkcji, w której czynniki produkcji traktuje się czasem jak składniki wrzucane razem w odpowiedniej proporcji do ziemi, z której potem wyrasta samoistnie roślina. Analogicznie, w prostym opisie mówi się o czynnikach ekonomicznych „wrzucanych” do produkcji dóbr i usług. W tym ujęciu „wrzucamy” pracowników, maszyny, halę, komputery, a z czasem produkcja sama rośnie niczym drzewko owocowe. W rzeczywistości jest to obraz bardzo uproszczony, czasami wręcz szkodliwy, ponieważ nie istnieje odgórny, najlepszy „przepis na produkcję”, podobny do instrukcji sadzenia roślin. Owszem, znamy technologię wytwarzania najróżniejszych dóbr, ale nigdy nie mamy pewności, jakich dóbr w danej chwili najbardziej potrzebują konsumenci. Dlatego decyzja o tym, co i jak produkować, jest zawsze swego rodzaju eksperymentem, którego efektów nie da się do końca przewidzieć. Diagram 1. Czynniki produkcji Ziemia (i surowce) Rutynowa produkcja Kapitał Większa i bardziej efektywna produkcja Praca Przedsiębiorczość Źródło: opracowanie własne. W tym miejscu dochodzimy do najważniejszego elementu w procesie produkcji: przedsiębiorcy. Jest on jednocześnie głównym reżyserem, autorem, pomysłodawcą, który wybiera, według swojego uznania, najlepsze kombinacje (zestawy) czynników produkcji. To do jego obowiązków należy decydowanie się na jedne czynniki produkcji i rezygnowanie z innych. Przedsiębiorca, który okaże się skuteczny przy dokonywaniu tych wyborów, zdoła odnieść sukces. Możemy dostrzec, że za każdym z czynników produkcji kryje się akt twórczego myślenia. Ropa i węgiel od lat kryły się w ziemi, gdy nikt nie traktował ich jako użytecznych dóbr, aż ludzki umysł nie odkrył, że można ich do czegoś użyć. Praca to wykorzystanie siły mięśni, wymagające rozsądnego planowania i pokierowania. Dobra kapitałowe nie mogłyby zostać wyprodukowane, gdyby ktoś nie wpadł na pomysł ich wytworzenia. Natomiast kapitał ludzki to umiejętność korzystania z dodatkowych talentów. Dlatego niektórzy słusznie zauważają, że w produkcji istnieje tylko jeden istotny czynnik: przedsiębiorcze zdolności człowieka do przekształcania świata materialnego na wszelkie możliwe sposoby. Przedsiębiorcy przez długie lata byli pomijani w wielu teoriach ekonomicznych. Przyczyna tego tkwi we wspomnianej na początku rozdziału obserwacji: ekonomia jako nauka powstawała w czasach znikomego wzrostu gospodarczego. W XVII wieku historia ludzkości mogła wydawać się bardzo przygnębiająca: bardzo powolny przyrost naturalny, wysoka śmiertelność niemowląt i dzieci, niski poziom życia, nieustanne wojny czy epidemie. Wszystko to razem sprawiało, że gospodarka zdawała się stać w miejscu. Dlatego dla przedsiębiorców-rewolucjonistów, którzy nie bali się zmieniać zastanego świata, nie było wówczas w ekonomicznym teoretyzowaniu zbyt wiele miejsca. Ważniejszą rolę odgrywały wzajemne stosunki ekonomiczne pomiędzy sztywnymi klasami społecznymi: właścicielami ziemskimi, kapitalistami i klasą robotniczą – grupami dostarczającymi do produkcji kolejną ziemię, kapitał i pracę. Gdy nastąpiła eksplozja innowacji, sztywne podziały na czynniki produkcji straciły swoje pierwotne znaczenie, choć dalej możemy je wykorzystać przy opisywaniu procesu produkcji. Ale na piedestał trafiła przedsiębiorczość. == Przykład klasyfikacji czynników produkcji == Załóżmy, że wytwarzamy wełnę przeznaczoną na ciepłe swetry. Z jakich czynników produkcji korzystamy? Zaczynamy od ziemi, na której zajmujemy się hodowlą owiec. Owce są strzyżone przez mniej wykwalifikowanych pracowników. Następnie wełna trafia do fabryki, gdzie jest odpowiednio prana, oczyszczana i przetwarzana przez maszyny. Dzięki temu otrzymujemy włókna i nici, stanowiące podstawę do wytworzenia materiału, sprzedawanego potem producentom swetrów. Nad sprawnością procesu w fabryce czuwają bardziej wykwalifikowani pracownicy. Czy w tym przykładzie możemy dokonać klasyfikacji czynników? Tak. Pracownicy to oczywiście praca. Tych bardziej wykwalifikowanych moglibyśmy określić jako przedstawicieli kapitału ludzkiego. Wszelkie maszyny w fabryce czy narzędzia, którymi strzyże się owce, to dobra kapitałowe – ponieważ należy je wcześniej wytworzyć. Natomiast ziemią jest miejsce, na którym prowadzona jest hodowla owiec i na którym zbudowano fabrykę. Do ziemi niektórzy czasem zaliczają również zwierzęta, rośliny czy też surowce naturalne: wszelkie rzeczy, które można traktować jako stałe, niejako „dane na zawsze przez naturę” człowiekowi. Gdy się jednak nad tym głębiej zastanowimy, to na pewno zauważymy, że tak naprawdę nic nie jest nam dane raz na zawsze przez naturę. Zwierzętami należy się zaopiekować, zainwestować czas i środki w ich hodowlę. Lasy również wymagają odpowiedniego utrzymania. Surowce naturalne trzeba wydobywać z ziemi, co wymaga pewnego wysiłku, a do tego ich ilość jest ograniczona. Nawet samą ziemię można albo zniszczyć, albo użyźnić. Pokazuje to faktycznie, że klasyczne rozróżnienie na ziemię i dobra kapitałowe nie jest możliwe do utrzymania, ponieważ i ziemia, i dobra kapitałowe wymagają pewnych inwestycji. Potrzeba do tego wiedzy i inteligencji człowieka, ale przede wszystkim przedsiębiorczego działania. == Czy wiesz, że...? == Ekonomia do początku XIX wieku określana była mianem „ponurej nauki”, gdyż wielu teoretykom wydawało się, że ze wzrostu gospodarczego nie mogą korzystać wszyscy ludzie w społeczeństwie. Na szczęście historia gospodarcza dowiodła błędu tego założenia i pokazała, że w gospodarce w interesie wszystkich grup leży wzrost całkowitej produkcji i liczby towarów oferowanych konsumentom. == Znaczenie przedsiębiorcy w procesie produkcji == Mimo że dzisiaj ekonomiści nie skupiają się już zbytnio na klasyfikowaniu czynników produkcji, to ciągle pojawiają się negatywne konsekwencje tego podejścia. Gdy mówi się o wzroście gospodarczym czy poziomie życia, zbyt dużą uwagę przywiązuje się do samych czynników produkcji: surowców naturalnych albo gromadzonego kapitału (krajowego lub zagranicznego). Tymczasem większą uwagę należy raczej zwracać na to, w jaki sposób te czynniki produkcji są zdobywane i łączone w procesie produkcji przez przedsiębiorców (zob. rozdział 17). Ekonomicznie efektywna produkcja nie przypomina rośliny wyrastającej właściwie samoistnie z ziemi. Produkcja sama nie urośnie w wyniku dodawania do niej kolejnych czynników (np. surowców albo dóbr kapitałowych). Dużo ważniejsza od materialnych czynników produkcji i tego, jak je zaklasyfikujemy, jest osoba (przedsiębiorca), która razem układa je w przemyślaną całość i stara się robić to lepiej od innych. == Pytania i zadania == # Jaka była klasyczna triada czynników produkcji? Z jakiego powodu była tak ważna i dlaczego straciła na swym pierwotnym znaczeniu? # Podaj przykład dowolnego procesu produkcji i sklasyfikuj jego czynniki. # Czy rozróżnienie czynników produkcji na ziemię i dobra kapitałowe ma sens? Uzasadnij odpowiedź. # Czy można wskazać pewien najważniejszy czynnik produkcji? Dlaczego? # Dlaczego o dobrach kapitałowych, maszynach, mówi się, że są dobrami pośrednimi? # Wyjaśnij, dlaczego kiedyś idea walki klas była tak żywa, a dzisiaj już nie odgrywa większej roli? # Austriacki ekonomista Ludwig von Mises napisał kiedyś: „Produkcja nie jest czymś fizycznym, materialnym i zewnętrznym; jest zjawiskiem o charakterze duchowym i intelektualnym”. Korzystając z diagramu 1, spróbuj uzasadnić takie twierdzenie. <noinclude> {{Nawigacja|Wolna przedsiębiorczość|[[../Rzadkość i koszt alternatywny/]]|[[../Praworządność a społeczeństwo/]]}} </noinclude> atsyk1sls8vxc9qfeqsr7id99l84xgw Wolna przedsiębiorczość/Praworządność a społeczeństwo 0 57474 540880 528466 2026-04-26T17:54:01Z Marek Mazurkiewicz 8990 redakcyjne cdn 540880 wikitext text/x-wiki Z tego rozdziału dowiesz się: * Z czym jest pojęcie praworządności (tzw. rule of law), * dlaczego praworządność ma wielkie znaczenie ekonomiczne, * czym jest niepewność reżimowa, * co oznacza dla gospodarki stabilność prawa, * jaka jest rola praw własności w kontekście stabilności * prawnej i gospodarczej. Najważniejsze pojęcia: praworządność, niepewność reżimowa, wartość kapitałowa == Cechy rządów prawa == W języku angielskim istnieje termin rule of law [wym. rul of loł], który tłumaczy się nieraz jako praworządność czy też rządy prawa. Terminu tego używa się wtedy, gdy w danym kraju istnieje ład opierający się na uniwersalnych regułach prawnych. Co mamy na myśli, gdy mówimy o takich systemowych regułach? Chodzi głównie o to, by zasady działania władzy i aparatu państwa nie były arbitralne, czyli o to, by władca nie mógł ich dowolnie zmieniać i ustalać wedle własnej woli. Innymi słowy, chodzi o taki porządek prawny, w którym ci, którzy tworzą przepisy, nie mogą tego czynić dowolnie i bez poszanowania praw jednostek. Określenie „rządy prawa” może być trochę mylące, ponieważ każdym społeczeństwem rządzą pewne reguły prawne, choćby niezwykle okrutne. Nawet w najbardziej dyktatorskim i zniewolonym społeczeństwie dominują z góry ustalone zasady postępowania. Angielski termin rule of law należałoby raczej tłumaczyć jako „duch prawa”, ponieważ najczęściej zawiera w sobie coś więcej niż tylko znaczenie: „wszystko ma być zapisane w ustawie”. W nazistowskich Niemczech również obowiązywały procedury i przepisy stanowione przez dyktaturę. Niemniej, nie uznaje się tego porządku za praworządny system oparty na zasadzie rule of law. Dlaczego? Ponieważ był to system, w którym prawo traktowano jako instrument, dowolnie strojony, przestawiany i zmieniany przez jedną rządzącą partię (przypisującą sobie wyłączność na rację w każdej kwestii). Partia ta czyniła tak wyłącznie po to, aby zrealizować konkretny cel ideologiczny, bez poszanowania bardziej fundamentalnych reguł sprawiedliwości” zgodnych z „duchem prawa”. W systemie opartym na „duchu prawa” istnieją niezbywalne uprawnienia jednostki, których władza nie może łatwo podważyć, takie jak prawo do uczciwego procesu sądowego, prawo do wolności wypowiedzi czy prawo własności, mające ogromne znaczenie gospodarcze. == Wpływ systemu prawnego na działalność gospodarczą == Dlaczego w książce o przedsiębiorczości zajmujemy się czymś, co wydaje się bardziej pasować do zajęć z wiedzy o społeczeństwie? Ponieważ system prawny obowiązujący w danym kraju jest jednym z głównych czynników warunkujących prowadzenie działalności gospodarczej (choć nie jedynym). Mimo że nasze życie społeczno gospodarcze zależy od wielu rzeczy, porządek prawny jest jednym z najbardziej istotnych czynników decydujących o tym, jak będzie wyglądać gospodarka. Prawa własności wraz ze swobodą umów są jednymi z elementów składowych praworządnego systemu społeczno-gospodarczego. Zapewniają solidne podstawy dla funkcjonowania przedsiębiorstw. Czy prawa te są nieograniczone? To zależy od systemu politycznego. We wszystkich krajach aparaty władzy decydują się z różnych przyczyn na ograniczanie tych uprawnień. W sferze ideologicznej toczą się spory o to, w jakim stopniu i czy w ogóle te prawa powinny być przez państwo ograniczane. Skoro jednak we wszystkich krajach prawa jednostki są ograniczane przez aparat państwa, to po co w ogóle wprowadzać zasadę praworządności? Jak odróżnić państwa opresyjne od tych bardziej przyjaznych jednostce i czy w ogóle jest możliwe takie twarde rozróżnienie? Wszystkie państwa ograniczają prawa jednostek, ale niektóre czynią to w mniejszym stopniu od pozostałych. Władzy trudniej jest rozszerzać swoje uprawnienia w krajach posiadających rozwinięte systemy polityczne, które są bliskie idei praworządności. Wynika to z rozmaitych powodów, również kulturowych, jednak niezwykle ważna jest sama konstrukcja ładu prawnego – to, czy istnieje w nim na przykład zasada podziału władzy. Konsekwencją istnienia tej zasady jest to, że w kraju praworządnym władza nie może np. skonfiskować prywatnej własności równie łatwo jak w krajach o rządach dyktatorskich. Musi bowiem liczyć się (przynajmniej w teorii, gdyż w praktyce może być różnie) z innym ośrodkami władzy i nacisku: z opozycją polityczną, władzą sądowniczą, konstytucją, potencjalną presją ze strony mediów, organizacjami pozarządowymi. Nie oznacza to oczywiście, że taka konfiskata nie jest w ogóle możliwa. Oznacza tylko tyle, że trudniej ją przeprowadzić niż w systemie, w którym dana partia ma pełny monopol na władzę i nie jest w ogóle ograniczona systemem prawnym. I choć często system ten nie działa idealnie, to jednak stanowi pewną przeszkodę, choć minimalnie ograniczając swobodę działań władzy. Te sprawy mają ogromne znaczenie dla stanu gospodarki i przedsiębiorczości. W ładzie politycznym bliskim ideałowi praworządności istnieją znane społeczeństwu i częściowo przewidywalne reguły gry. == Znaczenie stabilnych reguł prawnych == Dlaczego stabilność tych reguł ma tak duże znaczenie? Ponieważ pozwala na lepsze długookresowe planowanie. Widać to szczególnie wyraźnie w przypadku krajów rozwijających się. Wkładają one dużo wysiłku we wprowadzenie stabilnego systemu prawnego, czyli takiego, który dawałby zagranicznym inwestorom względnie dużą pewność co do politycznej przyszłości. Wyobraźmy sobie, że inwestor zastanawia się nad otwarciem fabryki w ubogim kraju. Jeśli nie może być pewien bezpieczeństwa tej inwestycji, gdyż istnieje groźba wybuchu powstania albo dojścia do władzy nieprzyjaznego dyktatora, ignorującego prawo międzynarodowe, to może się na nią nie zdecydować. W takim wypadku rozwój gospodarczy kraju będzie dużo wolniejszy od potencjalnie możliwego do osiągnięcia. Diagram 2. Konsekwencje praworządności i jej braku Praworządność Brak praworządności Stabilne prawo Niestabilność Źródło: opracowanie własne. Przewidywalność Niepewność reżimowa Większe inwestycje Większy dobrobyt Mniejsze inwestycje Mniejszy dobrobyt == Wpływ niepewności reżimowej na inwestycje == W teorii prawa gospodarczego pojawia się termin niepewności reżimowej. Określa się nim brak przewidywalności przyszłych zmian w prawie, które dotykają przedsiębiorców planujących inwestycje. Przewidywalność zmian ma szczególnie duże znaczenie w przypadku inwestycji długoterminowych, o horyzoncie kilkudziesięciu lat. Jeśli nie możemy być pewni tego, co władza polityczna zrobi za parę miesięcy lub lat, to będziemy mniej skłonni do inwestowania w takim kraju. Zjawisko niepewności reżimowej dobrze tłumaczy, dlaczego wielu ludzi decyduje się inwestować swoje pieniądze w krajach, gdzie opodatkowanie jest nominalnie wyższe. Często bowiem warto pozostawić pieniądze w kraju, w którym reguły praworządności są przestrzegane, nawet pomimo wyższych podatków. Dla wielu bardziej opłacalna będzie inwestycja w kraju praworządnym opodatkowana stawką 30 procent niż inwestycja w kraju łamiącym reguły praworządności opodatkowana stawką 5 procent. Dlaczego? W pierwszym przypadku inwestycja odbywałaby się w stabilniejszym otoczeniu prawnym, a więc mniej ryzykowne byłoby także jej uruchomienie, nawet gdyby potem trzeba by było zapłacić wyższy podatek i możliwe było zatrzymanie tylko 70 procent owoców inwestycji. Rozwiązanie to może się okazać lepsze niż ryzykowanie utraty wszystkich pieniędzy w kraju mniej praworządnym. Inwestowania i działalności gospodarczej nie sposób porównywać do gier, ale nawet na ich przykładzie łatwo zobaczyć rolę stabilnych reguł. W szachach najlepsi gracze planują kilkanaście ruchów do przodu. Jest to możliwe, ponieważ obie strony zobowiązują się do przestrzegania określonych zasad. Planowanie długookresowe ma sens, bo każdy musi się trzymać zasad. Wyobraźmy sobie jednak, że jedna ze stron uzyskałaby nadzwyczajną przewagę i mogłaby w dowolnym momencie zmienić reguły poruszania się gońca lub wieży. W takiej sytuacji długoterminowe planowanie przez drugą stronę nie miałoby sensu. == Własność i wartość kapitałowa == Podobnie jest z inwestowaniem i rozsądnym gospodarowaniem zasobami. Stabilne reguły gry pozwalają na długoterminowe planowanie gospodarcze. Ma to jednak swoje konsekwencje. Długoterminowe planowanie gospodarcze pozwala docenić długoterminową wartość zasobów gospodarczych. Załóżmy, że posiadamy dom i kawałek ziemi. Dzięki temu mamy gdzie mieszkać i uprawiać rośliny. Ponieważ istnieje porządek społeczny i reguły prawne, to inni ludzie nie mogą korzystać z naszego domu i ziemi bez naszej zgody. Dzięki temu nasze nieruchomości mają wartość kapitałową – wartość wynikającą z ich przyszłego użycia: za kilka miesięcy, kilka, kilkanaście, kilkadziesiąt lat. Gdyby każdy mógł dowolnie korzystać z naszych nieruchomości, zasoby te zostałyby szybko wyeksploatowane. Nie mielibyśmy żadnego powodu, by w nie inwestować i podejmować się względem nich długookresowego planowania. == Czy wiesz, że...? == World Bank Group [wym. łorld bank grup; znaczenie: grupa banku światowego] publikuje co roku raport Doing Business [wym. duinbiznes; znaczenie: prowadzenie działalności gospodarczej], który ocenia poszczególne kraje pod względem stabilności i przewidywalności systemu prawnego (np. egzekwowania kontraktów, ochrony zawartych umów itd.). Najbardziej rozwinięte kraje zajmują w nim najwyższe miejsca. Kraje, w których prawo jest bardzo niestabilne, czyli trudne do przewidzenia, plasują się na niższych pozycjach. Aktualny ranking możesz znaleźć na stronie: https://www.doingbusiness.org/ Podobnie jest z dobrami, które stoją na półkach w sklepach. Wyobraźmy sobie, że państwo nagle zmienia reguły gry i pozwala ludziom zabierać te towary bez płacenia za nie. Najpierw doszłoby do przepychanek i wszyscy rzuciliby się na darmowe towary (które potem pewnie sprzedawaliby innym). Skoro takie towary z łatwością mogłyby zostać zabrane, to później mało kto chciałby je produkować i dostarczać masowo ludziom. W ten sposób nagła zmiana reguł gry sprawiłaby, że inwestowanie stałoby się nieopłacalne, ponieważ z powodu niestabilności systemu prawnego dobra nie miałyby swojej długookresowej wartości kapitałowej. Z tych powodów stabilność reguł i praworządność odgrywają istotną rolę w sprawnym funkcjonowaniu porządku ekonomicznego. I choć nie gwarantują rozkwitu przedsiębiorczości i wzrostu gospodarczego, są ich fundamentem. == Pytania i zadania == #Wyjaśnij na podstawie diagramu 2, dlaczego praworządność ma znaczenie dla gospodarki. #Czym jest niepewność reżimowa? Podaj przykłady. #Podaj przykłady znaczenia stabilności systemu prawnego dla planowania inwestycji. #Wyjaśnij, w jaki sposób prawo do własności zasobów decyduje o istnieniu wartości kapitałowej. #Wyjaśnij krótkowzroczność propozycji, według której wszystkie dobra na sklepowych półkach należałoby właścicielom sklepów odebrać i rozdać ludziom za darmo, aby się nie marnowały. #Znajdź w Internecie najnowszy raport Doing Business i przeanalizuj w nim pozycję Polski na tle innych krajów. <noinclude> {{Nawigacja|Wolna przedsiębiorczość|[[../Produkcja i czynniki produkcji/]]|[[../Podział pracy/]]}} </noinclude> oazzjn6yh6qglima7ahprlsqbhusr8z Wolna przedsiębiorczość/Podział pracy 0 57475 540882 490531 2026-04-26T18:12:22Z Marek Mazurkiewicz 8990 redakcyjne 540882 wikitext text/x-wiki Podział pracy Z tego rozdziału dowiesz się: * jakie są korzyści z podziału pracy dla całego społeczeństwa, * czym jest teoria przewagi komparatywnej, * jaki sposób handel między krajami (i ludźmi) może przynosić korzyści wszystkim, nawet jeśli jedna strona jest we wszystkim lepsza. Najważniejsze pojęcia: * podział pracy, koszty komparatywne, korzyści z handlu == Podział pracy i społeczna harmonia == Od zarania dziejów ludziom towarzyszy podział pracy. Jednak wraz z ewolucją systemów społecznych i politycznych charakter tego podziału ulegał zmianie. Czym w ogóle jest podział pracy? W najprostszym, bezpośrednim znaczeniu polega on na przydzielaniu ludziom różnych zadań. Dzięki temu mogą się oni skupiać na jednej czynności, co pozwala na doskonalenie jej wykonywania i osiągania lepszych efektów. Korzyść z podziału pracy bardzo łatwo dostrzec, wystarczy tylko rozejrzeć się dokoła. Na wielu rynkach mamy profesjonalistów, którzy są dobrzy w tym, co robią, ponieważ się wyspecjalizowali: lekarzy, sportowców, pisarzy, szewców, śpiewaków itd. Z podziałem pracy wiąże się zagadnienie społecznej harmonii. Jak wspomnieliśmy w rozdziale o czynnikach produkcji (rozdz. 3), ludzie przez długi czas byli przekonani, że konflikty pomiędzy poszczególnymi członkami społeczności są nie do uniknięcia, dlatego historia ludzkości musi być historią wojen i ciągłych walk. Podobne wyobrażenia dotyczyły sytuacji na arenie międzynarodowej. Wierzono, że kraje muszą pozostawać ze sobą w ciągłym sporze, dlatego trudno im będzie znaleźć taki ład, który pozwoliłby wszystkim stronom wspólnie z niego korzystać. Siłą napędową tego przekonania było poczucie, że skoro część krajów była potężniejsza od innych, mogła domagać się szczególnego rodzaju posłuszeństwa oraz narzucać pozostałym niekorzystne dla nich warunki. == Teoria przewagi komparatywnej == Z podobnym rozumowaniem możemy spotkać się także dzisiaj. Dotyczy ono takiej sytuacji, gdy dany kraj może wytwarzać wszystkie produkty taniej i lepiej. Czy taki kraj w ogóle potrzebowałby innych do współpracy? Czy nie mógłby z pozostałych uczynić swoich poddanych i ich wyzyskiwać? Okazuje się, że nawet wtedy, gdy jeden kraj jest lepszy w produkcji wszystkich dóbr od pozostałych krajów (choć trudno sobie taki przypadek wyobrazić), współpraca będzie opłacalna dla każdej ze stron. Z pomocą w wyjaśnieniu tego pozornego paradoksu przychodzi teoria przewagi komparatywnej (kosztów komparatywnych), łączona głównie z Davidem Ricardem [wym. dejwidem rikardem], brytyjskim ekonomistą żyjącym w latach 1772–1823. Wyjaśnijmy to na przykładzie. Załóżmy, że Anna w ciągu minuty może ulepić 1 uszko do barszczu albo zawiesić 3 bombki na choince. Karolina jest dużo sprawniejsza, bo w ciągu minuty potrafi ulepić 2 uszka albo powiesić na choince 4 bombki (zob. tabelę 1). Załóżmy, że każda z nich przeznacza w sumie 10 minut na przygotowania świąteczne. Bez podziału pracy Anna, przeznaczając na każdą czynność połowę tego czasu, zdoła ulepić 5 uszek i powiesić 15 bombek. Karolina w tym czasie ulepi 10 uszek i powiesi 20 bombek. W sumie razem wytworzą 15 uszek, a na choince zawieszą 35 bombek (zob. tabelę 2). Co się jednak stanie, jeśli zdecydują się na podział pracy? I jaki podział pracy byłby najkorzystniejszy? W poprzednich rozdziałach poznaliśmy koncepcję kosztu alternatywnego, czyli najlepszej utraconej możliwości. Pojęcie to będzie pomocne także w rozwiązaniu powyższej zagadki. Ile „kosztuje” zrobienie uszka przez Annę? Jedno uszko wykonane przez Annę oznacza, że nie zawieszono 3 bombek – oto koszt alternatywny. W przypadku Karoliny jedno uszko oznacza, że na choince nie zawisły 2 bombki (dwa do czterech to jak jeden do dwóch). Widzimy, że choć Karolina w ujęciu czasowym jest bezwzględnie lepsza w robieniu uszek i wieszaniu bombek, to koszt alternatywny wykonania jednego uszka jest większy dla Anny, ponieważ zamiast wykonać jedno uszko Anna mogłaby powiesić 3 bombki. Na tym polega przewaga komparatywna Anny. Załóżmy więc, że skoro wychodzi jej to lepiej, to cały swój czas poświęci na wieszanie bombek. Przez 10 minut uda jej się powiesić 30 bombek (zob. tabelę 3). Przypuśćmy też, że Karolina poświęci 8 minut na lepienie uszek i wykona ich razem 16. W pozostałe 2 minuty powiesi jeszcze 8 bombek. Całkowita produkcja jednego i drugiego dobra wzrośnie. Uszek będzie 16, a bombek na choince 38.33 5. Podział pracy Tabela 1. Różnice w umiejętnościach Anny i Karoliny Uszka/minuta Bombki/minuta Anna 1 3 Karolina 2 4 Źródło: opracowanie własne. Tabela 2. Produkcja uszek i bombek bez podziału pracy Uszka/5 minut Bombki/5 minut Anna 5 15 Karolina 10 20 Suma 15 35 Źródło: opracowanie własne. Tabela 3. Produkcja uszek i bombek z podziałem pracy Uszka Bombki Anna 0 minut na uszka 10 minut na bombki → 30 bombek Karolina 8 minut na uszka → 16 uszek 2 minuty na bombki → 8 bombek Suma 16 38 Źródło: opracowanie własne. W taki sposób ekonomiści od czasów Ricarda opisują źródła korzyści płynących z podziału pracy. W praktyce jednak ważnym elementem są stosunki handlowe. Nie chodzi tylko o to, że Anna i Karolina będą mogły wspólnie wytworzyć więcej, gdy współpracują. Najważniejsze, że obie mogą skorzystać na podziale pracy, nawet gdy działają na własną rękę i muszą realizować swoje cele samodzielnie. Patrząc na to z perspektywy kosztów i cen, zauważamy, że zawieszenie jednej bombki kosztuje Annę 1/3 uszka, a Karolinę więcej, bo 1/2 uszka. Dlatego Karolina będzie gotowa zapłacić za zawieszenie bombki każdą cenę poniżej 1/2 uszka. Anna, świadcząc usługę zawieszania bombek, będzie zyskiwała przy każdej cenie powyżej jej kosztu, czyli powyżej 1/3 uszka. W tej sytuacji wymiana, w której Karolina płaci Annie za powieszenie bombki cenę między 1/3 a 1/2 uszka, jest opłacalna dla obu, mimo że Karolina i tak jest we wszystkim lepsza! Ujmując problem odwrotnie, Annę jedno uszko kosztuje 3 niezawieszone bombki, a Karolinę jedno uszko kosztuje tylko 2 nie- zawieszone bombki. Dlatego gdy Anna będzie otrzymywała od Karoliny zapłatę w postaci zawieszenia bombek w zamian za uszka, każda cena między 2 a 3 bombkami za uszko będzie opłacalna zarówno dla jednej, jak i dla drugiej. Krótko mówiąc, handel w każdych warunkach, zawsze, choćby nieznacznie, poprawia sytuację handlujących stron. Ten przykład jest matematycznie prosty, ale zasada pozostanie ta sama, gdy go trochę skomplikujemy i wprowadzimy do modelu więcej osób. Moglibyśmy wymyślać inne przykłady – z ubraniami, żywnością, środkami czystości. Nie ma znaczenia, jaki przykład podamy, ponieważ zasada kosztu alternatywnego może być zastosowana w każdej sytuacji. Dlatego też zawsze możemy porównać koszty komparatywne. Nawet jeśli jedna ze stron jest absolutnie lepsza we wszystkim, relatywne porównanie niezmiennie wykaże, że ten słabszy jest w czymś względnie lepszy, co oznacza, iż może kogoś zastąpić w wykonywaniu danych czynności z korzyścią dla tego silniejszego. Rozważmy sami tę kwestię na przykładzie wybitnego sportowca. Cristiano Ronaldo być może potrafiłby szybciej niż większość ludzi przewieźć i przenieść swoje meble podczas przeprowadzki z jednego domu do drugiego. Ale decyduje się na wynajęcie pomocnika – niekoniecznie dlatego, że chce mu dać pracę albo że nie lubi dźwigać mebli (to mogą być dodatkowe powody). Z pewnością jednak istotnym czynnikiem będzie to, że tracąc swój czas na przeprowadzkę, nie mógłby go poświęcić na trening i grę w piłkę nożną, czyli na coś, co przynosi mu ogromne korzyści finansowe (oprócz osobistej satysfakcji). Nawet jeśli wykonanie przeprowadzki zajęłoby mu 3 godziny, a pomocnikowi 4 godziny, to i tak wynajęcie go będzie dla Ronalda opłacalne z powodu kosztu komparatywnego. Wynika to z tego, że jedna godzina kosztuje Cristiana Ronalda więcej niż pomocnika. Ponadto, co może wydać się paradoksalne, im Ronaldo będzie lepszy, tym bardziej będzie skłonny do skorzystania z pomocy słabszego. Do tego w gruncie rzeczy sprowadza się zasada kosztu komparatywnego. Często możemy się przekonać o jej sile, gdy rozważamy alokowanie (czyli przypisywanie zasobów do konkretnych celów) własnego czasu. Może się okazać, że łatwiej nam będzie za coś na rynku zapłacić niż wykonać to samemu, ponieważ w czasie, gdy wykonywalibyśmy sami tę pracę, moglibyśmy zrobić coś innego i zarobić więcej, niż wyniesie koszt zakupienia usługi. To niewątpliwie jeden z głównych powodów, dla których wielu pracowników korporacji wyższego szczebla decyduje się jadać posiłki w restauracjach zamiast przygotowywać je samemu. Po prostu wychodzi im to taniej! Jeśli pozostaną w pracy dwie godziny dłużej, mogą otrzymać płacę wyższą niż cena obiadu w restauracji. Pamiętajmy jednak, że mówimy tu o „fizycznej produktywności”. Może być bowiem tak, że pracownik sam zrobi sobie posiłek, bo lubi to robić albo nie ufa produktom kupowanym na rynku. Pewne subiektywne pobudki mogą przesądzać o tym, że człowiek nie będzie preferował podziału pracy. Równie dobrze może się okazać, że Cristiano Ronaldo lubi sam wykonywać wszystkie prace związane z przeprowadzką. A jak pamiętamy, według ekonomii ludzie mogą mieć cele pozamaterialne. Jednym z nich może również być unikanie podziału pracy. == Społeczne i międzynarodowe korzyści z podziału pracy == Prawo kosztów komparatywnych pokazuje, że możliwa jest harmonia w społeczeństwie i harmonia międzynarodowa. Nawet jeśli jeden z krajów jest znacznie słabszy w produkcji wszystkich dóbr od innych krajów, to i tak zawsze znajdzie swoje miejsce w produktywnym podziale pracy, na którym skorzystają wszystkie strony. Aby doszło do korzystnego podziału pracy, który zwiększy całkowitą produkcję jednostek lub krajów, potrzebna jest jeszcze swobodna wymiana między współpracującymi podmiotami. Anna i Karolina muszą wynegocjować między sobą takie ceny uszek i bombek, które skłonią je do specjalizacji. Teoria przewagi komparatywnej potrafi też dobrze wyjaśnić, w jaki sposób wszyscy w danym społeczeństwie mogą odnosić korzyści z istnienia bogatych i zdolnych jednostek. Czy zastanawialiście się kiedyś, dla- czego usługi kelnera, fryzjera czy krawca wycenia się odmiennie w różnych krajach? Praca wykonywana w tych zawodach wygląda podobnie w wielu krajach. A jednak fryzjer na Ukrainie zarabia (przeciętnie) mniej niż fryzjer w Polsce, a fryzjer w Stanach Zjednoczonych z pewnością jest od nich bogatszy (według strony www.salaryexpert.com roczne zarobki ukraińskiego fryzjera – stan na grudzień 2020 r. – to ok. 15,5 tys. zł, polskiego to 48,5 tys. zł, a amerykańskiego to ok. 130 tys zł). Z czego to wynika? Z dodatkowych efektów przewagi komparatywnej. W bogatszych społeczeństwach istnieją bardziej produktywni przedsiębiorcy, działający na skalę globalną. Im ktoś jest bardziej produktywny w swoim fachu i zarabia więcej pieniędzy, tym wyższy staje się jego koszt alternatywny. Dlatego jest gotów więcej zapłacić za to, że zostanie w czymś zastąpiony. Gdyby Karolina potrafiła lepić jeszcze więcej uszek na minutę, to tym bardziej potrzebowałaby pomocy Anny. Byłaby również gotowa zapłacić większą liczbą uszek Annie za to, że ta wieszałaby bombki – zwłaszcza gdyby na rynku pojawiła się konkurencja, czyli inni ludzie gotowi zatrudniać Annę, by wyręczała ich w prostszych czynnościach. == Czy wiesz, że...? == W XIX wieku pojawił się ruch luddystów, którzy chcieli niszczyć maszyny, gdyż uważali, że używanie maszyn w produkcji zwiększy trwale bezrobocie. Dzisiaj mogłoby to przypominać niszczenie kombajnów (żeby więcej ludzi mogło pracować w polu), zakaz korzystania z łopat (bo do kopania rękami potrzeba więcej ludzi) czy zakaz korzystania z paczkomatów (aby dać pracę dostarczycielom paczek). Luddyści chcieli niszczyć maszyny, gdyż wierzyli, że nie można dopuścić do tego, aby ktoś stał się za bardzo produktywny, bo wtedy nie będzie potrzebował do pomocy innych ludzi, przez co skaże ich na społeczne wykluczenie. Dzięki teorii kosztów komparatywnych wiemy, że jest to nieprawda i wysoka produktywność jednej osoby (czy przedsiębiorstwa) przynosi korzyść reszcie społeczeństwa. Im więcej ktoś zarabia, tym więcej warta jest każda godzina jego pracy. Dlatego więcej by tracił, gdyby nie skupiał się na swoim zawodzie – np. gdyby musiał poświęcać czas na mycie samochodu, malowanie ścian albo naprawę kranu w domu. Dlatego bardziej mu się opłaca znalezienie i opłacenie kogoś, kto za niego umyje samochód lub naprawi kran. Im więcej jest bogatych ludzi w społeczeństwie, tym większe zapotrzebowanie na pomoc fachowców, tym większa konkurencja o ich usługi i tym wyższe oferty zapłaty. W ten sposób otoczenie ludzi bogatych korzysta pośrednio na ich majątku, w wyniku czego w krajach bogatszych za podobne czynności płaci się często o wiele więcej niż w krajach biednych. Dlatego również im bardziej pogłębia się specjalizacja, tym bardziej przydatni stają się wszyscy ludzie – także ci mniej zdolni albo poszkodowani przez los. Zawsze bowiem mogą się przyczynić do poprawy efektywności ludzi bardziej wydajnych oraz do pełniejszego wykorzystania ich talentów. Z podziałem pracy wiąże się jeszcze jedno bardzo ważne i niejednokrotnie pomijane zagadnienie. Zasada przewagi komparatywnej ma swój ukryty potencjał prawie wszędzie. Właściwie w każdej sytuacji dzięki podziałowi pracy ludzie mogą stać się bardziej produktywni pod względem fizycznym. Nie zawsze jednak jest to produktywność wartościowa. W ekonomii istnieje znacząca różnica między produktywnością fizyczną a ekonomiczną. Ta pierwsza wymaga podziału pracy. Ta druga wymaga istnienia przedsiębiorców, którzy umiejętnie organizują podział pracy, aby stworzyć coś wartościowego. To jednak będzie tematem działu II podręcznika. == Pytania i zadania == # Podaj przykład pokazujący zasadę przewagi komparatywnej (inny od tego w tekście). # Dlaczego bezwzględna przewaga jednej strony w produkcji wszystkich dóbr nie oznacza, że podział pracy i wymiana będą nieopłacalne? # Wyjaśnij, dlaczego mimo prawa przewagi komparatywnej ludzie mogą zrezygnować z podziału pracy. Podaj przykłady takich zachowań. # Dlaczego większa produktywność jednej osoby wpłynie pozytywnie na bogactwo tych, którzy nie będą bardziej produktywni? # Wyjaśnij, jak podział pracy wpływa na harmonię społeczną. {{Nawigacja|Wolna przedsiębiorczość|[[../Praworządność a społeczeństwo/]]|[[../Pieniądz i funkcje pieniądza/]]}} q1qc6tyds628t2qvyz6ojgb22uy254r Wolna przedsiębiorczość/Suwerenność konsumenta i ceny 0 57477 540883 491124 2026-04-26T18:14:32Z Marek Mazurkiewicz 8990 redakcyjne 540883 wikitext text/x-wiki Z tego rozdziału dowiesz się: * dlaczego za główną siłę napędową procesów gospodarczych uważa się konsumenta, * czym jest suwerenność konsumenta, * dlaczego dla konsumentów ważna jest konkurencja, * dlaczego ekonomiści spierają się o to, czy wszystkie dobra powinny być wytwarzane z uwzględnieniem zasady suwerenności konsumenta, * jak konsumenci decydują o cenach. Najważniejsze pojęcia: * konsument, suwerenność konsumenta, wolna konkurencja, użyteczność == Przewodnia rola konsumenta w gospodarce rynkowej == Wszystkie towary sprzedawane na rynku mają swoje ceny wyrażone w kategoriach pieniężnych. Najważniejsze z tych cen w codziennym życiu ludzi to ceny dóbr konsumpcyjnych, czyli ceny, które płaci ostateczny odbiorca – ten, który kupuje chleb, wodę, leki, energię i inne dobra, aby bezpośrednio z nich korzystać jako konsument. Konsumenta uważa się za niepisanego przywódcę gospodarki rynkowej. Jest to określenie nieco na wyrost, ponieważ w codziennej praktyce to nie konsumenci dowodzą przebiegiem procesu produkcji, nie oni zarządzają wytwarzaniem towarów nie oni decydują o ich sprzedaży. Czynią to przede wszystkim przedsiębiorcy. Mimo to przedsiębiorcy nie są wyłącznymi panami swojego losu. Nie mogą zagwarantować sobie sukcesu na rynku. Dlaczego? Ponieważ ostatecznym odbiorcą produktów wytworzonych przez przedsiębiorcę zawsze jest konsument. To on dokonuje potwierdzenia, że dany produkt jest potrzebny i pożądany na rynku – potwierdzenia tego, co jego zdaniem jest użyteczne. Stąd częste i niekiedy być może wyolbrzymione określanie konsumenta mianem „dowódcy” albo „kapitana”. Głos konsumenta jest niczym głos wyrażającego pozwolenie, ostatecznie stemplującego projekt – bez jego pieczątki cały plan trafiłby do kosza. Choćby nie wiadomo, jak imponujący byłby dla różnych ludzi i ile czasu poświęcono by na jego realizację, to bez aprobaty konsumenta projekt nie ma wartości rynkowej. Decyzje konsumenckie oznaczają zgodę na uruchomienie procesu produkcji. Wielokrotnie w historii stykaliśmy się z pomysłowymi produktami, które wyglądały na projekty solidne pod względem technicznym. A jednak nie gwarantowały sukcesu. Nieraz konsumenci odwracali się od takich produktów, stwierdzając, że wolą wydać pieniądze na coś innego. Gusta konsumentów są subiektywne i niekiedy może być nam trudno je zrozumieć. W związku z tym wprowadzenie produktu na rynek i obserwacja decyzji zakupowych ludzi stanowi jedyny sposób testowania zgodności produktu z preferencjami konsumentów. Nieuchronność takich kaprysów konsumenckich sprawiła, że w ekonomii pojawiło się pojęcie suwerenności konsumenta – oznacza to, że punktem centralnym teorii ekonomicznych jest konsument podejmujący swobodnie decyzje o tym, które produkty kupować. To właśnie z tego powodu w ekonomii mówi się o konieczności istnienia wolnej konkurencji, aby zapewnić możliwie najszersze spektrum wyboru ostatecznym odbiorcom. Swoboda konkurencji prowadzi do tego, że w przypadku niezadowolenia klientów z jednego dostawcy, mogą się oni zdecydować na zakup dóbr dostarczanych przez innego dostawcę. Gdy przestaje nam odpowiadać oferta naszego dostawcy usług telefonii komórkowej, możemy podjąć decyzję o wyborze innego. W ten sposób wysyłamy sygnał, jaki rodzaj dóbr jest naszym zdaniem najlepszy i najbardziej pożądany. Choć jako jednostki mamy niewielki wpływ na cały rynek, to decyzje wszystkich konsumentów sumują się w jedną wielką siłę, która ostatecznie decyduje o opłacalności przedsiębiorczych projektów. Jeśli producent tworzy dobra w dużym zakresie pożądane przez ludzi, to wzrasta jego sprzedaż. Pojawiają się zyski pieniężne, które stanowią namacalny dowód jego sukcesu. Jeśli natomiast producent tworzy produkt słabej jakości, nieatrakcyjny albo nieadekwatny do swojej ceny, konsumenci z niego rezygnują. W konsekwencji niska sprzedaż będzie przynosić producentowi straty w działalności, a z czasem może go zmusić do wycofania się z rynku. Zasada swobodnego wyboru konsumenta jest tak mocno utwierdzona w rozważaniach ekonomicznych, że pojawiała się nawet w ekonomicznych modelach planowania socjalistycznego, czyli centralnego planowania przez państwo każdego aspektu działalności gospodarczej w kraju. Nawet tam, przy zaplanowanej wszechwładzy gospodarczej państwa, zwracano uwagę na konieczność istnienia wolności konsumentów do dokonywania wyborów zakupowych (choć oczywiście w realnej praktyce krajów socjalistycznych mało kto zwracał na to uwagę). Metoda dokonywania wyborów przez konsumentów jest jedyną dostępną metodą eksperymentalną pozwalającą na sprawdzenie, czy stworzone dobro lub usługa przynosi spodziewane korzyści. Jak zwracaliśmy uwagę w poprzednich rozdziałach, w ekonomii wartość dobra jest rzeczą subiektywną, to znaczy zależną od indywidualnych preferencji. Ktoś lubi książki jednego autora i uważa go za wybitnego twórcę, ktoś inny może uznać go za mało interesującego i zdecydować się na kupno czegoś innego (niekoniecznie książki). Zrozumienie, że wartość jest subiektywna, pozwala nam zwrócić się ku podmiotowi procesu ekonomicznego, czyli właśnie konsumentowi. Stąd w praktyce biznesowej nieprzerwanym echem odbija się powiedzenie, że „klient ma zawsze rację, nawet jeśli jej nie ma”. Sprzedawcy stoją przed trudnymi wyborami. To, co oni uważają za dobry towar, w opinii konsumentów może być nic niewarte. Dlatego w ekonomii pojęcie użyteczności dobra odnosi się do subiektywnej, osobistej satysfakcji, którą trudno przedstawić w kategoriach obiektywnych. == Wyjątki od zasady suwerenności konsumenta == Mimo że w ekonomii panuje generalna zgoda co do wagi suwerenności konsumenta, to istnieje pewien spór dotyczący tego, czy wszystkie dobra i usługi powinny być poddane woli konsumentów. Choć jako konsumenci wszyscy chcielibyśmy sami decydować o tym, na co przeznaczać posiadane środki, to spora część społeczeństwa jako producenci już nie zajmuje tak zdecydowanego stanowiska. Wielu wysuwa postulaty, że należy finansować rozmaite dobra za pomocą wydatków przymusowych (realizowanych przez państwo), bez liczenia się z wolą konsumentów. Do takich dóbr zalicza się często kulturę, edukację, służbę zdrowia i wiele innych działów. Na rzecz dostarczania każdego z tych dóbr przez państwo przedstawiane są bardzo różne argumenty, które wymagałyby osobnego omówienia. Wrócimy do nich w rozdziale 20. Niemniej wspólną podstawą tych argumentów pozostaje przekonanie, że nie wszystko można poddać woli konsumentów. Należy jednak pamiętać, że taki sposób dostarczania dóbr otwiera drogę do sporów politycznych i walki o to, której grupie uda się pozyskać środki publiczne na swoją działalność. == Wpływ konsumentów na ceny == Decyzje konsumentów mają wpływ nie tylko na to, co jest produkowane przez przedsiębiorców, ale również na ceny produktów. Im bardziej konsumenci chcą nabywać towary, czyli im więcej pieniędzy są gotowi wydawać, tym większą presję wywierają na to, aby ceny były wyższe. Chociaż rynek nie wygląda jak internetowa licytacja, to w rzeczywistości można sobie wyobrazić, że jest to dobra ilustracja jego działania. Towary zostają wystawione na sprzedaż, a im więcej klientów kupuje dany produkt, tym bardziej ich decyzje działają niczym kliknięcie za podbiciem ceny na aukcji internetowej. == Czy wiesz, że...? == Obraz Christophera Woola [wym. kristofera łula], artysty ze Stanów Zjednoczonych, białe płótno z napisem GŁUPIEC (FOOL), został sprzedany za 5 milionów dolarów. Fakt, że konsumenci podejmują pośrednio decyzje o tym, co należy produkować, nie oznacza jeszcze, że wszystko dzieje się pod ich dyktando. Gdyby tak było, to zapewne chcieliby otrzymywać produkty za darmo. Muszą jednak zapłacić za nie odpowiednią cenę. Co o tej cenie decyduje? Z jednej strony, są to wspomniane decyzje konsumentów. Z drugiej strony, musimy pamiętać o kalkulacjach przedsiębiorców, którzy chcą produkować dane dobra. Analizie tego problemu poświęconyjest rozdział 8.7. Suwerenność konsumenta i ceny == Pytania i zadania == # Wyjaśnij rolę suwerenności konsumenta dla efektywności produkcji. # Dlaczego w kontekście decyzji konsumenta mówi się o subiektywnych gustach? # Wyjaśnij, jak decyzje konsumentów wpływają na ceny finalne dóbr. # W Polsce większość posiadaczy telewizorów musi płacić tzw. abonament radiowo-telewizyjny, aby finansować działalność kanałów telewizji publicznej i publicznych rozgłośni radiowych, nawet jeśli ich nie ogląda/nie słucha. Czy sądzisz, że to właściwe rozwiązanie? {{Nawigacja |Wolna przedsiębiorczość |[[../Pieniądz i funkcje pieniądza/]] |[[../Koszty i ceny/]] }} c9g00gpsh0i58dd4mq4to65eegwsg9w Wolna przedsiębiorczość/Koszty i ceny 0 57478 540886 491227 2026-04-26T18:24:50Z Marek Mazurkiewicz 8990 redakcyjne cdn 540886 wikitext text/x-wiki Z tego rozdziału dowiesz się: * w jaki sposób dane koszty decydują o cenie danego produktu, * w jaki sposób cena produktu decyduje o kosztach jego wytworzenia, * za co tak naprawdę płacisz, kupując produkty w sklepie, * jak wyglądają zależności między przedsiębiorcami a konsumentami. Najważniejsze pojęcia: * ceny, koszty, dobra odtwarzalne, dobra nieodtwarzalne == Wpływ kosztów na ceny == O finalnej cenie danego dobra decyduje gotowość konsumentów do jego kupienia. Jednakże ceny wszystkich dóbr na rynku są od siebie zależne. Na cenę danego dobra wpływa wiele dodatkowych czynników, nie tylko nasza gotowość do jego kupna. Żeby to sobie uświadomić, przeanalizujmy przykład takiego dobra jak chleb. Powiedzmy, że za chleb płacimy mniej więcej 2,5 złotego (wiele zależy od rodzaju chleba i naszego miejsca zamieszkania). Z pewnością jednak moglibyśmy zapłacić za niego więcej. Nawet gdyby bochenek kosztował dwa razy więcej, wielu konsumentów wciąż byłoby gotowych kupić chleb. Ilość nabywana nadal pozostawałaby na względnie wysokim poziomie. Jeśli więc prawdą jest, że konsumenci decydują o poziomie cen sprzedawanych dóbr, to dlaczego ceny dóbr bardzo pożądanych nie są bardzo wysokie? Dlatego że któryś z producentów musiałby podnieść cenę. Tak się jednak nie stanie, ponieważ nie zrobiliby tego inni konkurencyjni dostawcy chleba. A przynajmniej nie mieliby powodu, bo utrzymując odpowiednio niższą cenę, zatrzymaliby u siebie klientów. Na tym polega siła konkurencji na rynku. Możemy jednak kontynuować nasze rozumowanie – dlaczego inni producenci mogą utrzymać niższą cenę? Ponieważ pozwalają im na to niższe koszty produkcji. W wypadku produkcji chleba angażujemy różne czynniki produkcji: pracowników, mąkę, drożdże, wodę, piece. Za wszystkie płacimy odpowiednią cenę. Do tego dochodzi również koszt alternatywny kapitału, który angażujemy w realizację produkcji (np. zamiast inwestować w przedsiębiorstwo, moglibyśmy odłożyć pieniądze na lokacie w banku). Wszystko to składa się na pewne koszty produkcji, które wskazują przedsiębiorcy na minimum opłacalności w jego działaniach. Jeśli te koszty są niskie, przedsiębiorca ma większe pole do tego, aby swój produkt sprzedawać za cenę niższą. Jeśli koszty są wysokie, przestrzeń do obniżania cen zmniejsza się. Taki opis przebiegu produkcji pojawiał się we wczesnych pracach z dziedziny ekonomii – np. u wspomnianego już Davida Ricarda. Pierwsi ekonomiści zaczynali dostrzegać zależności między kosztami na rynku a cenami dóbr finalnych. Jednocześnie zdawali sobie sprawę z tego, że ów opis odnosi się przede wszystkim do dóbr odtwarzalnych, czyli takich, które można wytworzyć od nowa (na które można ponosić od nowa koszty produkcji). O takiej zależności trudno jednak mówić w wypadku dóbr nieodtwarzalnych (np. oryginalnych obrazów Picassa, których liczba jest skończona), skoro kiedyś już poniesiono koszty na ich wytworzenie i nie można tego dokonać ponownie. Tak ogólny opis procesu gospodarczego rozumie każdy, kto ma styczność z działalnością gospodarczą. Przedsiębiorca analizuje koszty, które musi ponieść, a następnie zaczyna się zastanawiać, jakie ceny zaakceptują konsumenci. Oczywiście rozważane są poziomy cen, które wystarczą na pokrycie wszystkich kosztów, a także pozwolą na osiągnięcie zarobku przez planującego przedsiębiorcę. Stąd wzięło się wnioskowanie – nie do końca poprawne – że o cenach produktów decydują koszty ich wytworzenia. Dodatkowych argumentów na rzecz tego twierdzenia dostarczają przypadki, gdy cała branża doświadcza wzrostu kosztów produkcji. Wtedy następuje coś, co nie wystąpiłoby wcześniej – ceny u większości sprzedawców również się podnoszą, mimo że istnieje między nimi konkurencja. == Czynniki wpływające na poziom kosztów == Przez długi czas taki opis zadowalał ekonomistów. Z czasem jednak (w XIX wieku) zaczęto się zastanawiać nad samą naturą kosztów. Można tłumaczyć poziom cen poziomem kosztów, ale jak wytłumaczyć poziom samych kosztów? Wróćmy do przykładu chleba. Powiedzmy, że koszt jego wytworzenia (uwzględniając także koszt alternatywny) wynosi minimum 2 złote. Konsument, który go kupuje (załóżmy, że producent nie robi nikomu prezentów), musi zapłacić przynajmniej taką cenę. Może się jednak okazać, że klient nie będzie zainteresowany kupnem (bo ma za daleko do piekarni albo woli piec chleb bezglutenowy w domu). Wtedy przedsiębiorca będzie musiał zamknąć swój biznes. Jego wytłumaczenie zaś może brzmieć: nie mogłem pokryć kosztów przychodami ze sprzedaży – a więc to koszty zdecydowały o zamknięciu piekarni. Na tym jednak wytłumaczenie się nie kończy. Koszty to ceny oferowane przez sprzedawców czynników produkcji. Hipotetyczny piekarz nie był w stanie ponosić kosztów kupna mąki, pracy, pieców, wody, drożdży i energii. Ich ceny były zbyt wysokie. Skąd jednak brała się ich względnie wysoka cena? Stąd, że istnieli inni przedsiębiorcy, którzy gotowi byli je kupować: inni piekarze, którzy również chcieli kupować mąkę do produkcji chleba, ciastek, bułek; inni przedsiębiorcy, którzy chcieli zatrudniać pracowników; inni, którzy nabywali potrzebny sprzęt. Można zatem powiedzieć, że przedsiębiorca przegrał „licytację” o czynniki produkcji. Sytuacja jest analogiczna do przypadku konsumentów licytujących dany przedmiot na portalu sprzedażowym. Jeśli czegoś nie udało nam się kupić, oznacza to, że ktoś przebił naszą ofertę. Podobnie działa rynek producentów. Oczywiście nie jest tak, że zwycięzca jest tylko jeden, jednak licytacja o czynniki produkcji sprawia, że niektórzy producenci nie mogą sobie pozwolić na ich kupno. W wyniku tego wypadają z rynku. Tak też jest w przypadku naszego hipotetycznego piekarza. Nie może on pozwolić sobie na to, aby ponosić tak wysokie koszty jak pozostali producenci, a więc wypada z rynku. Ta porażka wynika z gotowości innych producentów do zapłacenia odpowiednio wyższej ceny za czynniki produkcji. Z czego jednak wynika ich gotowość? Z tego, że sami mają do zaoferowania konsumentom produkty, które ci będą mogli zakupić po dostatecznie wysokiej cenie. Nasz hipotetyczny piekarz przegrywa na rynku dlatego, że prawdopodobnie drożdże i mąka, które chce kupić, oraz pracownicy, których chce zatrudnić, mogą zostać użyte w bardziej opłacalnym projekcie. I jeśli chciałby te czynniki produkcji odciągnąć od tego projektu, to musiałby zapłacić za nie stosowną cenę, która wyraża się właśnie kosztem produkcji. W tym miejscu napotykamy ponownie na znaną nam już koncepcję kosztu alternatywnego. == Ceny i koszty jako pochodna decyzji konsumentów == Możemy zauważyć, że o wszystkich cenach na rynku decydują osta- tecznie konsumenci. Z punktu widzenia jednego sprzedawcy, piekarza, sytuacja rzeczywiście wygląda tak, że ceny jego ciastek i chleba są pochod- ną kosztów ich produkcji: cen drożdży, mąki, sprzętu. Jednakże te kosz- ty produkcji zależą od cen wszystkich innych rzeczy, które można przy ich użyciu wytworzyć: od cen innych ciastek, chlebów, słodyczy, lodów. Te ceny zależą z kolei od woli konsumentów, którzy są gotowi kupować konkurencyjne produkty. Tak samo przedsiębiorcy konkurują o wszelkie czynniki produkcji, również o ziemię. Cena ziemi wynika z gotowości przedsiębiorców do zapłacenia za nią. A ich gotowość wynika ze speku- lowania, jakie mogą być przyszłe poziomy cen sprzedawanych przez nich dóbr (ponieważ działania te dotyczą przyszłości, zawsze istnieje ryzyko popełnienia błędu). Jeśli kupujesz produkt, to dajesz przedsiębiorcy informację, że do- brze zorganizował swoje przedsiębiorstwo. Jeśli zdecydujesz się na zakup, to znaczy, że przedsiębiorca odpowiednio zadbał o system sprzedaży, marketing, dowóz towaru do sklepu, właściwie wyszkolił ludzi itp. I odwrotnie – jeśli nie decydujesz się na zakup – to przedsię- biorca powinien się zastanowić, co w swoim zakładzie zmienić. Być może problem tkwi w samym produkcie, ale przeszkodą w osiągnię- ciu sukcesu może być też kiepska organizacja. Za każdym razem, gdy nabywamy produkt, pokrywamy koszty al- ternatywne czynników służących do jego wytworzenia. Jeśli nabywamy u sprzedawcy w galerii handlowej bawełnianą koszulkę, to jej cena musi odpowiadać kosztom alternatywnym. Płacimy pośrednio za to, że baweł- na nie została zużyta na produkcję obrusa. Płacimy za to, że produkt nie trafił do innego sklepu. Płacimy za to, że sprzedawca został zatrudniony w sklepie, a nie w restauracji obok. Swoimi indywidualnymi decyzjami stawiamy konsumencki stempel, który potwierdza, że przedsiębiorca do- brze zrobił, odciągając czynniki produkcji od konkurencyjnych zastoso- wań i wytwarzając coś, co nabyliśmy. Ten wybór wraz z wyborami doko- nywanymi przez innych kupujących składa się na aprobatę wcześniejszych decyzji przedsiębiorcy o dostarczeniu czegoś do sklepu (bądź w wypadku niekupienia – dezaprobatę). Dlatego możemy powiedzieć, że wszelkie ceny na rynku są pochodną preferencji konsumentów. Konsumenci są „królami” procesów produkcji, ale dodajmy – „królami” nieobecnymi. Produkcja nie następuje automatycznie pod dyktando tego, czego konsumenci pragną najbardziej. Jej realizacja dokonuje się dzięki działalności przedsiębiorców, którzy starają się odkrywać możliwe sposoby produkcji i trafiać nimi w gusta konsumentów. I choć konsumenci są nieobecnymi „królami”, to przedsiębiorcy są działającymi na ich zlecenie bezpośrednimi kierownikami produkcji. == Pytania i zadania == # Wyjaśnij na przykładzie jednej branży, jak koszty ponoszone przez przedsiębiorstwo wpływają na jej decyzje o ustalaniu cen. # Opisz, odwołując się do odpowiedniego przykładu, jak zmiany preferencji konsumentów w jednej branży mogą wpływać na ceny w branżach pokrewnych. # Wyjaśnij, dlaczego koszty są pochodną cen dóbr finalnych. {{Nawigacja |Wolna przedsiębiorczość |[[../Suwerenność konsumenta i ceny/]] |[[../Rynek: prawa popytu i podaży/]] }} j3tbcape0x06hqb9cst8jwan3w20fbi 540887 540886 2026-04-26T18:27:57Z Marek Mazurkiewicz 8990 redakcyjne 540887 wikitext text/x-wiki Z tego rozdziału dowiesz się: * w jaki sposób dane koszty decydują o cenie danego produktu, * w jaki sposób cena produktu decyduje o kosztach jego wytworzenia, * za co tak naprawdę płacisz, kupując produkty w sklepie, * jak wyglądają zależności między przedsiębiorcami a konsumentami. Najważniejsze pojęcia: * ceny, koszty, dobra odtwarzalne, dobra nieodtwarzalne == Wpływ kosztów na ceny == O finalnej cenie danego dobra decyduje gotowość konsumentów do jego kupienia. Jednakże ceny wszystkich dóbr na rynku są od siebie zależne. Na cenę danego dobra wpływa wiele dodatkowych czynników, nie tylko nasza gotowość do jego kupna. Żeby to sobie uświadomić, przeanalizujmy przykład takiego dobra jak chleb. Powiedzmy, że za chleb płacimy mniej więcej 2,5 złotego (wiele zależy od rodzaju chleba i naszego miejsca zamieszkania). Z pewnością jednak moglibyśmy zapłacić za niego więcej. Nawet gdyby bochenek kosztował dwa razy więcej, wielu konsumentów wciąż byłoby gotowych kupić chleb. Ilość nabywana nadal pozostawałaby na względnie wysokim poziomie. Jeśli więc prawdą jest, że konsumenci decydują o poziomie cen sprzedawanych dóbr, to dlaczego ceny dóbr bardzo pożądanych nie są bardzo wysokie? Dlatego że któryś z producentów musiałby podnieść cenę. Tak się jednak nie stanie, ponieważ nie zrobiliby tego inni konkurencyjni dostawcy chleba. A przynajmniej nie mieliby powodu, bo utrzymując odpowiednio niższą cenę, zatrzymaliby u siebie klientów. Na tym polega siła konkurencji na rynku. Możemy jednak kontynuować nasze rozumowanie – dlaczego inni producenci mogą utrzymać niższą cenę? Ponieważ pozwalają im na to niższe koszty produkcji. W wypadku produkcji chleba angażujemy różne czynniki produkcji: pracowników, mąkę, drożdże, wodę, piece. Za wszystkie płacimy odpowiednią cenę. Do tego dochodzi również koszt alternatywny kapitału, który angażujemy w realizację produkcji (np. zamiast inwestować w przedsiębiorstwo, moglibyśmy odłożyć pieniądze na lokacie w banku). Wszystko to składa się na pewne koszty produkcji, które wskazują przedsiębiorcy na minimum opłacalności w jego działaniach. Jeśli te koszty są niskie, przedsiębiorca ma większe pole do tego, aby swój produkt sprzedawać za cenę niższą. Jeśli koszty są wysokie, przestrzeń do obniżania cen zmniejsza się. Taki opis przebiegu produkcji pojawiał się we wczesnych pracach z dziedziny ekonomii – np. u wspomnianego już Davida Ricarda. Pierwsi ekonomiści zaczynali dostrzegać zależności między kosztami na rynku a cenami dóbr finalnych. Jednocześnie zdawali sobie sprawę z tego, że ów opis odnosi się przede wszystkim do dóbr odtwarzalnych, czyli takich, które można wytworzyć od nowa (na które można ponosić od nowa koszty produkcji). O takiej zależności trudno jednak mówić w wypadku dóbr nieodtwarzalnych (np. oryginalnych obrazów Picassa, których liczba jest skończona), skoro kiedyś już poniesiono koszty na ich wytworzenie i nie można tego dokonać ponownie. Tak ogólny opis procesu gospodarczego rozumie każdy, kto ma styczność z działalnością gospodarczą. Przedsiębiorca analizuje koszty, które musi ponieść, a następnie zaczyna się zastanawiać, jakie ceny zaakceptują konsumenci. Oczywiście rozważane są poziomy cen, które wystarczą na pokrycie wszystkich kosztów, a także pozwolą na osiągnięcie zarobku przez planującego przedsiębiorcę. Stąd wzięło się wnioskowanie – nie do końca poprawne – że o cenach produktów decydują koszty ich wytworzenia. Dodatkowych argumentów na rzecz tego twierdzenia dostarczają przypadki, gdy cała branża doświadcza wzrostu kosztów produkcji. Wtedy następuje coś, co nie wystąpiłoby wcześniej – ceny u większości sprzedawców również się podnoszą, mimo że istnieje między nimi konkurencja. == Czynniki wpływające na poziom kosztów == Przez długi czas taki opis zadowalał ekonomistów. Z czasem jednak (w XIX wieku) zaczęto się zastanawiać nad samą naturą kosztów. Można tłumaczyć poziom cen poziomem kosztów, ale jak wytłumaczyć poziom samych kosztów? Wróćmy do przykładu chleba. Powiedzmy, że koszt jego wytworzenia (uwzględniając także koszt alternatywny) wynosi minimum 2 złote. Konsument, który go kupuje (załóżmy, że producent nie robi nikomu prezentów), musi zapłacić przynajmniej taką cenę. Może się jednak okazać, że klient nie będzie zainteresowany kupnem (bo ma za daleko do piekarni albo woli piec chleb bezglutenowy w domu). Wtedy przedsiębiorca będzie musiał zamknąć swój biznes. Jego wytłumaczenie zaś może brzmieć: nie mogłem pokryć kosztów przychodami ze sprzedaży – a więc to koszty zdecydowały o zamknięciu piekarni. Na tym jednak wytłumaczenie się nie kończy. Koszty to ceny oferowane przez sprzedawców czynników produkcji. Hipotetyczny piekarz nie był w stanie ponosić kosztów kupna mąki, pracy, pieców, wody, drożdży i energii. Ich ceny były zbyt wysokie. Skąd jednak brała się ich względnie wysoka cena? Stąd, że istnieli inni przedsiębiorcy, którzy gotowi byli je kupować: inni piekarze, którzy również chcieli kupować mąkę do produkcji chleba, ciastek, bułek; inni przedsiębiorcy, którzy chcieli zatrudniać pracowników; inni, którzy nabywali potrzebny sprzęt. Można zatem powiedzieć, że przedsiębiorca przegrał „licytację” o czynniki produkcji. Sytuacja jest analogiczna do przypadku konsumentów licytujących dany przedmiot na portalu sprzedażowym. Jeśli czegoś nie udało nam się kupić, oznacza to, że ktoś przebił naszą ofertę. Podobnie działa rynek producentów. Oczywiście nie jest tak, że zwycięzca jest tylko jeden, jednak licytacja o czynniki produkcji sprawia, że niektórzy producenci nie mogą sobie pozwolić na ich kupno. W wyniku tego wypadają z rynku. Tak też jest w przypadku naszego hipotetycznego piekarza. Nie może on pozwolić sobie na to, aby ponosić tak wysokie koszty jak pozostali producenci, a więc wypada z rynku. Ta porażka wynika z gotowości innych producentów do zapłacenia odpowiednio wyższej ceny za czynniki produkcji. Z czego jednak wynika ich gotowość? Z tego, że sami mają do zaoferowania konsumentom produkty, które ci będą mogli zakupić po dostatecznie wysokiej cenie. Nasz hipotetyczny piekarz przegrywa na rynku dlatego, że prawdopodobnie drożdże i mąka, które chce kupić, oraz pracownicy, których chce zatrudnić, mogą zostać użyte w bardziej opłacalnym projekcie. I jeśli chciałby te czynniki produkcji odciągnąć od tego projektu, to musiałby zapłacić za nie stosowną cenę, która wyraża się właśnie kosztem produkcji. W tym miejscu napotykamy ponownie na znaną nam już koncepcję kosztu alternatywnego. == Ceny i koszty jako pochodna decyzji konsumentów == Możemy zauważyć, że o wszystkich cenach na rynku decydują ostatecznie konsumenci. Z punktu widzenia jednego sprzedawcy, piekarza, sytuacja rzeczywiście wygląda tak, że ceny jego ciastek i chleba są pochodną kosztów ich produkcji: cen drożdży, mąki, sprzętu. Jednakże te koszty produkcji zależą od cen wszystkich innych rzeczy, które można przy ich użyciu wytworzyć: od cen innych ciastek, chlebów, słodyczy, lodów. Te ceny zależą z kolei od woli konsumentów, którzy są gotowi kupować konkurencyjne produkty. Tak samo przedsiębiorcy konkurują o wszelkie czynniki produkcji, również o ziemię. Cena ziemi wynika z gotowości przedsiębiorców do zapłacenia za nią. A ich gotowość wynika ze spekulowania, jakie mogą być przyszłe poziomy cen sprzedawanych przez nich dóbr (ponieważ działania te dotyczą przyszłości, zawsze istnieje ryzyko popełnienia błędu). Jeśli kupujesz produkt, to dajesz przedsiębiorcy informację, że dobrze zorganizował swoje przedsiębiorstwo. Jeśli zdecydujesz się na zakup, to znaczy, że przedsiębiorca odpowiednio zadbał o system sprzedaży, marketing, dowóz towaru do sklepu, właściwie wyszkolił ludzi itp. I odwrotnie – jeśli nie decydujesz się na zakup – to przedsiębiorca powinien się zastanowić, co w swoim zakładzie zmienić. Być może problem tkwi w samym produkcie, ale przeszkodą w osiągnięciu sukcesu może być też kiepska organizacja. Za każdym razem, gdy nabywamy produkt, pokrywamy koszty alternatywne czynników służących do jego wytworzenia. Jeśli nabywamy u sprzedawcy w galerii handlowej bawełnianą koszulkę, to jej cena musi odpowiadać kosztom alternatywnym. Płacimy pośrednio za to, że bawełna nie została zużyta na produkcję obrusa. Płacimy za to, że produkt nie trafił do innego sklepu. Płacimy za to, że sprzedawca został zatrudniony w sklepie, a nie w restauracji obok. Swoimi indywidualnymi decyzjami stawiamy konsumencki stempel, który potwierdza, że przedsiębiorca do- brze zrobił, odciągając czynniki produkcji od konkurencyjnych zastosowań i wytwarzając coś, co nabyliśmy. Ten wybór wraz z wyborami dokonywanymi przez innych kupujących składa się na aprobatę wcześniejszych decyzji przedsiębiorcy o dostarczeniu czegoś do sklepu (bądź w wypadku niekupienia – dezaprobatę). Dlatego możemy powiedzieć, że wszelkie ceny na rynku są pochodną preferencji konsumentów. Konsumenci są „królami” procesów produkcji, ale dodajmy – „królami” nieobecnymi. Produkcja nie następuje automatycznie pod dyktando tego, czego konsumenci pragną najbardziej. Jej realizacja dokonuje się dzięki działalności przedsiębiorców, którzy starają się odkrywać możliwe sposoby produkcji i trafiać nimi w gusta konsumentów. I choć konsumenci są nieobecnymi „królami”, to przedsiębiorcy są działającymi na ich zlecenie bezpośrednimi kierownikami produkcji. == Pytania i zadania == # Wyjaśnij na przykładzie jednej branży, jak koszty ponoszone przez przedsiębiorstwo wpływają na jej decyzje o ustalaniu cen. # Opisz, odwołując się do odpowiedniego przykładu, jak zmiany preferencji konsumentów w jednej branży mogą wpływać na ceny w branżach pokrewnych. # Wyjaśnij, dlaczego koszty są pochodną cen dóbr finalnych. {{Nawigacja |Wolna przedsiębiorczość |[[../Suwerenność konsumenta i ceny/]] |[[../Rynek: prawa popytu i podaży/]] }} cewsxe3r0srpi9n32bfiucoehdie0pq Wolna przedsiębiorczość/Rynek: prawa popytu i podaży 0 57480 540895 474269 2026-04-26T18:44:23Z Marek Mazurkiewicz 8990 redakcyjne cdn 540895 wikitext text/x-wiki Z tego rozdziału dowiesz się: * czym jest rynek i jakie są jego rodzaje, * czym są popyt i podaż, * w jakim celu wprowadza się pojęcia praw popytu i podaży, * dlaczego wiedza ekonomiczna jest ograniczona. Najważniejsze pojęcia: - mechanizm rynkowy, popyt, podaż, prawa ekonomii == Rynek i rodzaje rynków == W zasadzie cały dział I podręcznika jest poświęcony działaniu tak zwanego mechanizmu rynkowego, czyli procesu ekonomicznego, który przebiega pomiędzy wszystkimi członkami społeczeństwa, wymieniającymi między sobą dobra i usługi. Ilekroć bowiem dochodzi do transakcji wymiany między dwiema stronami, możemy mówić o zaistnieniu rynku. Rynek obejmuje swoim zasięgiem całokształt stosunków ekonomicznych wynikających z prób podejmowania i realizowania transakcji jednostronnego lub obustronnego oferowania dóbr i usług. Dlatego mówimy o rynku nie tylko wtedy, gdy do wymiany dochodzi, ale nawet wtedy, gdy pojawiają się jedynie propozycje wymiany (składanie ofert). Obiektem wymiany może być wszystko, zarówno dobra materialne, jak i niematerialne. Trze- ba przy tym zdawać sobie sprawę, że wbrew mylącej nazwie rynek nie jest miejscem, ale zjawiskiem kreowanym przez współdziałających ludzi. W jaki sposób możemy klasyfikować rynki? Rynek każdego dobra jest w zasadzie unikatowy. Inaczej wygląda rynek jabłek, a inaczej rynek samochodów. Możemy jednak zastosować rozróżnienie na bardziej ogólnym poziomie. Możemy mówić o rynku dóbr konsumpcyjnych, na którym wymieniane są dobra finalne (samochody, żywność, rozrywka itd.). Równolegle do niego istnieje rynek czynników produkcji – pracy, ziemi i dóbr kapitałowych, które są nabywane przez przedsiębiorców. Obok nich istnieje rynek finansowy, na którym oszczędzający dostarczają swoje56 Dział I. Podstawy ekonomii środki na inwestycje (np. kupując akcje lub odkładając pieniądze na loka- tach bankowych). Oprócz tego rynki klasyfikujemy terytorialnie (polski, amerykański, mo- nachijski, kataloński itd.). W literaturze ekonomicznej pojawia się również pojęcie rynku nabywcy. Jest to rynek relatywnie korzystny dla odbiorcy produktu (np. gdy jest duża konkurencja). W opozycji do tego mówi się o rynku dostawcy, gdy ten jest relatywnie korzystniejszy dla dostarczycie- la towaru (w sytuacji, gdy natężenie konkurencji jest mniejsze). Na każdy z tych rynków składa się ogół wszystkich ofert transakcji kupna i sprzedaży. Mimo że każdy z tych rynków odznacza się szczegól- nymi cechami, łączy je to, że są poddane prawom popytu i podaży. Na każdym rynku są ci, którzy składają oferty kupna (reprezentujący popyt), oraz ci, którzy składają oferty sprzedaży (reprezentujący podaż). Prawo popy t u W wielkim uproszczeniu popytem nazywa się skłonność konsumentów do nabywania danego dobra. Jednak nie chodzi w tym wypadku o to, co rzeczywiście ludzie kupują w danej chwili, ale również o wszelkie możliwe scenariusze kupowania przez nich dobra. Powiedzmy, że pewnego wieczoru w barze dziesięciu klientów kupiło w sumie 30 lemoniad. W tym przypadku 30 napojów to faktyczna ilość nabyta, w pewnym sensie „popyt zrealizowa- ny”. Gdy jednak rozważamy popyt w szerokim sensie, traktujemy go jako skłonność ludzi do nabywania towarów. Nie chodzi zatem tylko o to, jaką ilość danego dobra ludzie nabyli, ale również o to, jaką ilość mogliby kupić, gdyby zmieniły się okoliczności ich wyborów. W ten sposób prowadzi się teoretyczne rozważania nad tym, jaki jest popyt konsumentów. W przytoczonym przykładzie ilość nabyta wynio- sła 30 napojów. Ale zasadne jest postawienie jeszcze kilku innych pytań. Na przykład, ile wynosiłaby ilość nabyta, gdyby bar miał lepszy wystrój? Ile napojów zostałoby kupionych, gdyby obok baru był konkurencyjny lokal? Ile napojów zostałoby kupionych, gdyby obok znajdował się sklep spożywczy i ładny park nad rzeką? Ile napojów by kupiono, gdyby sprze- dawany produkt miał atrakcyjniejszą nazwę? A gdyby w lokalu była od- twarzana ciekawsza muzyka? Co w wypadku, gdyby pogoda była inna? Wreszcie pojawia się pytanie: a ile napojów kupiliby klienci, gdyby cena sprzedaży napoju była inna, czyli wyższa albo niższa? Jak wtedy zareagowaliby konsumenci?9. Rynek: prawa popytu i podaży 57 Są to oczywiście bardzo realne pytania, na które przedsiębiorcy nie- ustannie starają się odpowiadać. Zależność między różnymi czynnikami a skłonnością ludzi do kupowania nazywana jest funkcją popytu. Pod tą techniczną nazwą kryje się prosta prawda: na decyzje konsumentów o ku- powaniu towarów i usług wpływa bardzo wiele czynników. W takim wyimaginowanym przykładzie tym, co nas najbardziej intere- suje, jest zależność popytu – potencjalnej chęci nabywania dóbr – od jed- nego z najważniejszych czynników: ceny. Gdy w opracowaniach ekono- micznych pojawia się określenie „prawo popytu”, odnosi się ono właśnie do tego, w jaki sposób ludzie reagują na zmianę ceny danego dobra przy jednoczesnym założeniu, że inne czynniki nie będą się zmieniać. Jest to tzw. założenie ceteris paribus [wym. ceteris paribus, znaczenie: jeśli reszta jest taka sama]. W jego ramach wyobrażamy sobie, że zmieniamy tylko jeden czynnik w analizowanym przypadku (np. cena danego produktu). Następnie próbujemy wnioskować, jak zmieni się sytuacja (np. na rynku konkretnego dobra) w wyniku tej jednej zmiany. Im cena będzie niższa, tym skłonność ludzi do kupowania napojów w barze będzie większa. Im cena będzie wyższa, tym skłonność ludzi do kupowania napojów będzie mniejsza. Mówiąc o prawie popytu, mówimy w gruncie rzeczy o tym, jak konsu- menci zareagowaliby na podwyżki lub obniżki cen przy niezmienionych pozostałych warunkach. Reakcja ta zawsze będzie zależała od preferencji konsumentów, od ich kaprysów, przekonań, uprzedzeń i upodobań. Nie ma gwarancji, że na przykład obniżka ceny o 5 procent spowoduje wzrost ilości nabywanej o 10 procent. Co więcej, nawet jeśli zaobserwowaliśmy w przeszłości taką zależność, to nie ma żadnej gwarancji, że w przyszło- ści się to powtórzy. Gusta i preferencje konsumentów ciągle się zmienia- ją. A trudny los przedsiębiorców polega na tym, że muszą próbować je przewidywać. Prawo pod aż y Prawo podaży jest bardzo podobne do prawa popytu, odnosi się jed- nak nie do kupujących, lecz do sprzedawców. Oni także działają w roz- maitych warunkach, które mogą się zmieniać. Jeśli jednak założymy, że te warunki są w miarę niezmienne, to również możemy wskazać na zależność między ilością produktu, którą chcą sprzedać sprzedaw- cy, a ceną, po jakiej będą go sprzedawać. Prawo podaży, odwrotnie do58 Dział I. Podstawy ekonomii prawa popytu, mówi o tym, że im wyższa cena, ceteris paribus, tym bardziej skłonni są sprzedawcy do dostarczania produktów na rynek, gdyż dzięki temu mogą więcej zarobić. Im cena niższa, tym mniejsza jest skłonność do dostarczania produktów na rynek. Pamiętajmy jed- nak, że rzeczywista sytuacja często zależy od kombinacji bardzo wielu czynników, a nie tylko od ceny. Równie ważne jak końcowe ceny są dla przedsiębiorców koszty ich działalności. Wykor zyst anie praw popy t u i pod aż y Prawa popytu i podaży pozwalają opisywać, jak w ramach rynku prze- biega proces kształtowania się cen. Znajomość tych praw nie pozwala jed- nak przewidzieć przyszłych rynkowych cen dóbr. Te bowiem ustalane są w wyniku nieustannego targowania się, w którym uczestniczą nabywcy i sprzedawcy. Ekonomia nie pozwala przewidywać zmian w interesującym nas fragmencie rzeczywistości, tak jak czyni to astronomia, wyznaczając przykładowo przyszłe pozycje planet na nieboskłonie. Przyciąganie ziem- skie jest siłą zmieniającą się w przewidywalny sposób – czego nie można powiedzieć o skłonności konsumenta do nabywania danego dobra. Czy wiesz, że...? W historii gospodarczej świata i Polski jest wiele przykładów przed- siębiorstw, które kiedyś dostarczały konsumentom bardzo uży- teczne i pożądane przez nich towary, a dzisiaj już nie istnieją albo prowadzą działalność na o wiele mniejszą skalę. Przeszłe sukcesy w żaden sposób nie dają gwarancji sukcesów w przyszłości. Czasem okazuje się, że produkt, na który w przeszłości istniał wysoki popyt, dzisiaj już jest przestarzały, bo zmianie uległy gusta konsumentów. Zmieniają się także preferowane przez konsumentów formy dys- trybucji dóbr. Przekonała się o tym niedawno spółka Alma Market, będąca właścicielem sieci luksusowych delikatesów Alma. Firma powstała w latach 90. i przez wiele lat świetnie się rozwijała, jednak nie wytrzymała konkurencji z dyskontami, które zaczęły wprowa- dzać do swojego asortymentu luksusowe produkty, a w paździer- niku 2016 roku złożyła wniosek o upadłość i zamknęła większość sklepów działających w ramach jej sieci.9. Rynek: prawa popytu i podaży 59 Można wobec tego postawić pytanie: dlaczego w takim razie poświę- cać uwagę prawom popytu i podaży? Ponieważ pozwalają na systematy- zowanie zjawisk objętych rynkiem i ogólny opis kierunku zmian zacho- dzących w ramach niego – w sytuacji, gdy nie potrafimy przewidywać przyszłych warunków (co jest przedmiotem przedsiębiorczego zgadywa- nia). W nauce bowiem nie zawsze chodzi o przewidywanie albo osią- gnięcie stadium pełni wiedzy, lecz czasami także o zrozumienie tego, co następuje. W przypadku ekonomii rzecz dotyczy zrozumienia zacho- dzących zjawisk ekonomicznych. W ekonomii raczej wyjaśniamy, niż przewidujemy. Prawa popytu i podaży pozwalają zobrazować, jak działają konsumen- ci i producenci. Nawet jeśli nie uda nam się przewidzieć końcowych po- ziomów cen na rynku, będziemy mogli zrozumieć, jak konsumenci i pro- ducenci zareagują na ceny wyższe i niższe. == Pytania i zadania == # Czym jest rynek i jakie są jego rodzaje? # Wyjaśnij na przykładzie, czym jest prawo popytu. # Podaj przykłady produktów, na które popyt był kiedyś bardzo duży, a dzisiaj jest wyraźnie mniejszy. Wyjaśnij, skąd mogą się brać takie zmiany? # Wyjaśnij na przykładzie, czym jest prawo podaży. # Czy przedsiębiorcy mogą dokładnie poznać funkcję popytu na ich produkty? Uzasadnij odpowiedź. {{Nawigacja |Wolna przedsiębiorczość |[[../Koszty i ceny/]] |[[../Ilustracje krzywych popytu i podaży/]] }} awdq32ov5lncstd0oge2upj6x51eulw 540900 540895 2026-04-26T19:01:38Z Marek Mazurkiewicz 8990 redakcyjne cdn 540900 wikitext text/x-wiki Z tego rozdziału dowiesz się: * czym jest rynek i jakie są jego rodzaje, * czym są popyt i podaż, * w jakim celu wprowadza się pojęcia praw popytu i podaży, * dlaczego wiedza ekonomiczna jest ograniczona. Najważniejsze pojęcia: - mechanizm rynkowy, popyt, podaż, prawa ekonomii == Rynek i rodzaje rynków == W zasadzie cały dział I podręcznika jest poświęcony działaniu tak zwanego mechanizmu rynkowego, czyli procesu ekonomicznego, który przebiega pomiędzy wszystkimi członkami społeczeństwa, wymieniającymi między sobą dobra i usługi. Ilekroć bowiem dochodzi do transakcji wymiany między dwiema stronami, możemy mówić o zaistnieniu rynku. Rynek obejmuje swoim zasięgiem całokształt stosunków ekonomicznych wynikających z prób podejmowania i realizowania transakcji jednostronnego lub obustronnego oferowania dóbr i usług. Dlatego mówimy o rynku nie tylko wtedy, gdy do wymiany dochodzi, ale nawet wtedy, gdy pojawiają się jedynie propozycje wymiany (składanie ofert). Obiektem wymiany może być wszystko, zarówno dobra materialne, jak i niematerialne. Trze- ba przy tym zdawać sobie sprawę, że wbrew mylącej nazwie rynek nie jest miejscem, ale zjawiskiem kreowanym przez współdziałających ludzi. W jaki sposób możemy klasyfikować rynki? Rynek każdego dobra jest w zasadzie unikatowy. Inaczej wygląda rynek jabłek, a inaczej rynek samochodów. Możemy jednak zastosować rozróżnienie na bardziej ogólnym poziomie. Możemy mówić o rynku dóbr konsumpcyjnych, na którym wymieniane są dobra finalne (samochody, żywność, rozrywka itd.). Równolegle do niego istnieje rynek czynników produkcji – pracy, ziemi i dóbr kapitałowych, które są nabywane przez przedsiębiorców. Obok nich istnieje rynek finansowy, na którym oszczędzający dostarczają swoje środki na inwestycje (np. kupując akcje lub odkładając pieniądze na loka tach bankowych). Oprócz tego rynki klasyfikujemy terytorialnie (polski, amerykański, monachijski, kataloński itd.). W literaturze ekonomicznej pojawia się również pojęcie rynku nabywcy. Jest to rynek relatywnie korzystny dla odbiorcy produktu (np. gdy jest duża konkurencja). W opozycji do tego mówi się o rynku dostawcy, gdy ten jest relatywnie korzystniejszy dla dostarczyciela towaru (w sytuacji, gdy natężenie konkurencji jest mniejsze). Na każdy z tych rynków składa się ogół wszystkich ofert transakcji kupna i sprzedaży. Mimo że każdy z tych rynków odznacza się szczególnymi cechami, łączy je to, że są poddane prawom popytu i podaży. Na każdym rynku są ci, którzy składają oferty kupna (reprezentujący popyt), oraz ci, którzy składają oferty sprzedaży (reprezentujący podaż). == Prawo popytu == W wielkim uproszczeniu popytem nazywa się skłonność konsumentów do nabywania danego dobra. Jednak nie chodzi w tym wypadku o to, co rzeczywiście ludzie kupują w danej chwili, ale również o wszelkie możliwe scenariusze kupowania przez nich dobra. Powiedzmy, że pewnego wieczoru w barze dziesięciu klientów kupiło w sumie 30 lemoniad. W tym przypadku 30 napojów to faktyczna ilość nabyta, w pewnym sensie „popyt zrealizowany”. Gdy jednak rozważamy popyt w szerokim sensie, traktujemy go jako skłonność ludzi do nabywania towarów. Nie chodzi zatem tylko o to, jaką ilość danego dobra ludzie nabyli, ale również o to, jaką ilość mogliby kupić, gdyby zmieniły się okoliczności ich wyborów. W ten sposób prowadzi się teoretyczne rozważania nad tym, jaki jest popyt konsumentów. W przytoczonym przykładzie ilość nabyta wyniosła 30 napojów. Ale zasadne jest postawienie jeszcze kilku innych pytań. Na przykład, ile wynosiłaby ilość nabyta, gdyby bar miał lepszy wystrój? Ile napojów zostałoby kupionych, gdyby obok baru był konkurencyjny lokal? Ile napojów zostałoby kupionych, gdyby obok znajdował się sklep spożywczy i ładny park nad rzeką? Ile napojów by kupiono, gdyby sprzedawany produkt miał atrakcyjniejszą nazwę? A gdyby w lokalu była odtwarzana ciekawsza muzyka? Co w wypadku, gdyby pogoda była inna? Wreszcie pojawia się pytanie: a ile napojów kupiliby klienci, gdyby cena sprzedaży napoju była inna, czyli wyższa albo niższa? Jak wtedy zareagowaliby konsumenci? Są to oczywiście bardzo realne pytania, na które przedsiębiorcy nie- ustannie starają się odpowiadać. Zależność między różnymi czynnikami a skłonnością ludzi do kupowania nazywana jest funkcją popytu. Pod tą techniczną nazwą kryje się prosta prawda: na decyzje konsumentów o ku- powaniu towarów i usług wpływa bardzo wiele czynników. W takim wyimaginowanym przykładzie tym, co nas najbardziej intere- suje, jest zależność popytu – potencjalnej chęci nabywania dóbr – od jed- nego z najważniejszych czynników: ceny. Gdy w opracowaniach ekono- micznych pojawia się określenie „prawo popytu”, odnosi się ono właśnie do tego, w jaki sposób ludzie reagują na zmianę ceny danego dobra przy jednoczesnym założeniu, że inne czynniki nie będą się zmieniać. Jest to tzw. założenie ceteris paribus [wym. ceteris paribus, znaczenie: jeśli reszta jest taka sama]. W jego ramach wyobrażamy sobie, że zmieniamy tylko jeden czynnik w analizowanym przypadku (np. cena danego produktu). Następnie próbujemy wnioskować, jak zmieni się sytuacja (np. na rynku konkretnego dobra) w wyniku tej jednej zmiany. Im cena będzie niższa, tym skłonność ludzi do kupowania napojów w barze będzie większa. Im cena będzie wyższa, tym skłonność ludzi do kupowania napojów będzie mniejsza. Mówiąc o prawie popytu, mówimy w gruncie rzeczy o tym, jak konsu- menci zareagowaliby na podwyżki lub obniżki cen przy niezmienionych pozostałych warunkach. Reakcja ta zawsze będzie zależała od preferencji konsumentów, od ich kaprysów, przekonań, uprzedzeń i upodobań. Nie ma gwarancji, że na przykład obniżka ceny o 5 procent spowoduje wzrost ilości nabywanej o 10 procent. Co więcej, nawet jeśli zaobserwowaliśmy w przeszłości taką zależność, to nie ma żadnej gwarancji, że w przyszło- ści się to powtórzy. Gusta i preferencje konsumentów ciągle się zmienia- ją. A trudny los przedsiębiorców polega na tym, że muszą próbować je przewidywać. Prawo pod aż y Prawo podaży jest bardzo podobne do prawa popytu, odnosi się jed- nak nie do kupujących, lecz do sprzedawców. Oni także działają w roz- maitych warunkach, które mogą się zmieniać. Jeśli jednak założymy, że te warunki są w miarę niezmienne, to również możemy wskazać na zależność między ilością produktu, którą chcą sprzedać sprzedaw- cy, a ceną, po jakiej będą go sprzedawać. Prawo podaży, odwrotnie do58 Dział I. Podstawy ekonomii prawa popytu, mówi o tym, że im wyższa cena, ceteris paribus, tym bardziej skłonni są sprzedawcy do dostarczania produktów na rynek, gdyż dzięki temu mogą więcej zarobić. Im cena niższa, tym mniejsza jest skłonność do dostarczania produktów na rynek. Pamiętajmy jed- nak, że rzeczywista sytuacja często zależy od kombinacji bardzo wielu czynników, a nie tylko od ceny. Równie ważne jak końcowe ceny są dla przedsiębiorców koszty ich działalności. Wykor zyst anie praw popy t u i pod aż y Prawa popytu i podaży pozwalają opisywać, jak w ramach rynku prze- biega proces kształtowania się cen. Znajomość tych praw nie pozwala jed- nak przewidzieć przyszłych rynkowych cen dóbr. Te bowiem ustalane są w wyniku nieustannego targowania się, w którym uczestniczą nabywcy i sprzedawcy. Ekonomia nie pozwala przewidywać zmian w interesującym nas fragmencie rzeczywistości, tak jak czyni to astronomia, wyznaczając przykładowo przyszłe pozycje planet na nieboskłonie. Przyciąganie ziem- skie jest siłą zmieniającą się w przewidywalny sposób – czego nie można powiedzieć o skłonności konsumenta do nabywania danego dobra. Czy wiesz, że...? W historii gospodarczej świata i Polski jest wiele przykładów przed- siębiorstw, które kiedyś dostarczały konsumentom bardzo uży- teczne i pożądane przez nich towary, a dzisiaj już nie istnieją albo prowadzą działalność na o wiele mniejszą skalę. Przeszłe sukcesy w żaden sposób nie dają gwarancji sukcesów w przyszłości. Czasem okazuje się, że produkt, na który w przeszłości istniał wysoki popyt, dzisiaj już jest przestarzały, bo zmianie uległy gusta konsumentów. Zmieniają się także preferowane przez konsumentów formy dys- trybucji dóbr. Przekonała się o tym niedawno spółka Alma Market, będąca właścicielem sieci luksusowych delikatesów Alma. Firma powstała w latach 90. i przez wiele lat świetnie się rozwijała, jednak nie wytrzymała konkurencji z dyskontami, które zaczęły wprowa- dzać do swojego asortymentu luksusowe produkty, a w paździer- niku 2016 roku złożyła wniosek o upadłość i zamknęła większość sklepów działających w ramach jej sieci.9. Rynek: prawa popytu i podaży 59 Można wobec tego postawić pytanie: dlaczego w takim razie poświę- cać uwagę prawom popytu i podaży? Ponieważ pozwalają na systematy- zowanie zjawisk objętych rynkiem i ogólny opis kierunku zmian zacho- dzących w ramach niego – w sytuacji, gdy nie potrafimy przewidywać przyszłych warunków (co jest przedmiotem przedsiębiorczego zgadywa- nia). W nauce bowiem nie zawsze chodzi o przewidywanie albo osią- gnięcie stadium pełni wiedzy, lecz czasami także o zrozumienie tego, co następuje. W przypadku ekonomii rzecz dotyczy zrozumienia zacho- dzących zjawisk ekonomicznych. W ekonomii raczej wyjaśniamy, niż przewidujemy. Prawa popytu i podaży pozwalają zobrazować, jak działają konsumen- ci i producenci. Nawet jeśli nie uda nam się przewidzieć końcowych po- ziomów cen na rynku, będziemy mogli zrozumieć, jak konsumenci i pro- ducenci zareagują na ceny wyższe i niższe. == Pytania i zadania == # Czym jest rynek i jakie są jego rodzaje? # Wyjaśnij na przykładzie, czym jest prawo popytu. # Podaj przykłady produktów, na które popyt był kiedyś bardzo duży, a dzisiaj jest wyraźnie mniejszy. Wyjaśnij, skąd mogą się brać takie zmiany? # Wyjaśnij na przykładzie, czym jest prawo podaży. # Czy przedsiębiorcy mogą dokładnie poznać funkcję popytu na ich produkty? Uzasadnij odpowiedź. {{Nawigacja |Wolna przedsiębiorczość |[[../Koszty i ceny/]] |[[../Ilustracje krzywych popytu i podaży/]] }} lm03ge0036yrjnninrsk2a37g60dq7b 540914 540900 2026-04-27T04:48:02Z Marek Mazurkiewicz 8990 Redakcyjne cdn 540914 wikitext text/x-wiki Z tego rozdziału dowiesz się: * czym jest rynek i jakie są jego rodzaje, * czym są popyt i podaż, * w jakim celu wprowadza się pojęcia praw popytu i podaży, * dlaczego wiedza ekonomiczna jest ograniczona. Najważniejsze pojęcia: - mechanizm rynkowy, popyt, podaż, prawa ekonomii == Rynek i rodzaje rynków == W zasadzie cały dział I podręcznika jest poświęcony działaniu tak zwanego mechanizmu rynkowego, czyli procesu ekonomicznego, który przebiega pomiędzy wszystkimi członkami społeczeństwa, wymieniającymi między sobą dobra i usługi. Ilekroć bowiem dochodzi do transakcji wymiany między dwiema stronami, możemy mówić o zaistnieniu rynku. Rynek obejmuje swoim zasięgiem całokształt stosunków ekonomicznych wynikających z prób podejmowania i realizowania transakcji jednostronnego lub obustronnego oferowania dóbr i usług. Dlatego mówimy o rynku nie tylko wtedy, gdy do wymiany dochodzi, ale nawet wtedy, gdy pojawiają się jedynie propozycje wymiany (składanie ofert). Obiektem wymiany może być wszystko, zarówno dobra materialne, jak i niematerialne. Trze- ba przy tym zdawać sobie sprawę, że wbrew mylącej nazwie rynek nie jest miejscem, ale zjawiskiem kreowanym przez współdziałających ludzi. W jaki sposób możemy klasyfikować rynki? Rynek każdego dobra jest w zasadzie unikatowy. Inaczej wygląda rynek jabłek, a inaczej rynek samochodów. Możemy jednak zastosować rozróżnienie na bardziej ogólnym poziomie. Możemy mówić o rynku dóbr konsumpcyjnych, na którym wymieniane są dobra finalne (samochody, żywność, rozrywka itd.). Równolegle do niego istnieje rynek czynników produkcji – pracy, ziemi i dóbr kapitałowych, które są nabywane przez przedsiębiorców. Obok nich istnieje rynek finansowy, na którym oszczędzający dostarczają swoje środki na inwestycje (np. kupując akcje lub odkładając pieniądze na loka tach bankowych). Oprócz tego rynki klasyfikujemy terytorialnie (polski, amerykański, monachijski, kataloński itd.). W literaturze ekonomicznej pojawia się również pojęcie rynku nabywcy. Jest to rynek relatywnie korzystny dla odbiorcy produktu (np. gdy jest duża konkurencja). W opozycji do tego mówi się o rynku dostawcy, gdy ten jest relatywnie korzystniejszy dla dostarczyciela towaru (w sytuacji, gdy natężenie konkurencji jest mniejsze). Na każdy z tych rynków składa się ogół wszystkich ofert transakcji kupna i sprzedaży. Mimo że każdy z tych rynków odznacza się szczególnymi cechami, łączy je to, że są poddane prawom popytu i podaży. Na każdym rynku są ci, którzy składają oferty kupna (reprezentujący popyt), oraz ci, którzy składają oferty sprzedaży (reprezentujący podaż). == Prawo popytu == W wielkim uproszczeniu popytem nazywa się skłonność konsumentów do nabywania danego dobra. Jednak nie chodzi w tym wypadku o to, co rzeczywiście ludzie kupują w danej chwili, ale również o wszelkie możliwe scenariusze kupowania przez nich dobra. Powiedzmy, że pewnego wieczoru w barze dziesięciu klientów kupiło w sumie 30 lemoniad. W tym przypadku 30 napojów to faktyczna ilość nabyta, w pewnym sensie „popyt zrealizowany”. Gdy jednak rozważamy popyt w szerokim sensie, traktujemy go jako skłonność ludzi do nabywania towarów. Nie chodzi zatem tylko o to, jaką ilość danego dobra ludzie nabyli, ale również o to, jaką ilość mogliby kupić, gdyby zmieniły się okoliczności ich wyborów. W ten sposób prowadzi się teoretyczne rozważania nad tym, jaki jest popyt konsumentów. W przytoczonym przykładzie ilość nabyta wyniosła 30 napojów. Ale zasadne jest postawienie jeszcze kilku innych pytań. Na przykład, ile wynosiłaby ilość nabyta, gdyby bar miał lepszy wystrój? Ile napojów zostałoby kupionych, gdyby obok baru był konkurencyjny lokal? Ile napojów zostałoby kupionych, gdyby obok znajdował się sklep spożywczy i ładny park nad rzeką? Ile napojów by kupiono, gdyby sprzedawany produkt miał atrakcyjniejszą nazwę? A gdyby w lokalu była odtwarzana ciekawsza muzyka? Co w wypadku, gdyby pogoda była inna? Wreszcie pojawia się pytanie: a ile napojów kupiliby klienci, gdyby cena sprzedaży napoju była inna, czyli wyższa albo niższa? Jak wtedy zareagowaliby konsumenci? Są to oczywiście bardzo realne pytania, na które przedsiębiorcy nie- ustannie starają się odpowiadać. Zależność między różnymi czynnikami a skłonnością ludzi do kupowania nazywana jest funkcją popytu. Pod tą techniczną nazwą kryje się prosta prawda: na decyzje konsumentów o ku- powaniu towarów i usług wpływa bardzo wiele czynników. W takim wyimaginowanym przykładzie tym, co nas najbardziej intere- suje, jest zależność popytu – potencjalnej chęci nabywania dóbr – od jednego z najważniejszych czynników: ceny. Gdy w opracowaniach ekonomicznych pojawia się określenie „prawo popytu”, odnosi się ono właśnie do tego, w jaki sposób ludzie reagują na zmianę ceny danego dobra przy jednoczesnym założeniu, że inne czynniki nie będą się zmieniać. Jest to tzw. założenie ceteris paribus [wym. ceteris paribus, znaczenie: jeśli reszta jest taka sama]. W jego ramach wyobrażamy sobie, że zmieniamy tylko jeden czynnik w analizowanym przypadku (np. cena danego produktu). Następnie próbujemy wnioskować, jak zmieni się sytuacja (np. na rynku konkretnego dobra) w wyniku tej jednej zmiany. Im cena będzie niższa, tym skłonność ludzi do kupowania napojów w barze będzie większa. Im cena będzie wyższa, tym skłonność ludzi do kupowania napojów będzie mniejsza. Mówiąc o prawie popytu, mówimy w gruncie rzeczy o tym, jak konsu- menci zareagowaliby na podwyżki lub obniżki cen przy niezmienionych pozostałych warunkach. Reakcja ta zawsze będzie zależała od preferencji konsumentów, od ich kaprysów, przekonań, uprzedzeń i upodobań. Nie ma gwarancji, że na przykład obniżka ceny o 5 procent spowoduje wzrost ilości nabywanej o 10 procent. Co więcej, nawet jeśli zaobserwowaliśmy w przeszłości taką zależność, to nie ma żadnej gwarancji, że w przyszło- ści się to powtórzy. Gusta i preferencje konsumentów ciągle się zmieniają. A trudny los przedsiębiorców polega na tym, że muszą próbować je przewidywać. == Prawo podaży == Prawo podaży jest bardzo podobne do prawa popytu, odnosi się jed- nak nie do kupujących, lecz do sprzedawców. Oni także działają w rozmaitych warunkach, które mogą się zmieniać. Jeśli jednak założymy, że te warunki są w miarę niezmienne, to również możemy wskazać na zależność między ilością produktu, którą chcą sprzedać sprzedawcy, a ceną, po jakiej będą go sprzedawać. Prawo podaży, odwrotnie do prawa popytu, mówi o tym, że im wyższa cena, ceteris paribus, tym bardziej skłonni są sprzedawcy do dostarczania produktów na rynek, gdyż dzięki temu mogą więcej zarobić. Im cena niższa, tym mniejsza jest skłonność do dostarczania produktów na rynek. Pamiętajmy jed- nak, że rzeczywista sytuacja często zależy od kombinacji bardzo wielu czynników, a nie tylko od ceny. Równie ważne jak końcowe ceny są dla przedsiębiorców koszty ich działalności. == Wykorzystanie praw popy tu i podaży == Prawa popytu i podaży pozwalają opisywać, jak w ramach rynku prze- biega proces kształtowania się cen. Znajomość tych praw nie pozwala jed- nak przewidzieć przyszłych rynkowych cen dóbr. Te bowiem ustalane są w wyniku nieustannego targowania się, w którym uczestniczą nabywcy i sprzedawcy. Ekonomia nie pozwala przewidywać zmian w interesującym nas fragmencie rzeczywistości, tak jak czyni to astronomia, wyznaczając przykładowo przyszłe pozycje planet na nieboskłonie. Przyciąganie ziem- skie jest siłą zmieniającą się w przewidywalny sposób – czego nie można powiedzieć o skłonności konsumenta do nabywania danego dobra. Czy wiesz, że...? W historii gospodarczej świata i Polski jest wiele przykładów przed- siębiorstw, które kiedyś dostarczały konsumentom bardzo uży- teczne i pożądane przez nich towary, a dzisiaj już nie istnieją albo prowadzą działalność na o wiele mniejszą skalę. Przeszłe sukcesy w żaden sposób nie dają gwarancji sukcesów w przyszłości. Czasem okazuje się, że produkt, na który w przeszłości istniał wysoki popyt, dzisiaj już jest przestarzały, bo zmianie uległy gusta konsumentów. Zmieniają się także preferowane przez konsumentów formy dys- trybucji dóbr. Przekonała się o tym niedawno spółka Alma Market, będąca właścicielem sieci luksusowych delikatesów Alma. Firma powstała w latach 90. i przez wiele lat świetnie się rozwijała, jednak nie wytrzymała konkurencji z dyskontami, które zaczęły wprowa- dzać do swojego asortymentu luksusowe produkty, a w paździer- niku 2016 roku złożyła wniosek o upadłość i zamknęła większość sklepów działających w ramach jej sieci.9. Rynek: prawa popytu i podaży 59 Można wobec tego postawić pytanie: dlaczego w takim razie poświę- cać uwagę prawom popytu i podaży? Ponieważ pozwalają na systematy- zowanie zjawisk objętych rynkiem i ogólny opis kierunku zmian zacho- dzących w ramach niego – w sytuacji, gdy nie potrafimy przewidywać przyszłych warunków (co jest przedmiotem przedsiębiorczego zgadywa- nia). W nauce bowiem nie zawsze chodzi o przewidywanie albo osią- gnięcie stadium pełni wiedzy, lecz czasami także o zrozumienie tego, co następuje. W przypadku ekonomii rzecz dotyczy zrozumienia zacho- dzących zjawisk ekonomicznych. W ekonomii raczej wyjaśniamy, niż przewidujemy. Prawa popytu i podaży pozwalają zobrazować, jak działają konsumen- ci i producenci. Nawet jeśli nie uda nam się przewidzieć końcowych po- ziomów cen na rynku, będziemy mogli zrozumieć, jak konsumenci i pro- ducenci zareagują na ceny wyższe i niższe. == Pytania i zadania == # Czym jest rynek i jakie są jego rodzaje? # Wyjaśnij na przykładzie, czym jest prawo popytu. # Podaj przykłady produktów, na które popyt był kiedyś bardzo duży, a dzisiaj jest wyraźnie mniejszy. Wyjaśnij, skąd mogą się brać takie zmiany? # Wyjaśnij na przykładzie, czym jest prawo podaży. # Czy przedsiębiorcy mogą dokładnie poznać funkcję popytu na ich produkty? Uzasadnij odpowiedź. {{Nawigacja |Wolna przedsiębiorczość |[[../Koszty i ceny/]] |[[../Ilustracje krzywych popytu i podaży/]] }} nzow3zgneyj7cgf9rv0dquor3h371ww Moduł:Pudełko/Potrzebne 828 58908 540955 540443 2026-04-27T11:25:24Z Persino 2851 540955 Scribunto text/plain local p={} function p.Problemy_kontenerowe_szablonowe(frame, kod_liczbowy_przestrzeni_nazw) local pf=frame:getParent(); local parametry_modul=require("Module:Parametry"); local zkategoria=not parametry_modul.CzyTak(frame.args["bez kategorii"] or pf.args["bez kategorii"]); local brudnopis_wikibooks=parametry_modul.CzyTak(frame.args["obsługiwany brudnopis projektu"]); local brudnopis_modul=parametry_modul.CzyTak(frame.args["obsługiwany brudnopis modułu"]); local brudnopis_szablon=parametry_modul.CzyTak(frame.args["obsługiwany brudnopis szablonu"]); local nieobslugiwane_strony_glowne=parametry_modul.CzyTak(frame.args["nieobsługiwane strony główne"]); local nieobslugiwane_strony_szablonow=parametry_modul.CzyTak(frame.args["nieobsługiwane strony szablonów"]); local nieobslugiwane_strony_opisu_szablonow=parametry_modul.CzyTak(frame.args["nieobsługiwane strony opisu szablonów"]); local nieobslugiwane_strony_modulow=parametry_modul.CzyTak(frame.args["nieobsługiwane strony modułów"]); local nieobslugiwane_strony_opisu_modulow=parametry_modul.CzyTak(frame.args["nieobsługiwane strony opisu szablonów"]); local nieobslugiwane_strony_brudnopisu_szablonow=parametry_modul.CzyTak(frame.args["nieobsługiwane strony brudnopisu szablonów"]); local nieobslugiwane_strony_brudnopisu_opisu_szablonow=parametry_modul.CzyTak(frame.args["nieobsługiwane strony brudnopisu opisu szablonów"]); local nieobslugiwane_strony_brudnopisu_modulow=parametry_modul.CzyTak(frame.args["nieobsługiwane strony brudnopisu modułów"]); local nieobslugiwane_strony_brudnopisu_opisu_modulow=parametry_modul.CzyTak(frame.args["nieobsługiwane strona brudnopisu opisu modułów"]); local nieobslugiwane_strony_jednostek_programowych=parametry_modul.CzyTak(frame.args["nieobsługiwane strony jednostek programowych"]); local nieobslugiwane_strony_opisu_jednostek_programowych=parametry_modul.CzyTak(frame.args["nieobsługiwane strony opisu jednostek programowych"]); local nieobslugiwana_strony_glowne_uzytkownikow=nieobslugiwane_strony_glowne or parametry_modul.CzyTak(frame.args["nieobsługiwane strony główne użytkowników"]); local nieobslugiwana_strona_glowna_projektu=nieobslugiwane_strony_glowne or parametry_modul.CzyTak(frame.args["nieobsługiwana strona główna projektu"]); local nieobslugiwana_strona_glowna_dla_dzieci=nieobslugiwane_strony_glowne or parametry_modul.CzyTak(frame.args["nieobsługiwana strona główna dla dzieci"]); local obslugiwane_niebiezace_wiki=parametry_modul.CzyTak(frame.args["obsługiwane niebieżące wiki"]); local nieobslugiwane_polskie_wiki=parametry_modul.CzyTak(frame.args["nieobsługiwane polskie wiki"]); local nieobslugiwane_lokalne_wiki=parametry_modul.CzyTak(frame.args["nieobsługiwane lokalne wiki"]); local podkategoria_niebiezace_wiki; local wskazuje_wiki; local nazwij_jednostka=parametry_modul.CzyTak(frame.args["nazwij jednostką"] or pf.args["nazwij jednostką"]); local wylocz_niezaleznosc_od_nazwij_jednostka=parametry_modul.CzyTak(frame.args["wyłącz niezależność od nazwij jednostką"]); local w_user_jako_strony_uzykownika=parametry_modul.CzyTak(frame.args["obsługiwane indywidua użytkownika jako normalne strony"]); local pudelko_modul=require("Module:Pudełko"); local lancuch_bledow={}; local tablica_lancuch_kategorii_bledow={}; local czy_ze_szczegolami=not parametry_modul.CzyTak(frame.args["bez szczegółów"] or pf.args["bez szczegółów"]); local wiki_modul=require("Module:Wiki"); local kod_jezyka_tego_projektu; local kod_projektu_tego_projektu; local pudelko_modul=require("Module:Pudełko"); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); local function AnalizujDane(i) local kod_jezyka;local kod_projektu; if(obslugiwane_niebiezace_wiki or nieobslugiwane_polskie_wiki or nieobslugiwane_lokalne_wiki)then kod_jezyka,kod_projektu=pudelko_pomocne_modul.Wikikody_kontenera(frame,i); else kod_jezyka=pudelko_modul["Kod języka tego projektu"](); kod_projektu=pudelko_modul["Kod projektu tego projektu"](); end; if(i>0)then if(obslugiwane_niebiezace_wiki or nieobslugiwane_polskie_wiki or nieobslugiwane_lokalne_wiki)then local klucz_projektu2=pudelko_pomocne_modul.Klucz_projektu(frame,i); local kod_jezyka2=pudelko_pomocne_modul.Kod_jezyka(frame,i); local kod_projektu2=pudelko_pomocne_modul.Kod_projektu(frame,i); podkategoria_niebiezace_wiki=podkategoria_niebiezace_wiki or (obslugiwane_niebiezace_wiki and "bieżące wiki" or ((nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki) and "polskie lub lokalne, wiki" or ((nieobslugiwane_polskie_wiki and not nieobslugiwane_lokalne_wiki) and "polskie wiki" or "lokalne wiki" ) or nil)); wskazuje_wiki=wskazuje_wiki or (obslugiwane_niebiezace_wiki and "niebieżący" or ((nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki) and "niepolski i nielokalny" or ((nieobslugiwane_polskie_wiki and not nieobslugiwane_lokalne_wiki) and "niepolski" or "nielokalny" ) or nil)); if(not(klucz_projektu2 or kod_jezyka2 or kod_projektu2))then if((obslugiwane_niebiezace_wiki)or(nieobslugiwane_polskie_wiki)or(nieobslugiwane_lokalne_wiki))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow,"<li>Nie podano, które wiki ma osbługiwać, dla zmiennych o numerze "..i..".</li>"); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - "..podkategoria_niebiezace_wiki); end; return; else return "tak"; end; end; else local wynik=wiki_modul:OddawajDaneKodyWiki(klucz_projektu2,kod_jezyka2,kod_projektu2); if((type(wynik)=="table") and (wynik[4]) and (wynik[5])) then if((obslugiwane_niebiezace_wiki)or(nieobslugiwane_polskie_wiki)or(nieobslugiwane_lokalne_wiki))then local pudelko_modul=require("Module:Pudełko"); local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"](); local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"](); if(parametry_modul.CzyTak(klucz_projektu2))then if((kod_jezyka)and(kod_projektu))then if(kod_jezyka==kod_jezyka_tego_projektu)and(kod_projektu==kod_projektu_tego_projektu)then table.insert(lancuch_bledow,"<li>Podany klucz projektu, a w nim: kod języka i kod projektu, nie wskazują na projekt "..wskazuje_wiki..", dla zmiennych o numerze "..i..".</li>"); --projekt_lokalny_lub_polski_kategorie(podkategoria_niebiezace_wiki); if(czy_ze_szczegolami)then if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - "..podkategoria_niebiezace_wiki); end; else return "tak"; end; elseif((nieobslugiwane_polskie_wiki and not nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki) or (nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki))and(kod_jezyka==kod_jezyka_tego_projektu)then table.insert(lancuch_bledow,"<li>Podany klucz projektu: a w nim: kod języka, nie wskazuje na projekt "..wskazuje_wiki..", dla zmiennych o numerze "..i..".</li>"); if(czy_ze_szczegolami)then if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - "..podkategoria_niebiezace_wiki); end; else return "tak"; end; elseif(((not nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki)or(nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki))and(kod_projektu==kod_projektu_tego_projektu))then table.insert(lancuch_bledow,"<li>Podany klucz projektu: a w nim: kod projektu, nie wskazuje na projekt "..wskazuje_wiki..", dla zmiennych o numerze "..i..".</li>"); if(czy_ze_szczegolami)then if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - "..podkategoria_niebiezace_wiki); end; else return "tak"; end; end; end; else if (kod_jezyka2 and kod_projektu2 and ((((kod_jezyka2==kod_jezyka_tego_projektu)and(kod_projektu2~=kod_projektu_tego_projektu)) or(((not nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki) or(nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki))and(kod_jezyka2~=kod_jezyka_tego_projektu)and(kod_projektu2==kod_projektu_tego_projektu)) or(((nieobslugiwane_polskie_wiki and not nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki) or(nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki) or obslugiwane_niebiezace_wiki)and(kod_jezyka2==kod_jezyka_tego_projektu)and(kod_projektu2==kod_projektu_tego_projektu)) ) or(((nieobslugiwane_polskie_wiki and not nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki)or(nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki)) and(kod_jezyka2==kod_jezyka_tego_projektu)) or(((not nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki)or(nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki)) and(kod_projektu2==kod_projektu_tego_projektu)) ))then table.insert(lancuch_bledow,"<li>Podany: kod języka i kod projektu, nie wskazują na projekt "..wskazuje_wiki..", dla zmiennych o numerze "..i..".</li>"); if(czy_ze_szczegolami)then if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - "..podkategoria_niebiezace_wiki); end; else return "tak"; end; elseif((kod_jezyka2 and not kod_projektu2) and ((((nieobslugiwane_polskie_wiki and not nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki)or obslugiwane_niebiezace_wiki)and (kod_jezyka2==kod_jezyka_tego_projektu))or(not nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki)or(nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki))) then table.insert(lancuch_bledow,"<li>Podany kod języka nie wskazuje na projekt "..wskazuje_wiki..", dla zmiennych o numerze "..i..".</li>"); if(czy_ze_szczegolami)then if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - "..podkategoria_niebiezace_wiki); end; else return "tak"; end; elseif((not kod_jezyka2 and kod_projektu2)and (((((not nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki)or obslugiwane_niebiezace_wiki))and (kod_projektu2==kod_projektu_tego_projektu))or(nieobslugiwane_polskie_wiki and not nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki)or(nieobslugiwane_polskie_wiki and nieobslugiwane_lokalne_wiki and not obslugiwane_niebiezace_wiki))) then table.insert(lancuch_bledow,"<li>Podany kod projektu nie wskazuje na projekt "..wskazuje_wiki..", dla zmiennych o numerze "..i..".</li>"); if(czy_ze_szczegolami)then if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - "..podkategoria_niebiezace_wiki); end; else return "tak"; end; end; end; end; else if(czy_ze_szczegolami)then if(wynik[1])then table.insert(lancuch_bledow,"<li>Podany klucz projektu, jest błędny, dla zmiennych o numerze "..i..".</li>"); elseif(not wynik[4] and not wynik[5])then table.insert(lancuch_bledow,"<li>Podany: kod języka i kod projektu, są błędne, dla zmiennych o numerze "..i..".</li>"); elseif(not wynik[4])then table.insert(lancuch_bledow,"<li>Podany kod języka, jest błędny, dla zmiennych o numerze "..i..".</li>"); elseif(not wynik[5])then table.insert(lancuch_bledow,"<li>Podany kod projektu, jest błędny, dla zmiennych o numerze "..i..".</li>"); end; if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - błędne parametry wiki"); end; else return "tak"; end; end; end; end; end; local obslugiwane1=pudelko_pomocne_modul.Czy_przestrzen_nazw_jest_obslugiwana(frame,"Template",kod_jezyka,kod_projektu); local obslugiwane2=pudelko_pomocne_modul.Czy_przestrzen_nazw_jest_obslugiwana(frame,"Module",kod_jezyka,kod_projektu); local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,kod_liczbowy_przestrzeni_nazw,nil,i) local nazwy_modul=require("Module:Nazwy"); local wiki_modul=require("Module:Wiki"); local czy_biezaca=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; local czy_blad_nazwa_przestrzeni_nazw; if(czy_biezaca)then czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; else czy_blad_nazwa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",}; end; if(not czy_blad_nazwa_przestrzeni_nazw)then if((i==0)or ((i>0)and pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_dodatkowe(frame,i)))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow,(i==0) and "<li>Wartość, nazwy przestrzeni nazw, dla korzystanej jednostki jest nieprawidłowa.</li>" or "<li>Wartość, nazwy przestrzeni nazw, dla zmiennych o numerze "..i.." jest nieprawidłowa.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieprawidłowa nazwa przestrzeni nazw"); end; else return "tak"; end; end; end; if(nazwa_jednostki=="")then if(czy_ze_szczegolami)then table.insert(lancuch_bledow,(i==0) and"<li>Wartość, nazwy jednostki, dla korzystanej jednostki jest pusta.</li>" or"<li>Wartość, nazwy jednostki, dla zmiennych o numerze "..i.." jest pusta.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - pusta nazwa jednostki"); end; else return "tak"; end; end; local mo,norm_przed_lub_dyskusji; local nieprawidlowa_niepusta_pelna_nazwa_jednostki=false; if(czy_blad_nazwa_przestrzeni_nazw)then if(nazwa_jednostki~="")then nieprawidlowa_niepusta_pelna_nazwa_jednostki=pudelko_modul.CzyNiepoprawnaNazwa(((parametry_modul.CzyTak(czy_blad_nazwa_przestrzeni_nazw))and czy_blad_nazwa_przestrzeni_nazw..":" or "")..nazwa_jednostki); mo=(not nieprawidlowa_niepusta_pelna_nazwa_jednostki)and pudelko_pomocne_modul.Typ_jednostki(frame, kod_liczbowy_przestrzeni_nazw,i) or nil; end; norm_przed_lub_dyskusji=pudelko_pomocne_modul.Normalna_przedmiotowa_lub_dyskusji_nazwa_przestrzeni_nazw(czy_blad_nazwa_przestrzeni_nazw, kod_liczbowy_przestrzeni_nazw) or nil; end; if((czy_blad_nazwa_przestrzeni_nazw)and(nazwa_jednostki~=""))then if((i==0)or ((i>0)and pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_dodatkowe(frame,i)))then local obslugiwane=czy_blad_nazwa_przestrzeni_nazw and pudelko_pomocne_modul.Czy_przestrzen_nazw_jest_obslugiwana(frame,czy_blad_nazwa_przestrzeni_nazw,kod_jezyka,kod_projektu); if((not obslugiwane)and((not mo)or(not(((czy_blad_nazwa_przestrzeni_nazw=="Project")and(brudnopis_wikibooks and(((mo=="jednostka brudnopisu projektu")or(mo=="strona brudnopisu projektu")or(mo=="podręcznik brudnopisu projektu")or(mo=="artykuł brudnopisu projektu"))or(parametry_modul.CzyTak(nazwa_jednostki)and(mw.ustring.match(nazwa_jednostki,"^[Bb]rudnopis/.*")))))) or((czy_blad_nazwa_przestrzeni_nazw=="Template")and(parametry_modul.CzyTak(brudnopis_szablon) and(((mo=="strona brudnopisu szablonu")or(mo=="strona brudnopisu opisu szablonu"))or(parametry_modul.CzyTak(nazwa_jednostki)and(mw.ustring.match(nazwa_jednostki,"^[Bb]rudnopis/.*")))))) or((czy_blad_nazwa_przestrzeni_nazw=="Module")and(parametry_modul.CzyTak(brudnopis_modul) and(((mo=="strona brudnopisu modułu")or(mo=="strona brudnopisu opisu modułu"))or(parametry_modul.CzyTak(nazwa_jednostki)and(mw.ustring.match(nazwa_jednostki,"^[Bb]rudnopis/.*"))))))))) )then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Szablon wartości, nazwy przestrzeni nazw, dla korzystanej jednostki nie obsługuje.</li>" or"<li>Szablon wartości, nazwy przestrzeni nazw, dla zmiennych o numerze "..i.." nie obsługuje.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana przestrzeń nazw"); end; else return "tak"; end; end; end; end; --local nieprawidlowa_niepusta_pelna_nazwa_jednostki=false; if(czy_blad_nazwa_przestrzeni_nazw and nazwa_jednostki~="")then if(nieprawidlowa_niepusta_pelna_nazwa_jednostki)then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Wartość, nazwy jednostki, dla korzystanej jednostki jest nieprawidłowa.</li>" or"<li>Wartość, nazwy jednostki, dla zmiennych o numerze "..i.." jest nieprawidłowa.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieprawidłowa nazwa jednostki"); end; else return "tak"; end; end; end; if(czy_blad_nazwa_przestrzeni_nazw)and(nazwa_jednostki~="")then if((not nieprawidlowa_niepusta_pelna_nazwa_jednostki)and((czy_blad_nazwa_przestrzeni_nazw=="")and(nazwa_jednostki~="")))then local nazwy_modul=require("Module:Nazwy"); local nowa_nazwa_przestrzeni_nazw=nazwy_modul["NAZWAPRZESTRZENI"]{nazwa=nazwa_jednostki,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,}; if(nowa_nazwa_przestrzeni_nazw~="")then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Zmienna <code>nazwa jednostki</code> zawiera w sobie przestrzeń.</li>" or"<li>Zmienna nienazwana "..i.." zawiera w sobie przestrzeń.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nazwa jednostki zawierająca w sobie przestrzeń"); end; else return "tak"; end; end; end; end; if((obslugiwane1)and(mo)and(mo=="strona szablonu")and((nieobslugiwane_strony_szablonow)or (nieobslugiwane_strony_jednostek_programowych)))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Strona szablonu jest nieobsługiwana.</li>" or"<li>Strona szablonu wskazującego na zmienną "..i.." jest nieobsługiwana.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona szablonu"); end; else return "tak"; end; end; if((obslugiwane1)and(mo)and(mo=="strona opisu szablonu")and((nieobslugiwane_strony_opisu_szablonow)or (nieobslugiwane_strony_opisu_jednostek_programowych)))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Strona opisu szablonu jest nieobsługiwana.</li>" or"<li>Strona opisu szablonu wskazującego na zmienną "..i.." jest nieobsługiwana.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona opisu szablonu"); end; else return "tak"; end; end; if((obslugiwane2)and(mo)and(mo=="strona modułu")and((nieobslugiwane_strony_modulow)or (nieobslugiwane_strony_jednostek_programowych)))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Strona modułu jest nieobsługiwana.</li>" or"<li>Strona modułu wskazującego na zmienną "..i.." jest nieobsługiwana.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona modułu"); end; else return "tak"; end; end; if((obslugiwane2)and(mo)and(mo=="strona opisu modułu")and((nieobslugiwane_strony_opisu_modulow)or (nieobslugiwane_strony_opisu_jednostek_programowych)))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Strona opisu modułu jest nieobsługiwana.</li>" or"<li>Strona opisu modułu wskazującego na zmienną "..i.." jest nieobsługiwana.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona opisu modułu"); end; else return "tak"; end; end; if((mo)and(mo=="strona brudnopisu szablonu")and((nieobslugiwane_strony_brudnopisu_szablonow)or (nieobslugiwane_strony_jednostek_programowych)))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Strona brudnopisu szablonu jest nieobsługiwana.</li>" or"<li>Strona brudnopisu szablonu wskazującego na zmienną "..i.." jest nieobsługiwana.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona brudnopisu szablonu"); end; else return "tak"; end; end; if((mo)and(mo=="strona brudnopisu opisu szablonu")and((nieobslugiwane_strony_brudnopisu_opisu_szablonow)or (nieobslugiwane_strony_opisu_jednostek_programowych)))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Strona brudnopisu opisu szablonu jest nieobsługiwana.</li>" or"<li>Strona brudnopisu opisu szablonu wskazującego na zmienną "..i.." jest nieobsługiwana.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona brudnopisu opisu szablonu"); end; else return "tak"; end; end; if((mo)and(mo=="strona brudnopisu modułu")and((nieobslugiwane_strony_brudnopisu_modulow)or (nieobslugiwane_strony_jednostek_programowych)))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Strona brudnopisu modulu jest nieobsługiwana.</li>" or"<li>Strona brudnopisu modułu wskazującego na zmienną "..i.." jest nieobsługiwana.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona brudnopisu modułu"); end; else return "tak"; end; end; if((mo)and(mo=="strona brudnopisu opisu modułu")and((nieobslugiwane_strony_brudnopisu_opisu_modulow)or (nieobslugiwane_strony_opisu_jednostek_programowych)))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Strona brudnopisu opisu modułu jest nieobsługiwana.</li>" or"<li>Strona brudnopisu opisu modułu wskazującego na zmienną "..i.." jest nieobsługiwana.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona brudnopisu opisu modułu"); end; else return "tak"; end; end; if(((i>0)and(frame.args["strona główna projektu "..i] or pf.args["strona główna projektu "..i])) or ((i==0)and(frame.args["strona główna projektu"] or pf.args["strona główna projektu"])))then local projekt=pudelko_pomocne_modul.Nazwa_strony_bazowej_projektu_ze_zmiennej(frame,i,kod_jezyka,kod_projektu); local nazwa_strony_glownej_projektu_z_wikidanych=pudelko_pomocne_modul.Nazwa_strony_bazowej_projektu_z_wikidanych(kod_jezyka,kod_projektu); projekt=(not projekt)and nazwa_strony_glownej_projektu_z_wikidanych or projekt; local dowolna_nazwa_strony_glownej_projektu=parametry_modul.CzyTak(frame.args["dowolna nazwa strony głównej projektu"]); if(projekt)then if(projekt=="")then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Wartość nazwy, strony głównej projektu, dla zmiennej <code>strona główna projektu</code> jest pusta.</li>" or "<li>Wartość nazwy, strony głównej projektu, dla zmiennej <code>strona główna projektu .."..i.."</code> jest pusta.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - pusta nazwa strony głównej projektu"); end; else return "tak"; end; elseif((not dowolna_nazwa_strony_glownej_projektu)and(not mw.ustring.match(projekt,"^[^/]+$")))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Wartość nazwy, strony głównej projektu, dla zmiennej <code>strona główna projektu</code> zawiera prawe ukośniki.</li>" or "<li>Wartość nazwy, strony głównej projektu, dla zmiennej <code>strona główna projektu "..i.."</code> zawiera prawe ukośniki</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieprawidłowa nazwa strony głównej projektu"); end; else return "tak"; end; elseif(pudelko_modul.CzyNiepoprawnaNazwa(projekt))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Wartość nazwy, strony głównej projektu, w zmiennej <code>strona główna projektu</code> ma nazwę niepustą nieprawidłową.</li>" or "<li>Wartość nazwy, strony głównej projektu, w zmiennej <code>strona główna projektu "..i.."</code> ma nazwę niepustą nieprawidłową.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieprawidłowa nazwa strony głównej projektu"); end; else return "tak"; end; end; end; end; local typ=frame.args["typ jednostki"..((i)and((i~=0))and (" "..i) or "")] or pf.args["typ jednostki"..((i)and((i~=0))and (" "..i) or "")]; if((czy_blad_nazwa_przestrzeni_nazw)and(nazwa_jednostki~="")and(not nieprawidlowa_niepusta_pelna_nazwa_jednostki))then if(nieobslugiwana_strona_glowna_projektu)then if(mo=="strona główna projektu")then if(czy_ze_szczegolami)then if(typ~="strona główna projektu")then table.insert(lancuch_bledow, (i==0)and"<li>Wstawiono szablon na stronę główną projektu.</li>" or ((frame.args["strona główna projektu "..i] or pf.args["strona główna projektu "..i])and"<li>Szablon, wskazuje na stronę główna projektu, według zmiennej <code>strona główna projektu "..i.."</code>, dla zmiennych o numerze "..i..".</li>" or"<li>Szablon, wskazuje na stronę główną projektu, dla zmiennych o numerze "..i..".</li>" )); else table.insert(lancuch_bledow,(i==0)and "<li>Wstawiono szablon, na stronę, z ustawioną wartością <code>typ jednostki = strona główna projektu</code>.</li>" or"<li>Wstawiono szablon, na stronę, z ustawioną wartością <code>typ jednostki "..i.." = strona główna projektu</code>.</li>" ); end; if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona główna projektu"); end; else return "tak"; end; end; end; end; if(kod_projektu==require("Module:Pudełko")["Kod projektu tego projektu"]())then if(((i>0)and(frame.args["strona główna dla dzieci "..i] or pf.args["strona główna dla dzieci "..i])) or ((i==0)and(frame.args["strona główna dla dzieci"] or pf.args["strona główna dla dzieci"])))then local junior=pudelko_pomocne_modul.Nazwa_strony_bazowej_dla_dzieci_ze_zmiennej(frame,i,kod_jezyka,kod_projektu); local nazwa_strony_glownej_wikijuniora_z_wikidanych=pudelko_pomocne_modul.Nazwa_strony_bazowej_dla_dzieci_z_wikidanych(kod_jezyka) junior=(not junior)and nazwa_strony_glownej_wikijuniora_z_wikidanych or junior; local dowolna_nazwa_strony_glownej_wikijuniora=parametry_modul.CzyTak(frame.args["dowolna nazwa strony głównej dla dzieci"]); if(junior)then if(junior=="")then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Wartość nazwy, strony głównej dla dzieci, w zmiennej <code>strona główna dla dzieci</code> jest pusta.</li>" or "<li>Wartość nazwy, strony głównej dla dzieci, w zmiennej <code>strona główna dla dzieci .."..i.."</code> jest pusta.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - pusta nazwa strony głównej dla dzieci"); end; else return "tak"; end; elseif((not dowolna_nazwa_strony_glownej_wikijuniora)and(not mw.ustring.match(junior,"^[^/]+$")))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Wartość nazwy, strony głównej dla dzieci, w zmiennej <code>strona główna dla dzieci</code> zawiera prawe ukośniki.</li>" or"<li>Wartość nazwy, strony głównej dla dzieci, w zmiennej <code>strona główna dla dzieci "..i.."</code> zawiera prawe ukośniki.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieprawidłowa nazwa strony głównej dla dzieci"); end; else return "tak"; end; elseif(pudelko_modul.CzyNiepoprawnaNazwa(junior))then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Wartość nazwy, strony głównej dla dzieci, w zmiennej <code>strona główna dla dzieci</code> ma nazwę niepustą nieprawidłową.</li>" or"<li>Wartość nazwy, strony głównej dla dzieci, w zmiennej <code>strona główna dla dzieci "..i.."</code> ma nazwę niepustą nieprawidłową.</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieprawidłowa nazwa strony głównej dla dzieci"); end; else return "tak"; end; end; end; end; if((czy_blad_nazwa_przestrzeni_nazw)and(nazwa_jednostki~="")and(not nieprawidlowa_niepusta_pelna_nazwa_jednostki))then if(nieobslugiwana_strona_glowna_dla_dzieci)then if(mo=="strona główna dla dzieci")then if(czy_ze_szczegolami)then if(typ~="strona główna dla dzieci")then table.insert(lancuch_bledow, (i==0)and"<li>Wstawiono szablon na stronę główną dla dzieci.</li>" or ((frame.args["strona główna dla dzieci "..i] or pf.args["strona główna dla dzieci "..i])and"<li>Szablon, wskazuje na stronę główną dla dzieci, według zmiennej <code>strona główna dla dzieci .."..i..", dla zmiennych o numerze "..i..".</code>.</li>" or"<li>Szablon, wskazuje na stronę główną dla dzieci, dla zmiennych o numerze "..i..".</li>" )); else table.insert(lancuch_bledow,(i==0)and "<li>Wstawiono szablon, na stronę, z ustawioną wartością <code>typ jednostki = strona główna dla dzieci</code>.</li>" or"<li>Wstawiono szablon, na stronę, z ustawioną wartością <code>typ jednostki "..i.." = strona główna dla dzieci</code>.</li>" ); end if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona główna dla dzieci"); end; else return "tak"; end; end; end; end; end; local obslugiwane3=(czy_blad_nazwa_przestrzeni_nazw)and((norm_przed_lub_dyskusji=="User") and pudelko_pomocne_modul.Czy_przestrzen_nazw_jest_obslugiwana(frame,"User",kod_jezyka,kod_projektu)); if((czy_blad_nazwa_przestrzeni_nazw)and(nazwa_jednostki~="")and(not nieprawidlowa_niepusta_pelna_nazwa_jednostki)and(obslugiwane3))then if(nieobslugiwana_strony_glowne_uzytkownikow)then if(mo=="strona główna użytkownika")then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and "<li>Wstawiono szablon na stronę główną użytkownika.</li>" or"<li>Szablon, wskazuje na stronę główną użytkownika, dla zmiennych o numerze "..i..".</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona główna użytkownika"); end; else return "tak"; end; elseif((mo~="jednostka użytkownika")and(mo~="podręcznik użytkownika")and(mo~="artykuł użytkownika")and(mo~="strona główna użytkownika")and((mo~="strona użytkownika")or(w_user_jako_strony_uzykownika)))then if(czy_ze_szczegolami)then if(mw.ustring.match(nazwa_jednostki,"^[^/]+$"))then table.insert(lancuch_bledow, (i==0)and "<li>Wstawiono szablon na stronę główną użytkownika.</li>" or"<li>Szablon, wskazuje na stronę główną użytkownika, dla zmiennych o numerze "..i..".</li>" ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieobsługiwana strona główna użytkownika"); end; end; else return "tak"; end; end; end; end; if((not nieprawidlowa_niepusta_pelna_nazwa_jednostki) and((not wylocz_niezaleznosc_od_nazwij_jednostka)or(not nazwij_jednostka)) and(((i>0)and((frame.args["typ jednostki "..i])or(pf.args["typ jednostki "..i])or(pf.args["typ jednostki"]))) or ((i==0)and((frame.args["typ jednostki"])or (pf.args["typ jednostki"])))) )then local typ_i=(i>0)and((frame.args["typ jednostki "..i])or(pf.args["typ jednostki "..i])) or nil; if(mo=="(błąd typu jednostki)")then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Podana wartość zmiennej <code>typ jednostki</code> jest nieprawidłowa.</li>" or (typ_i and "<li>Podana wartość zmiennej <code>typ jednostki "..i.."</code> jest nieprawidłowa.</li>" or "<li>Podana wartość zmiennej <code>typ jednostki</code> dla zmiennych o numerze "..i.." jest nieprawidłowa.</li>") ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - nieprawidłowa wartość typu jednostki"); end; else return "tak"; end; elseif(mo=="(błąd niezgodności)")then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Podana wartość zmiennej <code>typ jednostki</code> jest niezgodna z podaną zmienną: <code>nazwą przestrzeni nazw</code>.</li>" or (typ_i and ("<li>Podana wartość zmiennej <code>typ jednostki "..i.."</code> jest niezgodna z podaną: <code>nazwą przestrzeni nazw "..i.."</code>.</li>") or("<li>Podana wartość zmiennej <code>typ jednostki</code> dla zmiennych o numerze "..i.." jest niezgodna z podaną: <code>nazwą przestrzeni nazw "..i.."</code>.</li>")) ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - niezgodna wartość typu jednostki"); end; else return "tak"; end; elseif(mo=="(błąd parametrów pudełkowych)")then if(czy_ze_szczegolami)then table.insert(lancuch_bledow, (i==0)and"<li>Podana wartość zmiennej <code>typ jednostki</code> jest niezgodna z podanymi parametrami pudełkowymi.</li>" or (typ_i and "<li>Podana wartość zmiennej <code>typ jednostki "..i.."</code> jest niezgodna z podanymi parametrami pudełkowymi.</li>" or "<li>Podana wartość zmiennej <code>typ jednostki</code> dla zmiennych o numerze "..i.." jest niezgodna z podanymi parametrami pudełkowymi.</li>") ); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - niezgodne parametry pudełkowe"); end; else return "tak"; end; end; end; if(not czy_ze_szczegolami)then return "";end; end; local num=frame.args["nazwy jednostki numerowane"]; if(parametry_modul.CzyTak(num))then AnalizujDane(0); local maksymalny_numer_elementu_nienazwanego=frame.args["maksymalny numer argumentu nienazwanego"]; local czy_maksymalny_numer_elementu_nienazwanego=parametry_modul.CzyTak(maksymalny_numer_elementu_nienazwanego); local num2; if(czy_maksymalny_numer_elementu_nienazwanego)then num2=tonumber(maksymalny_numer_elementu_nienazwanego) or 0; else num2=0; end; local minimum_z_numerem_dodatkowego_warunku,maksimum_z_numerem_dodatkowego_warunku=parametry_modul.MinimalnyIMaksymalnyNumerParametru(frame.args,"nazwa jednostki"); maksimum_z_numerem_dodatkowego_warunku=math.max(maksimum_z_numerem_dodatkowego_warunku,parametry_modul.MaksymalnaLiczbaParametruNienazwanegoTablicy(pf.args)); if(pf.args["cel"])then maksimum_z_numerem_dodatkowego_warunku=math.max(1,maksimum_z_numerem_dodatkowego_warunku);end; minimum_z_numerem_dodatkowego_warunku=math.min(minimum_z_numerem_dodatkowego_warunku,parametry_modul.MinimalnaLiczbaParametruNienazwanegoTablicy(pf.args)); if(pf.args["cel"])then minimum_z_numerem_dodatkowego_warunku=math.min(1,minimum_z_numerem_dodatkowego_warunku);end; if(czy_maksymalny_numer_elementu_nienazwanego)then if(num2>0)then if(maksimum_z_numerem_dodatkowego_warunku>0)then if(minimum_z_numerem_dodatkowego_warunku>num2)then maksimum_z_numerem_dodatkowego_warunku=0; elseif(maksimum_z_numerem_dodatkowego_warunku>=num2)then for i=num2,1,-1 do local wartosc_parametru=(((i>1)and frame.args["nazwa jednostki "..tostring(i)])or ((i==1)and (frame.args["nazwa jednostki 1"] or frame.args["nazwa jednostki"]))or ((i==1)and(pf.args["cel"])) or pf.args[i]); if(wartosc_parametru)then maksimum_z_numerem_dodatkowego_warunku=i; break; end; end; end; end; end; end; local tabelka_braku_zmiennych={}; for i=1,maksimum_z_numerem_dodatkowego_warunku,1 do local wartosc_parametru=(((i>1)and frame.args["nazwa jednostki "..tostring(i)])or ((i==1)and (frame.args["nazwa jednostki 1"] or frame.args["nazwa jednostki"]))or ((i==1)and(pf.args["cel"])) or pf.args[i]); if(not wartosc_parametru)then if(czy_ze_szczegolami)then tabelka_braku_zmiennych[#tabelka_braku_zmiennych+1]=i; else return "tak"; end; else local wynik=AnalizujDane(i); if((not czy_ze_szczegolami)and(wynik~=""))then return wynik;end; end; end; if(czy_ze_szczegolami)then if(parametry_modul["CzySąElementyNumerowaneTablicy"](tabelka_braku_zmiennych))then local str_braku_parametru=""; for i,wartosc in ipairs(tabelka_braku_zmiennych)do str_braku_parametru=str_braku_parametru..((str_braku_parametru=="")and "" or ((tabelka_braku_zmiennych[i+1])and ", " or " i "))..wartosc; end; table.insert(lancuch_bledow,"<li>Brak parametrów o numerach: "..str_braku_parametru..", w obsługiwanym zakresie zmiennych.</li>"); if(zkategoria)then parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - brak parametrów"); end; end; end; else local wynik=AnalizujDane(0); if((not czy_ze_szczegolami)and(wynik~=""))then return wynik;end; end; --local lancuch_kategorii_bledow_zlaczony=table.concat(lancuch_kategorii_bledow,""); local minimum_z_numerem_dodatkowego_warunku,maksimum_z_numerem_dodatkowego_warunku=parametry_modul.MinimalnyIMaksymalnyNumerParametru(frame.args,"dodatkowy warunek"); for i=minimum_z_numerem_dodatkowego_warunku, maksimum_z_numerem_dodatkowego_warunku,1 do local wartosc_parametru=(i>1)and frame.args["dodatkowy warunek "..i] or ((i==1)and frame.args["dodatkowy warunek 1"] or frame.args["dodatkowy warunek"]); if(parametry_modul.CzyTak(wartosc_parametru))then if(czy_ze_szczegolami)then local bledy_dodatkowego_warunku=frame.args["błędy dodatkowego warunku "..i]; if(parametry_modul.CzyTak(bledy_dodatkowego_warunku))then local bledy_w_postaci_kategorii="<li>"..bledy_dodatkowego_warunku.."</li>"; table.insert(lancuch_bledow,bledy_dodatkowego_warunku); if(zkategoria)then local bledy_w_postaci_kategorii=frame.args["dodatek kategorii błędu dodatkowego warunku "..i]; if(parametry_modul.CzyTak(bledy_w_postaci_kategorii))then local bledy_w_postaci_kategorii="{{pierwszy człon kategorii błędu}} - "..bledy_w_postaci_kategorii; parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,bledy_w_postaci_kategorii); else parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - błędne wywołania"); end; end; else table.insert(lancuch_bledow,"<li>Błąd wywołania szablonu.</li>"); if(zkategoria)then local bledy_w_postaci_kategorii=frame.args["dodatek kategorii błędu dodatkowego warunku"]; if(parametry_modul.CzyTak(bledy_w_postaci_kategorii))then local bledy_w_postaci_kategorii="{{pierwszy człon kategorii błędu}} - "..bledy_w_postaci_kategorii; parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,bledy_w_postaci_kategorii); else parametry_modul.DodajElementDoZbioru(tablica_lancuch_kategorii_bledow,"{{pierwszy człon kategorii błędu}} - błędne wywołania"); end; end; end; else return "tak"; end; end; end; if(not czy_ze_szczegolami)then return "";end; local templates={}; --templates["{{Category}}"]="Category"; local lancuch_kategorii_bledow_zlaczony2=""; local minimum_z_numerem_dodatkowego_warunku,maksimum_z_numerem_dodatkowego_warunku=parametry_modul.MinimalnyIMaksymalnyNumerParametru(frame.args,"pierwszy człon kategorii błędu"); if(#tablica_lancuch_kategorii_bledow>0)then local wszystkie_bledy={}; --wszystkie_bledy[1]="Szablon"; for i=minimum_z_numerem_dodatkowego_warunku,maksimum_z_numerem_dodatkowego_warunku,1 do local pierwszy_czlon_kategorii_bledow=(i>1)and frame.args["pierwszy człon kategorii błędu "..i] or (frame.args["pierwszy człon kategorii błędu "..1] or frame.args["pierwszy człon kategorii błędu"] ); templates["{{pierwszy człon kategorii błędu}}"]=pierwszy_czlon_kategorii_bledow; for _,kategoria in ipairs(tablica_lancuch_kategorii_bledow) do parametry_modul.DodajElementDoZbioru(wszystkie_bledy,mw.ustring.gsub(kategoria,"{{[%w%s]+}}",templates)); end; end; --lancuch_kategorii_bledow_zlaczony2=string.gsub(lancuch_kategorii_bledow_zlaczony2,"%[%[Category:","{{#invoke:Ramka|Szablon|parametry funkcji modułu pudełek=tak|Nazwa=Kategoria|"); --lancuch_kategorii_bledow_zlaczony2=string.gsub(lancuch_kategorii_bledow_zlaczony2,"%]%]","}}"); wszystkie_bledy["parametry podstawowe funkcji modułu pudełek"]="tak"; wszystkie_bledy["Nazwa"]="Kategorie"; local frame2=frame:getParent():newChild{title="#invoke:Ramka",args=wszystkie_bledy,}; local ramka_modul=require("Module:Ramka"); lancuch_kategorii_bledow_zlaczony2=ramka_modul["Szablon"](frame2); end; local lancuch=table.concat(lancuch_bledow,"")..lancuch_kategorii_bledow_zlaczony2; if(lancuch~="")then lancuch="<ul>"..lancuch.."</ul>";end; return lancuch; end; function p.Cecha_kontenerowa_szablonowa(frame,__funkcja) local parametry_modul=require("Module:Parametry"); local parametry_pudelka=frame:getParent().args["parametry pudełka"] if(parametry_modul.CzyTak(parametry_pudelka))then return require("Module:Pudełko/ParametryCechy")["Parametry ogólnego pudełka"](frame,__funkcja); end; local funkcja=frame.args["funkcja cechowania"]; if(not parametry_modul.CzyTak(funkcja))then funkcja=__funkcja;end; local modul=frame.args["moduł"]; if(not parametry_modul.CzyTak(modul))then modul="Pudełko";end; local cecha=require("Module:"..modul)[funkcja](frame); return cecha; end; function p.Generalny_kontener_szablonowy(frame) local pf=frame.getParent and frame:getParent() or {args={}}; local parametry_modul=require("Module:Parametry"); local parametry_pudelka=pf.args["parametry pudełka"] if(parametry_modul.CzyTak(parametry_pudelka))then return frame.args["cecha"] or ""; end; local alternatywny_szablon=frame.args["alternatywny szablon"]; if(parametry_modul.CzyTak(alternatywny_szablon))then return alternatywny_szablon; end local cecha; local bez_bledu=parametry_modul.CzyTak(frame.args["bez błędu"] or pf.args["bez błędu"]); local czy_ogolne_pudelko; if(not bez_bledu)then cecha=frame.args["cecha"] or ""; czy_ogolne_pudelko=(cecha=="");else czy_ogolne_pudelko=true;end; if(czy_ogolne_pudelko)then local warunek_niealternatywnego_wywolania=frame.args["warunek niealternatywnego wywołania"]; if((warunek_niealternatywnego_wywolania)and(warunek_niealternatywnego_wywolania==""))then local alternatywne_wywolanie=frame.args["alternatywne wywołanie"]; if(alternatywne_wywolanie)then return alternatywne_wywolanie; end; end; end; local szablon=frame.args["szablon"]; local pudelko;local grafika;local grafika_prawo;local typ;local ponizej;local styl_tekstu;local styl_ponizej; local nazwa_przestrzeni_nazw=frame.args["nazwa przestrzeni nazw"]; local komunikat=frame.args["własny komunikat"]; local szablon2=(parametry_modul.CzyTak(szablon)) and szablon or require("Module:Nazwy")["NAZWASTRONY"](pf:getTitle()); local czy_komunikat=parametry_modul.CzyTak(komunikat); local funkcja_komunikatu; local wynik_komunikatu; local tekst; local klasa;local styl; if(czy_komunikat)then local modul=frame.args["moduł"]; if(not parametry_modul.CzyTak(modul))then modul="Pudełko";end; funkcja_komunikatu=require("Module:"..modul)[komunikat]; if(funkcja_komunikatu)then wynik_komunikatu=funkcja_komunikatu(frame); end; end; if(czy_ogolne_pudelko)then local wybor=frame.args["wybór"]; local czy_wybor=parametry_modul.CzyTak(wybor); pudelko=(czy_wybor and frame.args["nazwa "..wybor] or frame.args["nazwa"]) or "mbox"; grafika=czy_wybor and frame.args["grafika "..wybor] or frame.args["grafika"]; grafika_prawo=czy_wybor and frame.args["grafika prawo "..wybor] or frame.args["grafika prawo"]; typ=czy_wybor and frame.args["typ "..wybor] or frame.args["typ"]; typ=parametry_modul.CzyTak(typ) and typ or "zawartość"; tekst=czy_wybor and (frame.args["tekst "..wybor] or frame.args["treść "..wybor]) or (frame.args["tekst"] or frame.args["treść"]) or ""; local parametry=czy_wybor and frame.args["parametry "..wybor] or frame.args["parametry"] or ""; klasa=czy_wybor and frame.args["klasa "..wybor] or frame.args["klasa"]; styl=czy_wybor and frame.args["styl "..wybor] or frame.args["styl"]; styl_tekstu=czy_wybor and frame.args["styl tekstu "..wybor] or frame.args["styl tekstu"]; styl_ponizej=czy_wybor and frame.args["styl poniżej "..wybor] or frame.args["styl poniżej"]; local kategorie=czy_wybor and frame.args["kategorie "..wybor] or frame.args["kategorie"] or ""; ponizej=czy_wybor and frame.args["poniżej "..wybor] or frame.args["poniżej"]; tekst=tekst..parametry..kategorie; else pudelko="ombox"; grafika="poważny"; typ="poważny"; local czy_ze_szczegolami=not parametry_modul.CzyTak(frame.args["bez szczegółów"] or pf.args["bez szczegółów"]); if(czy_ze_szczegolami)then tekst="'''Szablon ".."{{[[Template:"..szablon2.."|"..szablon2.."]]}} zgłosił następujące błędy:'''"..cecha; else tekst="Szablon '''".."{{[[Template:"..szablon2.."|"..szablon2.."]]}}''' jest w stanie błędu, popraw parametry szablonu!"; end; end; local argumenty={ ["klasa"]=klasa, ["styl"]=styl, ["nazwa przestrzeni nazw"]=nazwa_przestrzeni_nazw, ["typ"]=typ, ["grafika"]=grafika, ["grafika prawo"]=grafika_prawo, ["styl tekstu"]=styl_tekstu, ["tekst"]=(czy_komunikat) and ((funkcja_komunikatu)and wynik_komunikatu or tekst)or tekst, ["poniżej"]=ponizej, ["styl poniżej"]=styl_ponizej, }; return pf:expandTemplate{title=pudelko,args=argumenty}; end; return p; 22t2vkpaujgeugdvqh63m8haa1d9k6a Zioła i przyprawy 0 63445 540825 540739 2026-04-26T12:47:04Z EdytaT 2664 /* Kompozycje przyprawowe */ 540825 wikitext text/x-wiki {{status|-25%|Kulinaria|Zielarstwo}} {{Rozdział|Podręcznik|Zioła i przyprawy}} <small>< [[Zioła i przyprawy/Okładka|Okładka]]</small> {{FormularzWejścia|typ=search|szerokość=40|przestrzenie=(Główna)**|przedrostek=Zioła i przyprawy|szukaj=Szukaj|przerwa=no|zastępczy=Wyszukaj}} == Spis treści == === Zioła i przyprawy === # [[Zioła i przyprawy/Kolendra|Kolendra]] # [[Zioła i przyprawy/Krwiściąg|Krwiściąg]] # [[Zioła i przyprawy/Liść laurowy|Liść laurowy]] === Kompozycje przyprawowe === # [[Zioła i przyprawy/Bouquet garni|Bouquet garni]] # [[Zioła i przyprawy/Curry|Curry]] # [[Zioła i przyprawy/Masala|Masala]] # [[Zioła i przyprawy/Swańska sól|Swańska sól]] # [[Zioła i przyprawy/Zioła do zielonego sosu frankfurckiego|Zioła do zielonego sosu frankfurckiego]] # [[Zioła i przyprawy/Zioła prowansalskie|Zioła prowansalskie]] === Przyprawianie zup === ==== Barszcz ==== * Jako podstawowe przyprawy do klasycznego barszczu czerwonego zaraz na początku gotowania daj [[Zioła i przyprawy/Liść laurowy|liść laurowy]], [[Zioła i przyprawy/Ziele angielskie|ziele angielskie]] i [[Zioła i przyprawy/Pieprz czarny|czarny pieprz]] w ziarnach. * Kilka [[Zioła i przyprawy/Suszone grzyby|suszonych grzybów]] nada głębszy smak. * [[Zioła i przyprawy/Majeranek|Majeranek]] dodaj pod koniec gotowania, by nie zrobił się gorzki. * [[Zioła i przyprawy/Cukier|Szczypta cukru]], trochę [[Zioła i przyprawy/Miód|miodu]] wzbogacą smak. * Charakterystyczną kwaskowatość otrzymasz dodając trochę kiszonych buraków albo [[Zioła i przyprawy/Ocet|octu jabłkowego]] lub odrobiny soku z [[Zioła i przyprawy/Jabłko|jabłka]] lub [[Zioła i przyprawy/Cytryna|cytryny]]. Zakwaszaj na koniec gotowania, po odcedzeniu warzyw, by barszcz nie stracił koloru. * Jeżeli lubisz, to możesz dodać [[Zioła i przyprawy/Lubczyk|lubczyk]], [[Zioła i przyprawy/Goździki|goździki]], [[Zioła i przyprawy/Kminek|kminek]], a odrobina [[Zioła i przyprawy/Chili|chili]] zaostrzy smak. == [[Zioła i przyprawy/Słowniczek|Słowniczek]] == == [[Zioła i przyprawy/Bibliografia|Bibliografia]] == 9e6b71cgh6zq100tx5l3ko8ci6ek48y Wikipedysta:Persino/Moduły/Pudełko/Tom I 2 63479 540822 540789 2026-04-26T12:34:04Z Persino 2851 /* {{Code|p["Nazwa przedmiotowej przestrzeni nazw 3"](frame,...)}} */ 540822 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Code|p.CzyNiepoprawnaNazwa(nazwa_jednostki)}} == Funkcja sprawdzajaca, czy jest poprawnie podana nazwa jednostki, czy ma poprawną nazwę. Znakami tymi, z których nie powinna składać się nazwa jest {{Code|<nowiki>{}<>|[]#\n</nowiki>}} i dodatkowo znak {{Code|&#127;}} (kod {{Code|{{Nowiki|&#127;}}}}). Też nie może składać się z trzech znaków tyldy, tzn. {{Code|<nowiki>~~~</nowiki>}}. Również w swojej budowie nie może składać się ze kodów {{Strong|HTML}} literowych o wzorze {{Code|{{Nowiki|&(%a+);}}}}. Natomiast może składać się z {{Code|{{Nowiki|&#(%d+);}}}} i {{Code|{{Nowiki|&#x(%x+);}}}}, ale w pierw te kody muszą być zamienione na normalne znaki. Skrótowa definicja funkcji: <syntaxhighlight lang="lua"> function p.CzyNiepoprawnaNazwa(nazwa_jednostki)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Moduł: "Moduł:Html/dane", służy do ładowania znaku o kodzie HTML "&#127;"; local html_dane_modul=mw.loadData("Module:Html/dane"); return mw.ustring.match(nazwa_jednostki,"[{}<>|%[%]#\n"..html_dane_modul.znak_127.."]+") or mw.ustring.match(nazwa_jednostki,"~~~") or mw.ustring.match(nazwa_jednostki,"&(%a+);"); </syntaxhighlight> Parametry: * {{Code|nazwa_jednostki}} - nazwa jednostki do sprawdzenia. Przykłady: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); -- Podana przykładowa niepoprawna nazwa jedostki local nazwa_jednostki="Nazwa pliku [[Nazwa linku w pliku]]"; -- Funkcja zwróci wartość: local czy_poprawna_nazwa=true; local czy_poprawna_nazwa=pudelko_modul.CzyNiepoprawnaNazwa(nazwa_jednostki); </syntaxhighlight> == Funkcje nazw przestrzeni nazw == === {{Code|p["Nazwa przestrzeni nazw"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,0, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 2=Szablon|nazwa przestrzeni nazw i=Moduł}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Moduł"; --> <!-- Czyli wynik: --> Moduł <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń programowa, którą również jest "Szablon"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw i=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw=Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, czy dyskusji, ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw przedmiotową na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,1, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu}}}} - ta nazwa domyślna zostanie zamieniona na przedmiotową, a jak ona by była przedmiotowa, to żadnej zamiany, by nie było, a jeśli nazwa uzyskana z nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli ta nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Dyskusja Wikibooks|nazwa przestrzeni nazw 2=Dyskusja szablonu|nazwa przestrzeni nazw i=Dyskusja modułu}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Dyskusja modułu"; --> <!-- Czyli wynik: --> Moduł <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń przedmiotowa programowa przestrzeni dyskusji "Dyskusja modułu", którą również jest "Szablon" jego przestrzeni dyskusji "Dyskusja szablonu", a dla ich przestrzeni przedmiotowej, zamiast dyskusji, to samo przekształca się na to samo; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2=Dyskusja szablonu|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw i=Dyskusja szablonu|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw=Dyskusja szablonu|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, ale wtedy ta sama nazwa przestrzeni nazw reprezentowana przez typ jednostki jest zamieniony na nazwę przestrzeni przedmiotową, lepiej jest tutaj używać parametrów przestrzennych nazw niż typu jednostki. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Tutaj parametr dyskusji typu jednostki bazowy i numerkowy ogólny, czy szczegółowy, nie gra roli, bo nawet, gdy wygenerujemy nazwę przestrzeni dyskusji za pomoca tego parametru, to i tak otrzymamy na samym końcu jego nazwę przedmiotową. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przestrzeni nazw dyskusji"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na dyskusji, czyli identyfikator przestrzeni się zmienia jeden wyżej, a dyskusji, nie przedmiotową, przekształca się na tą samą), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,2, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon}}}} - ta nazwa domyślna zostanie przekształcona na dyskusji, a jeżeli ona by była dyskusji, to nie byłoby żadnego przekształcenia, a jeśli nazwa uzyskana nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 2=Szablon|nazwa przestrzeni nazw i=Moduł}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Moduł"; --> <!-- Czyli wynik: --> Dyskusja modułu <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń dyskusji przestrzeni programowej przestrzeni przedmiotowej "Moduł", którą również jest "Szablon" jego przestrzeni dyskusji "Dyskusja szablonu", a dla ich przestrzeni dyskusji, zamiast przedmiotowej, to samo przekształca się na to samo; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw i=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw=Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale wtedy nazwa przestrzeni nazw reprezentowana przez {{Parametr|typ jednostki 2|strona szablonu}}, jest zamieniana na nazwę przestrzeni nazw dyskusji. Parametr dyskusji typu jednostki bazowy lub dla danego numerka ogólny, czy szczegółowy, nie gra roli. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. == Funkcje nazw przestrzeni nazw drugiej wersji == === {{Code|p["Nazwa przestrzeni nazw 2"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw, jeżeli z parametrów przestrzennych przestrzeń wskazuje na główną, to wtedy jest liczona przestrzeń nazw z nazwy jednostki; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon}}}}, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw i{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw i=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, czy dyskusji ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych po przekształceniu na przedmiotową może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"przedmiotowa"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Szablon}}}}, nazwa domyślna zostanie zamieniona na przedmiotową, a jeżeli jest już taka, to żadnej zamiany nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja szablonu:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw i{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw i=Dyskusja|nazwa jednostki 2=Dyskusja szablonu:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, ale można użyć parametru dyskusji typu jednostki z wartością niepustą, pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw przedmiotowej. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę dyskusji nazwy przestrzenie nazw, czyli nie przedmiotowej, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a przedmiotową, nie dyskusji, przekształca się na dyskusji jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zwiększa się o numer więcej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych po przekształceniu może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw dyskusji z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa dyskusji przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"dyskusja"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon}}}}, nazwa domyślna zostanie zamieniona na dyskusji, a jeżeli jest już taka, to nie ma takiej zamiany, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale dyskusji projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw i{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw i=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale można użyć parametru dyskusji typu jednostki z obojętnie jaką wartością niepustą, czy pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. == Funkcje nazw przestrzeni nazw trzeciej wersji == === {{Code|p["Nazwa przestrzeni nazw 3"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|Nazwa przestrzeni nazw 3}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon}}}}, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|Nazwa przestrzeni nazw 3}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Szablon:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> <!-- wynik pusty --> <!-- Widzimy, że wygenerowała się: nazwa przestrzeni nazw, którą jest przestrzeń nazw główna, jest ciągiem pustym: ""; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw=Moja przestrzeń|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Wikibooks:Strona}|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw 2=Moja przestrzeń|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe lub dyskusji, ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw 3"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przedmiotowej przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przedmiotowej przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw przedmiotową na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,liczba_numeru_jednostki,nil,1); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu}}}} - ta nazwa domyślna zostanie zamieniona na przedmiotową, a jak ona by była przedmiotowa, to żadnej zamiany by nie było, a nazwa uzyskana z nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli ta nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna,jest to numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> <!-- wynik pusty --> <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nazw główna, jest ciągiem pustym: ""; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw=Moja przestrzeń||nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw 2=Moja przestrzeń||nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzeni przedmiotowe, ale wtedy ta sama nazwa przestrzeni nazw reprezentowana przez {{Parametr|typ jednostki 2|strona szablonu}}, jest zamieniana na to samo, lepiej jest tutaj używać parametrów przestrzennych nazw niż typu jednostki. Tutaj parametr dyskusji typu jednostki bazowy i numerkowy ogólny, czy szczegółowy, nie gra roli, bo nawet, gdy wygenerujemy nazwę przestrzeni dyskusji za pomoca tego parametru, to i tak otrzymamy na samym końcu jego nazwę przedmiotową. Jeżeli typ jednostki bazowy wskazuje na przestrzeń nazw główną, wtedy się nie liczą parametry nazw jednostek, a w przypadku numerkowego, wtedy się liczy. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przestrzeni nazw dyskusji 3"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę dyskusji nazwy przestrzenie nazw, czyli nie przedmiotowej, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a przedmiotową, nie dyskusji, przekształca się na dyskusji jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zwiększa się o numer więcej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,liczba_numeru_jednostki,nil,1); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon}}}}, nazwa domyślna zostatnie zamieniona na dyskusji, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Szablon:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> Dyskusja <!-- Widzimy, że wygenerowała się: nazwa przestrzeni nazw, którą jest przestrzeń nazw niegłówna, jest ciągiem niepustym; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw=Moja przestrzeń|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw 2=Moja przestrzeń|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale można użyć parametru dyskusji typu jednostki z obojętnie jaką wartością niepustą, czy pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki bazowy wskazuje na przestrzeń nazw główną, wtedy się nie liczą parametry nazw jednostek, a w przypadku numerkowego, wtedy się liczy. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. == Funkcje nazw jednostki == === {{Code|p["Nazwa jednostki"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, podaną w parametrach z: {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerkowanych: {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, nawet gdyby ona była z przestrzenią nazw; return pudelko_pomocne_modul.Nazwa_jednostki(frame,i); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_jednostki(frame,i)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},... Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje nazw jednostki drugiej wersji == === {{Code|p["Nazwa jednostki 2"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających, w pozostałych przypadkach ona działa, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń główną; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,nil); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa przedmiotowa jednostki 2"](frame,i)}} === Funkcja pisze przedmiotową nazwę jednostki na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Co to znaczy przedmiotowa nazwa jednostki, tzn. gdy parametry przestrzenne wskazują na przestrzeń głównej i „Dyskusja”, wtedy ona zostanie zamieniona na przestrzeń główną, i wtedy jest liczona nazwa strony bez przestrzeni nazw z nazwy jednostki. W pozostałych przypadkach funkcja działa jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowa jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń nazw główną i "Dyskusji"; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"przedmiotowa"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja szablonu|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja szablonu|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja szablonu|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa dyskusji jednostki 2"](frame,i)}} === Funkcja pisze nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Co to znaczy nazwa jednostki dyskusji, tzn. gdy parametry przestrzenne wskazują na przestrzeń główną, to wtedy ona nie jest zamieniana na „Dyskusja”, i wtedy jest liczona nazwa strony bez przestrzeni nazw z nazwy jednostki. W pozostałych przypadkach funkcja działa dla jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa dyskusji jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń nazw główną; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"dyskusja"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje nazw jednostki trzeciej wersji == === {{Code|p["Nazwa jednostki 3"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} , tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki 3}} ---- {{#invoke:Pudełko|Nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona <!-- nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa przedmiotowa jednostki 3"](frame,i)}} === Funkcja pisze nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowa jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona <!-- nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa dyskusji jednostki 3"](frame,i)}} === Funkcja pisze nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa dyskusji jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona <!-- nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> kx5fahqmt5vdmy3g27ipcb5v157ac9m 540823 540822 2026-04-26T12:36:36Z Persino 2851 /* {{Code|p["Nazwa przedmiotowa jednostki 3"](frame,i)}} */ 540823 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Code|p.CzyNiepoprawnaNazwa(nazwa_jednostki)}} == Funkcja sprawdzajaca, czy jest poprawnie podana nazwa jednostki, czy ma poprawną nazwę. Znakami tymi, z których nie powinna składać się nazwa jest {{Code|<nowiki>{}<>|[]#\n</nowiki>}} i dodatkowo znak {{Code|&#127;}} (kod {{Code|{{Nowiki|&#127;}}}}). Też nie może składać się z trzech znaków tyldy, tzn. {{Code|<nowiki>~~~</nowiki>}}. Również w swojej budowie nie może składać się ze kodów {{Strong|HTML}} literowych o wzorze {{Code|{{Nowiki|&(%a+);}}}}. Natomiast może składać się z {{Code|{{Nowiki|&#(%d+);}}}} i {{Code|{{Nowiki|&#x(%x+);}}}}, ale w pierw te kody muszą być zamienione na normalne znaki. Skrótowa definicja funkcji: <syntaxhighlight lang="lua"> function p.CzyNiepoprawnaNazwa(nazwa_jednostki)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Moduł: "Moduł:Html/dane", służy do ładowania znaku o kodzie HTML "&#127;"; local html_dane_modul=mw.loadData("Module:Html/dane"); return mw.ustring.match(nazwa_jednostki,"[{}<>|%[%]#\n"..html_dane_modul.znak_127.."]+") or mw.ustring.match(nazwa_jednostki,"~~~") or mw.ustring.match(nazwa_jednostki,"&(%a+);"); </syntaxhighlight> Parametry: * {{Code|nazwa_jednostki}} - nazwa jednostki do sprawdzenia. Przykłady: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); -- Podana przykładowa niepoprawna nazwa jedostki local nazwa_jednostki="Nazwa pliku [[Nazwa linku w pliku]]"; -- Funkcja zwróci wartość: local czy_poprawna_nazwa=true; local czy_poprawna_nazwa=pudelko_modul.CzyNiepoprawnaNazwa(nazwa_jednostki); </syntaxhighlight> == Funkcje nazw przestrzeni nazw == === {{Code|p["Nazwa przestrzeni nazw"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,0, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 2=Szablon|nazwa przestrzeni nazw i=Moduł}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Moduł"; --> <!-- Czyli wynik: --> Moduł <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń programowa, którą również jest "Szablon"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw i=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw=Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, czy dyskusji, ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw przedmiotową na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,1, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu}}}} - ta nazwa domyślna zostanie zamieniona na przedmiotową, a jak ona by była przedmiotowa, to żadnej zamiany, by nie było, a jeśli nazwa uzyskana z nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli ta nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Dyskusja Wikibooks|nazwa przestrzeni nazw 2=Dyskusja szablonu|nazwa przestrzeni nazw i=Dyskusja modułu}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Dyskusja modułu"; --> <!-- Czyli wynik: --> Moduł <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń przedmiotowa programowa przestrzeni dyskusji "Dyskusja modułu", którą również jest "Szablon" jego przestrzeni dyskusji "Dyskusja szablonu", a dla ich przestrzeni przedmiotowej, zamiast dyskusji, to samo przekształca się na to samo; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2=Dyskusja szablonu|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw i=Dyskusja szablonu|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw=Dyskusja szablonu|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, ale wtedy ta sama nazwa przestrzeni nazw reprezentowana przez typ jednostki jest zamieniony na nazwę przestrzeni przedmiotową, lepiej jest tutaj używać parametrów przestrzennych nazw niż typu jednostki. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Tutaj parametr dyskusji typu jednostki bazowy i numerkowy ogólny, czy szczegółowy, nie gra roli, bo nawet, gdy wygenerujemy nazwę przestrzeni dyskusji za pomoca tego parametru, to i tak otrzymamy na samym końcu jego nazwę przedmiotową. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przestrzeni nazw dyskusji"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na dyskusji, czyli identyfikator przestrzeni się zmienia jeden wyżej, a dyskusji, nie przedmiotową, przekształca się na tą samą), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,2, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon}}}} - ta nazwa domyślna zostanie przekształcona na dyskusji, a jeżeli ona by była dyskusji, to nie byłoby żadnego przekształcenia, a jeśli nazwa uzyskana nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 2=Szablon|nazwa przestrzeni nazw i=Moduł}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Moduł"; --> <!-- Czyli wynik: --> Dyskusja modułu <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń dyskusji przestrzeni programowej przestrzeni przedmiotowej "Moduł", którą również jest "Szablon" jego przestrzeni dyskusji "Dyskusja szablonu", a dla ich przestrzeni dyskusji, zamiast przedmiotowej, to samo przekształca się na to samo; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw i=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw=Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale wtedy nazwa przestrzeni nazw reprezentowana przez {{Parametr|typ jednostki 2|strona szablonu}}, jest zamieniana na nazwę przestrzeni nazw dyskusji. Parametr dyskusji typu jednostki bazowy lub dla danego numerka ogólny, czy szczegółowy, nie gra roli. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. == Funkcje nazw przestrzeni nazw drugiej wersji == === {{Code|p["Nazwa przestrzeni nazw 2"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw, jeżeli z parametrów przestrzennych przestrzeń wskazuje na główną, to wtedy jest liczona przestrzeń nazw z nazwy jednostki; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon}}}}, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw i{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw i=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, czy dyskusji ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych po przekształceniu na przedmiotową może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"przedmiotowa"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Szablon}}}}, nazwa domyślna zostanie zamieniona na przedmiotową, a jeżeli jest już taka, to żadnej zamiany nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja szablonu:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw i{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw i=Dyskusja|nazwa jednostki 2=Dyskusja szablonu:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, ale można użyć parametru dyskusji typu jednostki z wartością niepustą, pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw przedmiotowej. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę dyskusji nazwy przestrzenie nazw, czyli nie przedmiotowej, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a przedmiotową, nie dyskusji, przekształca się na dyskusji jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zwiększa się o numer więcej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych po przekształceniu może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw dyskusji z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa dyskusji przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"dyskusja"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon}}}}, nazwa domyślna zostanie zamieniona na dyskusji, a jeżeli jest już taka, to nie ma takiej zamiany, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale dyskusji projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw i{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw i=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale można użyć parametru dyskusji typu jednostki z obojętnie jaką wartością niepustą, czy pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. == Funkcje nazw przestrzeni nazw trzeciej wersji == === {{Code|p["Nazwa przestrzeni nazw 3"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|Nazwa przestrzeni nazw 3}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon}}}}, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|Nazwa przestrzeni nazw 3}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Szablon:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> <!-- wynik pusty --> <!-- Widzimy, że wygenerowała się: nazwa przestrzeni nazw, którą jest przestrzeń nazw główna, jest ciągiem pustym: ""; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw=Moja przestrzeń|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Wikibooks:Strona}|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw 2=Moja przestrzeń|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe lub dyskusji, ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw 3"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przedmiotowej przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przedmiotowej przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw przedmiotową na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,liczba_numeru_jednostki,nil,1); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu}}}} - ta nazwa domyślna zostanie zamieniona na przedmiotową, a jak ona by była przedmiotowa, to żadnej zamiany by nie było, a nazwa uzyskana z nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli ta nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna,jest to numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> <!-- wynik pusty --> <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nazw główna, jest ciągiem pustym: ""; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw=Moja przestrzeń||nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw 2=Moja przestrzeń||nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzeni przedmiotowe, ale wtedy ta sama nazwa przestrzeni nazw reprezentowana przez {{Parametr|typ jednostki 2|strona szablonu}}, jest zamieniana na to samo, lepiej jest tutaj używać parametrów przestrzennych nazw niż typu jednostki. Tutaj parametr dyskusji typu jednostki bazowy i numerkowy ogólny, czy szczegółowy, nie gra roli, bo nawet, gdy wygenerujemy nazwę przestrzeni dyskusji za pomoca tego parametru, to i tak otrzymamy na samym końcu jego nazwę przedmiotową. Jeżeli typ jednostki bazowy wskazuje na przestrzeń nazw główną, wtedy się nie liczą parametry nazw jednostek, a w przypadku numerkowego, wtedy się liczy. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przestrzeni nazw dyskusji 3"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę dyskusji nazwy przestrzenie nazw, czyli nie przedmiotowej, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a przedmiotową, nie dyskusji, przekształca się na dyskusji jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zwiększa się o numer więcej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,liczba_numeru_jednostki,nil,1); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon}}}}, nazwa domyślna zostatnie zamieniona na dyskusji, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Szablon:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> Dyskusja <!-- Widzimy, że wygenerowała się: nazwa przestrzeni nazw, którą jest przestrzeń nazw niegłówna, jest ciągiem niepustym; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw=Moja przestrzeń|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw 2=Moja przestrzeń|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale można użyć parametru dyskusji typu jednostki z obojętnie jaką wartością niepustą, czy pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki bazowy wskazuje na przestrzeń nazw główną, wtedy się nie liczą parametry nazw jednostek, a w przypadku numerkowego, wtedy się liczy. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. == Funkcje nazw jednostki == === {{Code|p["Nazwa jednostki"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, podaną w parametrach z: {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerkowanych: {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, nawet gdyby ona była z przestrzenią nazw; return pudelko_pomocne_modul.Nazwa_jednostki(frame,i); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_jednostki(frame,i)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},... Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje nazw jednostki drugiej wersji == === {{Code|p["Nazwa jednostki 2"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających, w pozostałych przypadkach ona działa, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń główną; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,nil); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa przedmiotowa jednostki 2"](frame,i)}} === Funkcja pisze przedmiotową nazwę jednostki na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Co to znaczy przedmiotowa nazwa jednostki, tzn. gdy parametry przestrzenne wskazują na przestrzeń głównej i „Dyskusja”, wtedy ona zostanie zamieniona na przestrzeń główną, i wtedy jest liczona nazwa strony bez przestrzeni nazw z nazwy jednostki. W pozostałych przypadkach funkcja działa jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowa jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń nazw główną i "Dyskusji"; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"przedmiotowa"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja szablonu|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja szablonu|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja szablonu|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa dyskusji jednostki 2"](frame,i)}} === Funkcja pisze nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Co to znaczy nazwa jednostki dyskusji, tzn. gdy parametry przestrzenne wskazują na przestrzeń główną, to wtedy ona nie jest zamieniana na „Dyskusja”, i wtedy jest liczona nazwa strony bez przestrzeni nazw z nazwy jednostki. W pozostałych przypadkach funkcja działa dla jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa dyskusji jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń nazw główną; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"dyskusja"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje nazw jednostki trzeciej wersji == === {{Code|p["Nazwa jednostki 3"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} , tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki 3}} ---- {{#invoke:Pudełko|Nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona <!-- nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa przedmiotowa jednostki 3"](frame,i)}} === Funkcja pisze nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną, czy „Dyskusja”), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowa jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona <!-- nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa dyskusji jednostki 3"](frame,i)}} === Funkcja pisze nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa dyskusji jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona <!-- nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> k5x22uamtird78u8h1f6oky6ml6p4oi 540824 540823 2026-04-26T12:41:44Z Persino 2851 540824 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Code|p.CzyNiepoprawnaNazwa(nazwa_jednostki)}} == Funkcja sprawdzajaca, czy jest poprawnie podana nazwa jednostki, czy ma poprawną nazwę. Znakami tymi, z których nie powinna składać się nazwa jest {{Code|<nowiki>{}<>|[]#\n</nowiki>}} i dodatkowo znak {{Code|&#127;}} (kod {{Code|{{Nowiki|&#127;}}}}). Też nie może składać się z trzech znaków tyldy, tzn. {{Code|<nowiki>~~~</nowiki>}}. Również w swojej budowie nie może składać się ze kodów {{Strong|HTML}} literowych o wzorze {{Code|{{Nowiki|&(%a+);}}}}. Natomiast może składać się z {{Code|{{Nowiki|&#(%d+);}}}} i {{Code|{{Nowiki|&#x(%x+);}}}}, ale w pierw te kody muszą być zamienione na normalne znaki. Skrótowa definicja funkcji: <syntaxhighlight lang="lua"> function p.CzyNiepoprawnaNazwa(nazwa_jednostki)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Moduł: "Moduł:Html/dane", służy do ładowania znaku o kodzie HTML "&#127;"; local html_dane_modul=mw.loadData("Module:Html/dane"); return mw.ustring.match(nazwa_jednostki,"[{}<>|%[%]#\n"..html_dane_modul.znak_127.."]+") or mw.ustring.match(nazwa_jednostki,"~~~") or mw.ustring.match(nazwa_jednostki,"&(%a+);"); </syntaxhighlight> Parametry: * {{Code|nazwa_jednostki}} - nazwa jednostki do sprawdzenia. Przykłady: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); -- Podana przykładowa niepoprawna nazwa jedostki local nazwa_jednostki="Nazwa pliku [[Nazwa linku w pliku]]"; -- Funkcja zwróci wartość: local czy_poprawna_nazwa=true; local czy_poprawna_nazwa=pudelko_modul.CzyNiepoprawnaNazwa(nazwa_jednostki); </syntaxhighlight> == Funkcje nazw przestrzeni nazw == === {{Code|p["Nazwa przestrzeni nazw"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,0, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 2=Szablon|nazwa przestrzeni nazw i=Moduł}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Moduł"; --> <!-- Czyli wynik: --> Moduł <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń programowa, którą również jest "Szablon"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw i=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw=Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, czy dyskusji, ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw przedmiotową na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,1, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu}}}} - ta nazwa domyślna zostanie zamieniona na przedmiotową, a jak ona by była przedmiotowa, to żadnej zamiany, by nie było, a jeśli nazwa uzyskana z nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli ta nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Dyskusja Wikibooks|nazwa przestrzeni nazw 2=Dyskusja szablonu|nazwa przestrzeni nazw i=Dyskusja modułu}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Dyskusja modułu"; --> <!-- Czyli wynik: --> Moduł <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń przedmiotowa programowa przestrzeni dyskusji "Dyskusja modułu", którą również jest "Szablon" jego przestrzeni dyskusji "Dyskusja szablonu", a dla ich przestrzeni przedmiotowej, zamiast dyskusji, to samo przekształca się na to samo; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2=Dyskusja szablonu|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw i=Dyskusja szablonu|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw=Dyskusja szablonu|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, ale wtedy ta sama nazwa przestrzeni nazw reprezentowana przez typ jednostki jest zamieniony na nazwę przestrzeni przedmiotową, lepiej jest tutaj używać parametrów przestrzennych nazw niż typu jednostki. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Tutaj parametr dyskusji typu jednostki bazowy i numerkowy ogólny, czy szczegółowy, nie gra roli, bo nawet, gdy wygenerujemy nazwę przestrzeni dyskusji za pomoca tego parametru, to i tak otrzymamy na samym końcu jego nazwę przedmiotową. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przestrzeni nazw dyskusji"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na dyskusji, czyli identyfikator przestrzeni się zmienia jeden wyżej, a dyskusji, nie przedmiotową, przekształca się na tą samą), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,2, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon}}}} - ta nazwa domyślna zostanie przekształcona na dyskusji, a jeżeli ona by była dyskusji, to nie byłoby żadnego przekształcenia, a jeśli nazwa uzyskana nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 2=Szablon|nazwa przestrzeni nazw i=Moduł}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Moduł"; --> <!-- Czyli wynik: --> Dyskusja modułu <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń dyskusji przestrzeni programowej przestrzeni przedmiotowej "Moduł", którą również jest "Szablon" jego przestrzeni dyskusji "Dyskusja szablonu", a dla ich przestrzeni dyskusji, zamiast przedmiotowej, to samo przekształca się na to samo; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw i=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw=Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale wtedy nazwa przestrzeni nazw reprezentowana przez {{Parametr|typ jednostki 2|strona szablonu}}, jest zamieniana na nazwę przestrzeni nazw dyskusji. Parametr dyskusji typu jednostki bazowy lub dla danego numerka ogólny, czy szczegółowy, nie gra roli. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. == Funkcje nazw przestrzeni nazw drugiej wersji == === {{Code|p["Nazwa przestrzeni nazw 2"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw, jeżeli z parametrów przestrzennych przestrzeń wskazuje na główną, to wtedy jest liczona przestrzeń nazw z nazwy jednostki; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon}}}}, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw i{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw i=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, czy dyskusji ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych po przekształceniu na przedmiotową może odpowiadać wartości przestrzeni głównej (wtedy to odpowiada przestrzeni głównej, czy „Dyskusja”), to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"przedmiotowa"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Szablon}}}}, nazwa domyślna zostanie zamieniona na przedmiotową, a jeżeli jest już taka, to żadnej zamiany nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja szablonu:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw i{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw i=Dyskusja|nazwa jednostki 2=Dyskusja szablonu:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, ale można użyć parametru dyskusji typu jednostki z wartością niepustą, pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw przedmiotowej. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę dyskusji nazwy przestrzenie nazw, czyli nie przedmiotowej, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a przedmiotową, nie dyskusji, przekształca się na dyskusji jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zwiększa się o numer więcej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych po przekształceniu może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw dyskusji z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa dyskusji przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"dyskusja"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon}}}}, nazwa domyślna zostanie zamieniona na dyskusji, a jeżeli jest już taka, to nie ma takiej zamiany, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale dyskusji projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw i{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw i=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale można użyć parametru dyskusji typu jednostki z obojętnie jaką wartością niepustą, czy pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. == Funkcje nazw przestrzeni nazw trzeciej wersji == === {{Code|p["Nazwa przestrzeni nazw 3"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|Nazwa przestrzeni nazw 3}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon}}}}, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|Nazwa przestrzeni nazw 3}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Szablon:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> <!-- wynik pusty --> <!-- Widzimy, że wygenerowała się: nazwa przestrzeni nazw, którą jest przestrzeń nazw główna, jest ciągiem pustym: ""; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw=Moja przestrzeń|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Wikibooks:Strona}|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw 2=Moja przestrzeń|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe lub dyskusji, ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw 3"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przedmiotowej, po transformacji, przestrzeni głównej (to odpowiada przestrzeni głównej, czy „Dyskusja”), to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości, po przekształceniu, przedmiotowej przestrzeni głównej (okresla to przestrzeń nazw główną lub „Dyskusja”), to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw przedmiotową na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,liczba_numeru_jednostki,nil,1); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu}}}} - ta nazwa domyślna zostanie zamieniona na przedmiotową, a jak ona by była przedmiotowa, to żadnej zamiany by nie było, a nazwa uzyskana z nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli ta nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna,jest to numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> <!-- wynik pusty --> <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nazw główna, jest ciągiem pustym: ""; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw=Moja przestrzeń||nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw 2=Moja przestrzeń||nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzeni przedmiotowe, ale wtedy ta sama nazwa przestrzeni nazw reprezentowana przez {{Parametr|typ jednostki 2|strona szablonu}}, jest zamieniana na to samo, lepiej jest tutaj używać parametrów przestrzennych nazw niż typu jednostki. Tutaj parametr dyskusji typu jednostki bazowy i numerkowy ogólny, czy szczegółowy, nie gra roli, bo nawet, gdy wygenerujemy nazwę przestrzeni dyskusji za pomoca tego parametru, to i tak otrzymamy na samym końcu jego nazwę przedmiotową. Jeżeli typ jednostki bazowy wskazuje na przestrzeń nazw główną, wtedy się nie liczą parametry nazw jednostek, a w przypadku numerkowego, wtedy się liczy. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przestrzeni nazw dyskusji 3"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę dyskusji nazwy przestrzenie nazw, czyli nie przedmiotowej, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a przedmiotową, nie dyskusji, przekształca się na dyskusji jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zwiększa się o numer więcej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,liczba_numeru_jednostki,nil,1); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon}}}}, nazwa domyślna zostatnie zamieniona na dyskusji, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Szablon:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> Dyskusja <!-- Widzimy, że wygenerowała się: nazwa przestrzeni nazw, którą jest przestrzeń nazw niegłówna, jest ciągiem niepustym; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw=Moja przestrzeń|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw 2=Moja przestrzeń|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale można użyć parametru dyskusji typu jednostki z obojętnie jaką wartością niepustą, czy pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki bazowy wskazuje na przestrzeń nazw główną, wtedy się nie liczą parametry nazw jednostek, a w przypadku numerkowego, wtedy się liczy. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. == Funkcje nazw jednostki == === {{Code|p["Nazwa jednostki"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, podaną w parametrach z: {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerkowanych: {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, nawet gdyby ona była z przestrzenią nazw; return pudelko_pomocne_modul.Nazwa_jednostki(frame,i); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_jednostki(frame,i)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},... Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje nazw jednostki drugiej wersji == === {{Code|p["Nazwa jednostki 2"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających, w pozostałych przypadkach ona działa, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń główną; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,nil); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa przedmiotowa jednostki 2"](frame,i)}} === Funkcja pisze przedmiotową nazwę jednostki na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Co to znaczy przedmiotowa nazwa jednostki, tzn. gdy parametry przestrzenne wskazują na przestrzeń głównej i „Dyskusja”, wtedy ona zostanie zamieniona na przestrzeń główną, i wtedy jest liczona nazwa strony bez przestrzeni nazw z nazwy jednostki. W pozostałych przypadkach funkcja działa jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowa jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń nazw główną i "Dyskusji"; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"przedmiotowa"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja szablonu|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja szablonu|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja szablonu|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa dyskusji jednostki 2"](frame,i)}} === Funkcja pisze nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Co to znaczy nazwa jednostki dyskusji, tzn. gdy parametry przestrzenne wskazują na przestrzeń główną, to wtedy ona nie jest zamieniana na „Dyskusja”, i wtedy jest liczona nazwa strony bez przestrzeni nazw z nazwy jednostki. W pozostałych przypadkach funkcja działa dla jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa dyskusji jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń nazw główną; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"dyskusja"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje nazw jednostki trzeciej wersji == === {{Code|p["Nazwa jednostki 3"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} , tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki 3}} ---- {{#invoke:Pudełko|Nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona <!-- nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa przedmiotowa jednostki 3"](frame,i)}} === Funkcja pisze nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną, czy „Dyskusja”), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowa jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona <!-- nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa dyskusji jednostki 3"](frame,i)}} === Funkcja pisze nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa dyskusji jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona <!-- nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> irxev28p1t228k4takyo03pkhyckozm 540826 540824 2026-04-26T12:48:54Z Persino 2851 /* {{Code|p["Nazwa przedmiotowa jednostki 2"](frame,i)}} */ 540826 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Code|p.CzyNiepoprawnaNazwa(nazwa_jednostki)}} == Funkcja sprawdzajaca, czy jest poprawnie podana nazwa jednostki, czy ma poprawną nazwę. Znakami tymi, z których nie powinna składać się nazwa jest {{Code|<nowiki>{}<>|[]#\n</nowiki>}} i dodatkowo znak {{Code|&#127;}} (kod {{Code|{{Nowiki|&#127;}}}}). Też nie może składać się z trzech znaków tyldy, tzn. {{Code|<nowiki>~~~</nowiki>}}. Również w swojej budowie nie może składać się ze kodów {{Strong|HTML}} literowych o wzorze {{Code|{{Nowiki|&(%a+);}}}}. Natomiast może składać się z {{Code|{{Nowiki|&#(%d+);}}}} i {{Code|{{Nowiki|&#x(%x+);}}}}, ale w pierw te kody muszą być zamienione na normalne znaki. Skrótowa definicja funkcji: <syntaxhighlight lang="lua"> function p.CzyNiepoprawnaNazwa(nazwa_jednostki)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Moduł: "Moduł:Html/dane", służy do ładowania znaku o kodzie HTML "&#127;"; local html_dane_modul=mw.loadData("Module:Html/dane"); return mw.ustring.match(nazwa_jednostki,"[{}<>|%[%]#\n"..html_dane_modul.znak_127.."]+") or mw.ustring.match(nazwa_jednostki,"~~~") or mw.ustring.match(nazwa_jednostki,"&(%a+);"); </syntaxhighlight> Parametry: * {{Code|nazwa_jednostki}} - nazwa jednostki do sprawdzenia. Przykłady: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); -- Podana przykładowa niepoprawna nazwa jedostki local nazwa_jednostki="Nazwa pliku [[Nazwa linku w pliku]]"; -- Funkcja zwróci wartość: local czy_poprawna_nazwa=true; local czy_poprawna_nazwa=pudelko_modul.CzyNiepoprawnaNazwa(nazwa_jednostki); </syntaxhighlight> == Funkcje nazw przestrzeni nazw == === {{Code|p["Nazwa przestrzeni nazw"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,0, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 2=Szablon|nazwa przestrzeni nazw i=Moduł}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Moduł"; --> <!-- Czyli wynik: --> Moduł <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń programowa, którą również jest "Szablon"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw i=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw=Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, czy dyskusji, ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw przedmiotową na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,1, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu}}}} - ta nazwa domyślna zostanie zamieniona na przedmiotową, a jak ona by była przedmiotowa, to żadnej zamiany, by nie było, a jeśli nazwa uzyskana z nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli ta nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Dyskusja Wikibooks|nazwa przestrzeni nazw 2=Dyskusja szablonu|nazwa przestrzeni nazw i=Dyskusja modułu}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Dyskusja modułu"; --> <!-- Czyli wynik: --> Moduł <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń przedmiotowa programowa przestrzeni dyskusji "Dyskusja modułu", którą również jest "Szablon" jego przestrzeni dyskusji "Dyskusja szablonu", a dla ich przestrzeni przedmiotowej, zamiast dyskusji, to samo przekształca się na to samo; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2=Dyskusja szablonu|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw i=Dyskusja szablonu|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw=Dyskusja szablonu|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, ale wtedy ta sama nazwa przestrzeni nazw reprezentowana przez typ jednostki jest zamieniony na nazwę przestrzeni przedmiotową, lepiej jest tutaj używać parametrów przestrzennych nazw niż typu jednostki. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Tutaj parametr dyskusji typu jednostki bazowy i numerkowy ogólny, czy szczegółowy, nie gra roli, bo nawet, gdy wygenerujemy nazwę przestrzeni dyskusji za pomoca tego parametru, to i tak otrzymamy na samym końcu jego nazwę przedmiotową. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przestrzeni nazw dyskusji"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na dyskusji, czyli identyfikator przestrzeni się zmienia jeden wyżej, a dyskusji, nie przedmiotową, przekształca się na tą samą), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,2, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon}}}} - ta nazwa domyślna zostanie przekształcona na dyskusji, a jeżeli ona by była dyskusji, to nie byłoby żadnego przekształcenia, a jeśli nazwa uzyskana nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 2=Szablon|nazwa przestrzeni nazw i=Moduł}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Moduł"; --> <!-- Czyli wynik: --> Dyskusja modułu <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń dyskusji przestrzeni programowej przestrzeni przedmiotowej "Moduł", którą również jest "Szablon" jego przestrzeni dyskusji "Dyskusja szablonu", a dla ich przestrzeni dyskusji, zamiast przedmiotowej, to samo przekształca się na to samo; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw i=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw=Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale wtedy nazwa przestrzeni nazw reprezentowana przez {{Parametr|typ jednostki 2|strona szablonu}}, jest zamieniana na nazwę przestrzeni nazw dyskusji. Parametr dyskusji typu jednostki bazowy lub dla danego numerka ogólny, czy szczegółowy, nie gra roli. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. == Funkcje nazw przestrzeni nazw drugiej wersji == === {{Code|p["Nazwa przestrzeni nazw 2"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw, jeżeli z parametrów przestrzennych przestrzeń wskazuje na główną, to wtedy jest liczona przestrzeń nazw z nazwy jednostki; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon}}}}, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw i{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw i=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, czy dyskusji ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych po przekształceniu na przedmiotową może odpowiadać wartości przestrzeni głównej (wtedy to odpowiada przestrzeni głównej, czy „Dyskusja”), to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"przedmiotowa"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Szablon}}}}, nazwa domyślna zostanie zamieniona na przedmiotową, a jeżeli jest już taka, to żadnej zamiany nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja szablonu:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw i{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw i=Dyskusja|nazwa jednostki 2=Dyskusja szablonu:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, ale można użyć parametru dyskusji typu jednostki z wartością niepustą, pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw przedmiotowej. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę dyskusji nazwy przestrzenie nazw, czyli nie przedmiotowej, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a przedmiotową, nie dyskusji, przekształca się na dyskusji jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zwiększa się o numer więcej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych po przekształceniu może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw dyskusji z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa dyskusji przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"dyskusja"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon}}}}, nazwa domyślna zostanie zamieniona na dyskusji, a jeżeli jest już taka, to nie ma takiej zamiany, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale dyskusji projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw i{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw i=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale można użyć parametru dyskusji typu jednostki z obojętnie jaką wartością niepustą, czy pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. == Funkcje nazw przestrzeni nazw trzeciej wersji == === {{Code|p["Nazwa przestrzeni nazw 3"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|Nazwa przestrzeni nazw 3}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon}}}}, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|Nazwa przestrzeni nazw 3}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Szablon:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> <!-- wynik pusty --> <!-- Widzimy, że wygenerowała się: nazwa przestrzeni nazw, którą jest przestrzeń nazw główna, jest ciągiem pustym: ""; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw=Moja przestrzeń|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Wikibooks:Strona}|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw 2=Moja przestrzeń|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe lub dyskusji, ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw 3"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przedmiotowej, po transformacji, przestrzeni głównej (to odpowiada przestrzeni głównej, czy „Dyskusja”), to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości, po przekształceniu, przedmiotowej przestrzeni głównej (okresla to przestrzeń nazw główną lub „Dyskusja”), to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw przedmiotową na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,liczba_numeru_jednostki,nil,1); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu}}}} - ta nazwa domyślna zostanie zamieniona na przedmiotową, a jak ona by była przedmiotowa, to żadnej zamiany by nie było, a nazwa uzyskana z nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli ta nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna,jest to numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> <!-- wynik pusty --> <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nazw główna, jest ciągiem pustym: ""; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw=Moja przestrzeń||nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw 2=Moja przestrzeń||nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzeni przedmiotowe, ale wtedy ta sama nazwa przestrzeni nazw reprezentowana przez {{Parametr|typ jednostki 2|strona szablonu}}, jest zamieniana na to samo, lepiej jest tutaj używać parametrów przestrzennych nazw niż typu jednostki. Tutaj parametr dyskusji typu jednostki bazowy i numerkowy ogólny, czy szczegółowy, nie gra roli, bo nawet, gdy wygenerujemy nazwę przestrzeni dyskusji za pomoca tego parametru, to i tak otrzymamy na samym końcu jego nazwę przedmiotową. Jeżeli typ jednostki bazowy wskazuje na przestrzeń nazw główną, wtedy się nie liczą parametry nazw jednostek, a w przypadku numerkowego, wtedy się liczy. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przestrzeni nazw dyskusji 3"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę dyskusji nazwy przestrzenie nazw, czyli nie przedmiotowej, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a przedmiotową, nie dyskusji, przekształca się na dyskusji jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zwiększa się o numer więcej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,liczba_numeru_jednostki,nil,1); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon}}}}, nazwa domyślna zostatnie zamieniona na dyskusji, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Szablon:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> Dyskusja <!-- Widzimy, że wygenerowała się: nazwa przestrzeni nazw, którą jest przestrzeń nazw niegłówna, jest ciągiem niepustym; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw=Moja przestrzeń|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw 2=Moja przestrzeń|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale można użyć parametru dyskusji typu jednostki z obojętnie jaką wartością niepustą, czy pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki bazowy wskazuje na przestrzeń nazw główną, wtedy się nie liczą parametry nazw jednostek, a w przypadku numerkowego, wtedy się liczy. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. == Funkcje nazw jednostki == === {{Code|p["Nazwa jednostki"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, podaną w parametrach z: {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerkowanych: {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, nawet gdyby ona była z przestrzenią nazw; return pudelko_pomocne_modul.Nazwa_jednostki(frame,i); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_jednostki(frame,i)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},... Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje nazw jednostki drugiej wersji == === {{Code|p["Nazwa jednostki 2"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających, w pozostałych przypadkach ona działa, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń główną; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,nil); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa przedmiotowa jednostki 2"](frame,i)}} === Funkcja pisze przedmiotową nazwę jednostki na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Co to znaczy przedmiotowa nazwa jednostki, tzn. gdy parametry przestrzenne wskazują na przestrzeń głównej i „Dyskusja”, wtedy ona zostanie zamieniona na przestrzeń główną, i wtedy jest liczona nazwa strony bez przestrzeni nazw z nazwy jednostki. W pozostałych przypadkach funkcja działa jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa, po zamianie, nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną, czy „Dyskusja”), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowa jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń nazw główną i "Dyskusji"; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"przedmiotowa"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja szablonu|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja szablonu|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja szablonu|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa dyskusji jednostki 2"](frame,i)}} === Funkcja pisze nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Co to znaczy nazwa jednostki dyskusji, tzn. gdy parametry przestrzenne wskazują na przestrzeń główną, to wtedy ona nie jest zamieniana na „Dyskusja”, i wtedy jest liczona nazwa strony bez przestrzeni nazw z nazwy jednostki. W pozostałych przypadkach funkcja działa dla jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa dyskusji jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń nazw główną; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"dyskusja"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje nazw jednostki trzeciej wersji == === {{Code|p["Nazwa jednostki 3"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} , tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki 3}} ---- {{#invoke:Pudełko|Nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona <!-- nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa przedmiotowa jednostki 3"](frame,i)}} === Funkcja pisze nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną, czy „Dyskusja”), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowa jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona <!-- nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa dyskusji jednostki 3"](frame,i)}} === Funkcja pisze nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa dyskusji jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona <!-- nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 75y6xsqbhlpdvkkr40nyhbrhh8wlmo2 540830 540826 2026-04-26T13:42:04Z Persino 2851 540830 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Code|p.CzyNiepoprawnaNazwa(nazwa_jednostki)}} == Funkcja sprawdzajaca, czy jest poprawnie podana nazwa jednostki, czy ma poprawną nazwę. Znakami tymi, z których nie powinna składać się nazwa jest {{Code|<nowiki>{}<>|[]#\n</nowiki>}} i dodatkowo znak {{Code|&#127;}} (kod {{Code|{{Nowiki|&#127;}}}}). Też nie może składać się z trzech znaków tyldy, tzn. {{Code|<nowiki>~~~</nowiki>}}. Również w swojej budowie nie może składać się ze kodów {{Strong|HTML}} literowych o wzorze {{Code|{{Nowiki|&(%a+);}}}}. Natomiast może składać się z {{Code|{{Nowiki|&#(%d+);}}}} i {{Code|{{Nowiki|&#x(%x+);}}}}, ale w pierw te kody muszą być zamienione na normalne znaki. Skrótowa definicja funkcji: <syntaxhighlight lang="lua"> function p.CzyNiepoprawnaNazwa(nazwa_jednostki)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Moduł: "Moduł:Html/dane", służy do ładowania znaku o kodzie HTML "&#127;"; local html_dane_modul=mw.loadData("Module:Html/dane"); return mw.ustring.match(nazwa_jednostki,"[{}<>|%[%]#\n"..html_dane_modul.znak_127.."]+") or mw.ustring.match(nazwa_jednostki,"~~~") or mw.ustring.match(nazwa_jednostki,"&(%a+);"); </syntaxhighlight> Parametry: * {{Code|nazwa_jednostki}} - nazwa jednostki do sprawdzenia. Przykłady: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); -- Podana przykładowa niepoprawna nazwa jedostki local nazwa_jednostki="Nazwa pliku [[Nazwa linku w pliku]]"; -- Funkcja zwróci wartość: local czy_poprawna_nazwa=true; local czy_poprawna_nazwa=pudelko_modul.CzyNiepoprawnaNazwa(nazwa_jednostki); </syntaxhighlight> == Funkcje nazw przestrzeni nazw == === {{Code|p["Nazwa przestrzeni nazw"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,0, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 2=Szablon|nazwa przestrzeni nazw i=Moduł}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Moduł"; --> <!-- Czyli wynik: --> Moduł <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń programowa, którą również jest "Szablon"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw i=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw|nazwa przestrzeni nazw=Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, czy dyskusji, ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw przedmiotową na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,1, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu}}}} - ta nazwa domyślna zostanie zamieniona na przedmiotową, a jak ona by była przedmiotowa, to żadnej zamiany, by nie było, a jeśli nazwa uzyskana z nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli ta nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Dyskusja Wikibooks|nazwa przestrzeni nazw 2=Dyskusja szablonu|nazwa przestrzeni nazw i=Dyskusja modułu}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Dyskusja modułu"; --> <!-- Czyli wynik: --> Moduł <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń przedmiotowa programowa przestrzeni dyskusji "Dyskusja modułu", którą również jest "Szablon" jego przestrzeni dyskusji "Dyskusja szablonu", a dla ich przestrzeni przedmiotowej, zamiast dyskusji, to samo przekształca się na to samo; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|Dyskusja szablonu|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2=Dyskusja szablonu|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw i=Dyskusja szablonu|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw{{=}}Dyskusja szablonu|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw|nazwa przestrzeni nazw=Dyskusja szablonu|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, ale wtedy ta sama nazwa przestrzeni nazw reprezentowana przez typ jednostki jest zamieniony na nazwę przestrzeni przedmiotową, lepiej jest tutaj używać parametrów przestrzennych nazw niż typu jednostki. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Tutaj parametr dyskusji typu jednostki bazowy i numerkowy ogólny, czy szczegółowy, nie gra roli, bo nawet, gdy wygenerujemy nazwę przestrzeni dyskusji za pomoca tego parametru, to i tak otrzymamy na samym końcu jego nazwę przedmiotową. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przestrzeni nazw dyskusji"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na dyskusji, czyli identyfikator przestrzeni się zmienia jeden wyżej, a dyskusji, nie przedmiotową, przekształca się na tą samą), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw(frame,2, czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon}}}} - ta nazwa domyślna zostanie przekształcona na dyskusji, a jeżeli ona by była dyskusji, to nie byłoby żadnego przekształcenia, a jeśli nazwa uzyskana nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 2=Szablon|nazwa przestrzeni nazw i=Moduł}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która nie została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki=1}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="Moduł"; --> <!-- Czyli wynik: --> Dyskusja modułu <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń dyskusji przestrzeni programowej przestrzeni przedmiotowej "Moduł", którą również jest "Szablon" jego przestrzeni dyskusji "Dyskusja szablonu", a dla ich przestrzeni dyskusji, zamiast przedmiotowej, to samo przekształca się na to samo; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw 2{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw i=Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw{{=}}Szablon|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji|nazwa przestrzeni nazw=Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale wtedy nazwa przestrzeni nazw reprezentowana przez {{Parametr|typ jednostki 2|strona szablonu}}, jest zamieniana na nazwę przestrzeni nazw dyskusji. Parametr dyskusji typu jednostki bazowy lub dla danego numerka ogólny, czy szczegółowy, nie gra roli. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. == Funkcje nazw przestrzeni nazw drugiej wersji == === {{Code|p["Nazwa przestrzeni nazw 2"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw, jeżeli z parametrów przestrzennych przestrzeń wskazuje na główną, to wtedy jest liczona przestrzeń nazw z nazwy jednostki; return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_2(frame,czy_uwzglednic_alternatywna_nazwe,i) </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon}}}}, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw i{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|nazwa przestrzeni nazw i=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 2|Szablon|nazwa przestrzeni nazw=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, czy dyskusji ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych po przekształceniu na przedmiotową może odpowiadać wartości przestrzeni głównej (wtedy to odpowiada przestrzeni głównej, czy „Dyskusja”), to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"przedmiotowa"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Szablon}}}}, nazwa domyślna zostanie zamieniona na przedmiotową, a jeżeli jest już taka, to żadnej zamiany nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja szablonu:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw i{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|nazwa przestrzeni nazw i=Dyskusja|nazwa jednostki 2=Dyskusja szablonu:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|Dyskusja szablonu|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Dyskusja szablonu:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe, ale można użyć parametru dyskusji typu jednostki z wartością niepustą, pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw przedmiotowej. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę dyskusji nazwy przestrzenie nazw, czyli nie przedmiotowej, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a przedmiotową, nie dyskusji, przekształca się na dyskusji jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zwiększa się o numer więcej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych po przekształceniu może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw dyskusji z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa dyskusji przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); return pudelko_pomocne_modul.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,czy_uwzglednic_alternatywna_nazwe,i,"dyskusja"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_przestrzeni_nazw_przedmiotowa_dyskusji_2(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon}}}}, nazwa domyślna zostanie zamieniona na dyskusji, a jeżeli jest już taka, to nie ma takiej zamiany, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale dyskusji projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw i{{=}}Moja przestrzeń|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw i=Moja przestrzeń|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw i{{=}}|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|nazwa przestrzeni nazw i=|nazwa jednostki 2=Szablon:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 2|Szablon|nazwa przestrzeni nazw=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 2|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale można użyć parametru dyskusji typu jednostki z obojętnie jaką wartością niepustą, czy pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki wskazuje na przestrzeń nazw główną, wtedy się liczą parametry nazw jednostek. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. == Funkcje nazw przestrzeni nazw trzeciej wersji == === {{Code|p["Nazwa przestrzeni nazw 3"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw, niezależnie, czy to jest przedmiotowa, czy dyskusji, według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|Nazwa przestrzeni nazw 3}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon}}}}, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to brany jest ten element, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|Nazwa przestrzeni nazw 3}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Szablon:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> <!-- wynik pusty --> <!-- Widzimy, że wygenerowała się: nazwa przestrzeni nazw, którą jest przestrzeń nazw główna, jest ciągiem pustym: ""; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw=Moja przestrzeń|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Wikibooks:Strona}|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|Szablon|nazwa przestrzeni nazw 2=Moja przestrzeń|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw 3|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie przedmiotowe lub dyskusji, ale można lub nie użyć parametru dyskusji typu jednostki z wartością niepustą, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. === {{Code|p["Nazwa przedmiotowej przestrzeni nazw 3"](frame,...)}} === Funkcja pisze przedmiotową nazwę przestrzeni nazw jakikolwiek nazwy przestrzeni nazw (tzn. nazwę przedmiotową nazwy przestrzenie nazw, czyli nie dyskusji, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a dyskusji, nie przedmiotową, przekształca się na przedmiotową jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zmniejsza się o numer mniej), według podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na przedmiotową. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przedmiotowej, po transformacji, przestrzeni głównej (to odpowiada przestrzeni głównej, czy „Dyskusja”), to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości, po przekształceniu, przedmiotowej przestrzeni głównej (okresla to przestrzeń nazw główną lub „Dyskusja”), to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowej przestrzeni nazw 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw przedmiotową na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,liczba_numeru_jednostki,nil,1); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu}}}} - ta nazwa domyślna zostanie zamieniona na przedmiotową, a jak ona by była przedmiotowa, to żadnej zamiany by nie było, a nazwa uzyskana z nazwy przestrzeni nazw z parametrów przestrzennych jest w takim przypadku błędna, to w takim razie brany jest ten parametr, a jeżeli ta nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna,jest to numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> <!-- wynik pusty --> <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nazw główna, jest ciągiem pustym: ""; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw=Moja przestrzeń||nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|Dyskusja szablonu|nazwa przestrzeni nazw 2=Moja przestrzeń||nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przedmiotowej przestrzeni nazw 3|typ jednostki 2{{=}}strona szablonu|numer jednostki{{=}}2}}}}, ale o tym więcej w rozdziałach {{Code|{{sr|#p["Przedmiotowy typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzeni przedmiotowe, ale wtedy ta sama nazwa przestrzeni nazw reprezentowana przez {{Parametr|typ jednostki 2|strona szablonu}}, jest zamieniana na to samo, lepiej jest tutaj używać parametrów przestrzennych nazw niż typu jednostki. Tutaj parametr dyskusji typu jednostki bazowy i numerkowy ogólny, czy szczegółowy, nie gra roli, bo nawet, gdy wygenerujemy nazwę przestrzeni dyskusji za pomoca tego parametru, to i tak otrzymamy na samym końcu jego nazwę przedmiotową. Jeżeli typ jednostki bazowy wskazuje na przestrzeń nazw główną, wtedy się nie liczą parametry nazw jednostek, a w przypadku numerkowego, wtedy się liczy. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma, to generowane są nazwy na podstawie aktualnego modułu. === {{Code|p["Nazwa przestrzeni nazw dyskusji 3"](frame,...)}} === Funkcja pisze nazwę przestrzeni nazw dyskusji jakikolwiek nazwy przestrzeni nazw (tzn. nazwę dyskusji nazwy przestrzenie nazw, czyli nie przedmiotowej, zamieniana jest na nią samą, czyli identyfikator przestrzeni się nie zmienia, a przedmiotową, nie dyskusji, przekształca się na dyskusji jej odpowiadającą, czyli w tym przypadku identyfikator przestrzeni zwiększa się o numer więcej), według, i nie zawsze tylko, podanej w zmiennej {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. W tej funkcji trzeba też podawać parametry nazwy jednostek {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},..., lub podane w postaci parametrów numerowanych: {{Code|1}}, {{Code|2}},..., dla tego {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}, za pomocą, którego uzyskujemy odpowiedni parametr bazowy lub numerkowy. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Parametry przestrzenne lub ewentualnie z tych jednostek mogą mogą być podane w postaci przestrzeni przedmiotowej lub dyskusji, ale ta funkcja zawsze ją zamienia na dyskusji. Przestrzeń nazw z parametrów nazw przestrzennych bazowych (bez numerka) może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się nie liczy w tej funkcji, aby się liczyła należy użyć funkcji {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. W tym przypadku funkcja działa jak {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}}. Przestrzeń nazw z parametrów nazw przestrzennych numerkowych może odpowiadać wartości przestrzeni głównej, to wtedy odpowiednia przestrzeń nazw z parametru nazwy jednostki się liczy w tej funkcji, wtedy jest liczona nazwa przestrzeni nazw z tego parametru. Gdy parametry przestrzenne lub typ jednostki w drugim podejściu nie wskazują na przestrzeń główną, to wtedy działanie tej funkcji jest podobne do {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przestrzeni nazw dyskusji 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw dyskusji na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,liczba_numeru_jednostki,nil,1); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy przestrzeni nazw dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon}}}}, nazwa domyślna zostatnie zamieniona na dyskusji, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}. * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}}, {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, {{Code|nazwa jednostki 3}},... - nazwy jednostek dla pozycji bazowej i numerkowej, te parametry maja odpowiedniki, nieobecne nigdy w parametrach w ramce dziecka, w parametrach numerkowych, w tym {{Code|cel}} {{=}} {{Code|1}}, a te parametry: {{Code|1}} {{=}} {{Code|nazwa jednostki 1}}, {{Code|2}} {{=}} {{Code|nazwa jednostki 2}}, {{Code|3}} {{=}} {{Code|nazwa jednostki 3}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw=|nazwa przestrzeni nazw i=|nazwa jednostki=Szablon:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw=Wikibooks|nazwa przestrzeni nazw 1=Szablon|nazwa przestrzeni nazw i=|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W pierwszym wywołaniu {{Code|nazwa przestrzeni nazw}} jest puste, ale dla tego bazowego (bez numerka) szukamy przestrzeni nazw, a więc ta nazwa jest ostateczna. ---- W drugim wywołaniu w dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni nazw o numerze dwa, która została podana, ale istnieje za to jej wersji ogólna {{Code|nazwa przestrzeni nazw i}} i domyślna {{Code|nazwa przestrzeni nazw}}, ale wtedy dla tego numerkowego liczy się to ogólne z {{Code| i}}, a ponieważ ta nazwa jest pusta, więc będziemy liczyli nazwę przestrzeni nazw z {{Code|nazwa jednostki 2}}. Odpowiadająca powyższemu kodowi, powiedzmy wikikod, według ich zawartości, przedstawia się: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przestrzeni nazw 3}} ---- {{#invoke:Pudełko|Nazwa przestrzeni nazw 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie, nie wyniku, bo tam nie ma zmiennej {{Code|nazwa przestrzeni nazw 1}}, ale jest {{Code|nazwa przestrzeni nazw i}}: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw=""; --> <!-- Czyli wynik: --> Dyskusja <!-- Widzimy, że wygenerowała się: nazwa przestrzeni nazw, którą jest przestrzeń nazw niegłówna, jest ciągiem niepustym; --> ---- <!-- Ale nie "nazwa przestrzeni nazw 2", bo jej nie ma, ale za to istnieje "nazwa przestrzeni nazw i"; --> <!-- nazwa przestrzeni nazw 2=nazwa przestrzeni nazw i="", a nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks <!-- Widzimy, że wygenerowała się nazwa przestrzeni nazw, którą jest przestrzeń nieprogramowa, ale projektu, wychodząca z nazwy jednostek w tym przypadku z "nazwa jednostki 2"; --> </syntaxhighlight> Dla parametrów numerkowych nie jest brana w tym powyższym przykładzie zmienna {{Code|nazwa przestrzeni nazw 2}}, bo jej nie ma, ale za to jest {{Code|nazwa przestrzeni nazw i}}, bo ona występuje jako parametr domyślny ogólny dla parametrów numerkowych. Tytaj jest używana jest zmienna {{Code|nazwa jednostki 2}} do wygenerowania ostatecznego wyniku, bo jak można zauważyć, parametry przestrzenne wskazują na przestrzeń główną, a nazwy jednostek już nie. Dla parametrów bazowych mamy zmienną {{Code|nazwa przestrzeni nazw}}, ona jest pusta, więc to zostanie wzięte do ostatecznego wyniku. Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw{{=}}Moja przestrzeń|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw=Moja przestrzeń|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw 2{{=}}Moja przestrzeń|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|Szablon|nazwa przestrzeni nazw 2=Moja przestrzeń|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Szablon}}}} * {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przestrzeni nazw dyskusji 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Szablon|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostek, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. Analogicznie możemy podawać parametry typu jednostki, np.: wywołaniu modułowym {{Code|{{m|Pudełko|Nazwa przestrzeni nazw dyskusji 3|typ jednostki 2{{=}}Podręcznik|nazwa jednostki 2{{=}}Szablon:Strona|numer jednostki{{=}}2}}}} (ale wtedy jest brana przestrzeń nazw z nazwy jednostki), ale o tym więcej w rozdziałach {{Code|{{sr|#p["Dyskusyjny typ jednostki 3"](frame,i)|p=Pudełko/Tom I}}}} w „{{sr|#Funkcje typu jednostki|p=Pudełko/Tom I}}”, one definiują dane przestrzenie dyskusji, ale można użyć parametru dyskusji typu jednostki z obojętnie jaką wartością niepustą, czy pustą, czy nawet jej nie podamy, wtedy wyświetli się nazwa przestrzeni nazw dyskusji. Jeżeli typ jednostki bazowy wskazuje na przestrzeń nazw główną, wtedy się nie liczą parametry nazw jednostek, a w przypadku numerkowego, wtedy się liczy. Typ jednostki nie ma takiej samej wartości dla przestrzeni przedmiotowej, co dyskusji. Również parametry typu jednostki nie powinno się podawać w dziecku w ramce, tylko w rodzicu w szablonie jako parametry, w którym ta ramka jest wywoływana, ale tutaj podano jedynie dla przykładu, jak najłatwiej sprawdzić działanie tych parametrów tej funkcji. Najpierw w funkcji nagłówku brane są parametry nazw przestrzeni nazw, a jeżeli ich nie ma, to parametry typu jednostki, a jeżeli nie ma lub parametry przestrzenne wskazują na przestrzeń główną, i nie ma nazwy jednostki, to generowane są nazwy tej funkcji na podstawie aktualnej strony. == Funkcje nazw jednostki == === {{Code|p["Nazwa jednostki"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, podaną w parametrach z: {{Code|nazwa jednostki}} dla tego bazowego, a dla numerkowego: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerkowanych: {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, nawet gdyby ona była z przestrzenią nazw; return pudelko_pomocne_modul.Nazwa_jednostki(frame,i); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Nazwa_jednostki(frame,i)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},... Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje nazw jednostki drugiej wersji == === {{Code|p["Nazwa jednostki 2"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających, w pozostałych przypadkach ona działa, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń główną; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,nil); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa przedmiotowa jednostki 2"](frame,i)}} === Funkcja pisze przedmiotową nazwę jednostki na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Co to znaczy przedmiotowa nazwa jednostki, tzn. gdy parametry przestrzenne wskazują na przestrzeń głównej i „Dyskusja”, wtedy ona zostanie zamieniona na przestrzeń główną, i wtedy jest liczona nazwa strony bez przestrzeni nazw z nazwy jednostki. W pozostałych przypadkach funkcja działa jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa, po zamianie, nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną, czy „Dyskusja”), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowa jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń nazw główną i "Dyskusji"; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"przedmiotowa"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja szablonu|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja szablonu|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja szablonu|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja szablonu|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa dyskusji jednostki 2"](frame,i)}} === Funkcja pisze nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Co to znaczy nazwa jednostki dyskusji, tzn. gdy parametry przestrzenne wskazują na przestrzeń główną, to wtedy ona nie jest zamieniana na „Dyskusja”, i wtedy jest liczona nazwa strony bez przestrzeni nazw z nazwy jednostki. W pozostałych przypadkach funkcja działa dla jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa dyskusji jednostki 2"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczenie nazwy jednostki, bez nazwy przestrzeni w nazwie strony, jeżeli parametry przestrzenne wskazują na przestrzeń nazw główną; return pudelko_pomocne_modul.Jaka_nazwa_jednostki(frame,i,"dyskusja"); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Jaka_nazwa_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje nazw jednostki trzeciej wersji == === {{Code|p["Nazwa jednostki 3"](frame,i)}} === Funkcja pisze nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} , tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa jednostki 3}} ---- {{#invoke:Pudełko|Nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona <!-- nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa przedmiotowa jednostki 3"](frame,i)}} === Funkcja pisze nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy przedmiotowa nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną, czy „Dyskusja”), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa przedmiotowa jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona <!-- nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Nazwa dyskusji jednostki 3"](frame,i)}} === Funkcja pisze nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego podanego w parametrach bazowych z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, podawane tylko w parametrach szablonu rodzica ramki. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak działa, dla parametrów przestrzennych oraz jednostek, bazowych, jak {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, i numerkowych, jak {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli chcemy, aby funkcja liczyła podaną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, niezależnie, czy jest bazowa, czy numerkową, wtedy należy użyć funkcji {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Jeżeli z parametrów przestrzennych wynika przestrzeń główna, to wtedy jest wyznaczana nazwa strony z parametrów jednostek odpowiadających dla parametrów numerkowych. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Nazwa dyskusji jednostki 3"]=function(frame,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> -- Jest liczony numer parametru nazwy przestrzeni nazw, domyslnie chodzi tu o numer bazowy parametrów przestrzennych i jednostek; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numeru_jednostki=((numer_jednostki)and(tonumber(numer_jednostki)) or 0); local pudelko_pomocne_modul=require("Module:Pudełko/Pomocne"); -- Liczy nazwę przestrzeni nazw na podstawie podanych parametrów; return pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,nil,liczba_numeru_jednostki,nil,2); </syntaxhighlight> Funkcja wykorzystuje {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} do wyznaczania ogólnego nazwy jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni, chociaż nie zawsze, tutaj ma znaczenie, bo bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona <!-- nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> q2gu6a20a9ylprx1r98iuu2aoixbj82 Wikipedysta:Persino/Moduły/Pudełko/Tom II 2 63485 540819 540788 2026-04-26T12:28:42Z Persino 2851 /* {{Code|p["Pełna nazwa jednostki 2"](frame,...)}} */ 540819 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == Funkcje pełnych nazw jednostki == === {{Code|p["Pełna nazwa jednostki"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw dyskusji; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja szablonu:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki drugiej wersji == === {{Code|p["Pełna nazwa jednostki 2"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła pełną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa przedmiotowa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa dyskusji jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki trzeciej wersji == === {{Code|p["Pełna nazwa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}} Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona ---- <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy dyskusji jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 94xw48p8gmfznw6a4mq554p8bnqvto2 540820 540819 2026-04-26T12:29:25Z Persino 2851 /* {{Code|p["Pełna nazwa dyskusji jednostki"](frame,...)}} */ 540820 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == Funkcje pełnych nazw jednostki == === {{Code|p["Pełna nazwa jednostki"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw dyskusji; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja szablonu:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki drugiej wersji == === {{Code|p["Pełna nazwa jednostki 2"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła pełną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa przedmiotowa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa dyskusji jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki trzeciej wersji == === {{Code|p["Pełna nazwa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}} Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona ---- <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy dyskusji jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> kz56np6qfgswuekuhiku1fm1z1za09n 540821 540820 2026-04-26T12:30:32Z Persino 2851 /* {{Code|p["Pełna nazwa dyskusji jednostki 2"](frame,...)}} */ 540821 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == Funkcje pełnych nazw jednostki == === {{Code|p["Pełna nazwa jednostki"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw dyskusji; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja szablonu:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki drugiej wersji == === {{Code|p["Pełna nazwa jednostki 2"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła pełną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa przedmiotowa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa dyskusji jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki trzeciej wersji == === {{Code|p["Pełna nazwa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}} Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona ---- <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy dyskusji jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 9bl8yuw3qeo4fnfxny7dq3ur8h9lo76 540827 540821 2026-04-26T13:09:18Z Persino 2851 /* Funkcje pełnych nazw jednostki trzeciej wersji */ 540827 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == Funkcje pełnych nazw jednostki == === {{Code|p["Pełna nazwa jednostki"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw dyskusji; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja szablonu:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki drugiej wersji == === {{Code|p["Pełna nazwa jednostki 2"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła pełną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa przedmiotowa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa dyskusji jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki trzeciej wersji == === {{Code|p["Pełna nazwa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, wtedy dla przestrzeni nazw głównej nazwa przestrzeni z nazwy jednostki się nie liczy, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}, a tutaj się liczy. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, wtedy dla przedmiotowej przestrzeni, po zamianie, nazw głównej (co odpowiada przestrzeni głównej lub „Dyskusja”) nazwa jednostki się nie liczy, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}, a tutaj się liczy. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona ---- <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy dyskusji jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}, wtedy dla przestrzeni nazw głównej nazwa przestrzeni z nazwy jednostki się nie liczy, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}, a tutaj się liczy. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> kg2x10tjo1412dubbklzkk1vruskkih 540828 540827 2026-04-26T13:31:27Z Persino 2851 540828 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == Funkcje pełnych nazw jednostki == === {{Code|p["Pełna nazwa jednostki"](frame,...)}} === Funkcja pisze pełną nazwy jednostek podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek dyskusji podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw dyskusji; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja szablonu:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki drugiej wersji == === {{Code|p["Pełna nazwa jednostki 2"](frame,...)}} === Funkcja pisze pełną nazwy jednostek podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła pełną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa przedmiotowa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa dyskusji jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki trzeciej wersji == === {{Code|p["Pełna nazwa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, wtedy dla przestrzeni nazw głównej nazwa przestrzeni z nazwy jednostki się nie liczy, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}, a tutaj się liczy. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, wtedy dla przedmiotowej przestrzeni, po zamianie, nazw głównej (co odpowiada przestrzeni głównej lub „Dyskusja”) nazwa jednostki się nie liczy, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}, a tutaj się liczy. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona ---- <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy dyskusji jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}, wtedy dla przestrzeni nazw głównej nazwa przestrzeni z nazwy jednostki się nie liczy, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}, a tutaj się liczy. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 6htu0t1jkfdvkgffib9id0nxkm7o6ka 540829 540828 2026-04-26T13:40:39Z Persino 2851 540829 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == Funkcje pełnych nazw jednostki == === {{Code|p["Pełna nazwa jednostki"](frame,...)}} === Funkcja pisze pełną nazwy jednostek podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek dyskusji podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw dyskusji; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa jednostki"](frame,liczba_numer_jednostki); if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Dyskusja szablonu:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki drugiej wersji == === {{Code|p["Pełna nazwa jednostki 2"](frame,...)}} === Funkcja pisze pełną nazwy jednostek podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła pełną nazwę jednostki, niezależnie nawet gdy nazwa przestrzeni jest o wartości pustej (wskazuje na przestrzeń główną), czy nie, wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); local nazwa_jednostki=pudelko_modul["Nazwa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy przedmiotowe jednostek podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o przedmiotowej wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną, czy „Dyskusja”), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przedmiotowej przestrzeni nazw 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa przedmiotowa jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 2"](frame,...)}} === Funkcja pisze pełne nazwy jednostek dyskusji podobnie dla pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Jeżeli chcemy, aby funkcja liczyła prawdziwą pełną nazwę jednostki, nawet gdy nazwa przestrzeni jest o wartości pustej (nazwa przestrzeni nazw wskazuje na przestrzeń główną), wtedy należy użyć funkcji {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 2"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przedmiotową przestrzeni nazw; local nazwa_przestrzeni_nazw=pudelko_modul["Nazwa przestrzeni nazw dyskusji 2"](frame,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki); ---- Liczy nazwę jednostki; local nazwa_jednostki=pudelko_modul["Nazwa dyskusji jednostki 2"](frame,liczba_numer_jednostki); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} (do liczenia nazwy przestrzeni nazw), {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}} (do liczenia nazwy jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przestrzeni nazw i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: false, w której nazwa domyślna nie jest uwzględniana wtedy, oraz nil i true, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Szablon}}}}, nazwa domyślna zostatnie zamieniona na przedmiotową, a jeśli jest już taka, to takiej transfomacji nie ma, a jeśli nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, to wzięty jest ten parametr, a jeżeli nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw{{=}}Dyskusja|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw=Dyskusja|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2{{=}}Dyskusja|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 2|nazwa przestrzeni nazw 2=Dyskusja|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. == Funkcje pełnych nazw jednostki trzeciej wersji == === {{Code|p["Pełna nazwa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, wtedy dla przestrzeni nazw głównej nazwa przestrzeni z nazwy jednostki się nie liczy, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}, a tutaj się liczy. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,0,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa przedmiotowa jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy przedmiotowe jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}}, wtedy dla przedmiotowej przestrzeni, po zamianie, nazw głównej (co odpowiada przestrzeni głównej lub „Dyskusja”) nazwa jednostki się nie liczy, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}, a tutaj się liczy. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa przedmiotowa jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa przedmiotowa jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,1,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przedmiotowej przestrzeni nazw 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa przedmiotowa jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwaa przestrzeni nazw="Szablon", nazwa jednostki="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona ---- <!-- nazwaa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Dyskusja Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Dyskusja Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Dyskusja Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Dyskusja Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Dyskusja Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa przedmiotowa jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Dyskusja Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. === {{Code|p["Pełna nazwa dyskusji jednostki 3"](frame,...)}} === Funkcja pisze pełną nazwy dyskusji jednostek w zależności od pozycji bazowej lub numerkowej, tzn. {{Parametr|numer jednostki}}, na podstawie tego bazowego podanego w parametrach z: {{Code|nazwa jednostki}}, lub tych z numerkiem {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametry numerowane podawane tylko w parametrach rodzica ramki, tzn. {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}. One też są wyznaczane na podstawie {{Code|nazwa przestrzeni nazw}} dla pozycja bazowej, lub dla innej pozycji należy parametr podawać w formie {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., lub te parametry można podać w postaci ogólnej {{Code|nazwa przestrzeni nazw i}}, ale te parametry szczególne mają większą ważność niż ich ta wersja ogólna, a jeżeli nie są one podane dla danej pozycji, to dla pozycji numerkowej liczy się ta wersja bazowa. Parametry podaje się w parametrach rodzica wywołania tej funkcji {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3}}}} (ale ich nie trzeba podawać w dziecku, ale można) i w parametrach dziecka, jeśli chodzi o zmienną {{Code|numer jednostki}}, czyli, np.: {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki{{=}}<jakaś liczba całkowita naturalna>}}}}. Te parametry przestrzenne podawane w rodzicu w szablonie można dać w ramce dziecka, wtedy parametry dziecka mają pierwszeństwo. Ta funkcja nie tak samo działa, dla parametrów przestrzennych oraz jednostek, bazowych i numerkowych. Dla parametrów bazowych działa jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}}, wtedy dla przestrzeni nazw głównej nazwa przestrzeni z nazwy jednostki się nie liczy, a numerkowych jak: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}, a tutaj się liczy. Jeżeli chcemy, aby funkcja liczyła tą samą pełną nazwę jednostki dla parametrów przestrzennych, co bazowych, należy użyć: {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki"](frame,...)|p=Pudełko/Tom II}}}} lub {{Code|{{sr|#p["Pełna nazwa dyskusji jednostki 2"](frame,...)|p=Pudełko/Tom II}}}}. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> p["Pełna nazwa dyskusji jednostki 3"]=function(frame,czy_uwzglednic_alternatywna_nazwe,i)...end; </syntaxhighlight> Wtedy ciało funkcji tej, czyli jego definicja w środku, jest: <syntaxhighlight lang="lua"> ---- Liczenie, które parametry ma uwzględniać, tzn. bazowe, czy numerkowe; local numer_jednostki=i or frame.args["numer jednostki"]; local liczba_numer_jednostki=((numer_jednostki)and(tonumber(numer_jednostki))or 0); local pudelko_modul=require("Module:Pudełko"); ---- Liczy nazwę przestrzeni nazw i nazwę jednostki; local nazwa_przestrzeni_nazw,nazwa_jednostki=pudelko_pomocne_modul.Uzyskanie_nazw_jednostki(frame,2,czy_uwzglednic_alternatywna_nazwe,liczba_numer_jednostki,nil,0); ---- Liczy pełną nazwę jednostki; if(nazwa_przestrzeni_nazw~="")then return nazwa_przestrzeni_nazw..":"..nazwa_jednostki;else return nazwa_jednostki;end; </syntaxhighlight> Funkcja wykorzystuje: {{Code|{{sr|#p.Uzyskanie_nazw_jednostki(frame,...)|p=Pudełko/Pomocne}}}} (do liczenia nazwy przestrzeni nazw i jednostki), co na tej podstawie jest liczona pełna nazwa jednostki, do wyznaczania ogólnego nazwy przzestrzeni i jednostki dla pozycji bazowej i numerkowej, tzn. dla pozycji: jeden, dwa, trzy,..., itd, i ich ogólnej, tzn. według funkcji: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, dla pozycji zerowej. Ta funkcja uruchamia dla parametrów bazowych funkcje: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa jednostki"](frame,i)|p=Pudełko/Tom I}}}}, a dla numerkowych: {{Code|{{sr|#p["Nazwa przestrzeni nazw dyskusji 2"](frame,...)|p=Pudełko/Tom I}}}} i {{Code|{{sr|#p["Nazwa dyskusji jednostki 2"](frame,i)|p=Pudełko/Tom I}}}}. Parametry funkcji: * {{Code|frame}} - tablica ramki tablicy transportu, * {{Code|czy_uwzglednic_alternatywna_nazwe}} - czy ma uwzględniać nazwę przestrzeni nazw domyślną szablonu, dostępne wartości: {{Code|false}}, w której nazwa domyślna nie jest uwzględniana wtedy, oraz {{Code|nil}} i {{Code|true}}, które oznaczają to samo, w tym jeżeli ona jest uwzględniana, wtedy jest brany parametr pierwszy dziecka, który musi istnieć przy takiej wartości tego parametru, tzn. {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Szablon}}}}, a ten element jest używany, gdy nazwa uzyskana nazwy przestrzeni nazw jest w takim przypadku błędna, a jeżeli wtedy nazwa domyślna jest błędna, czyli {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|Moja przestrzeń}}}}, wtedy funkcja zwraca stan błędu {{Code|(błąd)}}, dla tej części tej funkcji wyznaczania nazwy przestrzeni nazw, * {{Code|i}} - numer zmiennej nazwy przestrzeni nazw i nazwy jednostki. Parametr ramki tablicy transportu rodzica szablonu: * {{Code|nazwa przestrzeni nazw}}, {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, {{Code|nazwa przestrzeni nazw 3}},..., {{Code|nazwa przestrzeni nazw i}} - nazwy przestrzeni nazw dla pozycji bazowej oraz zwykłej i ogólnej numerkowej, * {{Code|nazwa jednostki}} - nazwa jednostki bazowa, może być z przestrzenią nazw, * {{Code|nazwa jednostki 1}}, {{Code|cel}} i {{Code|1}}, {{Code|nazwa jednostki 2}} i {{Code|2}}, {{Code|nazwa jednostki 2}} i {{Code|2}},..., * {{Code|typ jednostki}}, {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, {{Code|typ jednostki 3}},..., {{Code|typ jednostki i}} - typy jednostek, którym odpowiadają pewne przestrzenie przedmiotowe, dla pozycji bazowej, numerkowej i ogólnej, ** {{Code|dyskusja typu jednostki}}, {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typ jednostki 2}}, {{Code|dyskusja typ jednostki 3}},..., {{Code|dyskusja typ jednostki i}} - czy dany typ jednostki ma przedstawiać, jeśli niepusta, przestrzeń dyskusji dla pozycji bazowej, numerkowej i ogólnej. Parametry ramki tablicy transportu dziecka: * Parametry dziecka są takie same jak rodzica dla funkcji pudełkowej plus tu wymienione, bez parametrów nienazwanych numerkowych i {{Code|cel}}, * {{Code|numer jednostki}} - jak parametr {{Code|i}} nie został ustawiony, to wtedy liczy się ta zmienna, jest to numer nazwy przestrzeni nazw i nazwy jednostki. Przykłady: <syntaxhighlight lang="mediawiki"> {{Nazwa szablonu 1|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}} ---- {{Nazwa szablonu 2|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona}} </syntaxhighlight> W dziecku powiedzmy jest wywołanie, i szukamy nazwy przestrzeni i nazwy jednostki o numerze dwa, nazwa przestrzeni tutaj jest bez znaczenia, bo nie bierze udziału w wyznaczaniu nazwy jednostki: <syntaxhighlight lang="mediawiki"> {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3}} ---- {{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|numer jednostki=2}} </syntaxhighlight> Na podstawie powyższego przykładu otrzymamy wynik o schemacie: <syntaxhighlight lang="mediawiki"> <!-- nazwa przestrzeni nazw="Szablon", nazwa jednostki="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona ---- <!-- nazwa przestrzeni nazw 2="Szablon", nazwa jednostki 2="Wikibooks:Strona"; --> <!-- Czyli wynik: --> Szablon:Wikibooks:Strona </syntaxhighlight> Przykłady w wikikodzie: * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}Szablon|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=Szablon|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}Szablon|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=Szablon|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw{{=}}|nazwa jednostki{{=}}Wikibooks:Strona}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw=|nazwa jednostki=Wikibooks:Strona}}}} * {{Code|{{m|Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2{{=}}|nazwa jednostki 2{{=}}Wikibooks:Strona|numer jednostki{{=}}2}}}} → {{Tt|{{#invoke:Pudełko|Pełna nazwa dyskusji jednostki 3|nazwa przestrzeni nazw 2=|nazwa jednostki 2=Wikibooks:Strona|numer jednostki=2}}}} Powyżej dla przykładu podano parametry nie w rodzicu w szablonie, tylko w dziecku, jeśli chodzi o parametry nazw przestrzeni nazw i nazw jednostki, ale ich się za to nie powinno podawać w tych ramkach, tylko w szablonach, w których wywoływane są te ramki pudełek {{Code|{{m|Pudełko}}}}, ale tak tutaj tak zrobiono by było najłatwiej sprawdzić działanie tego typu funkcji. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 78z8njcblt7e55ofdmucagn3bddk0qq Wikibooks:Moduły/Pudełko 4 63486 540812 540811 2026-04-26T12:00:26Z Persino 2851 /* Opis tych parametrów */ 540812 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki ozanczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ==== == Spis treści == === Dokumentacja modułu {{Code|{{m|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje z których korzystają funkcje zdefiniowane w module {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 8hm214fuob47jmezfgeeqboseqlqazq 540813 540812 2026-04-26T12:01:09Z Persino 2851 /* Parametry dodatkowe typów jednostek */ 540813 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki ozanczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{m|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje z których korzystają funkcje zdefiniowane w module {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> icq1jcnghqfngtukuih8of9wn8z50t7 540814 540813 2026-04-26T12:04:18Z Persino 2851 /* Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw */ 540814 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki ozanczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{m|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje z których korzystają funkcje zdefiniowane w module {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 5g0ncem83kype4p8y7kxkr465pz34ly 540815 540814 2026-04-26T12:06:36Z Persino 2851 /* Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw */ 540815 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję {{Code|{{m|Pudełko|Typ jednostki}}}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki ozanczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{m|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje z których korzystają funkcje zdefiniowane w module {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> b29zul6jwtncqvak6sb0u87a7038fo5 540816 540815 2026-04-26T12:07:53Z Persino 2851 /* Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw */ 540816 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki ozanczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{m|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje z których korzystają funkcje zdefiniowane w module {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> bvpdymzd3es4odfckiuettlma5hafnh 540817 540816 2026-04-26T12:13:01Z Persino 2851 /* Dokumentacja modułu {{Code|{{m|Pudełko}}}} */ 540817 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki ozanczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje z których korzystają funkcje zdefiniowane w module {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> snt50qq3hcb7ty5kg0d3sxu4cilw901 540818 540817 2026-04-26T12:14:56Z Persino 2851 /* Inne podmoduły */ 540818 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki ozanczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> kcdu5fultcuuw9c786b01ct0lftc5i1 540831 540818 2026-04-26T13:50:06Z Persino 2851 /* Opis podstawowy parametrów pudełek */ 540831 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki ozanczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> c0f1ata8h1obg1m90st9e23cbfmbwyp 540832 540831 2026-04-26T13:52:21Z Persino 2851 /* Opis podstawowy parametrów pudełek */ 540832 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki ozanczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> hkr7a40bpbo0rsfe56y7r11ev0flw6w 540833 540832 2026-04-26T13:57:18Z Persino 2851 /* Wprowadzenie */ 540833 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 1f3on01brz247tx8pkhkdwv6vgw98xb 540837 540833 2026-04-26T15:38:41Z Persino 2851 /* Opis tych parametrów */ 540837 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wyglądaL : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: ** {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. ** {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. ** {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. ** {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. ** {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ** {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 9xxr1wyfdrv49i7agaerrn0h64av0jx 540838 540837 2026-04-26T15:39:50Z Persino 2851 /* {{Code|obsługiwane jednostki jako nieopisowe strony}} */ 540838 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wyglądaL : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 9t6vjwblfj6d00ns0uwbmvmtp2cyxpn 540839 540838 2026-04-26T15:42:45Z Persino 2851 /* {{Code|obsługiwane jednostki jako nieopisowe strony}} */ 540839 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wyglądaL : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> rkzgpvq4wbyhwr0v3c4c2ozt9f6jdcv 540840 540839 2026-04-26T15:46:43Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika jako normalne strony}} */ 540840 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wyglądaL : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 0cwom13drg7tw56f25s7r10otskc4d1 540841 540840 2026-04-26T15:47:09Z Persino 2851 /* {{Code|obsługiwane jednostki jako nieopisowe strony}} */ 540841 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> no6jwtmga4th7la9enkybr1l6nqk6oe 540842 540841 2026-04-26T15:48:48Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika jako normalne strony}} */ 540842 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> f2tcmwp3asxjgqb6v68nocnsu817ea5 540843 540842 2026-04-26T15:51:49Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika}} */ 540843 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> mfk01oiqqm3k6r1ip02v3vqhy9ktqk5 540844 540843 2026-04-26T16:08:27Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540844 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> l644irp3zrk9t2k0sshgo38xagq4b91 540845 540844 2026-04-26T16:11:26Z Persino 2851 /* {{Code|obsługiwane jednostki brudnopisu projektu}} */ 540845 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> qon3essjxufipw7hn9cuxvioo7nowsa 540846 540845 2026-04-26T16:14:00Z Persino 2851 /* {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} */ 540846 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> l6fgqmxdqzhasaxjsgcr1dej3q4i08l 540847 540846 2026-04-26T16:15:57Z Persino 2851 /* {{Code|obsługiwane jednostki brudnopisu projektu}} */ 540847 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> ogq7zz3s88zzpc0ltuhz36kv2vipyj8 540848 540847 2026-04-26T16:27:55Z Persino 2851 /* {{Code|obsługiwane opisy jako strony jednostek programowych}} */ 540848 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}} * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}} *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}||obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> sdqcx1yg1x7fw68oe924n2yy8g7l8uk 540849 540848 2026-04-26T16:28:17Z Persino 2851 /* {{Code|obsługiwane opisy jako strony jednostek programowych}} */ 540849 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}} * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}} *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}||obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 4503a8sxwgaiv4po0122ijr1881i6qu 540850 540849 2026-04-26T16:29:02Z Persino 2851 /* {{Code|obsługiwane opisy jako strony jednostek programowych}} */ 540850 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}} * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}} *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 6p182x0fi5k0xmakydmgkurp60vg1pu 540851 540850 2026-04-26T16:34:48Z Persino 2851 /* {{Code|obsługiwane nieudokumentowane szablony jako szablony}} */ 540851 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}} * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}} *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> p71dcrzko9s5vdm8msk27uhc9khu8tn 540852 540851 2026-04-26T16:37:54Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540852 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}} Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}} * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}} *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}} ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> c22e589vubk5eimpou321oy8gnbuvr4 540853 540852 2026-04-26T16:39:00Z Persino 2851 /* Opis tych parametrów */ 540853 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> r9snbdfzabdgnaddfeoz4e6gx8rddds 540854 540853 2026-04-26T16:39:30Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540854 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> qg1zs4zoilh63to0eqklwfq058pshee 540855 540854 2026-04-26T16:44:37Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540855 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 3092qn53csdzhhkogu7wbofhdtcpa9x 540856 540855 2026-04-26T16:47:18Z Persino 2851 /* Opis tych parametrów */ 540856 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 3hub8gi8ggxbnphurk9k7wx3aktbhko 540857 540856 2026-04-26T16:48:55Z Persino 2851 /* Opis tych parametrów */ 540857 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> goclmklduaaab9kwcyzqzdi0sru1ad2 540858 540857 2026-04-26T16:55:40Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540858 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 6t7txk6t22nj3k1x5b9qgmzsba5oil6 540859 540858 2026-04-26T16:57:30Z Persino 2851 /* Opis tych parametrów */ 540859 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> np5004af8hiv3pr6hlb5n9tdgtbdcxm 540860 540859 2026-04-26T17:00:26Z Persino 2851 /* Opis tych parametrów */ 540860 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> o8jjic4qj0ry3f4n3sjvem78y8wsrw8 540861 540860 2026-04-26T17:00:58Z Persino 2851 /* Opis tych parametrów */ 540861 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> fap1wlhj8w6gzghrbxqrp12ppoigns2 540862 540861 2026-04-26T17:02:44Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika jako normalne strony}} */ 540862 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}}}}}. Wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 2q2xaybrqentddh41av6z7yr3k8cylv 540863 540862 2026-04-26T17:05:04Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika}} */ 540863 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> mo714sxboete5fcif2totjzamd6ykcy 540864 540863 2026-04-26T17:09:52Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540864 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> jv2l62is7kbtzvl2q63tter470vfva2 540865 540864 2026-04-26T17:11:04Z Persino 2851 /* Opis tych parametrów */ 540865 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na niezależnie jakiej stronie: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> s6434udy5mu4gn83s95bq6wxt9n6iji 540866 540865 2026-04-26T17:12:49Z Persino 2851 /* Opis tych parametrów */ 540866 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|Strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> mjhfkeqwc94sge38pybqkmzjlmfs9nv 540867 540866 2026-04-26T17:14:19Z Persino 2851 /* {{Code|obsługiwane jednostki jako nieopisowe strony}} */ 540867 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> cm62osr02amyb3sxd85bhpq2l4zkvnw 540868 540867 2026-04-26T17:17:44Z Persino 2851 /* {{Code|obsługiwane jednostki jako nieopisowe strony}} */ 540868 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|Strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> a2z5xpfs3untrb39rijvlosvk7rv6cp 540870 540868 2026-04-26T17:24:32Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540870 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona brudnopisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona opisu szablonu}} lub {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 8e138alvntwu5xu8fxit9wy1w6ex9nx 540871 540870 2026-04-26T17:28:17Z Persino 2851 /* Opis tych parametrów */ 540871 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona opisu modułu}} lub {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> rfyhrr23ohk0is2j40mp1jicatrv93p 540873 540871 2026-04-26T17:30:22Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540873 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 5i1nn7guwrhrpsszzhkd0ko59uqio8k 540874 540873 2026-04-26T17:33:52Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540874 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona opisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> icefsexkfjjjn2mojtzp019cmqkbnzo 540876 540874 2026-04-26T17:38:53Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540876 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy: ** Szablony opisów - to wtedy otrzymamy {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> mw3k9fgv9cam7wxbqvwh3zki4uehsub 540877 540876 2026-04-26T17:41:04Z Persino 2851 /* {{Code|obsługiwane nieudokumentowane szablony jako szablony}} */ 540877 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}} ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy: ** Szablony opisów - to wtedy otrzymamy {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 9if72w0leujje05yj7r7ybks60p45my 540878 540877 2026-04-26T17:41:46Z Persino 2851 /* {{Code|obsługiwane jednostki brudnopisu projektu}} */ 540878 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}} Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy: ** Szablony opisów - to wtedy otrzymamy {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> cy95laieln2qp5dkwo04oebxk2js6i3 540879 540878 2026-04-26T17:43:27Z Persino 2851 /* Opis tych parametrów */ 540879 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** W przeciwnym wypadku przy użyciu tego parametru itrzymamy wynik {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wteedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy: ** Szablony opisów - to wtedy otrzymamy {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 74ru2jligqix3ssma64bd19042h8002 540881 540879 2026-04-26T18:05:06Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540881 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}}, {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy: ** Szablony opisów - to wtedy otrzymamy {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> shijjyv098hy1q8q82xu2wlsbgjdj9y 540884 540881 2026-04-26T18:16:20Z Persino 2851 /* {{Code|obsługiwane nieudokumentowane szablony jako szablony}} */ 540884 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy: ** Szablony opisów - to wtedy otrzymamy {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 7eoh1uens3msykboi4tsxmbata0pvur 540885 540884 2026-04-26T18:22:55Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540885 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Module|link=tak}} - to wtedy otrzymamy: ** Szablony opisów - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy: ** Szablony opisów - to wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> nwlkjyd1yr2791f37ezuvbbmyanv4uf 540888 540885 2026-04-26T18:29:20Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540888 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: ** Szablony nieopisowe lub nie - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy podobnie, jak dla szablonu dla podobych pozycji wywołań {{m|Pudełko|Typ jednostki}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> grc7u8ss8pfttuhri8b5onmo3v67gt8 540889 540888 2026-04-26T18:30:04Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540889 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}}}}}. * {{Np|Module|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu modułu}}, dalej: {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: ** Szablony nieopisowe lub nie - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy podobnie, jak dla szablonu dla podobych pozycji wywołań {{Code|{{m|Pudełko|Typ jednostki}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> lf7qzu2sodgamfw3fv9ph4wx2x485u0 540890 540889 2026-04-26T18:32:42Z Persino 2851 /* {{Code|obsługiwane opisy jako strony jednostek programowych}} */ 540890 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: ** Szablony nieopisowe lub nie - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy podobnie, jak dla szablonu dla podobych pozycji wywołań {{Code|{{m|Pudełko|Typ jednostki}}}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 74tgwxugcxcu3a7em2qd2slxlqhhfqr 540891 540890 2026-04-26T18:33:07Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540891 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: ** Szablony nieopisowe lub nie - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 8bxzu03picg6pjh4h40bfggrnrz3dox 540893 540891 2026-04-26T18:35:09Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540893 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: ** Szablony nieopisowe lub nie - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 0pc8ppg7qa2f7yk71uoc7giv40pmlzv 540894 540893 2026-04-26T18:41:06Z Persino 2851 /* Opis tych parametrów */ 540894 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona modułu}} lub {{Code|strona opisu modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona modułu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: ** Szablony nieopisowe lub nie - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> e6dgzn8x87c3zi9m1yfe9c0v0cskw11 540896 540894 2026-04-26T18:46:01Z Persino 2851 /* {{Code|obsługiwane brudnopisy jako normalne strony}} */ 540896 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy jest zwracany wynik {{Code|strona brudnopisu modułu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}}, w przeciwnym wypadku zwracany jest wynik {{Code|strona modułu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: ** Szablony nieopisowe lub nie - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 4knsozoktzl56ljqxy0axusuktsw34i 540897 540896 2026-04-26T18:51:21Z Persino 2851 /* {{Code|obsługiwane jednostki jako nieopisowe strony}} */ 540897 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: ** Szablony nieopisowe lub nie - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> rv7cnz0pdi0c4ubqxxb98ktcz4ji4yu 540898 540897 2026-04-26T18:55:00Z Persino 2851 /* Opis tych parametrów */ 540898 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Te parametry można łączyć ze sobą Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: ** Szablony nieopisowe lub nie - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 3m0gtueuj2juszkyv4qpcoigcc4q2k6 540899 540898 2026-04-26T18:56:44Z Persino 2851 /* Opis tych parametrów */ 540899 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy {{Code|strona projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Template|link=tak}} - szablony umieszczone w tych przestreniach nazw: ** Wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. ** Wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy wynik {{Code|strona brudnopisu projektu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to otrzymamy kolejno wyniki: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}}}}}. *: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy kolejno {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw: ** Wtedy otrzymamy kolejno: {{Code|strona szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Wtedy otrzymamy kolejno: {{Code|strona brudnopisu szablonu}}, niezależnie, gdzie został umieszczony w szablonie, czy opisie, w tej przestrzeni nazw: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane brudnopisy jako normalne strony{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: ** Szablony nieopisowe lub nie - to wtedy otrzymamy {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. ** Szablony nieopisowe - to wtedy otrzymamy {{Code|strona szablonu}}: **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. **: {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. * {{Np|Module|link=tak}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> pcfrns7yltpep6b8xpgnzxj18r7s97c 540901 540899 2026-04-26T19:04:24Z Persino 2851 /* Opis tych parametrów */ 540901 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak|obsługiwane jednostki użytkownika jako normalne strony{{=}}|obsługiwane jednostki jako nieopisowe strony{{=}}}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}} * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu projektu}}: ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> pjn2r7zut2kjnugy43aw6z5tkq7fh95 540902 540901 2026-04-26T19:04:55Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika}} */ 540902 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}} przy nieustawionym parametrze {{Code|obsługiwane brudnopisy jako normalne strony}} w przeciwnym wypadku {{Code|strona szablonu}}: * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to otrzymamy podobnie, jak dla przestrzeni nazw szablonu, nazwy zwracane są analogiczne, tzn.: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}} * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu projektu}}: ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> gaik862mhptjkzq3wew5t9zyej5tmcs 540903 540902 2026-04-26T19:09:09Z Persino 2851 /* {{Code|obsługiwane jednostki jako nieopisowe strony}} */ 540903 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}. * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}. * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}. * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}. * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}}. * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}} * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}} * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu projektu}}: ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}}, później {{Code|strona szablonu}}: * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}. * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> f644cqg6nhv75jea3ar6s95z93jnpiq 540904 540903 2026-04-26T19:14:01Z Persino 2851 /* Opis tych parametrów */ 540904 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je podano dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu projektu}}, ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> i659k09ncranxzdzbifabqlfu7vtsvf 540905 540904 2026-04-26T19:17:22Z Persino 2851 /* Opis tych parametrów */ 540905 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu projektu}}, ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> f0kud7cbp1f1s72gfzyh8cw0tw3ndce 540906 540905 2026-04-26T19:24:14Z Persino 2851 /* {{Code|obsługiwane jednostki brudnopisu projektu}} */ 540906 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> mgfssqaxqj03mb7q1n6k1v55ublerls 540907 540906 2026-04-26T19:28:04Z Persino 2851 /* {{Code|obsługiwane jednostki brudnopisu projektu}} */ 540907 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku {{Code|jednostka brudnopisu projektu}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> rnkht9nnve9kkk043zfb2m6lb87xcr1 540908 540907 2026-04-26T19:28:56Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika}} */ 540908 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku {{Code|jednostka użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku {{Code|jednostka brudnopisu projektu}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 4tjphvz2l8z4foqm390opfaqlq4tkrx 540909 540908 2026-04-26T19:29:21Z Persino 2851 /* {{Code|obsługiwane jednostki brudnopisu projektu}} */ 540909 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku {{Code|jednostka użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 7yr0787hiq392y23wmj4b5pxbbb9zmm 540910 540909 2026-04-26T19:29:41Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika}} */ 540910 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie, w tej przestrezeni nazw. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> n97pi1nw4ity1rpodpmf9y39n9utpel 540911 540910 2026-04-26T19:38:37Z Persino 2851 /* {{Code|obsługiwane nieudokumentowane szablony jako szablony}} */ 540911 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}}, to otrzymamy {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - wtedy ona zwraca wynik {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - wtedy zwraca wynik {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - wtedy mamy wynik {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - wtedy zwraca wynik {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 30ytxc1xkks6l207jc276qxd6u9uhqd 540912 540911 2026-04-26T19:43:54Z Persino 2851 /* Opis tych parametrów */ 540912 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> asuaeoz0wwgl1bhjqjd151vbdaheb9e 540913 540912 2026-04-26T19:56:21Z Persino 2851 /* Opis tych parametrów */ 540913 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}} w zależnosci, czy on został umieszczony w nibyprzestrzeni brudnopisu, czy nie. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> m8jvq9dsvjbfxwfbq801dn4cdtuizze 540915 540913 2026-04-27T05:49:17Z Persino 2851 /* {{Code|obsługiwane nieudokumentowane szablony jako szablony}} */ 540915 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> oh2zuslo4gh203tjew3bezwt7ikbooh 540916 540915 2026-04-27T05:59:29Z Persino 2851 /* Opis tych parametrów */ 540916 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> djdq7ev5wp59mz9yose0acl0tx7gk56 540917 540916 2026-04-27T06:39:43Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika jako normalne strony}} */ 540917 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. Jednostki użytkownika, tu chodzi o atykuły i podręczniki (jego strony główne) stworzone przez wikipedystę. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 9f2e5xffqzm1r3us461hxtjjuiu3vhk 540918 540917 2026-04-27T06:42:13Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika jako normalne strony}} */ 540918 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane jednostki użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> djdq7ev5wp59mz9yose0acl0tx7gk56 540920 540918 2026-04-27T06:45:15Z Persino 2851 /* {{Code|obsługiwane jednostki użytkownika jako normalne strony}} */ 540920 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane strony użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 2l35qmj513zeyv6m501gjp4qty1ijk1 540921 540920 2026-04-27T07:10:59Z Persino 2851 /* {{Code|obsługiwane strony użytkownika jako normalne strony}} */ 540921 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane strony użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 3ftj6zaxbs9zg1ljzgqog83i8tqg9ej 540922 540921 2026-04-27T07:19:56Z Persino 2851 /* {{Code|obsługiwane strony użytkownika jako normalne strony}} */ 540922 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane indywidua użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane indywidua użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== ===== {{Code|(błąd typu jednostki)}} ===== ===== {{Code|(błąd parametrów pudełkowych)}} ===== == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> f48omt3iphkfwdaxfhn217dauvvgkli 540936 540922 2026-04-27T08:33:01Z Persino 2851 /* Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} */ 540936 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane indywidua użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane indywidua użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== Te błędy występują, w wywołaniach {{Code|{{m|Pudełko|Typ jednostki}}}} i jwgo podobnych. ===== {{Code|(błąd typu jednostki)}} ===== Występuje, gdy typ jednostki, o zawartości niepustej, nie chce się zgadzać, z wyróznionymi w funkcji, z nazwami przestrzeni nazw. Ten błąd występuje, gdy parametr {{Parametr|analiza}} jest o zawartości pustej lub nie podany. Wtedy typ jednostki nie jest liczony od nowa, aby sprawdzić z tą podaną. Ten błąd czasami występuje, gdy do wywołania tej funkcji dodamy parametr {{Parametr|analiza|tak}}, wtedy gdy nie podamy nazwy jednostki, i nie chcą się zgadzać parametry pudełkowe, w odróżnieniu od błędu {{Code|(błąd parametrów pudełkowych)}}. Wtedy typ jednostki jest liczony od nowa, aby sprawdzić z tą podaną. ===== {{Code|(błąd niezgodności)}} ===== Występuje, gdy uzyskana przestrzeń nazw z typu jednostki i parametrów przestrzennych, ewentualnie jednostki, nie są ze sobą zgodne, gdy nazwa jednostki jest nie podana i parametr {{Parametr|analiza}} również lub jest o zawartości pustej. ===== {{Code|(błąd parametrów pudełkowych)}} ===== Występuje, gdy nazwa przestrzeni nazw i nazwa jednostki, dla parametrów bazowych i numerkowych, są podane, wtedy nie chcą się zgadzać parametry pudełkowe, tzn. parametry przestrzenne i jednostki oraz typu jednostki nie są ze sobą zgodne. Ten błąd występuje, gdy do wywołania tej funkcji dodamy parametr {{Parametr|analiza|tak}}. == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> owqddna71a23cdw5k19m5tzyxwpup5q 540937 540936 2026-04-27T08:39:53Z Persino 2851 /* Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} */ 540937 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane indywidua użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane indywidua użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== Te błędy występują, w wywołaniach {{Code|{{m|Pudełko|Typ jednostki}}}} i jego podobnych, gdy typ jednostki podany do parametru rodzica ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}} jest o zawartości niepustej. ===== {{Code|(błąd typu jednostki)}} ===== Występuje, gdy typ jednostki nie chce się zgadzać, z wyróznionymi w funkcji, z nazwami przestrzeni nazw. Ten błąd występuje, gdy parametr {{Parametr|analiza}} jest o zawartości pustej lub nie podany. Wtedy typ jednostki nie jest liczony od nowa, aby sprawdzić z tą podaną. Ten błąd czasami występuje, gdy do wywołania tej funkcji dodamy parametr {{Parametr|analiza|tak}}, wtedy gdy nie podamy nazwy jednostki, i nie chcą się zgadzać parametry pudełkowe, w odróżnieniu od błędu {{Code|(błąd parametrów pudełkowych)}}. Wtedy typ jednostki jest liczony od nowa, aby sprawdzić z tą podaną. ===== {{Code|(błąd niezgodności)}} ===== Występuje, gdy uzyskana przestrzeń nazw z typu jednostki i parametrów przestrzennych, ewentualnie jednostki, nie są ze sobą zgodne, gdy nazwa jednostki jest nie podana i parametr {{Parametr|analiza}} również lub jest o zawartości pustej. ===== {{Code|(błąd parametrów pudełkowych)}} ===== Występuje, gdy nazwa przestrzeni nazw i nazwa jednostki, dla parametrów bazowych i numerkowych, są podane, wtedy nie chcą się zgadzać parametry pudełkowe, tzn. parametry przestrzenne i jednostki oraz typu jednostki nie są ze sobą zgodne. Ten błąd występuje, gdy do wywołania tej funkcji dodamy parametr {{Parametr|analiza|tak}}. == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> alavixgjfp21bvod3diftx2ur1w7uww 540947 540937 2026-04-27T10:02:48Z Persino 2851 /* {{Code|(błąd niezgodności)}} */ 540947 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Moduł wywołuje się za pomocą polecenia: <syntaxhighlight lang="lua"> local pudelko_modul=require("Module:Pudełko"); </syntaxhighlight> dzięki, któremu można wypisywać funkcje należącego do niego. == Opis podstawowy parametrów pudełek == Posługuje się na parametrach pudełkowych {{Parametr|nazwa przestrzeni nazw}} (czy też bez numerka {{Parametr|nazwa przestrzeni nazw i}} dla tego numerowanego) lub te z numerkiem po jednej spacji w nich (ale nie dla tego z końcówką {{Code| i}}) mogą zostać użyte jako parametry szablonu. Moduł {{Code|{{ld2|Pudełko}}}} przedstawia funkcje nazw w oparciu o funkcje nazw {{Code|{{ld2|Nazwy}}}}, generuje on nazwy za pomocą parametrów pudełkowych podanych poniżej. Parametr {{Parametr|nazwa jednostki}} (lub parametr {{Parametr|cel}} dla numerka tego pierwszego, tego alternatywnego), lub te z numerkiem po jednej spacji w nazwie parametru, albo numerowane numerkami {{Code|1}}, {{Code|2}},..., mogą zostać użyte jako parametry szablonu. Te parametry nienazwane i {{Code|cel}} {{=}} {{Code|1}}, są używane tylko w szablonie rodzica ramki dziecka w funkcjach wywołaniach modułowych {{Code|{{m|Pudełko}}}}. Parametry określające rodzaj jednostki {{Parametr|typ jednostki}} z {{Parametr|dyskusja typu jednostki}}, itp. w wersjach z numerkiem po jednej spacji w nich mogą zostać użyte jako parametry szablonu. Też jest ich wersja z {{Code|i}} po spacji w tych parametrach podstawowych. A te tymi numerowanymi liczbami naturalnymi {{Tt|nazwy jednostki}} od jedynki wzwyż poprzez szablon, w którym są one użyte, one też mogą być użyte z dwukropkiem, te numerowane, na samym początku nazwy, wtedy one są traktowane jako pełne nazwy strony, i wtedy one nie zostaną z interpretowane, że do nich trzeba użyć parametr odpowiedni z nazwą przetrzeni nazw z tego numerowanego, czy ogólny, aby utworzyć znów inną pełną nazwę strony dla tego numerka. === Zestawienie: === * {{Code|nazwa przestrzeni nazw}} i {{Code|nazwa przestrzeni nazw i}} (ogólna nazwa przestrzeni nazw dla wszystkich numerków, i tych numerowanych jednostek) - i to pierwsze z numerkiem, tzn. {{Code|nazwa przestrzeni nazw 1}}, {{Code|nazwa przestrzeni nazw 2}}, ..., * {{Code|nazwa jednostki}} - i te z numerkiem: {{Code|nazwa jednostki 1}}, {{Code|nazwa jednostki 2}}, ..., lub gdy jest zamiast tego parametrem numerowany, {{Code|1}}, {{Code|2}},..., który dla tego pierwszego może być uznany jako: {{Code|cel}} {{=}} {{Code|1}}, * {{Code|typ jednostki}} (parametr bazowy) i {{Code|typ jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|typ jednostki 1}}, {{Code|typ jednostki 2}}, ..., tzn. gdy chcemy określić z jakim typem jednostki mamy do czynienia w zależności do jakiej przestrzeni nazw należy, a w danej, czy jest on np. programowy, czy tylko jest opisem, jak to bywa w szablonach {{Np|Template|link=tak}}, podobnie jest w przypadku {{Np|Module|link=tak}}, czy jak jest w innych przestrzeniach nazw, ** {{Code|dyskusja typu jednostki}} (parametr bazowy) i {{Code|dyskusja typu jednostki i}} (parametr domyślny numerkowy) - i te z numerkiem: {{Code|dyskusja typu jednostki 1}}, {{Code|dyskusja typu jednostki 2}}, ..., gdy chcemy określić wartością niepustą, że chodzi tutaj o typ jednostki. == Opis rodzajów typów jednostek == Typy jednostek to odpowiednik przestrzeni nazw i nie tylko, bo mówi dodatkowo jakiego typu strona jest danej przestrzeni nazw, czy to jest główny artykół podręcznika, czy zwykły, itp., mówi jakie jest to korzeń strony danej przestrzeni, nie musi być do podręcznik, czy podręcznik dla dzieci, objawia, czy np. jest to brudnopis i jakiego typu, czy w brudnopisie {{lr2|Brudnopis}}, jaki to jest artykuł główny i zwykły. Dla stron szablonów i modułów, również im odpowiadające strony brudnopisu, tzn. {{ls2|Brudnopis}} i {{ld2|Brudnopis}}, w przestrzeniach danego użytkownika, jakie strony są szablonami, czy modułami, a jakie ich opisami. === Typy jednostek i odpowiadające im nazwy przedmiotowe przestrzeni nazw === Są to wartości zwracane przez funkcję ramki: {{Code|{{m|Pudełko|Typ jednostki}}}}, w języku {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. ==== Strony przedmiotowe ==== * Pzestrzeń główna - przestrzeń nazw {{Np|(main)|link=tak}}: ** {{Code|artykuł}} i {{Code|podręcznik}} - artykuł normalny podręcznika i jego strona główna, * Przestrzeń projektów dla dzieci - przestrzeń nazw {{Np|Wikijunior|link=tak}}: ** {{Code|artykuł dla dzieci}} i {{Code|podręcznik dla dzieci}} - artykuł normalny podręcznika dla dzieci i jego strona główna, w przestrzeni nazw {{Np|Wikijunior|link=tak}}, * Strony projektu - przestrzeń nazw {{Np|Project|link=tak}}: ** Podręczniki: *** {{Code|artykuł brudnopisu projektu}}, {{Code|podręcznik brudnopisu projektu}} - artykuł normalny brudnopisowy podręcznika i jego strona główna, w przestrzeni nazw {{lr2|Brudnopis}}, *** {{Code|jednostka brudnopisu projektu}} - jest to artykuł lub podręcznik w przestrzeni brudnopisowej {{lr2|Brudnopis}}, zamiast je nazywać jako {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, ** Strony: *** {{Code|strona brudnopisu projektu}} - ogólnie nazwana strona brudnopisu projektu, zamiast je nazywać: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}} albo {{Code|jednostka brudnopisu projektu}}, ** {{Code|strona projektu}} - zwykła niebrudnopisowa strona projektu, * Strony szablonu - przestrezeń nazw {{Np|Template|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona szablonu}} i {{Code|strona opisu szablonu}} - niebrudnopisowa strona szablonu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ls2|Brudnopis}}, *** {{Code|strona brudnopisu szablonu}} i {{Code|strona brudnopisu opisu szablonu}} - brudnopisowa strona szablonu i jego opisu, * Strony modułu - przestrzeń nazw {{Np|Module|link=tak}}: ** Strony niebrudnopisowe: *** {{Code|strona modułu}} i {{Code|strona opisu modułu}} - niebrudnopisowa strona modułu i jego opisu, ** Strony brudnopisowe - nibyprzestrzeń nazw {{ld2|brudnopis}}: *** {{Code|strona brudnopisu modułu}} i {{Code|strona brudnopisu opisu modułu}} - brudnopisow sstrona modułu i jego opisu, * Strony użytkownika - przestrzeń nazw {{Np|User|link=tak}}: ** Strony podręcznikowe: *** {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} - artykuł normalny podręcznika i jego strona główna, *** {{Code|jednostka użytkownika}} - inaczej nazwana strony podręcznika, nawet główna, czyli {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}}, ** Inne strony: *** {{Code|strona główna użytkownika}} - strona główna użytkownika, *** {{Code|strona użytkownika}} - inaczej nazwana strona użytkownika, zamiast: {{Code|artykuł użytkownika}} i {{Code|podręcznik użytkownika}} oraz {{Code|strona główna użytkownika}}, * Inne typy jednostek: ** {{Code|strona pliku}} - strona w przestrzeni nazw pliku {{Np|File|link=tak}}, ** {{Code|strona kategorii}} - strona w przestrzeni nazw kategorii {{Np|Category|link=tak}}, ** {{Code|strona pomocy}} - strona pomocy w przestrzeni nazw pomocy {{Np|Help|link=tak}}, ** {{Code|strona komunikatu}} - strona komunikatów w przestrzeni nazw {{Np|MediaWiki|link=tak}}, ** {{Code|strona specjalna}} - strona specjalna w przestzreni nazw {{Np|Special|link=tak}}, ** {{Code|strona główna projektu}} - strona główna projektu {{lr2|Strona główna}} w przestrzeni nazw {{Np|Project|link=tak}}, ** {{Code|strona główna dla dzieci}} - strona główna dla dzieci {{lj2|Strona główna}} w przestrzeni nazw {{Np|Wikijunior|link=tak}}. ==== Strony dyskusji ==== Nazwy typu jednostek {{Code|typ jednostek}} są takie same jak dla przestrzeni przedmiotowej, tylko z tą różnicą, za po spacji po pierwszym wyrazie występuje wyraz {{Code|dyskusji}}. i tak tego typu typy jednostek dla różnych przestrzeni nazw dyskusji są tworzone. ; Przykłady * {{Code|artykuł}} → {{Code|artykuł dyskusji}}, * {{Code|artykuł dla dzieci}} → {{Code|artykuł dyskusji dla dzieci}}, * {{Code|strona użytkownika}} → {{Code|strona dyskusji użytkownika}}. ==== Strony niedopasowane ==== Jeżeli strona została niedopasowana do przestrzeni przedmiotowej, czy dyskusji, to funkcja {{Code|{{m|Pudełko|Typ jednostki}}}}, wtedy zwraca wartość {{Code|inne}}. === Tworzenie typów jednostek dyskusji i rodzina parametrów {{Code|dyskusja typu jednostki}} === Można poddać nazwę typu jednostki dla przestrzeni dyskusji, ale jest za to inny sposób, wtedy to samo skostrułować nalezy podać typ jednostki dla przestrzeni przedmiotowej i parametr dyskusji typu jednostki, np. dla pozycji bazowej {{Code|dyskusja typu jednostki}} z wartością {{Code|tak}}. Również z tą wartością może typ jednostki dla przestrzeni dyskusji, ale wtedy otrzymujemy tożssamość. Podobnie jest z tym dla parametrów typu jednostki i dyskusji typu jednostki dla pozycji numerkowej, tylko te parametry posiadają dodatkowy numerek na końcu po spacji lub podane w postaci ogólnej, jako litera {{Code|i}} na końcu tych zmiennych po spacji. === Parametry dodatkowe typów jednostek === ==== Wprowadzenie ==== Dodatkowe parametry podajemy w ramce {{lpg|Lua}} w {{lpr|Lua|Scribunto}} w sposob, np: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Lub z to samo, ale z parametrem {{Parametr|numer jednostki|2}} z przykładową wartością, wartość {{Code|0}}, wtedy tego parametru można nie podawać, oznacza przestrzeń bazową, a {{Code|1}}, {{Code|2}},..., natomiast numerkową, wtedy ten parametr jest konieczny, a te numerki oznaczają numer parametru typu jednostki lub dyskusji typu jednostki, więc: * {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak|numer jednostki{{=}}2}}}}. Te parametry dodatkowe coś oznaczają. ==== Opis tych parametrów ==== W nagłówkach tytułów są to parametry podawane do ramki, w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w parametrach dziecka szablonu rodzica. Parametry te, które mają wartość pustą, można nie podawać, ale można, ale je można podać dla uwypuklenia problemu. Te parametry można łączyć ze sobą. Poniżej podano przykładowe wywołania z jednym tylko parametrem. Dokładniejszy opis tych funkcji ze strony programowej, jako kod w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jest na stronie {{Code|{{m|Pudełko/Pomocne}}}}. ===== {{Code|obsługiwane jednostki jako nieopisowe strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki jako nieopisowe strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|(main)|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł}}, * {{Np|Wikijunior|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|artykuł dla dzieci}}, * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}, * {{Np|Project|link=tak}} w nibyprzestrzeni nazw {{lr2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu projektu}}, * {{Np|Template|link=tak}} w nibyprzestrzeni nazw {{ls2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu szablonu}}, * {{Np|Module|link=tak}} w nibyprzestrzeni nazw {{ld2|Brudnopis}} - to wtedy funkcja zwraca wynik: {{Code|strona brudnopisu modułu}}. ===== {{Code|obsługiwane indywidua użytkownika jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane indywidua użytkownika jako normalne strony{{=}}tak}}}}. * {{Np|User|link=tak}} - to wtedy funkcja zwraca wynik: {{Code|strona użytkownika}}. ===== {{Code|obsługiwane jednostki użytkownika}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki użytkownika{{=}}tak}}}}. * {{Np|User|link=tak}} to wtedy funkcja zwraca wynik: {{Code|artykuł użytkownika}} lub {{Code|podręcznik użytkownika}}, w przeciwnym wypadku: {{Code|jednostka użytkownika}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane brudnopisy jako normalne strony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane brudnopisy jako normalne strony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|strona projektu}}, * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona szablonu}} lub {{Code|strona opisu szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona modułu}} lub {{Code|strona opisu modułu}}. ===== {{Code|obsługiwane jednostki brudnopisu projektu}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane jednostki brudnopisu projektu{{=}}tak}}}}. * {{Np|Project|link=tak}} - to wtedy otrzymamy: {{Code|artykuł brudnopisu projektu}} lub {{Code|podręcznik brudnopisu projektu}}, w przeciwnym wypadku: {{Code|jednostka brudnopisu projektu}}, w przypadku nieużycia tego parametru. ===== {{Code|obsługiwane strony jako niebrudnopisowe jednostki programowe}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane strony jako niebrudnopisowe jednostki programowe{{=}}tak}}}}. * {{Np|Template|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy wynik: {{Code|strona modułu}}. ===== {{Code|obsługiwane opisy jako strony jednostek programowych}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane opisy jako strony jednostek programowych{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}, * {{Np|Module|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu modułu}} lub {{Code|strona modułu}}. ===== {{Code|obsługiwane nieudokumentowane szablony jako szablony}} ===== Tę funkcje z tym parametrem wywołujemy umieszczając szablon z nim w jakieś przestrzeni nazw, a to wywołanie wygląda, w ktorych jeden z parametrów jest: : {{Code|{{m|Pudełko|Typ jednostki|obsługiwane nieudokumentowane szablony jako szablony{{=}}tak}}}}. Dla przestrzeni nazw po umieszczeniu szablonu z nim tam na stronie na wymienionych przestrzeniach nazw: * {{Np|Template|link=tak}} - to wtedy otrzymamy: {{Code|strona brudnopisu szablonu}} lub {{Code|strona szablonu}}. ==== Możliwe błędy wywołań {{Code|{{m|Pudełko|Typ jednostki}}}} ==== Te błędy występują, w wywołaniach {{Code|{{m|Pudełko|Typ jednostki}}}} i jego podobnych, gdy typ jednostki podany do parametru rodzica ramki {{lpg|Lua}} w {{lpr|Lua|Scribunto}} jest o zawartości niepustej. ===== {{Code|(błąd typu jednostki)}} ===== Występuje, gdy typ jednostki nie chce się zgadzać, z wyróznionymi w funkcji, z nazwami przestrzeni nazw. Ten błąd występuje, gdy parametr {{Parametr|analiza}} jest o zawartości pustej lub nie podany. Wtedy typ jednostki nie jest liczony od nowa, aby sprawdzić z tą podaną. Ten błąd czasami występuje, gdy do wywołania tej funkcji dodamy parametr {{Parametr|analiza|tak}}, wtedy gdy nie podamy nazwy jednostki, i nie chcą się zgadzać parametry pudełkowe, w odróżnieniu od błędu {{Code|(błąd parametrów pudełkowych)}}. Wtedy typ jednostki jest liczony od nowa, aby sprawdzić z tą podaną. ===== {{Code|(błąd niezgodności)}} ===== Występuje, gdy uzyskana przestrzeń nazw z typu jednostki i parametrów przestrzennych, nie są ze sobą zgodne, gdy nazwa jednostki jest nie podana i parametr {{Parametr|analiza}} również lub jest o zawartości pustej. ===== {{Code|(błąd parametrów pudełkowych)}} ===== Występuje, gdy nazwa przestrzeni nazw i nazwa jednostki, dla parametrów bazowych i numerkowych, są podane, wtedy nie chcą się zgadzać parametry pudełkowe, tzn. parametry przestrzenne i jednostki oraz typu jednostki nie są ze sobą zgodne. Ten błąd występuje, gdy do wywołania tej funkcji dodamy parametr {{Parametr|analiza|tak}}. == Spis treści == === Dokumentacja modułu {{Code|{{ld2|Pudełko}}}} === * {{lr|Moduły/Pudełko/Tom I|Tom I}} - opis funkcji, nazw przestrzeni nazw i nazwy jednostek, normalnych, przedmiotowych i dyskusji, * {{lr|Moduły/Pudełko/Tom II|Tom II}} - opis funkcji, pełnych nazw jednostek, * {{lr|Moduły/Pudełko/Tom III|Tom III}} - opis typu jednostek oraz cech i błędów pudełka, normalnych, przedmiotowych i dyskusji. Także dokumentacji kodów i kluczy wiki, nazw stron projektu i dla dzieci, funkcje badania jakie to wiki oraz kody wiki tego projektu, itp. Opisuje funkcje, czy do szablonów pudełek podano parametry numerowane, nienazwane i nazwane. === Inne podmoduły === * {{sr|Pomocne|p=Pudełko|Pudełko - Pomocne}} - funkcje, z których korzystają funkcje zdefiniowane w wywołaniach modułowych {{m|Pudełko}}, * {{sr|Potrzebne|p=Pudełko|Pudełko - Potrzebne}} - funnkcje potrzebne do budowy wywołań ogólnego pudełka {{m|Pudełko|Ogólne pudełko}}, * {{sr|ParametryCechy|p=Pudełko|Pudełko - Parametry Cechy}} - funkcje zapytań potrzebne do implementacji szablonu {{s|Szablonowy opis pudełka}}. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> h9lsonbg8u1dks6m3v2ymnqbzcfbq43 Wikipedysta:Persino/Moduły/Pudełko/Tom III 2 63489 540834 540749 2026-04-26T14:48:02Z Persino 2851 540834 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Code|Funkcje oparte na {{sr|#p.Typ_jednostki(frame,...)|p=Pudełko/Pomocne}}}} == === Funkcje typu jednostki podstawowe === ==== {{Code|p["Typ jednostki"](frame,i)}} ==== ==== {{Code|p["Przedmiotowy typ jednostki"](frame,i)}} ==== ==== {{Code|p["Dyskusyjny typ jednostki"](frame,i)}} ==== === Funkcje typu jednostki wersji drugiej === ==== {{Code|p["Typ jednostki 2"](frame,i)}} ==== ==== {{Code|p["Przedmiotowy typ jednostki 2"](frame,i)}} ==== ==== {{Code|p["Dyskusyjny typ jednostki 2"](frame,i)}} ==== === Funkcje typu jednostki wersji trzeciej === ==== {{Code|p["Typ jednostki 3"](frame,i)}} ==== ==== {{Code|p["Przedmiotowy typ jednostki 3"](frame,i)}} ==== ==== {{Code|p["Dyskusyjny typ jednostki 3"](frame,i)}} ==== == Funkcje błędów pudełka == === {{Code|p["Błędy pudełka"](frame)}} === === {{Code|p["Przedmiotowe błędy pudełka"](frame)}} === === {{Code|p["Dyskusyjne błędy pudełka"](frame)}} === == Funkcje chech pudełka == === {{Code|p["Cecha pudełka"](frame)}} === === {{Code|p["Przedmiotowa cecha pudełka"](frame)}} === === {{Code|p["Dyskusyjna cecha pudełka"](frame)}} === == Funkcje ogólnego pudełka == === {{Code|p["Ogólne pudełko"](frame)}} === == Funkcje ogólne == === {{Code|p["Tekst pudełka"](frame)}} === == Funkcje nazw stron == === {{Code|p["Nazwa strony głównej projektu"](frame,i)}} === === {{Code|p["Nazwa strony głównej dla dzieci projektu"](frame,i)}} === == Funkcje kodów == === {{Code|p["Kod języka"](frame,i)}} === === {{Code|p["Kod projektu"](frame,i)}} === === {{Code|p["Klucz projektu"](frame,i)}} === == Funkcje wiki == === {{Code|p["Inny niż język bieżący wiki"](frame)}} === === {{Code|p["Inne niż lokalne wiki"](frame)}} === === {{Code|p["Inne niż bieżące wiki"](frame)}} === == Funkcje typów parametrów, czy podane je == === {{Code|p["Podano parametry nienazwane"](frame)}} === === {{Code|p["Podano parametry numerowane"](frame)}} === === {{Code|p["Podano parametry nazwane"](frame)}} === == Funkcje kodów tego projektu == === {{Code|p["Kod projektu tego projektu"](frame)}} === === {{Code|p["Kod języka tego projektu"](frame)}} === === {{Code|p["Klucz projektu tego projektu"](frame)}} === == Funkcje stron == === {{Code|p["Strona główna tego projektu"](frame)}} === === {{Code|p["Strona główna dla dzieci tego projektu"](frame)}} === == Funkcje nazw stron drugiej wersji == === {{Code|p["Nazwa strony głównej dla dzieci projektu 2"](frame)}} === === {{Code| p["Nazwa strony głównej projektu 2"](frame)}} === {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> oxc1rb4rm7luyt5c6oueey8t4y1hfae 540835 540834 2026-04-26T14:50:45Z Persino 2851 /* {{Code|Funkcje oparte na {{sr|#p.Typ_jednostki(frame,...)|p=Pudełko/Pomocne}}}} */ 540835 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|Pudełko}}|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óżne roddzaje i typy funkcji typów jednostek == === Funkcje typu jednostki podstawowe === ==== {{Code|p["Typ jednostki"](frame,i)}} ==== ==== {{Code|p["Przedmiotowy typ jednostki"](frame,i)}} ==== ==== {{Code|p["Dyskusyjny typ jednostki"](frame,i)}} ==== === Funkcje typu jednostki wersji drugiej === ==== {{Code|p["Typ jednostki 2"](frame,i)}} ==== ==== {{Code|p["Przedmiotowy typ jednostki 2"](frame,i)}} ==== ==== {{Code|p["Dyskusyjny typ jednostki 2"](frame,i)}} ==== === Funkcje typu jednostki wersji trzeciej === ==== {{Code|p["Typ jednostki 3"](frame,i)}} ==== ==== {{Code|p["Przedmiotowy typ jednostki 3"](frame,i)}} ==== ==== {{Code|p["Dyskusyjny typ jednostki 3"](frame,i)}} ==== == Funkcje błędów pudełka == === {{Code|p["Błędy pudełka"](frame)}} === === {{Code|p["Przedmiotowe błędy pudełka"](frame)}} === === {{Code|p["Dyskusyjne błędy pudełka"](frame)}} === == Funkcje chech pudełka == === {{Code|p["Cecha pudełka"](frame)}} === === {{Code|p["Przedmiotowa cecha pudełka"](frame)}} === === {{Code|p["Dyskusyjna cecha pudełka"](frame)}} === == Funkcje ogólnego pudełka == === {{Code|p["Ogólne pudełko"](frame)}} === == Funkcje ogólne == === {{Code|p["Tekst pudełka"](frame)}} === == Funkcje nazw stron == === {{Code|p["Nazwa strony głównej projektu"](frame,i)}} === === {{Code|p["Nazwa strony głównej dla dzieci projektu"](frame,i)}} === == Funkcje kodów == === {{Code|p["Kod języka"](frame,i)}} === === {{Code|p["Kod projektu"](frame,i)}} === === {{Code|p["Klucz projektu"](frame,i)}} === == Funkcje wiki == === {{Code|p["Inny niż język bieżący wiki"](frame)}} === === {{Code|p["Inne niż lokalne wiki"](frame)}} === === {{Code|p["Inne niż bieżące wiki"](frame)}} === == Funkcje typów parametrów, czy podane je == === {{Code|p["Podano parametry nienazwane"](frame)}} === === {{Code|p["Podano parametry numerowane"](frame)}} === === {{Code|p["Podano parametry nazwane"](frame)}} === == Funkcje kodów tego projektu == === {{Code|p["Kod projektu tego projektu"](frame)}} === === {{Code|p["Kod języka tego projektu"](frame)}} === === {{Code|p["Klucz projektu tego projektu"](frame)}} === == Funkcje stron == === {{Code|p["Strona główna tego projektu"](frame)}} === === {{Code|p["Strona główna dla dzieci tego projektu"](frame)}} === == Funkcje nazw stron drugiej wersji == === {{Code|p["Nazwa strony głównej dla dzieci projektu 2"](frame)}} === === {{Code| p["Nazwa strony głównej projektu 2"](frame)}} === {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> eisnc5s0a6jk3zio5edmhavotivz7on Dyskusja Wikijuniora:Polska/Arcydzieła literatury polskiej 105 63493 540892 2026-04-26T18:34:56Z Marek Mazurkiewicz 8990 Utworzono nową stronę ""i należy do jednych z bogatszych tradycji literackich Europy Środkowej" - kto tak twierdzi i jak to się ocenia? ~~~~" 540892 wikitext text/x-wiki "i należy do jednych z bogatszych tradycji literackich Europy Środkowej" - kto tak twierdzi i jak to się ocenia? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 20:34, 26 kwi 2026 (CEST) sfwwfow7ovpuj06tpmczce5vmd0rgns